![]() ![]() ![]() ![]() |
Oracle Service Bus は、異種サービス間での対話の接続、中継、および管理のために設計されたエンタープライズ規模のサービス バスです。Oracle Service Bus を使用すると、迅速なサービス コンフィグレーション、統合、およびデプロイメントが可能になり、SOA 全体の共有サービスの管理が容易になります。
Oracle Service Bus は、SOAP 1.1 および 1.2、HTTP、JMS、SMTP/POP/IMAP、FTP、SSL、XML 1.0、XML スキーマ、WSDL 1.1、WSRP 1.0、WS-Security といったさまざまなメッセージングの標準への準拠をサポートしています。
この節では、Oracle Service Bus の相互運用性について説明します。内容は以下のとおりです。
ベンダ オペレーティング システム、JDK、ハードウェア、およびデータベースのサポートに関する情報については、『Oracle Service Bus でサポート対象のコンフィグレーション』を参照してください。
Oracle Service Bus では、次の標準と実装がサポートされます。
|
|
|
|
|
|
|
|
注意 : | 相互運用性のシナリオをサポートするために必要になる場合があるパッチまたは更新に関する最新情報については、「Oracle Service Bus リリース ノート」を参照してください。 |
Oracle Service Bus は、次の表に示すプラットフォームと相互運用します。
|
||
|
||
|
||
Axis で生成された RPC エンコード WSDL を Oracle Service Bus にインポートすると、解決の必要な参照が WSDL に含まれることを示す警告メッセージが表示される場合があります。
その場合、インポートされた WSDL の構造ビューを Oracle Service Bus Console の [WSDL の表示] ページで開くと、[インポート] セクションに未解決のスキーマ インポートが表示されます。
この問題は、Oracle Service Bus 環境で WSDL を使用する機能に影響しません。この警告が表示されないようにするには、WSDL ファイルから未解決のスキーマを削除します。
Axis で生成された WSDL には、空の文字列に初期化された SOAPAction 属性が含まれます。この WSDL を使用して Oracle Service Bus ビジネス サービスをコンフィグレーションすると、「SOAPAction がありません」エラーが発生して、この Web サービスへの呼び出しが失敗します。
この問題を回避し、Oracle Service Bus から Axis への Web サービスの呼び出しが正常に行われるようにするには、プロキシ サービスのメッセージ フローに転送ヘッダをコンフィグレーションする必要があります。具体的には、転送ヘッダを設定要求アクションをメッセージ フローのルート内に追加し、[パイプラインを介してすべてのヘッダを渡す] オプションを有効にする必要があります。
回避策を実施した場合でも、この問題によって Oracle Service Bus テスト コンソールからの呼び出しが失敗します (「SOAPAction がありません」エラーが発生します)。テスト コンソールからの呼び出しが機能するようにするには、メッセージ フローのルートの転送ヘッダを設定要求アクションに SOAPAction HTTP
ヘッダを設定する必要があります。
ドキュメント リテラル タイプおよび RPC エンコード タイプの Web サービスでは、一方向の操作を呼び出すと、ステータス コード「202 OK」と共に空の HTTP 応答が Axis からクライアントへ送信されることが予期されます。しかし、Axis からは、ステータス コード「200 OK」と共に、空でない HTTP 応答が送信されます。この HTTP 応答の Body には、空の SOAP エンベロープが含まれます。
その結果、予期された結果に反して、Oracle Service Bus のプロキシ サービスまたはビジネス サービスからクライアントへ同じ応答コード「200 OK」が送信されます。
ドキュメント リテラル タイプおよび RPC エンコード タイプの Web サービスでは、エラーが発生する一方向の操作を呼び出すと、ステータス コード「202 OK」と共に空の HTTP 応答が Axis からクライアントへ送信されることが予期されます。しかし、Axis からは、ステータス コード「500 Internal Server Error」と共に、空の SOAP エンベロープを Body とする空ではない HTTP 応答が送信されます。
その結果、予期された結果に反して、Oracle Service Bus のプロキシ サービスまたはビジネス サービスからクライアントへ同じ応答「500 Internal Server Error」が送信されます。
ドキュメント リテラル タイプおよび RPC エンコード タイプの Web サービスでは、一方向の操作を呼び出すと、ステータス コード「202 OK」と共に空の HTTP 応答が WebSphere からクライアントへ送信されることが予期されます。しかし、WebSphere からは、ステータス コード「200 OK」と共に、空でない HTTP 応答が送信されます。この HTTP 応答の Body には、空の SOAP エンベロープが含まれます。
その結果、予期された結果に反して、Oracle Service Bus のプロキシ サービスまたはビジネス サービスからクライアントへ同じ応答コード「200 OK」が送信されます。
![]() ![]() ![]() |