2017-07-24 5 views
0

je mets mon projet sur un nouveau serveur où j'utilise ColdFusion 2016 mais il échoue lors de l'exécution des lignes suivantes:A défaut d'écrire les résultats de la requête dans un fichier csv ColdFusion

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

Dans ColdFusion 9, où mon ancien serveur est, il fonctionne très bien. Est-ce que quelqu'un sait pourquoi cela se produit et comment faire fonctionner cela pour ColdFusion 2016? Voici une image plus grande du code:

<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

J'ai oublié de mentionner que j'ai remarqué que toutes les pages qui échouent lorsqu'elles sont déplacées vers ColdFusion 2016 sont celles qui ont la possibilité de télécharger les données dans un fichier CSV !! – DoArNa

Répondre

0

j'attendre qu'il a quelque chose à voir avec une dépendance Java manquante sur le nouveau serveur

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

Pour que cela fonctionne, il faut que la classe FastResultsetToFile (ou JAR associé) est dans l'un des répertoires que ColdFusion utilise pour son chemin de classe, sinon il ne s'exécutera jamais.

+0

En fait, ça pourrait être ça. Savez-vous dans quel dossier de ColdFusion 2016 je vais devoir mettre ce fichier JAR? – DoArNa

+0

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