Java スニペットの未初期化変数または NullPointerException

ビジネス・プロセスで未初期化変数を使用すると、さまざまな例外が発生します。

症状

次のような例外が発生します。
  • 変数の内容を読み取ったり操作したりする Java スニペットまたは Java 式の実行時に、NullPointerException がスローされます。
  • assign、invoke、reply、または throw アクティビティーの実行時に、BPEL の標準障害「uninitializedVariable」(メッセージ CWWBE0068E) がスローされます。

理由

ビジネス・プロセスのすべての変数は、プロセスが開始されるときに NULL 値を持っており、それらの変数は事前初期化されません。 Java スニペットまたは Java 式の内側で未初期化変数を使用すると、NullPointerException が発生します。

解決方法

変数は、使用する前に初期化する必要があります。これは、assign アクティビティーで実行できます。例えば、変数は assign の to-spec に現れる必要があります。あるいは、Java スニペットの内側で変数を初期化することが可能です。


ご利用条件 |


(c) Copyright IBM Corporation 2005, 2006.
本製品では Eclipse テクノロジーが採用されています。(http://www.eclipse.org)