2017-07-24 290 views
0

我把我的項目中,我使用的ColdFusion 2016年新的服務器上,但在運行以下行是失敗的:無法寫入查詢結果導出爲CSV文件的ColdFusion

<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")> 
+0

我忘了提及我注意到所有移到ColdFusion 2016時失敗的頁面都可以選擇將數據下載到CSV文件! – DoArNa

回答

0

我希望它是與丟失的Java依賴新的服務器

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

對於這個工作它要求FastResultsetToFile類(或相關的JAR)位於ColdFusion用於其類路徑的其中一個目錄中,否則它將永遠不會運行。

+0

其實可能就是這樣。你知道在ColdFusion 2016的哪個文件夾中,我將不得不放置該JAR文件嗎? – DoArNa

+0

https://stackoverflow.com/questions/23926821/how-do-you-use-java-files-in-coldfusion –