CFDocument rendering problem : "out of memory" - localURL parameter can help!
Durante l'esecuzione di processi per la creazione di documenti PDF, il TAG CFdocument, in elaborazioni complesse, può presentare il seguente errore: "java out of memory"
CFDocument rendering problem : "out of memory"
Per prevenire questo errore e per migliorare le performance di elaborazione di documenti per la conversione in PDF si può utilizzare l'opzione:
"localurl"
Il parametro LocalUrl permette a ColdFusion di inglobare le immagini nel documento PDF interrogando il server in modo relativo. In questo modo ColdFusion non richiederà al webserver le immagini utilizzando il prefisso di dominio http://sitoweb.com/images/immagine.png ma indirizza la chiamata all'immagine direttamente riferendosi all'immagine su un path relativo del tipo ../images/immagine.png migliorando di molto le performance.
Un esempio:
<cfdocument format="PDF" pagetype="A4" orientation="portrait" unit="cm"
fontembed="Yes"
backgroundvisible="Yes"
marginbottom = "1.5" marginleft = "0.2" marginright = "0.2"
margintop = "2.5" scale = "90"
overwrite="Yes"
filename = "#expandpath('/docs/'##miofile#"
localurl="Yes">
<cfinclude template="procedura_.cfm">
</cfdocument>
tutte le immagini dovranno essere impostate in modo relativo e quindi del tipo:
<img src="../images/imm.png" alt="xx">
Da alcuni test effettuati sulla nostra applicazione, con la versione ColdFusion8, le performance ottenute tra una chiamata che utilizza LocalUrl e uno senza sono in un rapporto 1:3, quindi conviene utilizzarlo quando possibile