<CFPDFForm> 从 MySQL DB 填充 PDF退出工作

问题描述

在没有警告和代码更改的情况下,托管公司将更新 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。