【问题标题】:Failing to write the query results to a csv file ColdFusion无法将查询结果写入 csv 文件 ColdFusion
【发布时间】:2017-07-24 15:13:27
【问题描述】:

我将项目放在使用 ColdFusion 2016 的新服务器上,但在运行以下行时失败:

<cfset fastFileWriter = createObject("java", "FastResultsetToFile")>
<cfset fastFileWriter.exportResultsetToFile(myQuery, "#TempFile#", ',', "UTF-8")> 

在我的旧服务器所在的 ColdFusion 9 中,它运行良好。有谁知道为什么会发生这种情况以及如何使其适用于 ColdFusion 2016? 这是代码的大图:

<cfset yopath = "#application.masterpath#/platform_a/reports/pods/#pid#" />
<cfset acfile = "outbound_export_#session.callmeasurement_uid#.csv" />
<cfset TempFile = "#yopath#/#acfile#">

<cfif FileExists(TempFile)>
    <cffile action="delete" file="#TempFile#" >
</cfif>

<cfset myQuery = QueryNew("Team_Member, Calls, Unique, Live_Connections, Rescued_Calls")>

<cfloop query = "pull_staff">
    <cfset newrow = QueryAddRow(myQuery,1)>
    <cfset temp = QuerySetCell(myQuery, 'Team_Member', #lename#)>
    <cfset temp = QuerySetCell(myQuery, 'Calls', #all_calls#)>
    <cfset temp = QuerySetCell(myQuery, 'Unique', #unique_calls#)>
    <cfset temp = QuerySetCell(myQuery, 'Live_Connections', #live_convo#)>
    <cfset temp = QuerySetCell(myQuery, 'Rescued_Calls', #rescued#)>
</cfloop>

<!--- The code is running just fine up to this point. I used a cfdump to check the query "pull_staff" and it is returning the right results with correct column names --->
<cfset fastFileWriter = createObject("java", "FastResultsetToFile")>
<cfset fastFileWriter.exportResultsetToFile(myQuery, "#TempFile#", ',', "UTF-8")>

【问题讨论】:

  • 我忘了提到,我注意到所有在移到 ColdFusion 2016 时失败的页面都是可以选择将数据下载到 CSV 文件的页面!!

标签: coldfusion-9 coldfusion-2016


【解决方案1】:

我认为这与新服务器上缺少 Java 依赖项有关

<cfset fastFileWriter = createObject("java", "FastResultsetToFile")>

为此,它要求 FastResultsetToFile 类(或相关 JAR)位于 ColdFusion 用于其类路径的目录之一中,否则它将永远不会运行。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2023-04-04
  • 2016-09-07
  • 1970-01-01
  • 1970-01-01
  • 2014-04-27
  • 1970-01-01
  • 2013-09-24
  • 1970-01-01
相关资源
最近更新 更多