第7章 コンテキスト

本章を読んでプロセス変数について理解してください。 プロセス変数はプロセスインスタンスに関連する情報を維持する鍵と値のペアです。

注記

ユーザーがコンテキストをデータベースに保存できなければならないため、 若干の制限が一部適用されます。

7.1. プロセス変数へのアクセス

org.jbpm.context.exe.ContextInstance は、 プロセス変数の中心的なインターフェースとなります。 次のように ContextInstance をプロセスインスタンスより取得します。
ProcessInstance processInstance = ...;
ContextInstance contextInstance = 
	(ContextInstance) processInstance.getInstance(ContextInstance.class);
基本的な操作は次の通りです。
void ContextInstance.setVariable(String variableName, Object value);
void ContextInstance.setVariable(
	String variableName, Object value, Token token);

Object ContextInstance.getVariable(String variableName);
Object ContextInstance.getVariable(String variableName, Token token);
変数名は java.lang.String です。 デフォルトでは、 ビジネスプロセスマネージャは次の値タイプをサポートします( Hibernate と永続する他のクラスもサポートします)。
java.lang.Stringjava.lang.Boolean
java.lang.Characterjava.lang.Float
java.lang.Doublejava.lang.Long
java.lang.Bytejava.lang.Integer
java.util.Datebyte[]
java.io.Serializable 

注記

タイプのない null 値も永続的に保存できます。

警告

例外エラーの原因となるため、 他のタイプがプロセス変数に保存されている場合はプロセスインスタンスを保存しないでください。