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. All rights reserved.
(c) Copyright IBM Japan 2006
このインフォメーション・センターでは、Eclipse テクノロジー (http://www.eclipse.org) が採用されています。