1

クエリ オブジェクトから Excel ファイルを作成するエクスポート CFC を別のアプリケーションからこのアプリケーションにコピーしましたが、何らかの理由で失敗します。同じサーバー上の他のいくつかのアプリケーションでまったく同じ cfc を使用しました。他のアプリケーションでは引き続き機能しますが、このアプリケーションでは次のエラーがスローされます「サーバーエラー: サーバーで内部エラーが発生し、要求を完了できませんでした。アプリケーションサーバーがビジーです。同時要求が多すぎるか、サーバーがまだあります。起動しています。」ユーザーに表示され、次のエラーが exception.log ファイルに記録されます。エラーは 78 行目で発生しますが、プログラムにその条件をスキップさせると、86 行目で失敗します。

例外ログ

"エラー","jrpp-5132","05/22/13","08:50:15","192194B933ECEF2F12871BE3F495FBA0","coldfusion.excel.Excel.formatCell(Lcoldfusion/excel/ExcelInfo;Lcoldfusion/runtime/Struct ;IIZ)V 含まれる、または処理されるファイルの特定のシーケンスは次のとおりです: /..pathtoapp../index.cfm、行: 79 " java.lang.NoSuchMethodError: coldfusion.excel.Excel.formatCell(Lcoldfusion/excel/ExcelInfo;Lcoldfusion /runtime/Struct;IIZ)V で coldfusion.runtime.CFPage.SpreadSheetFormatCell(CFPage.java:7318) で coldfusion.runtime.CFPage.SpreadSheetFormatCell(CFPage.java:7312) で cfpExport2ecfc955548417$funcQUERYTOEXCEL.runFunction(/..pathtoapp. ./plugins/pExport.cfc:79) coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:472) で

cfc ファイルのスニペット

<cfscript>
    //Create a new Excel spreadsheet object. 
theSheet = SpreadsheetNew( Arguments.FileName ); 

if( Arguments.Title neq "" ){
    /*LINE79*/ SpreadSheetFormatCell(theSheet, { bold="true", alignment="center" } ,1,1);
    SpreadsheetMergeCells(theSheet,1,1,1, ListLen(Arguments.Columns, '|' ) );
    SpreadsheetSetCellValue(theSheet,Arguments.Title,1,1);
}
</cfscript> 
<cfif Arguments.HeaderTitles neq "">
    <cfset counter = 1 >
    <cfloop index="Header" list="#Arguments.HeaderTitles#" delimiters="|">
        <cfset SpreadSheetFormatCell(theSheet, { bold="true", alignment="center" } ,2,counter) >
        <cfset SpreadsheetSetCellValue(theSheet, Header, 2, counter) >
        <cfset counter = counter + 1>
    </cfloop>
<cfelse>
    <cfset counter = 1 >
    <cfloop index="Header" list="#Arguments.Columns#" delimiters="|">
        <cfset SpreadSheetFormatCell(theSheet, { bold="true", alignment="center" } ,2,counter) ><!---LINE 86--->
        <cfset SpreadsheetSetCellValue(theSheet,Header,2,counter) >
        <cfset counter = counter + 1>
    </cfloop>
</cfif>

システム: Coldfusion 9、Coldbox 3.5 フレームワーク、Linux サーバー

何が起こっているかについての提案をいただければ幸いです。ありがとう。

4

0 に答える 0