Sto migrando a Lucee un'applicazione molto vecchia (attualmente in esecuzione in CF8). Ma mi imbatto in un problema con quello che sembra essere un tag personalizzato di qualche tipo.Come individuare un'istanza di tag personalizzata in un'applicazione coldFusion
Ho provato a verificare che tutte le directory virtuali siano le stesse in IIS sia per la vecchia che per le nuove installazioni. E assicurati che la mappatura e i percorsi dei tag personalizzati sia in CFIDE che in Lucee Admin siano gli stessi.
Ma sto ricevendo questo errore. E non riesco a capire come questo cflink
viene istanziato.
ho trovato la posizione del codice erroring on line 300 file utils.cfc
Non ho usato tag personalizzati in un tempo lungo, ma il pensiero venivano generalmente chiamati con un carattere di sottolineatura e il codice dovrebbe essere più simile a <cf_link pageid="#LinkPageID#" Init="start">
se veniva chiamato come tag personalizzato.
Se vado al server CF corrente che esegue questa applicazione è possibile trovare che un file è stato creato cfclass Da un file chiamato cflink.cfm in una directory chiamata "tag", anche se sembra che ci sia nessuna mappatura per la directory "tags" né è elencata in "percorsi tag personalizzati" nell'amministratore.
Questa applicazione è stata avviata nel 2003 e come potete immaginare è cresciuta in un errore di codice spaghetti e nessuno dall'inizio è in giro per chiedere come questo tag viene istanziato.
Qualcuno con esperienza nel codice legacy ha altre idee in cui dovrei cercare di farlo funzionare? Al momento ha solo un ambiente di produzione e se riuscirò a farlo funzionare su Lucee non sarà solo un ambiente di sviluppo che non è esistito qui tra 10 anni, ma sarà un ottimo modo per me per poter continuare a mostrare Lucee come un grande motore CFML
aggiunta di informazioni Oltre
Leigh aveva chiesto se l'init potrebbe essere un punto di riferimento vaso, ma nel file cflink.cfm vedo questo codice:
<cfif Attributes.Init IS "start">
<cfset Request.PageID = Attributes.PageID>
<cfset Request.Page_Width = Variables.qParentInfo.Page_Width>
<cfset Request.Page_Height = Variables.qParentInfo.Page_Height>
<cfset Request.Page_TypeID = Variables.qParentInfo.Page_TypeID>
<cfset Request.AddPath = "">
<cfif IsDefined("Attributes.Anchor")>
<cfset Request.Anchor = Attributes.Anchor>
<cfelse>
<cfset Request.Anchor = "">
</cfif>
<cfset Request.IsInternalLink = false>
<cfexit method="EXITTAG">
</cfif>
ci sono anche riferimenti a cflink nel codice all'interno dei tag \ cflink.cfm
<cfif Len(Variables.qParentInfo.ParentID) GT 0>
<!--- Add the page title to the end of the path --->
<cfset Request.AddPath = ReplaceNoCase(Variables.qParentInfo.Nav_Title," ","_","ALL") & "/" & Request.AddPath>
<cflink init="working" pageid="#Variables.qParentInfo.ParentID#" popcode="#Attributes.popcode#">
<cfelse> ......</cfif>
Anche se questo può essere ricorsione dato che è stato scritto nel 2004 ho tipo di dubbio che
Aggiunta di schermate di ricerche
colpo al buio, ma ha fatto verificare la presenza di eventuali chiamate 'cfimport'? Puoi fare alcune cose creative con le librerie di tag. – Leigh
Prova a fare una ricerca sul tuo server su 'link.cfm'. Deve essere da qualche parte –
Sembrava che facessero così: "* ... Da un file chiamato cflink.cfm in una directory chiamata" tags "... *? – Leigh