2012-01-17 6 views
0

私はColdFusion 9.1.0を使用しています。ColdFusion 9でJavaエラーのヌルポインタに対処するには?

私は誰か他の人が後で開発したサイトの一部に取り組んでいます。誰かがなくなってしまって、ドキュメンテーションがありません。私はCF管理者にアクセスできますが、特定の問題に役立つものは何も見つかりません。

以下のコードでは、Javaオブジェクトが作成され(auth)、次の行にオブジェクトが参照されます。メソッド(runTransaction)、プロパティファイル(VARIABLES.PropsFile)、およびXML(VARIABLES.MyXML)の2つの変数がメソッドに渡されます。

<cfobject action="create" type="Java" class="CyberSource" name="auth"> 
<cfset VARIABLES.ResponseString = auth.runTransaction(VARIABLES.PropsFile,VARIABLES.MyXML)> 

オブジェクトが正常に作成されました。私はオブジェクトのクラスを変更すると、それが爆発するので、これを知っている! 「サイバーソース」に戻すと動作します。

プロパティファイルが存在することがわかりました。私はXMLが存在することを知っています。

The system has attempted to use an undefined value, which usually indicates a programming error, either in your code or some system code. 

Null Pointers are another name for undefined values. 

The error occurred in D:/inetpub/wwwroot/Watkins_OE-DEV/Test.cfm: line 63 

61 : <!--- CREATE JAVA OBJECT ---> 
62 : <cfobject action="create" type="Java" class="CyberSource" name="auth"> 
63 : <cfset VARIABLES.ResponseString = auth.runTransaction(VARIABLES.PropsFile,VARIABLES.MyXML)> 

は、あなたがこのエラーが実際に何を意味するのかについてどのような手掛かりを私に提供することができ、どこで、私は次になります。

私が取得エラーは、このですか?

EDIT:

私は私の問題が何であったか特定することはできませんが、私はそれを別の方法を解決歩き回りました。私は作業していたファイルを見つけてゆっくりと再構築し、途中で100回テストしました。

ヒントとヒントのおかげで多くの感謝!

+0

<!--- Change this to point to your property file ---> <cfset propsFile = "full_path_to/coldfusion/samples/cybs.properties"> <!--- Change this to point to your request file ---> <cffile action="Read" file="full_path_to/coldfusion/samples/xml/request.xml" variable="requestString"> <cfobject action="create" type="Java" class="CyberSource" name="auth"> <cfxml variable="requestDoc"> <cfoutput>#requestString#</cfoutput> </cfxml> <cfdump label="Request" var="#requestDoc#"> <cftry> <!--- make the call ---> <cfset responseString = auth.runTransaction(propsFile,requestString)> <!--- cast the response to xml ---> <cfxml variable="responseDoc"> <cfoutput>#responseString#</cfoutput> </cfxml> <cfdump label="Response" var="#responseDoc#"> <!--- exception handling ---> <cfcatch type="com.cybersource.ws.client.ClientException"> <cfoutput><b>Exception Message:</b> #cfcatch.message#</cfoutput><br><br> <cfdump label="com.cybersource.ws.client.ClientException" var=#cfcatch#> </cfcatch> <cfcatch type="com.cybersource.ws.client.FaultException"> <cfoutput><b>Exception Message:</b> #cfcatch.message#</cfoutput><br><br> <cfdump label="com.cybersource.ws.client.FaultException" var=#cfcatch#> </cfcatch> </cftry> 

いくつかのColdFusionサンプルはここにすべてのプラットフォームのJavaのzipダウンロードの内側にあります。 'と' '?それらは存在し、賢明に見えますか? – Tomalak

+0

はい、それらは存在し、すばらしいです。私はそれを見ることができるので、その存在をテストするためにfileExists()を使用したので、小道具ファイルが存在することを知っています。 XMLは私がページ上に作成したものです。私はそれを出力し、それをちょうどよく読むことができます。 –

+0

したがって、runTransaction()内でNullPointerExceptionが発生し、ColdFusionからたくさんのことができません(明らかに、 '/ 'を除いて)。そのJavaクラスをデバッグする必要があります。おそらく、特定のXMLノードがそこにあることを期待して、それをチェックせずに使用しますか? – Tomalak

答えて

関連する問題