ColdFusion例外ヘルプ:coldfusion.runtime.NoOperScopeをcoldfusion.runtime.ApplicationScopeにキャストできません
-
03-07-2019 - |
質問
次のスニペットのCFINVOKEARGUMENT行によって例外原因が発生しています:
<CFOUTPUT query="cfmx.Messages"><CFSILENT>
<CFINVOKE component="com_VUI_RemoveIllegalChars" method="formatString" returnvariable="cfmx.formattedMessage">
<CFINVOKEARGUMENT name="inString" value="#TTSText#">
</CFINVOKE>
</CFSILENT>
例外の正確なテキストは次のとおりです。
タイプのオブジェクトのキャストエラー coldfusion.runtime.NoOperScopeはできません にキャストされる coldfusion.runtime.ApplicationScopeに 互換性のないタイプ。これは通常 Javaのプログラミングエラーを示します。 それはあなたが で異物を使用しようとしました それが設計されたものとは異なる方法。 coldfusion.runtime.NoOperScopeはできません にキャストされる coldfusion.runtime.ApplicationScope
注:
- cfmx.MessagesはCFPROCRESULTで返されるオブジェクトであり、CFDUMPを介して調べると、予想されるデータが含まれています
- com_VUI_RemoveIllegalCharsはまったく変更されていません
- TTSTextは結果セットの有効な列です
- これは、ColdFusionの構成の問題である可能性があると思われます
この問題を引き起こしている可能性があることに光を当てることができるすべての人に感謝します。
編集:例外ログからの完全なダンプ:
「エラー」、「jrpp-11」、「01/06/09」、「15:11:37」、「coldfusion.runtime.NoOperScope にキャストできません coldfusion.runtime.ApplicationScope ファイルの特定のシーケンス 含まれるまたは処理されるもの: C:\ Inetpub \ wwwroot \ ermsvui \ proc_playsitestatus.cfm、 行:30&quot; java.lang.ClassCastException: coldfusion.runtime.NoOperScopeはできません にキャストされる coldfusion.runtime.ApplicationScope で coldfusion.runtime.RuntimeServiceImpl.getFullTagName(RuntimeServiceImpl.java:625) で coldfusion.runtime.TemplateProxyFactory.getFullName(TemplateProxyFactory.java:1082) で coldfusion.runtime.TemplateProxyFactory.resolveName(TemplateProxyFactory.java:184) で coldfusion.runtime.TemplateProxyFactory.resolveName(TemplateProxyFactory.java:157) で coldfusion.runtime.TemplateProxyFactory.resolveName(TemplateProxyFactory.java:1267) で coldfusion.runtime.TemplateProxyFactory.resolveName(TemplateProxyFactory.java:1218) で coldfusion.tagext.lang.InvokeTag.doEndTag(InvokeTag.java:358) で cfproc_playsitestatus2ecfm1824676963.runPage(C:\ Inetpub \ wwwroot \ ermsvui \ proc_playsitestatus.cfm:30) で coldfusion.runtime.CfJspPage.invoke(CfJspPage.java:192) で coldfusion.tagext.lang.IncludeTag.doStartTag(IncludeTag.java:366) で coldfusion.filter.CfincludeFilter.invoke(CfincludeFilter.java:65) で coldfusion.filter.ApplicationFilter.invoke(ApplicationFilter.java:279) で coldfusion.filter.RequestMonitorFilter.invoke(RequestMonitorFilter.java:48) で coldfusion.filter.MonitoringFilter.invoke(MonitoringFilter.java:40) で coldfusion.filter.PathFilter.invoke(PathFilter.java:86) で coldfusion.filter.LicenseFilter.invoke(LicenseFilter.java:27) で coldfusion.filter.ExceptionFilter.invoke(ExceptionFilter.java:70) で coldfusion.filter.ClientScopePersistenceFilter.invoke(ClientScopePersistenceFilter.java:28) で coldfusion.filter.BrowserFilter.invoke(BrowserFilter.java:38) で coldfusion.filter.NoCacheFilter.invoke(NoCacheFilter.java:46) で coldfusion.filter.GlobalsFilter.invoke(GlobalsFilter.java:38) で coldfusion.filter.DatasourceFilter.invoke(DatasourceFilter.java:22) で coldfusion.CfmServlet.service(CfmServlet.java:175) で coldfusion.bootstrap.BootstrapServlet.service(BootstrapServlet.java:89) で jrun.servlet.FilterChain.doFilter(FilterChain.java:86) で coldfusion.monitor.event.MonitoringServletFilter.doFilter(MonitoringServletFilter.java:42) で coldfusion.bootstrap.BootstrapFilter.doFilter(BootstrapFilter.java:46) で jrun.servlet.FilterChain.doFilter(FilterChain.java:94) で jrun.servlet.FilterChain.service(FilterChain.java:101) で jrun.servlet.ServletInvoker.invoke(ServletIn
解決 2
設定「アプリケーション変数を有効にする」 ColdFusion設定で有効になりませんでした。
他のヒント
その行番号について確かですか?私はエラーがCFCメソッド自体にあると考えています。それを確認できますか。私が正しければ、CFCメソッドから行を投稿しますか?
com_VUI_RemoveIllegalChars
コンポーネントのコンテンツと TTSText
変数の値がなければ、ここで先に進むことはあまりありません。それらを投稿してもらえますか? (NDAなどの理由でできない場合があることを理解しています)