このタスクを使用して、Business Process Choreographer データベースおよびデータ・ソースの問題を解決します。
ビジネス・プロセス・コンテナーとヒューマン・タスク・コンテナーは両方とも、データベースが必要です。データベースがない場合、ビジネス・プロセスおよびヒューマン・タスクを含むエンタープライズ・アプリケーションは機能しません。
- DB2® を使用している場合は、以下のようにします。
- DB2 Universal JDBC ドライバー・タイプ 4 を使用しており、Business Process Choreographer データ・ソースで接続をテストするとき、またはサーバーを始動するときに、"com.ibm.db2.jcc.a.re: XAER_RMERR : The DDM
parameter value is not supported. DDM parameter code point having unsupported
value : 0x113f DB2ConnectionCorrelator: NF000001.PA0C.051117223022" などの DB2 内部エラーが発生する場合は、以下のアクションを実行します。
- データ・ソースのクラス・パス設定を確認します。デフォルト・セットアップでは、WebSphere 変数 ${DB2UNIVERSAL_JDBC_DRIVER_PATH} により、universalDriver_wbi ディレクトリーにある WebSphere Process Server 組み込み DB2 Universal JDBC ドライバーを指すことができます。
- ドライバーのバージョンは、DB2 サーバー・バージョンと互換性がない場合があります。ご使用のデータベース・インストールからの元の db2jcc.jar ファイルを使用しており、WebSphere Process Server 組み込み DB2 Universal JDBC ドライバーではないことを確認します。必要な場合は、元の db2jcc.jar ファイルを指すように、WebSphere 変数 ${DB2UNIVERSAL_JDBC_DRIVER_PATH} の値を変更します。
- サーバーを再始動します。
- DB2 インスタンスの db2diag.log ファイルに、以下に示す ADM5503E のようなメッセージが含まれている場合:
2004-06-25-15.53.42.078000 Instance:DB2 Node:000
PID:2352(db2syscs.exe) TID:4360 Appid:*LOCAL.DB2.027785142343
data management sqldEscalateLocks Probe:4 Database:BPEDB
ADM5503E インテント "X" をロックするための "GRAALFS .ACTIVITY_INSTANCE_T" 上での "10" 個の
ロックのエスカレーションは失敗しました。SQLCODE は "-911" です。
(ADM5503E The escalation of "10" locks on table "GRAALFS .ACTIVITY_INSTANCE_T" to lock
intent "X" has failed. The SQLCODE is "-911")
LOCKLIST 値を増やします。
例えば、この値を 500 に設定するには、以下の DB2 コマンドを入力します。db2 UPDATE DB CFG FOR BPEDB USING LOCKLIST 500
これにより、パフォーマンスが大きく向上します。
- デッドロックを回避するには、データベース・システムが十分なメモリー (特にバッファー・プール用) を使用するように構成されているか確認します。DB2 の場合、DB2 Configuration Advisor を使用して、ご使用の構成に合った値を判別します。
- データ・ソースのインプリメンテーション・クラス COM.ibm.db2.jdbc.DB2XADataSource に言及するエラーが発生する場合は、以下のようにします。
- server.policy ファイルで使用されているすべての WebSphere 環境変数が、正しく設定されていることを確認します。例えば、DB2_INSTALL_ROOT と DB2_JDBC_DRIVER_PATH です。
- ご使用の JDBC プロバイダーのクラス・パス定義が正しいこと、および項目が 2 つ存在しないことを確認します。
- コンポーネント管理認証別名が、cellName/BPEAuthDataAliasdbType_Scope に設定されていることを確認します。ここで、cellName はセルの名前、dbType はデータベース・タイプ、および Scope は定義のスコープです。
- Cloudscape™ を使用している場合、以下のようにします。
- Linux または UNIX システムで「Too many open files」エラーが発生した場合は、使用可能なファイル・ハンドルの数を例えば 4000 以上に増やします。
使用可能なファイル・ハンドルの数を増やす方法について詳しくは、オペレーティング・システムの資料を参照してください。
- Cloudscape ツールを起動しようとすると「Java™ クラスが見つかりません (Java class not found)」という例外が発生する場合は、Java 環境が設定されているか、および classpath 環境変数に以下の JAR ファイルが含まれているか確認します。
- db2j.jar
- db2jtools.jar
- db2jcc.jar
- db2jcview.jar
- Cloudscape ツール (ij または cview など) を使用して Cloudscape データベースに接続できない場合で、以下の例外が発生する場合:
エラー XJ040: データベース 'c:¥WebSphere¥AppServer¥profiles¥profile_name¥databases¥BPEDB' の開始に
失敗しました。詳細については、次の例外を参照してください。
(ERROR XJ040: Failed to start database
'c:¥WebSphere¥AppServer¥profiles¥profile_name¥databases¥BPEDB',
see the next exception for details.)
エラー XSDB6: Cloudscape の別のインスタンスがすでにデータベース
c:¥WebSphere¥AppServer¥profiles¥profile_name¥databases¥BPEDB をブートしている可能性があります。
(ERROR XSDB6: Another instance of Cloudscape may have already booted the database
c:¥WebSphere¥AppServer¥profiles¥profile_name¥databases¥BPEDB.)
Cloudscape データベースにアプリケーションが一度に 1 つしかアクセスできないため、これらのツールを使用する前に WebSphere® Application Server を停止する必要があります。
- プロセス・アプリケーションをクラスターにインストールしたにもかかわらず、データ・ソースに関連したエラーが発生する場合。 データ・ソース JNDI 名に、クラスター名が含まれていることを確認します。デフォルトのデータ・ソース JNDI 名 jdbc/BPEDB の場合は、アプリケーションのデータ・ソースの JNDI 名を jdbc/BPEDB_cluster_name に変更します。ここで、cluster_name は、アプリケーションがインストールされているクラスターの名前です。
- ビジネス・プロセスまたはヒューマン・タスクを含むエンタープライズ・アプリケーションのインストール中に、データベース・エラーが発生する場合。 エンタープライズ・アプリケーションをインストールすると、プロセス・テンプレートとタスク・テンプレートは Business Process Choreographer データベースに書き込まれます。ビジネス・プロセス・コンテナーが使用するデータベース・システムが実行されていてアクセス可能であることを確認します。
- 国別文字の使用に問題がある場合。 Unicode 文字セットをサポートするようデータベースを作成してあることを確認します。
- データベースの中でテーブルまたはビューが検出されない場合。 データ・ソースの認証別名を構成する場合、データベース表の作成時に使用したユーザー ID (またはデータベース表を作成するスクリプトの実行時に使用したユーザー ID) と同じユーザー ID を指定する必要があります。