2017-11-03 21 views
1

私はOSB 11gでサービスを設定しました。何らかの理由でOSB経由でサービスを呼び出すと、応答として同じ正確な要求XMLペイロードが取得されます。 SOAPUIログに200個のステータスコードが表示されますが、なぜ応答ペイロードが表示されるのかわかりません。OSB 11gは応答と同じ要求ペイロードを返します

スタックトレースは表示されません。それ以外の方法がない場合は、ここに掲載します。これを解決する方法に関するガイダンス。

下記のスクリーンショットに示すように、プロキシサービスからビジネスサービスへのルート。

enter image description here

あなたが記述何おかげ

+1

リターンパイプラインで$ bodyを置き換えましたか?プロキシパイプラインがどこにもルーティングしない場合、それは何かに設定されていない限り、一番下に達し、応答として応答を返します。 –

+0

プロキシからビジネスサービスにヒットするルートを設定しました。 – David

答えて

0

は、パイプラインのデフォルトの動作です。 デフォルトルートノードは、要求を応答として反映するエコーノードです。

「Oracle Service Bus Documentation」を参照してください。段落2.2.3 here

+0

KarelHUsaこれを修正するにはどうすればよいですか? – David

+0

ルートノードはすでに設定されています。 – David

+0

あなたがしたことを投稿できますか? – KarelHusa

0

KarelHusaのanswerで述べたように、エコーアクションは空のパイプラインのデフォルトアクションです。残念ながら、これは常にそうではありません。 OSBで作業している間、私は応答として要求ペイロードを取得した少なくとも2つの状況がありました。

プロジェクトのストレステスト中に最初の状況が発生しました(並列スレッドからOSBに要求を送信していました) - 多くの並列要求が到着したときに、OSBは要求ペイロードを応答として返しました。

第2の状況は、「より明白」だった - OSBサーバーが代わりに「を実行」の状態にadmin "に捕まってしまった(これはデータベースの問題に、ウェルがhereを説明) - この場合にはエラーがログファイルに記録された(ただし明記そのJMS接続には到達できません)。

私がこの回答を指摘したいのは、無効なパイプライン/ルート設定では必ずしも問題ではないということです。根本的な原因がある場合もありますし、サーバーだけでなくすべてのログファイルをチェックする価値があります。特定のサーバーノードのログ。

関連する問題