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

過去にも同様の問題がありました。この問題は、Adobe 以外のプログラムを使用して PDF を作成することで発生しました。たとえば、Libreoffice で PDF フォームを作成すると、この問題が発生する可能性があります。CF が探しているファイルの内部フォーマットが欠落していると思われます。

Acrobat で開いて再保存してみてください。

于 2014-12-03T09:20:30.897 に答える