2

我正在尝试使用cfpdf并不断收到以下错误:

字符串索引超出范围:-1

我不明白为什么。我在 Debian Linux 上运行 ColdFusion 11。

<CFIF FileExists("#getDirectoryFromPath(getCurrentTemplatePath())#REPORT.pdf")>
    <cfpdfform 
        action="read" 
        source="#getDirectoryFromPath(getCurrentTemplatePath())#REPORT.pdf" xmldata="x" 
        result="r">
    </cfpdfform>

    <cfdump var="#x#" label="XMLData">
    <cfdump var="#r#" label="Result">
<CFELSE>
    File doesn't exist
</CFIF>

确切的错误:

String index out of range: -1 

 The error occurred in /var/www/www.test.com/test.cfm: line 2

1 : <CFIF FileExists("#getDirectoryFromPath(getCurrentTemplatePath())#REPORT.pdf")>
2 : <cfpdfform 
action="read" 
source="#getDirectoryFromPath(getCurrentTemplatePath())#REPORT.pdf" 
xmldata="x" result="r">
3 : </cfpdfform>
4 : <cfdump var="#x#" label="XMLData">
4

1 回答 1

0

我过去也遇到过类似的问题。问题在于使用非 Adob​​e 程序创建 pdf - 例如,在 Libreoffice 中制作 pdf 表单可能会导致此问题。我假设 CF 正在查找的文件中缺少一些内部格式。

您可以尝试在 Acrobat 中打开并重新保存。

于 2014-12-03T09:20:30.897 回答