以下のアドバイスを使用して、サンプルを実行または削除する際に生じる可能性のある共通問題の解決に役立ててください。
以下の説明を使用して、問題を診断します。
問題 | 理由 | 提案されている解決策 |
---|---|---|
入力メッセージが IN キューに留まっている。 | ブローカー、キュー・マネージャー、リスナー、またはメッセージ・フロー自体が停止しています。 | すべてのコンポーネントが稼働していること、キュー・マネージャーのリスナーがキュー・マネージャーのポートで listen していることを確認します。 実行されていないコンポーネントを開始します。 |
メッセージ・フローは、IN キューに未確認のメッセージが既にあるので処理できません。 | WebSphere MQ Explorer で、IN キューを右クリックしてから、 をクリックします。 | |
入力メッセージが FAIL キューに入れられる。 | MQInput ノードが、メッセージの解析に使用すべきパーサーを識別できません。 | ワークベンチ、または SupportPac IH03 で提供されている RfhUtil ツールでエンキュー機能を使用している場合、ツールのフィールド内にすべての必要なメッセージ・ヘッダー情報を入力しなければなりません。 mqsiput.exe ツールを使用している場合、ヘッダー情報をメッセージ・ファイル自体に追加する必要があります。 |
入力メッセージが SYSTEM.DEAD.LETTER.QUEUE に入れられる。 | 入力メッセージが本来配置されるべきキューが存在しません。 | このサンプルに必要なすべてのキューが作成されていることを確認してください。 |
いずれのキューにも入力メッセージが見つからない。 | WebSphere MQ Explorer 内の表示を最新表示していないか、一部のキューしか最新表示していません。 | WebSphere MQ Explorer 内のすべてのキューを最新表示するには、「キュー」フォルダーを右クリックしてから「最新表示」をクリックします。 フォルダー内のすべてのキューが最新表示されます。 |
別のノードに接続されていないターミナルに入力メッセージが渡されて、メッセージが破棄されました。 | すべてのノードが、このサンプルで必要とされているように相互に接続されていることを確認します。 | |
DB2® データベースを使用している場合に、入力メッセージが FAIL キューに入れられるか、データベースが見つからないというメッセージがイベント・ログに含まれるか、またはその両方。 | DB2 が実行されていません。 | DB2 コマンド・ウィンドウで、以下のコマンドを入力します。
DB2 が既に実行中の場合、以下のメッセージを受け取ります。
|
メッセージ・フローは、デフォルト・スキーマにないデータベース表にアクセスしようとしています。 デフォルト・スキーマの名前の判別には、データベースのアクセスに使用されるユーザー名がそのまま使用されます。 その表がデフォルト・スキーマにない場合、メッセージ・フローの ESQL で他のスキーマが指定されていないと、メッセージ・フローはデフォルト・スキーマでその表を探します。 | DB2 コマンド・ウィンドウで、以下のコマンドを入力します。
ここで、
|
|
DB2 データベースを Windows 上で除去しようとすると、以下のエラー・メッセージを受け取ります。 BIP9830I: DB2 データベース Your_database_name を削除しています。 BIP9835E: DB2 バッチ・コマンドがエラー・コード SQLSTATE=57019 で失敗しました。 データベースは作成/削除できませんでした。 エラー・コード SQLSTATE=57019 が DB2 バッチ・コマンドから戻りました。 |
照会を実行するために DB2 コントロール・センターを使用している場合、データベースに対して接続が開きます。 この接続は、DB2 コントロール・センターが閉じるまで開いたままであり、コントロール・センターが閉じると終了します。 | DB2 コントロール・センター・アプリケーションを閉じます。 サンプルを再び除去しようとする場合には、「はい」をクリックします。 |
あらかじめ作成されているテスト・クライアントのシナリオを使用して Web サービス・サンプルを実行すると、ハングして、タイムアウトになる。 | この問題は、SOAPInput ノードを SOAPRequest ノードから呼び出しているときに発生します。 Web サービスが使用するデフォルトのポートは 7800 であり、SOAPRequest ノードは、そのポートを使用するようにセットアップされています。 ところが、そのポートが別のサンプルなどによって既に使用されている場合は、ポート番号が自動的に 1 ずつ増えることになります。 したがって、デフォルトのポートもそれに合わせて変更しなければなりません。 |
以下の mqsireportproperties コマンドを 1 行で実行して、プロバイダー側の実行グループが使用しているポートを確認します。
sampleExecutionGroup は、実行中のサンプル用の該当する実行グループです。
SOAPRequest ノードが使用しているポートを、プロバイダー側のフローを呼び出すための正しいポートになるようにするには、SOAPRequest ノードのポートを、プロバイダー側の実行グループが使用しているポートに変更する必要があります。そのためには、以下の手順を実行します。
TCP/IP モニターをセットアップしてある場合、Web サービス・プロバイダーが使用しているポートを既に確認しているはずですが、それでも、コンシューマー側から TCP/IP モニターにメッセージを送信するための構成を行い、BAR ファイルの再ビルドと再デプロイを実行することが必要になります。 あるいは、サンプルを一度に 1 つずつデプロイするために、同じポートを使用しているサンプルのいずれかを除去する、という方法もあります。 |
一部のサンプルでは、テスト・クライアントの XML 出力の形式が、資料に記載されている形式とは異なる形式で表示されることがある。 | どの場合も出力データは同じですが、形式が異なっています。 | テスト・クライアントのメニューから「ソースとして表示」または「XML 構造として表示」を選択することにより、出力の形式を変更できます。 |