问题描述
在没有警告和代码更改的情况下,托管公司将更新 19 应用于 ColdFusion 11。他们声称它不相关,但无法从数据库填充 PDF 文档。
这是多年来完美运行的代码的开头。
<cfpdfform source="#Expandpath( 'FORMS/PDF_FORM_TEMPATE.pdf' )#" action="populate" destination="#expandpath('TEMP/I9_#accountinfo.company_id#_#EMPLOYEE_ID#_#hog_data.LAST_NAME#.pdf')#" overwrite=true >
<cfpdfsubform name="i9Main">
<cfpdfformparam name="LAST_NAME" value="#hog_data.LAST_NAME#">
<cfpdf action="write" destination="#expandpath('FINAL/I9_#accountinfo.company_id#_#EMPLOYEE_ID#_#hog_data.LAST_NAME#.pdf')#" source="#expandpath('TEMP/I9_#accountinfo.company_id#_#EMPLOYEE_ID#_#hog_data.LAST_NAME#.pdf')#" flatten="yes" overwrite="yes">
<cffile action="delete" file="#expandpath('TEMP/I9_#accountinfo.company_id#_#EMPLOYEE_ID#_#hog_data.LAST_NAME#.pdf')#">
<cflocation url="final/I9_#accountinfo.company_id#_#EMPLOYEE_ID#_#hog_data.LAST_NAME#.pdf">
此代码在 3 月 6 日网络托管公司应用 ColdFusion Update 19 之前一直运行良好。有人对此有疑问或有建议吗?
解决方法
首先,我要感谢所有提供建议的人。结果 Adrian J. Moreno 是正确的。此问题是由 Java 运行时环境的不兼容版本引起的。更新此问题解决了问题,现在可以在整个站点范围内重新填充 PDF。