0

次のエラー メッセージが表示されます。ハンドラー ディレクトリに Uploads.cfc ハンドラーを作成済みです。すべてを確認しましたが、解決策が見つかりません。

エラーの種類: HandlerService.EventHandlerNotRegisteredException : [該当なし]

エラー メッセージ: イベント: アップロードは有効な登録済みイベントではありません。

Uploads.cfc コードは次のとおりです。

<!--- Default Action --->
<cffunction name="index" returntype="string" output="false" hint="My main event">
    <cfargument name="event">
    <cfargument name="rc">
    <cfargument name="prc">  
    
    <cfobject component="model.Uploader" name="fileUploader">
    <cfset filesJson = fileUploader.Upload(rc.file)>
    
    <cfreturn filesJson>
</cffunction>

解決策を教えてください。

4

3 に答える 3

3

CF サーバー全体を再起動する必要はありません。ColdBox を再初期化するだけです。URLに?fwreint=またはを追加するだけです。?fwreint={password}パスワードはColdBox.cfc「reinitpassword」に設定します。ColdBox.cfc非実稼働環境でハンドラーをキャッシュしないように構成することもできます。

ColdBox 3.6 以降を使用している場合は、event, rc and prcもう定義する必要はありません。

<cffunction name="index" returntype="string" output="false" hint="My main event">
    <cfobject component="model.Uploader" name="fileUploader">
    <cfset filesJson = fileUploader.Upload(rc.file)>
    <cfreturn filesJson>
</cffunction>

第二に、その場でオブジェクトを作成する代わりに、WireBoxを使用する必要があります。variables最後に、関数に固有の変数をハンドラー CFC ファイルのスコープに定義しないでください。それらの変数が「関数ローカル」であることを確認するために、それらのプレフィックスlocalを付けます。それらを使用している特定の関数でのみ使用できます。

<cffunction name="index" returntype="string" output="false" hint="My main event">
    <cfset local.fileUploader = getModel("Uploader") >
    <cfset local.filesJson = fileUploader.Upload(rc.file)>
    <cfreturn local.filesJson>
</cffunction>
于 2014-06-09T19:39:28.600 に答える
2

私も過去に同じ問題に遭遇しました。ColdFusion アプリケーション サーバーを再起動してみてください。

于 2014-06-09T19:12:18.347 に答える