Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/358.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何修复Coldfusion cfcontent中的属性验证错误(java.string.lang不支持变量类型)?_Java_Coldfusion_Error Handling_Gzip_Binary Data - Fatal编程技术网

如何修复Coldfusion cfcontent中的属性验证错误(java.string.lang不支持变量类型)?

如何修复Coldfusion cfcontent中的属性验证错误(java.string.lang不支持变量类型)?,java,coldfusion,error-handling,gzip,binary-data,Java,Coldfusion,Error Handling,Gzip,Binary Data,我有一个Coldfusion应用程序,在其中生成HTML服务器端、压缩、手动gzip并作为cfcontent返回 看起来像这样: <cfsavecontent variable="renderedResults"> <cfoutput><p>Hello World</p></cfoutput> </cfsavecontent> <cfscript> compressedHTML = reRepl

我有一个Coldfusion应用程序,在其中生成HTML服务器端、压缩、手动gzip并作为cfcontent返回

看起来像这样:

<cfsavecontent variable="renderedResults">
    <cfoutput><p>Hello World</p></cfoutput>
</cfsavecontent>

<cfscript>
    compressedHTML = reReplace(renderedResults, "\>\s+\<", "> <", "ALL");
    compressedHTML = reReplace(compressedHTML, "\s{2,}", chr(13), "ALL");
    compressedHTML = reReplace(compressedHTML, "\s{2,}", chr(09), "ALL");
</cfscript>

<cfif cgi.HTTP_ACCEPT_ENCODING contains "gzip">
    <cfinvoke component="services.utils" method="gzip" stringToZip="#compressedHTML#" returnvariable="compressedHTML"></cfinvoke>   
    <cfheader name="Content-Encoding" value="gzip">
</cfif>

<cfheader name="Content-Type" value="text/html; charset=ISO-8859-1">
<cfheader name="Content-Length" value="#len(compressedHTML)#" >
<cfcontent reset="no" variable="#compressedHTML#" />
<cfreturn  />

你好,世界


compressedHTML=reReplace(renderedResults,“\>\s+\尝试将变量转换为二进制,然后使用函数将其传递给cfcontent,如下所示

<cfcontent reset="no" variable="#ToBinary(compressedHTML)#" />

所以我想我必须检查我是否已经编码,如果没有,就用你的代码片段。听起来不错。如果我需要的时候能重现我的错误就好了。。。
<cfcontent reset="no" variable="#ToBinary(compressedHTML)#" />