Oracle WebLogic Server WebLogic Webサービスの紹介

12c リリース1 (12.1.1)

B65941-02(原本部品番号:E24963-02)

目次

タイトルおよび著作権情報

はじめに

- ドキュメントのアクセシビリティについて

- 表記規則

1 WebLogic Webサービスの概要

- Webサービスとは

- Webサービスを使用する理由

- Webサービス・タイプ

- JAX-WSまたはJAX-RSのいずれかを選択する際の判断基準

- WebLogic Webサービスを実装するためのロードマップ

- このリリースでの新機能と変更点

2 サンプルと関連情報

- WebLogic Webサービス開発者向けサンプル

- WebLogic Server配布キットのWebサービス・サンプル

- Avitek Medical Recordsアプリケーション(MedRec)とチュートリアル

- ダウンロード可能な他のWebサービス・サンプル

- WebLogic Webサービス・ドキュメント・セット

- 関連ドキュメント - WebLogic Serverアプリケーションの開発

3 Microsoft WCF/.NETとの相互運用性

- 基本データ型の相互運用性ガイドライン

- Basic Profileの相互運用性ガイドライン

- Web Services Reliable Secure Profileの相互運用性ガイドライン

- WS-Securityの相互運用性ガイドライン

- WS-SecurityPolicyの相互運用性ガイドライン

- WS-SecureConversationの相互運用性ガイドライン

- SignedInfoから参照するSAMLアサーションの使用

4 WebLogic Webサービスでサポートされる機能および基準

- JAX-WS 2.2 RI/JDK 7.0の拡張に関する注意事項

- Apache XMLBeans 2.0

- Java API for RESTful Web Services (JAX-RS) 1.1

- Java API for XML Registries (JAXR) 1.0

- Java API for XML-based RPC (JAX-RPC) 1.1

- Java API for XML-based Web Services (JAX-WS) 2.2

- Java Architecture for XML Binding (JAXB) 2.2

- JSR 109: Implementing Enterprise Web Services 1.3

- Security Assertion Markup Language (SAML) 2.0および1.1

- Security Assertion Markup Language (SAML) Token Profile 1.1および1.0

- Simple Object Access Protocol (SOAP) 1.1および1.2

- SOAP with Attachments API for Java (SAAJ) 1.3

- Web Application Description Language (WSDL) 2009 Membership Submission

- Web Services Addressing (WS-Addressing) 1.0および2004/08 Member Submission

- Web Services Atomic Transaction (WS-AtomicTransaction) Version 1.2、1.1、および1.0

- Web Services Coordination (WS-Coordination) Version 1.2、1.1、および1.0

- Web Services Description Language (WSDL) 1.1

- Web Services MakeConnection 1.1

- Web Services Metadata for the Java Platform 2.0 (JSR-181)

- Web Services Policy Attachment (WS-Policy Attachment) 1.5および1.2

- Web Services Policy Framework (WS-Policy) 1.5および1.2

- Web Services Reliable Messaging (WS-ReliableMessaging)

- Web Services Reliable Messaging Policy Assertion (WS-RM Policy)

- Web Services Secure Conversation Language (WS-SecureConversation)

- Web Services Security (WS-Security) 1.1および1.0

- Web Services Security Policy (WS-SecurityPolicy) 1.3

- Web Services Trust Language (WS-Trust)

- WebLogic Webサービスでサポートされるその他の仕様

Oracle® Fusion Middleware

Oracle WebLogic Server WebLogic Webサービスの紹介

12c リリース1 (12.1.1)

B65941-02(原本部品番号:E24963-02)

2012年1月

相互運用性および標準情報を含め、Oracle WebLogic Server Webサービスを紹介するソフトウェア開発者向けのドキュメントです。

Oracle Fusion Middleware Oracle WebLogic Server WebLogic Webサービスの紹介, 12c リリース1 (12.1.1)

B65941-02

Copyright © 2007, 2012, Oracle and/or its affiliates.All rights reserved.

このソフトウェアおよび関連ドキュメントの使用と開示は、ライセンス契約の制約条件に従うものとし、知的財産に関する法律により保護されています。ライセンス契約で明示的に許諾されている場合もしくは法律によって認められている場合を除き、形式、手段に関係なく、いかなる部分も使用、複写、複製、翻訳、放送、修正、ライセンス供与、送信、配布、発表、実行、公開または表示することはできません。このソフトウェアのリバース・エンジニアリング、逆アセンブル、逆コンパイルは互換性のために法律によって規定されている場合を除き、禁止されています。

ここに記載された情報は予告なしに変更される場合があります。また、誤りが無いことの保証はいたしかねます。誤りを見つけた場合は、オラクル社までご連絡ください。

このソフトウェアまたは関連ドキュメントを、米国政府機関もしくは米国政府機関に代わってこのソフトウェアまたは関連ドキュメントをライセンスされた者に提供する場合は、次の通知が適用されます。

U.S. GOVERNMENT RIGHTS Programs, software, databases, and related documentation and technical data delivered to U.S. Government customers are "commercial computer software" or "commercial technical data" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations.As such, the use, duplication, disclosure, modification, and adaptation shall be subject to the restrictions and license terms set forth in the applicable Government contract, and, to the extent applicable by the terms of the Government contract, the additional rights set forth in FAR 52.227-19, Commercial Computer Software License (December 2007).Oracle America, Inc., 500 Oracle Parkway, Redwood City, CA 94065.

このソフトウェアもしくはハードウェアは様々な情報管理アプリケーションでの一般的な使用のために開発されたものです。このソフトウェアもしくはハードウェアは、危険が伴うアプリケーション(人的傷害を発生させる可能性があるアプリケーションを含む)への用途を目的として開発されていません。このソフトウェアもしくはハードウェアを危険が伴うアプリケーションで使用する際、安全に使用するために、適切な安全装置、バックアップ、冗長性(redundancy)、その他の対策を講じることは使用者の責任となります。このソフトウェアもしくはハードウェアを危険が伴うアプリケーションで使用したことに起因して損害が発生しても、オラクル社およびその関連会社は一切の責任を負いかねます。

OracleおよびJavaはOracle Corporationおよびその関連企業の登録商標です。その他の名称は、それぞれの所有者の商標または登録商標です。

Intel、Intel Xeonは、Intel Corporationの商標または登録商標です。すべてのSPARCの商標はライセンスをもとに使用し、SPARC International, Inc.の商標または登録商標です。AMD、Opteron、AMDロゴ、AMD Opteronロゴは、Advanced Micro Devices, Inc.の商標または登録商標です。UNIXは、The Open Groupの登録商標です。

このソフトウェアまたはハードウェア、そしてドキュメントは、第三者のコンテンツ、製品、サービスへのアクセス、あるいはそれらに関する情報を提供することがあります。オラクル社およびその関連会社は、第三者のコンテンツ、製品、サービスに関して一切の責任を負わず、いかなる保証もいたしません。オラクル社およびその関連会社は、第三者のコンテンツ、製品、サービスへのアクセスまたは使用によって損失、費用、あるいは損害が発生しても、一切の責任を負いかねます。

はじめに

ここでは、このガイド『Oracle WebLogic Server WebLogic Webサービスの紹介』で使用されるアクセシビリティ機能および表記規則について説明します。

ドキュメントのアクセシビリティについて

Oracleのアクセシビリティについての詳細情報は、Oracle Accessibility ProgramのWebサイトhttp://www.oracle.com/pls/topic/lookup?ctx=acc&id=docaccを参照してください。

Oracleサポートへのアクセス

Oracleのお客様は、My Oracle Supportから電子サポートにアクセスできます。詳細情報はhttp://www.oracle.com/pls/topic/lookup?ctx=acc&id=infoか、聴覚に障害があるお客様はhttp://www.oracle.com/pls/topic/lookup?ctx=acc&id=trsを参照してください。

表記規則

このドキュメントでは次の表記規則を使用します。

規則

意味

太字

太字は、操作に関連するGraphical User Interface要素、または本文中で定義されている用語および用語集に記載されている用語を示します。

斜体

イタリックは、ユーザーが特定の値を指定するプレースホルダー変数を示します。

固定幅フォント

固定幅フォントは、段落内のコマンド、URL、サンプル内のコード、画面に表示されるテキスト、または入力するテキストを示します。

1 WebLogic Webサービスの概要

この章では、WebLogic Webサービスの概要について説明します。

この章の内容は以下のとおりです。

- Webサービスとは

- Webサービスを使用する理由

- Webサービス・タイプ

- JAX-WSまたはJAX-RSのいずれかを選択する際の判断基準

- WebLogic Webサービスを実装するためのロードマップ

- このリリースでの新機能と変更点

Webサービスとは

Webサービスとは、ネットワーク上の他のシステムからも利用できる1つのアプリケーションとしてパッケージ化された一連の関数です。ネットワークは企業イントラネットの場合もあれば、インターネットの場合もあります。Webサービスはほとんどのシステムに備わっている基本的な標準技術に基づいているため、分散システムを統合するきわめて優れた手段であるといえます。Webサービスは、Webベースの分散アプリケーション間で共有でき、Webベースの分散アプリケーションのコンポーネントとして使用することも可能です。カスタマ・リレーションシップ・マネージメント・システム、注文処理システム、その他の既存のバックエンド・アプリケーションなど、他のシステムはWebサービス関数を呼び出してデータをリクエストしたり、処理を実行することができます。

従来、ソフトウェア・アプリケーション・アーキテクチャは、メインフレームなどで動作するモノリシック・システムまたはデスクトップ上で動作するクライアント/サーバー・アプリケーションの2つのカテゴリに分けられていました。これらのアーキテクチャはそのアプリケーションの目的においては効率よく機能しますが、閉鎖的であり、その機能を新しいアプリケーションに簡単に組み込むことができませんでした。

そのため、ソフトウェア業界は、Web上で動的に対話する疎結合のサービス指向アプリケーションを発展させました。このアプリケーションは、大規模なソフトウェア・システムを小規模なモジュラ・コンポーネントまたは共有サービスに分解するものです。これらのサービスは別々のコンピュータ上に常駐することができ、多様な技術を使用して実装することができますが、XMLやHTTPなどの標準のWebプロトコルを使用してパッケージ化し、アクセス可能にすることができます。そのため、Web上のすべてのユーザーが簡単にアクセスできるようになります。

サービスの概念は新しいものではありません。RMI、COM、およびCORBAは、すべてサービス指向技術です。ただし、これらの技術に基づいたアプリケーションは、特定のベンダーの特定の技術を使用していることが要求されます。このような要件は一般に、アプリケーションの機能をネットワーク上の他のサービスに広く統合することを妨げるものとなります。この問題を解決するために、Webサービスは、異種環境から簡単にアクセスできるようにするための次のプロパティを共有するように定義されています。

- Webサービスは、幅広くサポートされているHTTPなどのWebプロトコルを介してアクセスされます。

- Webサービスは、XMLベースの記述言語を使って表現された、当該Webサービス自体についての情報を示します。

- Webサービスは、ほとんどのプログラミング環境や場合によっては人が生成または解析できる、単純なXMLメッセージを介してクライアント(エンドユーザー・アプリケーションまたはWebサービス)と通信します。

Webサービスを使用する理由

Webサービスの主な利点は、次のとおりです。

- 多様なハードウェアおよびソフトウェア・プラットフォームにわたる分散型アプリケーション間の相互運用性

- Webプロトコルを使用したファイアウォールによる、アプリケーションへの容易で幅広いアクセス

- 異機種分散型アプリケーションの開発を容易にするクロス・プラットフォーム、クロス言語データ・モデル(XML)

Webサービスは、XMLやHTTPなどの標準のWebプロトコルを使用してアクセスされるので、Web上の多様な異種アプリケーション(一般的にXMLおよびHTTPを理解する)は自動的にWebサービスにアクセスでき、相互の通信が可能になります。

これらの異なるシステムにはMicrosoft SOAP ToolKitクライアント、Java Platform, Enterprise Edition (Java EE)バージョン5アプリケーション、レガシー・アプリケーションなどがあります。アプリケーション作成に使用されているプログラミング言語は、Java、C++、Perlなどです。アプリケーションの相互運用性がWebサービスの目標であり、それは、公開されている業界標準をサービス・プロバイダがどれだけ忠実に遵守しているかによって左右されます。

Webサービス・タイプ

このリリースのWebLogic Serverは次のWebサービス・タイプをサポートしています。

- Java API for XML-Based Web services (JAX-WS) 2.2 Webサービス。詳細は、http://jcp.org/aboutJava/communityprocess/mrel/jsr224/index2.htmlを参照してください。Oracle WebLogic ServerのJAX-WS実装は、Glassfishコミュニティが開発したJAX-WS Reference Implementation (RI)を拡張したものです(https://jax-ws.dev.java.net/を参照してください)。

- Java API for RESTful Web Services (JAX-RS) 1.1 Webサービス。WebLogic Serverは、Jersey 1.9 JAX-RSリファレンス実装(RI)をサポートします。これは、http://jcp.org/en/jsr/summary?id=311で定義されるJSR-311 JAX-RS 1.1仕様の製品レベルの品質の実装です。

- Java API for XML-Based RPC 1.1 (JAX-RPC) Webサービス。詳細は、https://jax-rpc.dev.java.net/を参照してください。JAX-RPCは、レガシーな仕様と位置づけられ、これ以上の拡張は予定されていません。JAX-RPCは、APIおよびJavaプラットフォームでXML Webサービスをサポートするための規約を定義し、WS-I Basic Profileをサポートすることで、JAX-RPC実装間の相互運用性を高めています。

JAX-WSおよびJAX-RSは、優先Webサービス・タイプです。開発する種類の判断に関する詳細は、JAX-WSまたはJAX-RSのいずれかを選択する際の判断基準に関する項を参照してください。

JAX-WSおよびJAX-RSのいずれかを選択する際の判断基準

次の表は、JAX-WSとJAX-RSのいずれかを選択する際の検討事項に関するガイドラインを記載しています。JAX-WSおよびJAX-RSにサポートされる標準の比較については、第4章「WebLogic Webサービスでサポートされる機能および標準」も参照してください。

表1-1 JAX-WSおよびJAX-RPCのいずれかを選択する際の判断基準

使用する実行可能ファイル

次のシナリオを検討します。

JAX-WS

次のようなエンタープライズ・アプリケーション統合シナリオでは、JAX-WSを使用します。

- 高度なサービスの質(QoS)要件があります。

- Plain Old Java Objects (POJO)またはEnterprise JavaBeans (EJB)などのJavaコンポーネントでリモートでメソッドを呼び出す必要があります。

JAX-WSが、Oracleまたは他のSOAP Webサービス・ベンダーから他の基準ベースのSOAP Webサービスと相互運用します。

JAX-WSが安全性、信頼性などの基準を提供するWS-*プロトコルの完全セットをサポートし、WS-*プロトコルに準拠する他のクライアントやサーバーとの相互運用がより適切です。

JAX-RS

RESTfulスタイルの制約が望ましい場合には、Webによりサービスを統合するためにJAX-RSを使用します。これには、個別のクライアント/サーバー・アーキテクチャ、共通インタフェースなどがあります。RESTアーキテクチャのスタイルに関する制約の詳細なリストは、『RESTful Webサービスの開発』のRESTアーキテクチャ・スタイルの紹介に関する項を参照してください。

WebLogic Webサービスを実装するためのロードマップ

次の表に、WebLogic Webサービスを作成、デプロイ、および呼び出すための一般的なタスクのロードマップを示します。

注意:

Oracle WebLogic ServerのJAX-WS実装は、Glassfishコミュニティが開発したJAX-WS Reference Implementation (RI)を拡張したものです(https://jax-ws.dev.java.net/を参照)。JAX-WS仕様(JSR-224)で定義されている機能はすべて、Oracle WebLogic Serverでサポートされます。

また、JAX-WS RIにはGlassfishコントリビュータによって提供された様々な拡張があります。特に記載しないかぎり、JAX-WS RI拡張はOracle WebLogic Serverでの使用についてはサポートされません。

表1-2 WebLogic Webサービスを実装するためのロードマップ

タスク

詳細情報

サポートされる標準を確認する

第4章「WebLogic Webサービスでサポートされる機能および基準」

サンプルを実行する

- WebLogic Webサービス開発者向けサンプル

- JAX-WS Webサービスおよびクライアント

- RESTful Webサービス

- RESTful Webサービス・クライアント

- JAX-RPC Webサービスおよびクライアント

JAX-WSを使用してWebサービスを開発および管理する

- 『Oracle WebLogic Server JAX-WS Webサービス・スタート・ガイド』

- 『Oracle WebLogic Server JAX-WS Webサービスの高度な機能のプログラミング』

JAX-RSを使用してRESTful Webサービスを開発および管理する

RESTful Webサービスの開発

JAX-RPCを使用してWebサービスを開発および管理する

- 『Oracle WebLogic Server JAX-RPC Webサービス・スタート・ガイド』

- 『Oracle WebLogic Server JAX-RPC Webサービスの高度な機能のプログラミング』

Webサービスを保護する

- メッセージ・レベルのセキュリティの構成

- トランスポート・レベルのセキュリティの構成

- アクセス制御セキュリティの構成(JAX-RPCのみ)

アップグレード

『Oracle WebLogic Serverアップグレード・ガイド』のWebLogic Webサービスのアップグレードに関する項

このリリースでの新機能と変更点

このリリースで導入されたWebLogic Server Webサービスの新機能の一覧については、『Oracle WebLogic Serverの新機能』の「Webサービス」を参照してください。

2 サンプルと関連情報

この章では、WebLogic Webサービスの理解を深める上で参照可能なサンプルや関連情報について説明します。

この章の内容は以下のとおりです。

- WebLogic Webサービス開発者向けサンプル

- WebLogic Webサービス・ドキュメント・セット

- 関連ドキュメント - WebLogic Serverアプリケーションの開発

WebLogic Webサービス開発者向けサンプル

このドキュメントの他にも、様々なサンプル・コードがWebサービス開発者向けに用意されています。サンプルとチュートリアルではWebLogic Webサービスの動作が例示され、主要なWebサービス開発タスクを実行する実際的な手順が示されています。

Webサービスを使用する独自のアプリケーションをプログラミングする前に、Webサービス・サンプルを実行してみることをお薦めします。

WebLogic Server配布キットのWebサービス・サンプル

WebLogic Serverは、オプションとして、APIコード・サンプルをWL_HOME\samples\server\examples\src\examples\webservicesにインストールします(WL_HOMEは、WebLogic Serverの最上位インストール・ディレクトリです)。WebLogic Serverのスタート・メニューからサンプル・サーバーを起動して、サンプルとその実行手順に関する情報を確認できます。

Avitek Medical Recordsアプリケーション(MedRec)とチュートリアル

MedRecはWebLogic Serverに付属したエンドツーエンドのサンプルJava EEアプリケーションであり、一元的で独立した医療記録管理システムをシミュレートします。MedRecアプリケーションには、患者、医師、および管理者に対して、様々なクライアントを使用して患者のデータを管理するフレームワークが用意されています。

MedRecはWebLogic ServerとJava EEの機能を例示し、Oracle推奨のベスト・プラクティスを重要点として示します。MedRecはWebLogic Server配布キットに含まれており、Windowsマシンの「スタート」メニューからアクセスできます。Linuxなどのプラットフォームでは、WL_HOME\samples\domains\medrecディレクトリからMedRecを起動します。WL_HOMEは、WebLogic Serverの最上位インストール・ディレクトリです。アプリケーションのSpringバージョンはWL_HOME\samples\domains\medrec-springディレクトリにあります。

ダウンロード可能な他のWebサービス・サンプル

その他のAPIサンプルは、http://www.oracle.com/technetwork/indexes/samplecode/index.htmlからダウンロードできます。これらのサンプルには、Oracleで認定されたものと共に、共同開発者によって提示されたサンプルが含まれています。

WebLogic Webサービス・ドキュメント・セット

このドキュメントは、Webサービスに関するトピックを包括的に対象とする、さらに大きいWebLogic Webサービス・ドキュメント・セットの一部です。次の表に、このドキュメント・セットに含まれているドキュメントをまとめます。

表2-1 WebLogic Webサービス・ドキュメント・セット

このドキュメントは...

次のことを説明しています

『Oracle WebLogic Server WebLogic Webサービスの紹介』(このドキュメント)

WebLogic Webサービスの概要、サポートされる標準、相互運用性の情報、および関連するサンプルとドキュメント。

『Oracle WebLogic Server JAX-WS Webサービス・スタート・ガイド』

JAX-WSを使用して単純なWebLogic Webサービスをプログラミングする上で必要となる基本的な知識とタスクについて説明します。このガイドには、使用例およびサンプル、反復的な開発手順、一般的なJWSプログラミング手順、データ型情報、およびWebサービスの呼出し方が含まれています。

『Oracle WebLogic Server JAX-WS Webサービスの高度な機能のプログラミング』

コールバック、XMLカタログ、SOAPメッセージ・ハンドラなどの高度な機能を、JAX-WSを使用してプログラミングする方法ついて説明します。

RESTful Webサービスの開発

Java API for RESTful Web Services (JAX-RS)を使用して、Representational State Transfer (REST)アーキテクチャ・スタイルに準拠するWebLogic Webサービスを開発する方法。

『Oracle WebLogic Server JAX-RPC Webサービス・スタート・ガイド』

JAX-RPCを使用した簡単なWebLogic Webサービスのプログラミングに必要な基本的な知識およびタスク。このガイドには、使用例およびサンプル、反復的な開発手順、一般的なJWSプログラミング手順、データ型情報、およびWebサービスの呼出し方が含まれています。

『Oracle WebLogic Server JAX-RPC Webサービスの高度な機能のプログラミング』

Webサービスの信頼性のあるメッセージング、コールバック、会話形式のWebサービス、JMSトランスポートを使用したWebサービスの呼出し、SOAPメッセージ・ハンドラなどの高度な機能を、JAX-RPCを使用してプログラミングする方法について説明します。

『Oracle WebLogic Server WebLogic Webサービスの保護』

Webサービスのメッセージ・レベル(デジタル署名と暗号化)、トランスポート・レベル、アクセス制御のセキュリティをプログラミングおよび構成する方法について説明します。

『Oracle WebLogic Server Webサービス・リファレンス』

JWSアノテーション、Antタスク、信頼性のあるメッセージングWS-Policyアサーション、セキュリティWS-Policyアサーション、およびデプロイメント記述子に関するリファレンス情報を提供します。

関連ドキュメント - WebLogic Serverアプリケーションの開発

WebLogic Serverアプリケーションを開発、デプロイ、およびモニターするための包括的なガイドラインについては、次の表のドキュメントを参照してください

表2-2 関連ドキュメント - WebLogic Serverアプリケーションの開発

このドキュメントを確認してください...

次を行う方法を学習するには...

『Oracle WebLogic Serverアプリケーションの開発』

WebLogic Serverのコンポーネント(Webアプリケーション、EJBなど)やアプリケーションを開発します。

『Oracle WebLogic Server Webアプリケーション、サーブレット、JSPの開発』

WebLogic Serverにデプロイして実行するWebアプリケーション(サーブレット、JSPなど)を開発します。

『Oracle WebLogic Server Enterprise JavaBeansバージョン2.1のプログラミング』

WebLogic Serverにデプロイして実行するEJBを開発します。

『Oracle WebLogic Server XMLのプログラミング』

XML処理を含んだアプリケーションの設計と開発を行います。

『Oracle WebLogic Serverへのアプリケーションのデプロイ』

WebLogic Serverアプリケーションをデプロイします。このガイドは、アプリケーションの開発および本番デプロイメントの両方で使用します。

『Oracle WebLogic Serverへのアプリケーションのデプロイ』の本番デプロイメントのためのアプリケーションの構成に関する項

WebLogic Serverの本番環境にデプロイするアプリケーションを構成します。

『Oracle WebLogic Serverパフォーマンスおよびチューニング』

WebLogic Serverアプリケーションのパフォーマンスの監視と改善を行います。

『Oracle WebLogic Serverの理解』のシステム管理に関する項

WebLogic Serverとそれにデプロイされているアプリケーションを管理します。

3 Microsoft WCF/.NETとの相互運用性

この章では、Microsoft社とともに、WebLogic WebサービスがMicrosoft Windows Communication Foundation (WCF)/.NET 3.0、3.5、および4.0 Frameworkを使用して作成されたWebサービスにアクセスしたり、それを消費したり、またその逆もできることを確認するための相互運用性のテストを実施する方法について説明します。詳細は、http://msdn2.microsoft.com/en-us/netframework/default.aspxを参照してください。

表3-1では、JAX-WSおよびJAX-RPC Webサービスを使用して実施した相互運用性テストを説明します。

表3-1 実施した相互運用性テスト

領域

相互運用性ガイドライン

基本データ型と複合データ型

基本データ型の相互運用性ガイドライン

WS-I Basic Profile 2.0、1.2、および1.1

Basic Profileの相互運用性ガイドライン

注意: WS-I Basic Profile 2.0および1.2は、JAX-WSにのみ適用されます。WS-I Basic Profile 1.1は、JAX-WSおよびJAX-RPC Webサービスの両方に適用されます。

Web Services Reliable Secure Profile (WS-RSP) 1.0

Web Services Reliable Secure Profileの相互運用性ガイドライン

Web Services Security (WS-Security) 1.0および1.1

WS-Securityの相互運用性ガイドライン

Web Services Security Policy (WS-SecurityPolicy) 1.2

WS-SecurityPolicyの相互運用性ガイドライン

Web Services Secure Conversation Language (WS-SecureConversation) 1.3

WS-SecureConversationの相互運用性ガイドライン

Web Services Policy Framework (WS-Policy) 1.5

相互運用性の制約はありません。

Web Services Addressing (WS-Addressing) 0.9および1.0

なし

MTOM (メッセージ転送最適化メカニズム)

なし

SAMLアサーション

SignedInfoから参照するSAMLアサーションの使用

上記に加え、以下のような機能の組合せもテストしました。

- MTOMとWS-Security

- WS-ReliableMessagingおよびMTOM

- WS-ReliableMessaging 1.2およびWS-Addressing 1.0 (JAX-WS)

- WS-ReliableMessaging 1.1およびWS-Addressing 1.0 (JAX-WS)

- WS-ReliableMessaging 1.1およびWS-Addressing 0.9、1.0 (JAX-RPC)

- WS-ReliableMessaging 1.0およびWS-Addressing 0.9、1.0 (JAX-RPC)

- WS-ReliableMessaging 1.2およびWS-SecureConversation 1.4

- WS-ReliableMessaging 1.1およびWS-SecureConversation 1.3

- WS-ReliableMessaging 1.0およびWS-SecureConversation 1.3

- WS-Policy 1.5とWS-SecurityPolicy 1.2

以下の節では、テストにおいて特定された相互運用上の問題とガイドラインについて説明します。

基本データ型の相互運用性ガイドライン

Microsoft .NET 3.0/3.5でanyTypeクラスを使用している場合、どのJavaデータ型が返されるかは保証されません。特定のJavaデータ型を戻す必要がある場合は、anyTypeを使用しないようにしてください。

Basic Profileの相互運用性ガイドライン

WS-I Basic Profile 1.2および2.0のプロファイルは、WebLogic WebサービスJAX-WSおよびMicrosoft .NET Framework 4.0との間でテストされました。相互運用性の制約はありませんでした。

WS-I Basic Profile 1.1は、WLS JAX-RPCおよびMicrosoft .NET 3.0/3.5 Frameworkとの間でテストされました。このテストによって、Microsoft .NET 3.0/3.5は、Java Webサイトhttp://download.oracle.com/docs/cd/E17802_01/webservices/webservices/reference/tutorials/wsit/doc/DataBinding7.htmlで説明されている使用事例の文字列のBasic Profile 1.1セマンティクスを強制しないことが判明しました。

Web Services Reliable Secure Profileの相互運用性ガイドライン

WebLogic WebサービスおよびMicrosoft .NET WebのWeb Services Reliable Secure Profile実装は、次の警告を表示しますが、互換性があります。

- WS-ReliableMessagingセキュリティでは、WS-I Reliable Secure Profile Version 1.0 Working Group Draft仕様のガイドライン(http://www.ws-i.org/Profiles/ReliableSecureProfile-1.0.html)に従い、WS-SecureConversationを使用する必要があります。

- 非同期の信頼できるメッセージングおよびWS-SecureConversationまたはWS-Trustは、WebLogic WebサービスJAX-WSクライアントおよびMicrosoft .NETサービスに対してのみサポートされます。JAX-RPCクライアントではサポートされません。

WS-Securityの相互運用性ガイドライン

以下に、WS-Securityの相互運用性ガイドラインを示します。

- <sp:Strict>レイアウト・アサーション(下に表示)の使用は保証されません。

<sp:Layout>
<wsp:Policy>
<sp:Strict/>
</wsp:Policy>
</sp:Layout>

かわりに、次のように独自のポリシーを定義してください。

<sp:Layout>
<wsp:Policy>
<sp:Lax/>
</wsp:Policy>
</sp:Layout>

- 以下のアサーションは、Microsoft .NET 3.0/3.5ではサポートされません。

- UsernameTokenでのダイジェスト・パスワード

- <sp:EncryptedSupportingTokens>

- 要素レベルのシグネチャ

- 要素レベルの暗号化

- WS-Security 1.1の非対称バインディングのサポートは、Microsoft .NET 3.0/3.5では保証されません。

WS-SecurityPolicyの相互運用性ガイドライン

このリリースでは、WebLogic ServerおよびMicrosoft .NET 3.5はWeb Services Security Policy (WS-SecurityPolicy) 1.3をサポートします。Microsoft .NET 3.0では、SecurityPolicy仕様の2005年12月のドラフト・バージョンがサポートされています。

2005年12月のドラフト・バージョンでは、<sp:SignedEncryptedSupportingTokens>ポリシー・アサーションがサポートされていません。そのため、Microsoft .NET 3.0では、UsernameTokenを<sp:SignedSupportingTokens>ポリシー・アサーションで暗号化します。UsernameTokenを暗号化せずに<sp:SignedSupportingTokens>ポリシー・アサーションを使用する場合、WebLogic ServerとMicrosoft .NET Web Servicesは相互運用できません。

WS-SecureConversationの相互運用性ガイドライン

以下に、WS-SecureConversationの相互運用性ガイドラインを示します。

- セキュリティ上の必要性がないかぎり、<sp:EncryptBeforeSigning/>は使用しないことをお薦めします。かわりに、<sp:SignBeforeEncrypt>(デフォルト)を使用してください。

- WebLogic ServerのWebサービスではCookieモードの会話がサポートされますが、この機能はMicrosoft独自の実装であり、他のベンダーではサポートされない可能性があります。

- <sp:BootstrapPolicy>ポリシー・アサーションを使用する場合は、「WS-Securityの相互運用性ガイドライン」に定義されているガイドラインを考慮する必要があります。

- WS-SecurityPolicy仕様またはWS-SecureConversation仕様で定義されているWS-SecureConversationの取消しおよび更新をサポートする標準メソッドはありません。Microsoft .NETでWS-SecureConversationの取消しおよび更新をサポートするために使用されているメソッドには、WebLogic Server 10.xとの互換性がありません。そのため、以下の設定が必要になります。

- Microsoft .NETクライアントをWebLogic ServerのWebサービスと相互運用するには、サーバー側でsetCompatibilityPreference("msft")メソッドを使用し、WebサービスのセキュリティMBean経由でCompatibilityフラグを設定する必要があります。

- WebLogic ServerのWebサービス・クライアントを、Compatibilityフラグが設定されているWebLogic ServerのWebサービスと相互運用するには、次のようにクライアントでもこのフラグを設定する必要があります。

stub._setProperty(WLStub.POLICY_COMPATIBILITY_PREFERENCE,"msft");

たとえば、例3-1「JAX-WS Webサービス・クライアントでのMicrosoft .NET互換性フラグの設定」および例3-2「JAX-RPC Webサービス・クライアントでのMicrosoft .NET互換性フラグの設定」を参照してください。

SignedInfoから参照するSAMLアサーションの使用

SAMLアサーションが<wsee:Security>ヘッダーの<ds:Signature>要素の<ds:SignedInfo>要素で参照される場合、Microsoft .NETでは、<wsse:SecurityTokenReference>から参照されるSAMLアサーションをサポートしません。<wsse:SecurityTokenReference>の使用は、http://www.oasis-open.org/committees/download.php/16768/wss-v1.1-spec-os-SAMLTokenProfile.pdfで説明されているWS-Security仕様でのベスト・プラクティスとして定義されます。

Microsoft .NETとの互換性を確保するには、Webサービス・クライアント・コードで、WLStub.POLICY_COMPATIBILITY_PREFERENCEフラグをWLStub.POLICY_COMPATIBILITY_MSFTフラグに設定する必要があります。フラグを設定すると、SAMLアサーションは、SecurityTokenReferenceを使用せず、直接参照で署名されます。

次に、JAX-WS Webサービス・クライアントに対するMicrosoft .NET互換性フラグの設定方法の例を示します。

例3-1 JAX-WS Webサービス・クライアントでのMicrosoft .NET互換性フラグの設定

. . .
import weblogic.wsee.jaxrpc.WLStub;
. . .
public String test(String hello) throws Exception {
. . .
BindingProvider provider = (BindingProvider)port;
Map context = provider.getRequestContext();
. . .
. . .
context.put(WLStub.POLICY_COMPATIBILITY_PREFERENCE, WLStub.POLICY_COMPATIBILITY_MSFT);
try {
String result = port.getName(hello);
System.out.println("MSFT Result was: " + result);
return result;
} catch (Exception e) {
throw new RuntimeException (e);
}
}

次に、JAX-RPC Webサービス・クライアントに対するMicrosoft .NET互換性フラグの設定方法の例を示します。

例3-2 JAX-RPC Webサービス・クライアントでのMicrosoft .NET互換性フラグの設定

. . .
. . .
import weblogic.wsee.jaxrpc.WLStub;
. . .

@WebMethod()
public String callSamlHelloSV_WSS10_MSFT(String input) {
try {
System.out.println("Calling sayHello(" + input + ") with MSFT Ways");
((Stub)port)._setProperty(WLStub.POLICY_COMPATIBILITY_PREFERENCE,
WLStub.POLICY_COMPATIBILITY_MSFT);
String result = port.sayHelloSV_WSS10(input);
System.out.println("MSFT Result was: " + result);
return result;
}
catch (RemoteException e) {
throw new RuntimeException(e);
}
}

4 WebLogic Webサービスでサポートされる機能および基準

この章では、WebLogic Webサービスでサポートされる機能および基準を説明します。Webサービスの標準を定義する仕様の多くは、業界全体で幅広く使用できるように記述されています。そのため、Oracleによる特定の仕様の実装では、その仕様で考慮されているすべての使い方がサポートされていない場合もあります。

Oracleでは、Webサービス仕様の考え得るあらゆる使用事例をサポートするよりも、Webサービス・プラットフォームの相互運用性の方をより重要視しています。Web Services Interoperability Organizationの次の仕様に準拠し、それをWebサービス相互運用性の基準とみなしています。

- Basic Profile 2.0 (JAX-WSのみ): http://www.ws-i.org/Profiles/BasicProfile-2_0(WGD).html

- Basic Profile 1.2 (JAX-WSのみ): http://www.ws-i.org/Profiles/BasicProfile-1_2(WGAD).html

- Basic Profile 1.1 (JAX-WSおよびJAX-RPC):http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html

- Basic Security Profile 1.1 (JAX-WSおよびJAX-RPC):http://www.ws-i.org/Profiles/BasicSecurityProfile-1.1.html

- Reliable Secure Profile 1.0 (JAX-WSのみ):http://www.ws-i.org/Profiles/ReliableSecureProfile-1.0.html

このガイドでは、すべての仕様の要件を必ずしも説明しません。ただし、このガイドではこのような仕様の要件を超える機能について説明します。

次の表に、WebLogic Webサービスでサポートされる機能および指定をまとめます。

表4-1 WebLogic Webサービスでサポートされる機能および基準

機能

説明

JAX-WS

JAX-RPC

JAX-RS

メタデータ・アノテーションに基づくプログラミング・モデルとランタイム・アーキテクチャ

JSR 109: Implementing Enterprise Web Services: WebLogic ServerなどのJava EEアプリケーション・サーバーで実行するWebサービスをJavaで実装するためのプログラミング・モデルおよびランタイム・アーキテクチャ。「JSR 109: Implementing Enterprise Web Services 1.3」を参照してください。

バージョン1.3

バージョン1.3

なし

メタデータ・アノテーションに基づくプログラミング・モデルとランタイム・アーキテクチャ

Web Services Metadata for the Java Platform 2.0 (JSR-181): Webサービスのプログラミングを容易にするためにJava Webサービス(JWS)ファイルで使用できる標準アノテーション。「Web Services Metadata for the Java Platform 2.0 (JSR-181)」を参照してください。

サポート

サポート

なし

プログラミングAPI

Java API for XML-based Web Services (JAX-WS): Java Webサービスのコーディング、構築、デプロイメントに使用する標準ベースのAPI。統合されたスタックには、JAX-WS 2.1、JAXB 2.1、およびSAAJ 1.3が含まれます。「Java API for XML-based Web Services (JAX-WS) 2.2」を参照してください。

関連項目:

- 『Oracle WebLogic Server JAX-WS Webサービス・スタート・ガイド』

- 『Oracle WebLogic Server JAX-WS Webサービスの高度な機能のプログラミング』

バージョン2.2

なし

なし

プログラミングAPI

Java API for RESTful Web Services (JAX-RS): Representational State Transfer (REST)アーキテクチャ・スタイルに基づいた開発用の標準JAVA API。「Java API for RESTful Web Services (JAX-RS) 1.1」を参照してください。

『RESTful Webサービスの開発』も参照してください。

なし

なし

1.1 (Jersey 1.9 JAX-RS RI)

プログラミングAPI

Java API for XML-based RPC (JAX-RPC): XMLベースのリモート・プロシージャ呼出し(RPC)に使用するJava API。「Java API for XML-based RPC (JAX-RPC) 1.1」を参照してください。

関連項目:

- 『Oracle WebLogic Server JAX-RPC Webサービス・スタート・ガイド』

- 『Oracle WebLogic Server JAX-RPC Webサービスの高度な機能のプログラミング』

なし

バージョン1.1

なし

データ・バインディング

Java Architecture for XML Binding (JAXB): XMLスキーマをJavaコード内の表現にバインドするために使用する実装。JAXBは、JAX-WS Webサービスでのみサポートされます。「Java Architecture for XML Binding (JAXB) 2.2」を参照してください。

『Oracle WebLogic Server JAX-WS Webサービス・スタート・ガイド』のJAXBデータ・バインディングの使用に関する項も参照してください。

バージョン2.2

なし

バージョン2.2

データ・バインディング

Apache XMLBeans: XMLスキーマをJava型にバインドし、様々な方法でXMLデータにアクセスするための技術。XMLBeansは、JAX-RPC Webサービス用のデフォルトのバインディング技術です。「Apache XMLBeans 2.0」を参照してください。

『Oracle WebLogic Server JAX-RPC Webサービス・スタート・ガイド』のデータ・バインディングに関する項も参照してください。

なし

2.0

なし

Webサービスの記述

Web Services Description Language (WSDL): Webサービスを記述するためのXMLベースの仕様。「Web Services Description Language (WSDL) 1.1」を参照してください。

関連項目:

- JAX-WS: 『Oracle WebLogic Server JAX-WS Webサービス・スタート・ガイド』の「WSDLファイルから開始するWebLogic Webサービスの開発: 主な手順」

- JAX-RPC: 『Oracle WebLogic Server JAX-RPC Webサービス・スタート・ガイド』の「WSDLファイルから開始するWebLogic Webサービスの開発: 主な手順」。

バージョン1.1

バージョン1.1

なし

Webサービスの記述

Web Application Description Language (WADL): XMLベースの仕様で、マシンが読み取ることができるHTTPベースのWebアプリケーションの記述を提供します。「Web Application Description Language (WSDL) 2009 Membership Submission」を参照してください。

なし

なし

2009 Member Submission

Webサービスの記述

Web Services Policy Framework (WS-Policy): Webサービスのポリシーを記述して通信するための、汎用的なモデルおよび対応する構文。「Web Services Policy Framework (WS-Policy) 1.5および1.2」を参照してください。

バージョン1.5および1.2

バージョン1.5および1.2

なし

Webサービスの記述

Web Services Policy Attachment (WS-PolicyAttachment): ポリシーに使用する抽象モデルとXMLベースの式の構文。「Web Services Policy Attachment (WS-Policy Attachment) 1.5および1.2」を参照してください。

バージョン1.5および1.2

バージョン1.5および1.2

なし

Webサービスとリクエストを行ったクライアントの間のデータ交換

Simple Object Access Protocol (SOAP): 分散型環境で情報を交換するために使用する軽量XMLベースのプロトコル。「Simple Object Access Protocol (SOAP) 1.1および1.2」を参照してください。

バージョン1.2および1.1

バージョン1.2および1.1

なし

Webサービスとリクエストを行ったクライアントの間のデータ交換

SOAP with Attachments API for Java (SAAJ) 1.3 - SOAP 1.1仕様およびSOAP with Attachmentsノートに準拠したメッセージの作成と消費に使用する実装。「SOAP with Attachments API for Java (SAAJ) 1.3」を参照してください。

バージョン1.3

バージョン1.3

なし

セキュリティ

Web Services Security (WS-Security): メッセージの内容の整合性と機密性を確保するセキュアなWebサービスを構築する際に使用できるSOAP (SOAP11、SOAP12)の拡張機能の標準セット。「Web Services Security (WS-Security) 1.1および1.0」を参照してください。

『Oracle WebLogic Server WebLogic Webサービスの保護』も参照してください。

バージョン1.1および1.0

バージョン1.1および1.0

なし

セキュリティ

Web Services Security Policy (WS-SecurityPolicy): WS-Policyフレームワークで使用するセキュリティ・ポリシー・アサーションのセット。「Web Services Security Policy (WS-SecurityPolicy) 1.3」を参照してください。

『Oracle WebLogic Server WebLogic Webサービスの保護』も参照してください。

バージョン1.3

バージョン1.3

なし

セキュリティ

Security Assertion Markup Language (SAML): セキュリティ・ドメイン間で認証および認可データを交換するためのXML標準。「Security Assertion Markup Language (SAML) 2.0および1.1」を参照してください。

『Oracle WebLogic Server WebLogic Webサービスの保護』も参照してください。

バージョン2.0および1.1

バージョン2.0および1.1

なし

セキュリティ

Security Assertion Markup Language (SAML) Token Profile: SOAPメッセージの認証と暗号化を実装するWS-Security SOAP拡張セット。「Security Assertion Markup Language (SAML) Token Profile 1.1および1.0」を参照してください。

『Oracle WebLogic Server WebLogic Webサービスの保護』も参照してください。

バージョン1.1および1.0

バージョン1.1および1.0

なし

信頼性のある通信

Web Services Addressing (WS-Addressing): Webサービスおよびメッセージのアドレッシングを行うための、トランスポートに依存しないメカニズム。「Web Services Addressing (WS-Addressing) 1.0および2004/08 Member Submission」を参照してください。

バージョン1.0および2004/08

バージョン1.0および2004/08

なし

信頼性のある通信

Web Services Reliable Messaging (WS-ReliableMessaging): ソフトウェア・コンポーネント、システム、またはネットワークに障害が発生した場合に、別々のWebLogic Serverインスタンス上で動作する2つのエンドポイント(Webサービスおよびクライアント)が確実に通信するため実装。「Web Services Reliable Messaging (WS-ReliableMessaging)」を参照してください。

関連項目:

- JAX-WS: 『Oracle WebLogic Server JAX-WS Webサービスの高度な機能のプログラミング』のWebサービスの信頼性のあるメッセージングの使用に関する項

- JAX-RPC: 『Oracle WebLogic Server JAX-RPC Webサービスの高度な機能のプログラミング』のWebサービスの信頼性のあるメッセージングの使用に関する項

バージョン1.2、1.1

バージョン1.1および1.0

なし

信頼性のある通信

Web Services Reliable Messaging Policy (WS-RM Policy) : WS-PolicyおよびWS-ReliableMessagingで使用する信頼性のあるメッセージングのためのドメイン固有のポリシー・アサーション。「Web Services Reliable Messaging Policy (WS-RM Policy)」を参照してください。

関連項目:

- JAX-WS:『Oracle WebLogic Server JAX-WS Webサービスの高度な機能のプログラミング』の信頼できるメッセージングおよびMakeConnection用の事前パッケージ済のWS-Policyファイルに関する項

- JAX-RPC:『Oracle WebLogic Server JAX-WS Webサービスの高度な機能のプログラミング』の信頼できるメッセージング用の事前パッケージ済のWS-Policyファイルに関する項

バージョン1.2および1.1

バージョン1.1および1.0

なし

信頼性のある通信

Web Services Trust Language (WS-Trust): Web Services Security (WS-Security)に基づく拡張です。これらの拡張により、非同期通信を安全に実行できます。「Web Services Trust Language (WS-Trust)」を参照してください。

『Oracle WebLogic Server WebLogic Webサービスの保護』のメッセージレベルのセキュリティの構成に関する項も参照してください。

バージョン1.4および1.3

バージョン1.3

なし

信頼性のある通信

Web Services Secure Conversation Language (WS-SecureConversation): Web Services Security (WS-Security)およびWeb Services Trust Language (WS-Trust)に基づく拡張です。これらの拡張により、非同期通信を安全に実行できます。「Web Services Secure Conversation Language (WS-SecureConversation)」を参照してください。

『Oracle WebLogic Server WebLogic Webサービスの保護』のメッセージレベルのセキュリティの構成に関する項も参照してください。

バージョン1.4

バージョン1.3

なし

非同期通信

非同期リクエスト・レスポンス: Webサービスを同期的に呼び出す場合、呼出し側のクライアント・アプリケーションは、レスポンスが返るまで待機してから、処理を続行します。レスポンスが即座に返る場合、このWebサービス呼出しの方法は一般的です。しかし、リクエストの処理が遅延する可能性があるため、クライアント・アプリケーションによる処理を続行しレスポンスへの対処は後で行うようにします。これは、非同期Webサービスの呼出しを使用して実行できます。たとえば、次を参照してください。

- JAX-WS: 『Oracle WebLogic Server JAX-WS Webサービスの高度な機能のプログラミング』のWebサービスの非同期起動に関する項

- JAX-RPC: 『Oracle WebLogic Server JAX-RPC Webサービスの高度な機能のプログラミング』の非同期のリクエストおよびレスポンスを使用したWebサービスの呼出しに関する項

サポートされています

サポートされています

サポートされています

非同期通信

WS-MakeConnection: 送信側エンドポイントが受信側エンドポイントへの新規接続を開始できない場合に2つのエンドポイント間でメッセージを転送するメカニズムを提供します。「Web Services MakeConnection 1.1」を参照してください。

『Oracle WebLogic Server JAX-WS Webサービスの高度な機能のプログラミング』のWebサービスの非同期的起動に関する項も参照してください。

バージョン1.1

なし

なし

原子性トランザクション

Web Services Atomic Transaction: Web Services Coordination仕様に記述される拡張可能な調整フレームワークで使用される原子性トランザクションの調整タイプを定義します。WS-AtomicTransaction仕様とWS-Coordination仕様は、参加者間で分散アクティビティを調整する拡張可能なフレームワークを定義します。「Web Services Atomic Transaction (WS-AtomicTransaction) Version 1.2、1.1、および1.0」を参照してください。

『Oracle WebLogic Server JAX-WS Webサービスの高度な機能のプログラミング』のWeb Services Atomic Transactionsの使用に関する項も参照してください。

注意: JAX-RPCの場合、同様の機能はトランザクション内で@WebMethodを使用して実行されます(@weblogic.jws.Transactional)。詳細は、『Oracle WebLogic Server WebLogic Webサービス・リファレンス』のweblogic.jws.Transactionに関する項を参照してください。

バージョン1.2、1.1、および1.0

該当なし(詳細は「注意」を参照)

なし

原子性トランザクション

Web Services Coordination: 分散アプリケーションのアクションを調整するプロトコルを提供する拡張可能なフレームワークを定義します。WS-AtomicTransaction仕様とWS-Coordination仕様は、参加者間で分散アクティビティを調整する拡張可能なフレームワークを定義します。「Web Services Coordination (WS-Coordination) Version 1.2、1.1、および1.0」を参照してください。

『Oracle WebLogic Server JAX-WS Webサービスの高度な機能のプログラミング』のWeb Services Atomic Transactionsの使用に関する項も参照してください。

バージョン1.2、1.1、および1.0

なし

なし

クライアント・イベント通知

Webサービス・コールバック: コールバックは、なんらかのイベントが発生したことをWebサービスのクライアントに通知するものです。たとえば、クライアントのリクエストの結果が用意されたとき、または、クライアントのリクエストが実行できない場合に、クライアントに通知できます。詳細は、次を参照してください:

- JAX-WS: 『Oracle WebLogic Server JAX-WS Webサービスの高度な機能のプログラミング』のコールバックの使用に関する項

- JAX-RPC: 『Oracle WebLogic Server JAX-RPC Webサービスの高度な機能のプログラミング』のコールバックを使用したイベントのクライアントの通知に関する項

サポートされています

サポートされています

サポートされていません

XML伝達の最適化

Message Transmission Optimization Mechanism (MTOM): SOAPメッセージにおける、xs:base64Binaryまたはxs:hexBinaryに関するXMLデータの転送を最適化するためのメソッドを定義します。詳細は、次を参照してください:

- JAX-WS: 『Oracle WebLogic Server JAX-WS Webサービスの高度な機能のプログラミング』のMTOM/XOPを使用したバイナリ・データ転送の最適化に関する項

- JAX-RPC: 『Oracle WebLogic Server JAX-RPC Webサービス・スタート・ガイド』のMTOM/XOPを使用したバイナリ・データの送信に関する項

サポートされています

サポートされています

サポートされていません

SOAP Over JMSトランスポート

SOAP over JMSトランスポート: 通常、クライアント・アプリケーションからWebLogic Webサービスを呼び出すときは、接続プロトコルとしてHTTP/Sが使用されます。しかし、クライアント・アプリケーションがトランスポートにJMSを使用するようにWebLogic Webサービスを構成することもできます。詳細は、『Oracle WebLogic Server JAX-RPC Webサービスの高度な機能のプログラミン』の接続プロトコルとしてのJMSトランスポートの使用に関する項を参照してください。

サポートされていません

サポートされています

サポートされていません

スタンドアロンJSEクライアント・アクセス

スタンドアロンJSEクライアント・アクセス・ファイル: 使用しているコンピュータにWebLogic Serverがインストールされていない場合、スタンドアロンWebLogic Webサービス・クライアントJARファイルを使用して引き続きWebサービスを起動できます。詳細は、『Oracle WebLogic Server JAX-RPC Webサービス・スタート・ガイド』のWebサービス起動時のスタンドアロン・クライアントJARファイルの使用に関する項を参照してください。

サポートされていません

サポートされています

サポートされていません

公開(登録と検索)

Universal Description, Discovery, and Integration (UDDI): UDDI v2.0レジストリおよびUDDIExplorerアプリケーションは、このリリースで削除されました。カスタマに、SOAの可視性と管理を提供するOracleエンタープライズ・リポジトリまたはOracleサービス・レジストリにアップグレードすることについて考慮することをお薦めします。詳細については、http://www.oracle.com/us/technologies/soa/soa-governance/index.htmlを参照してください。ページの最下部に記載されている製品一覧から「Oracle Service Registry」を選択します。右下の「Brochures and Data Sheets」を展開して、「Oracle Enterprise Repository and Oracle Service Registry for SOA Governance」データ・シートにアクセスします。

なし

なし

なし

公開(登録と検索)

Java API for XML Registries (JAX-R): 種類の異なるXMLレジストリへのアクセスに使用する共通の標準Java API。「Java API for XML Registries (JAX-R) 1.0」を参照してください。

バージョン1.0

バージョン1.0

なし

次の項では、これらの仕様について詳しく説明します。なお、仕様はアルファベット順に並べてあります。これら以外にWebLogic Webサービスでサポートされる仕様については、「WebLogic Webサービスでサポートされるその他の仕様」を参照してください。

JAX-WS 2.2 RI/JDK 7.0の拡張に関する注意事項

このドキュメントで説明するAPIのサブセット(たとえば、com.sun.xml.ws.developer API)は、JDK 7.0またはJAX-WS 2.2 Reference Implementation (RI)の拡張としてサポートされます。これらのAPIはJDK 7.0やWebLogic Serverソフトウェアの一部としては提供されないため、変更される可能性があります。以下にこのようなAPIの例を示します(これらに限定されるものではありません)。

com.sun.xml.ws.api.server.AsyncProvider
com.sun.xml.ws.client.BindingProviderProperties
com.sun.xml.ws.developer.JAXWSProperties
com.sun.xml.ws.developer.SchemaValidation
com.sun.xml.ws.developer.SchemaValidationFeature
com.sun.xml.ws.developer.StreamingAttachment
com.sun.xml.ws.developer.StreamingAttachmentFeature
com.sun.xml.ws.developer.StreamingDataHandler

Apache XMLBeans 2.0

Apache XMLBeans 2.0(http://xmlbeans.apache.org)は、XMLスキーマをJava型にバインドし、様々な方法でXMLデータにアクセスするための技術を提供します。XMLBeansでは、XMLインスタンス・データにアクセスして変更するためのJavaインタフェースおよびクラスを、XML Schemaを使用してコンパイルします。XMLBeansは、JAX-RPC Webサービス用のデフォルトのバインディング技術です。

Java API for RESTful Web Services (JAX-RS) 1.1

http://jcp.org/en/jsr/detail?id=311で説明されているRESTful Webサービス(JAX-RS)用のJava APIの仕様によって、Representational State Transfer (REST)アーキテクチャ・スタイルに基づいたWebサービスの開発用の標準JAVA APIが提供されます。

WebLogic Serverは、Jersey 1.9 JAX-RSリファレンス実装(RI)をサポートします。これは、JSR-311 JAX-RS 1.1仕様の製品レベルの品質の実装です。必要に応じて、さらに新しいバージョンのJersey JAX-RS RIを使用できます。

詳細は、『RESTful Webサービスの開発』を参照してください。

Java API for XML Registries (JAXR) 1.0

Java API for XML Registries (JAXR)仕様(http://java.sun.com/webservices/jaxr)は、様々なXMLレジストリにアクセスするための共通の標準Java APIを提供します。XMLレジストリは、Webサービスの構築、デプロイ、検索を可能にするインフラストラクチャです。

JAXRによって、Javaソフトウェア・プログラマは、単一の使いやすい抽象APIを使用して、様々なXMLレジストリにアクセスできるようになります。JAXRでは、XMLレジストリ内にコンテンツとメタデータを記述する共通の情報モデルによって、容易性と使いやすさを実現しています。

Java API for XML-based RPC (JAX-RPC) 1.1

ネームスペース: http://java.sun.com/xml/ns/jax-rpc

Java API for XML-based RPC (JAX-RPC)仕様(https://jax-rpc.dev.java.net/)は、XMLベースのリモート・プロシージャ呼出し(RPC)に使用するJava APIを定義した仕様です。特に、これらのAPIは、SOAP 1.1(分散型環境で情報を交換するためのXMLベースのプロトコル)を使用して、Webサービスを呼び出したり、Webサービスからレスポンスを取得したりするのに使用されます。

WebLogic Serverには、JAX-RPCバージョン1.1仕様の必要な機能がすべて実装されています。また、JAX-RPCを使用したWebLogic Webサービス・スタード・ガイドのデータ・バインディングの概要に関する項で説明されているとおり、WebLogic Server実装のオプションのデータ型もサポートされています。WebLogic Serverには、この章で説明されていないJAX-RPC仕様のオプション機能は実装されていません。

注意:

JAX-WSはJAX-RPCの後継仕様で、Java EE 6の新機能の多くが実装されています。WebサービスはJAX-WSに準拠して開発することをお薦めします。JAX-RPCは、レガシーな仕様と位置づけられ、これ以上の拡張は予定されていません。

Java API for XML-based Web Services (JAX-WS) 2.2

ネームスペース : http://java.sun.com/xml/ns/jaxws

Java API for XML-based Web Services (JAX-WS)仕様(http://jcp.org/aboutJava/communityprocess/mrel/jsr224/index2.html)は、Java Webサービスのコーディング、構築、デプロイメントに使用する標準ベースのAPIです。「統合されたスタック」には、JAX-WS 2.2、Java Architecture for XML Binding (JAXB) 2.2およびSOAP with Attachments API for Java (SAAJ) 1.3が含まれます。

Java Architecture for XML Binding (JAXB) 2.2

ネームスペース : http://java.sun.com/xml/ns/jaxb

Java Architecture for XML Binding (JAXB)仕様(http://jcp.org/en/jsr/detail?id=222)を使用すると、XMLスキーマをJavaコードの表現に簡単にバインドできます。これにより、XML自体に関する知識がそれほどなくても、XMLデータと処理関数を、Javaテクノロジに基づくアプリケーションに、簡単に組み込むことができます。

注意:

JAXBをJAX-RPCと一緒に使用することはできません。

JSR 109: Implementing Enterprise Web Services 1.3

JSR 109: Implementing Enterprise Web Services仕様(http://www.jcp.org/en/jsr/detail?id=109)では、WebLogic ServerなどのJava EEアプリケーション・サーバー上で実行されるWebサービスをJavaで実装するためのプログラミング・モデルとランタイム・アーキテクチャを定義しています。特に、プログラマが次の2つのコンポーネントのいずれかを使用してJava EE Webサービスを実装することを規定しています。

- Webコンテナ内で動作するJavaクラス

- EJBコンテナ内で動作するステートレス・セッションEJB

また、標準Java EE Webサービスのパッケージ化形式、デプロイメント・モデル、実行時サービスについても記述されており、そのすべてをWebLogic Webサービスで実装しています。

Security Assertion Markup Language (SAML) 2.0および1.1

ネームスペース :

urn:oasis:names:tc:SAML:2.0:assertion

urn:oasis:names:tc:SAML:2.0:protocol

Security Assertion Markup Language (SAML)仕様は、セキュリティ・ドメイン間で認証および認可データを交換するためのXML標準を提供します。詳細は、次を参照してください:

- http://www.oasis-open.org/specs/index.php#samlv2.0

- http://www.oasis-open.org/specs/index.php#samlv1.1

Security Assertion Markup Language (SAML) Token Profile 1.1および1.0

ネームスペース: urn:oasis:names:tc:SAML:1.0:assertion

Web Services Security: SAML Token Profile 1.1仕様は、SOAPメッセージの認証および暗号化を実装するSOAP拡張機能セットを定義します。詳細は、次を参照してください。

- http://www.oasis-open.org/committees/download.php/16768/wss-v1.1-spec-os-SAMLTokenProfile.pdf

- http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.0.pdf

Simple Object Access Protocol (SOAP) 1.1および1.2

ネームスペース : http://schemas.xmlsoap.org/wsdl/soap

Simple Object Access Protocol (SOAP) (http://www.w3.org/TR/SOAP)は、分散型環境で情報を交換するために使用する軽量XMLベースのプロトコルです。WebLogic Serverには、SOAP仕様のバージョン1.1と1.2の独自の実装が含まれています。プロトコルの構成は以下のとおりです。

- SOAPメッセージを記述するエンベロープ。メッセージの本文を含むエンベロープは、処理するユーザーを識別し、処理方法を記述します。

- アプリケーション固有のデータ型のインスタンスを表現するためのエンコーディング・ルール・セット。

- リモート・プロシージャ呼出しおよびレスポンスを表す規則。

この情報は、HTTPやHTTPSなどのWebプロトコルで転送可能なMultipurpose Internet Mail Extensions (MIME)エンコード・パッケージ内に埋め込まれています。MIMEは、非ASCIIメッセージをインターネット上で送信できるようにフォーマットするための仕様です。

次の例は、HTTPリクエスト内に埋め込まれている株取引情報用のSOAP 1.1リクエストを示しています。

POST /StockQuote HTTP/1.1
Host: www.sample.com:7001
Content-Type: text/xml; charset="utf-8"
Content-Length: nnnn
SOAPAction: "Some-URI"

<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<m:GetLastStockQuote xmlns:m="Some-URI">
<symbol>ORCL</symbol>
</m:GetLastStockQuote>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

WebLogic Webサービスは、デフォルトではSOAPのバージョン1.1を使用します。バージョン1.2を使用する場合は、そのWebサービスを実装するJWSファイルでバインディング・タイプを指定する必要があります。

SOAP with Attachments API for Java (SAAJ) 1.3

SOAP with Attachments API for Java (SAAJ)仕様(https://saaj.dev.java.net)には、SOAP 1.1仕様とSOAP with Attachmentsノートに準拠するメッセージの作成と消費について記述されています。

APIのjavax.xml.soapというパッケージでは、MIME添付ファイルを持つSOAPメッセージの主要な抽象概念を提供しています。添付ファイルには、XMLドキュメント全体、XMLフラグメント、画像、テキスト・ドキュメント、または有効なMIMEタイプを持つその他のコンテンツを使用できます。また、このパッケージでは、Webサービスとのリクエストおよびレスポンス型の対話に関する単純なクライアント側のビューも提供しています。

Web Application Description Language (WSDL) 2009 Membership Submission

ネームスペース: http://wadl.dev.java.net/2009/02 wadl.xsd

Web Application Description Language (WADL)は、http://www.w3.org/Submission/wadlで説明されるように、XMLベースの仕様で、マシンが読み取ることができるHTTPベースのWebアプリケーションの記述を提供します。WebLogic Webサービスの開発者は、WADLファイルを作成する必要はありません。これらのファイルはWebLogic Webサービス開発プロセスの一部として自動的に生成されます。

Web Services Addressing (WS-Addressing) 1.0および2004/08 Member Submission

ネームスペース :

http://www.w3.org/2005/08/addressing

http://www.w3.org/2007/05/addressing/metadata

Web Services Addressing (WS-Addressing) Core仕様(http://www.w3.org/TR/ws-addr-core)は、Webサービスおよびメッセージのアドレッシングを行うための、トランスポートに依存しないメカニズムを提供します。特に、この仕様では、Webサービスのエンドポイントを識別したり、メッセージ内のエンドポイントIDをエンド・ツー・エンドで保護したりするのに使用される多数のXML要素が定義されています。

1.0に加え、現在のリリースでは、Web Services Addressing (August 2004 Member Submission) (http://www.w3.org/Submission/2004/SUBM-ws-addressing-20040810)もサポートされます。

Web Services Addressing (WS-Addressing) Metadata仕様は、http://www.w3.org/TR/ws-addr-metadataで説明されるように、WSDLを使用してWeb Services Addressing Coreで定義される抽象プロパティを記述する方法や、WebサービスによってWS-Addressingのサポートを指定するためにWS-Policyを使用する方法を定義します。

Web Services Atomic Transaction (WS-AtomicTransaction) Version 1.2、1.1、および1.0

Web Services Atomic Transaction (WS-AtomicTransaction)仕様(http://docs.oasis-open.org/ws-tx/wstx-wsat-1.2-spec-cs-01/wstx-wsat-1.2-spec-cs-01.html)は、Web Services Coordination仕様に記述される拡張可能な調整フレームワークで使用される原子性トランザクションの調整タイプを定義します。WS-AtomicTransaction仕様とWS-Coordination仕様は、参加者間で分散アクティビティを調整する拡張可能なフレームワークを定義します。

Web Services Coordination (WS-Coordination) Version 1.2、1.1、および1.0

Web Services Coordination (WS-Coordination)仕様(http://docs.oasis-open.org/ws-tx/wstx-wscoor-1.2-spec-cs-01/wstx-wscoor-1.2-spec-cs-01.html)は、分散アプリケーションのアクションを調整するプロトコルを提供する拡張可能な調整フレームワークを定義します。WS-AtomicTransaction仕様とWS-Coordination仕様は、参加者間で分散アクティビティを調整する拡張可能なフレームワークを定義します。

Web Services Description Language (WSDL) 1.1

ネームスペース : http://schemas.xmlsoap.org/wsdl

Web Services Description Language (WSDL)(http://www.w3.org/TR/wsdl)は、Webサービスを記述するためのXMLベースの仕様です。WSDLドキュメントには、Webサービス操作、入力および出力パラメータ、およびクライアント・アプリケーションからWebサービスへの接続方法を記述します。

WebLogic Webサービスの開発者は、WSDLファイルを作成する必要はありません。これらのファイルはWebLogic Webサービス開発プロセスの一部として自動的に生成されます。

次の例は参照用でGetLastStockQuoteメソッドを含む株取引WebサービスStockQuoteServiceを記述するWSDLファイルを示しています。

<?xml version="1.0"?>
<definitions name="StockQuote"
targetNamespace="http://sample.com/stockquote.wsdl"
xmlns:tns="http://sample.com/stockquote.wsdl"
xmlns:xsd="http://www.w3.org/2000/10/XMLSchema"
xmlns:xsd1="http://sample.com/stockquote.xsd"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns="http://schemas.xmlsoap.org/wsdl/">
<message name="GetStockPriceInput">
<part name="symbol" element="xsd:string"/>
</message>
<message name="GetStockPriceOutput">
<part name="result" type="xsd:float"/>
</message>
<portType name="StockQuotePortType">
<operation name="GetLastStockQuote">
<input message="tns:GetStockPriceInput"/>
<output message="tns:GetStockPriceOutput"/>
</operation>
</portType>
<binding name="StockQuoteSoapBinding" type="tns:StockQuotePortType">
<soap:binding style="rpc"
transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="GetLastStockQuote">
<soap:operation soapAction="http://sample.com/GetLastStockQuote"/>
<input>
<soap:body use="encoded" namespace="http://sample.com/stockquote"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
</input>
<output>
<soap:body use="encoded" namespace="http://sample.com/stockquote"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
</output>
</operation>>
</binding>
<service name="StockQuoteService">
<documentation>My first service</documentation>
<port name="StockQuotePort" binding="tns:StockQuoteSoapBinding">
<soap:address location="http://sample.com/stockquote"/>
</port>
</service>
</definitions>

WSDL仕様には、Webサービスを呼び出すときに使用できる様々なタイプのバインディングを指定するための、オプションの拡張要素があります。WebLogic Webサービス・ランタイムでは、次のとおりです。

- SOAPバインディングを完全にサポートしています。つまり、WSDLファイルにSOAPバインディングが含まれている場合、WebLogic Webサービスは、Webサービスの呼出しに使用するメッセージの形式およびプロトコルとしてSOAPを使用します。

- HTTP GETおよびPOSTバインディングを無視します。つまり、WSDLファイルにこの拡張機能が含まれている場合、WebLogic Webサービス・ランタイムはWSDLの解析時にその要素をスキップします。

- MIMEバインディングを部分的にサポートします。つまり、WSDLファイルにこの拡張機能が含まれている場合、WebLogic Webサービス・ランタイムはその要素を解析しますが、Webサービス呼出しのためにメッセージを作成するときに、実際にはMIMEバインディングを作成しません。

Web Services MakeConnection 1.1

ネームスペース: http://docs.oasis-open.org/ws-rx/wsmc/200702

http://docs.oasis-open.org/ws-rx/wsmc/200702で説明されているWeb Services MakeConnectionの仕様によって、送信側のエンドポイントが受信側のエンドポイントへの新規接続を初期化できないときに、2点間のエンドポイントのメッセージを転送するメカニズムが提供されます。たとえば、ファイアウォールの裏から非同期Webサービスを起動するためのものです。

Web Services Metadata for the Java Platform 2.0 (JSR-181)

http://download.oracle.com/javase/6/docs/technotes/guides/language/annotations.htmlに記載のメタデータ・アノテーション機能とプログラミング・モデルを利用することをお薦めします。このプログラミング・モデルでは、アノテーション付きのJavaファイルを作成し、Antタスクを使用してそのファイルをEJBまたは標準のJavaクラスのJavaソース・コードに変換し、関連するアーティファクトをすべて自動的に生成します。

アノテーション付きのJava Webサービス(JWS)ファイル(簡単にJWS fileファイルと呼びます)は、Webサービスの中核部分です。このファイルにはWebサービスの動作を決定するJavaコードが含まれています。JWSファイルは、JDK 5.0メタデータ・アノテーションを使用してWebサービスの形式や特性を指定した、通常のJavaクラス・ファイルです。JWSファイルで使用できるJWSアノテーションには、http://www.jcp.org/en/jsr/detail?id=181に記載のWeb Services Metadata for the Java Platform仕様(JSR-181)で定義された標準のアノテーションと、その他の標準またはWebLogic固有のアノテーションがあり、作成するWebサービスのタイプに応じて使い分けます。

注意:

JWSアノテーション・ファイルを使用する以外の方法としては、標準のJavaクラスまたはEJBをゼロからコーディングし、それに関連するアーティファクト(デプロイメント記述子ファイル、WSDL、ユーザー定義のデータ型のデータ・バインディング・アーティファクトなど)を手動で生成することで、WebLogic Webサービスを自分でプログラミングする方法があります。ただし、この方法は、難しく時間がかかるためお薦めできません。

Web Services Policy Attachment (WS-Policy Attachment) 1.5および1.2

ネームスペース :

WS-Policy Attachment 1.5 : http://www.w3.org/ns/ws-policy

WS-PolicyAttachment 1.2 : http://schemas.xmlsoap.org/ws/2004/09/policy

Web Services Policy Attachment (WS-Policy Attachment)仕様では、ポリシーの抽象モデルとXMLベースの式の文法を定義しています。この仕様では、ポリシーとポリシーの適用先のサブジェクトを関連付けるための、2つの汎用メカニズムが定義されています。また、それらの汎用メカニズムを使用して、WS-PolicyをWSDLやUDDIの記述に関連付ける方法も定義しています。

詳細は、次を参照してください:

- Web Services Policy 1.5 - Attachment(推奨): http://www.w3.org/TR/ws-policy-attach/

- Web Services Policy 1.2 - Attachment (WS-PolicyAttachment)(メンバーの発行): http://www.w3.org/Submission/WS-PolicyAttachment

Web Services Policy Framework (WS-Policy) 1.5および1.2

ネームスペース :

WS-Policy Framework 1.5 : http://www.w3.org/ns/ws-policy

WS-Policy 1.2 : http://schemas.xmlsoap.org/ws/2004/09/policy

WS-Policy Framework (WS-Policy)仕様では、Webサービスのポリシーを記述して通信するための、汎用的なモデルと対応する構文が提供されています。WS-Policyは、幅広いサービスの要件、プリファレンス事項、機能を記述するために、他のWebサービス仕様が使用したり拡張したりできる、構成の基本セットを定義しています。

詳細は、次を参照してください:

- Web Services Policy 1.5 - Framework(推奨): http://www.w3.org/TR/ws-policy

- Web Services Policy 1.2 - Framework (WS-Policy)(メンバーの発行): http://www.w3.org/Submission/WS-Policy

Web Services Reliable Messaging (WS-ReliableMessaging)

ネームスペース : http://docs.oasis-open.org/ws-rx/wsrm/200702

Web Services Reliable Messaging (WS-ReliableMessaging)仕様(http://docs.oasis-open.org/ws-rx/wsrm/200702)では、ソフトウェア・コンポーネント、システム、またはネットワークに障害が発生した場合に、別々のWebLogic Serverインスタンス上で動作する2つのWebサービスが確実に通信するための方法が規定されています。特に、ソース・エンドポイントから宛先エンドポイントに送信されるメッセージの配信またはエラーの生成を保証する、相互運用性プロトコルを提供しています。

注意:

WebLogic Server WS-ReliableMessagingは、旧バージョンの仕様との下位互換性をサポートします。たとえば、WS-ReliableMessaging 1.2 Webサービスは、WS-ReliableMessaging 1.2または1.1の仕様に準拠するクライアントによってアクセスされます。ただし、WS-ReliableMessaging 1.2/1.1クライアントは、WS-ReliableMessaging 1.0サーバーと通信できません。WS-ReliableMessaging 1.2 (クライアントまたはサービス)は、JAX-WSでのみサポートされることに注意します。

Web Services Reliable Messaging Policy Assertion (WS-RM Policy)

ネームスペース : http://docs.oasis-open.org/ws-rx/wsrmp/200702

Web Services Reliable Messaging Policy Assertion (WS-RM Policy)仕様では、WS-PolicyおよびWS-ReliableMessagingで使用する信頼性のあるメッセージングのためのドメイン固有のポリシー・アサーションが定義されています。この仕様では、RM宛先およびRMソースは、所定のシーケンスに対するそれぞれの要件を記述できるようになります。

詳細は、次を参照してください:

- バージョン1.2 (JAX-WSのみ): http://docs.oasis-open.org/ws-rx/wsrmp/200702/wsrmp-1.2-spec-os.html

- バージョン1.1 (JAX-WSとJAX-RPC): http://docs.oasis-open.org/ws-rx/wsrmp/200702/wsrmp-1.1-spec-os-01.html

Web Services Secure Conversation Language (WS-SecureConversation)

ネームスペース : http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512

Web Services Secure Conversation Language (WS-SecureConversation)仕様では、Web Services Security (WS-Security) 1.1、1.0およびWeb Services Trust Language (WS-Trust)に基づく拡張が定義されています。これらの拡張により、1つ以上のメッセージにまたがる通信を保護できます。この仕様では、セキュリティ・コンテキストを確立および共有し、そのセキュリティ・コンテキスト(または共有秘密)からキーを派生させるためのメカニズムが定義されています。

詳細は、次を参照してください:

- バージョン1.4 (JAX-WS): http://docs.oasis-open.org/ws-sx/ws-secureconversation/v1.4/ws-secureconversation.html

- バージョン1.3 (JAX-RPC): http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512/ws-secureconversation-1.3-os.html

Web Services Security (WS-Security) 1.1および1.0

ネームスペース : http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecuritysecext-1.0.xsd、http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurityutility-1.0.xsd、http://docs.oasis-open.org/wss/oasis-wss-wssecurity-secext-1.1.xsd

Webサービス・セキュリティについての以下の説明は、2006年2月の「Web Services Security: SOAP Message Security」と題されたOASIS標準1.1仕様から直接引用したものです。

この仕様は、整合性と機密性を確保するセキュアなWebサービスを構築する際に使用できるSOAP (SOAP11、SOAP12)の拡張の標準セットを提案するものです。この拡張セットのことを「Web Services Security: SOAP Message Security」または「WSS: SOAP Message Security」と呼びます。

この仕様には柔軟性があり、様々なセキュリティ・モデル(PKI、Kerberos、SSLなど)でセキュアなWebサービスを実現するための土台となるように設計されています。たとえばこの仕様では、複数のセキュリティ・トークン・フォーマット、複数の信頼ドメイン、複数のシグネチャ・フォーマット、および複数の暗号化技術がサポートされています。トークン・フォーマットおよびそれらを使用するためのセマンティクスは、関連付けられたプロファイル・ドキュメントに定義されています。

この仕様は、主にセキュリティ・トークンの伝播、メッセージの整合性、およびメッセージの機密性の3つのメカニズムを提供します。これらのメカニズムは、それだけではWebサービス用の完全なセキュリティ・ソリューションとはなりません。この仕様は、他のWebサービス拡張機能やより高いレベルのアプリケーション固有プロトコルと一緒に使用して、様々なセキュリティ・モデルおよびセキュリティ技術を実現することができるビルディング・ブロックです。

前述のメカニズムは、独立して使用することも(たとえばセキュリティ・トークンを渡すため)、密接に統合して使用することもできます(たとえば、メッセージ全体やその一部に対して署名や暗号化を行い、署名や暗号化に使用するキーと関連付けられたセキュリティ・トークンまたはトークン・パスを提供するなど)。

WebLogic Webサービスでは次のトークン・プロファイルも実装しています。

- Webサービス・セキュリティ: SOAPメッセージ・セキュリティ

- Webサービス・セキュリティ:ユーザー名トークン・プロファイル

- Webサービス・セキュリティ: X.509証明書トークン・プロファイル

- Webサービス・セキュリティ: SAMLトークン・プロファイル1.0および1.1

詳細については、OASIS Web Service Security Webページ(http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=wss)を参照してください。

Web Services Security Policy (WS-SecurityPolicy) 1.3

ネームスペース : http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702

Web Services Security Policy (WS-SecurityPolicy)仕様(http://docs.oasis-open.org/ws-sx/ws-securitypolicy/v1.3/cd/ws-securitypolicy-1.3-spec-cd-03.html)では、WS-Policyフレームワークで使用するセキュリティ・ポリシー・アサーションのセットが定義され、WS-Security、WS-Trust、およびWS-SecureConversationのコンテキストにおいてメッセージをどのように保護するかについて記述されています。

WebLogic Webサービスのすべての非同期機能(コールバック、会話、Webサービスの信頼性のあるメッセージング)では、実装でアドレッシングを使用していますが、Webサービス・プログラマは、追加のアドレッシング機能が必要な場合に、この仕様に準拠するAPIを単独で使用することもできます。

Web Services Trust Language (WS-Trust)

ネームスペース : http://schemas.xmlsoap.org/ws/2005/02/trust

Web Services Trust Language (WS-Trust)仕様では、Web Services Security (WS-Security) 1.1および1.0に基づく拡張を定義します。これらの拡張により、セキュリティ・トークンをリクエストおよび発行するためのフレームワークを提供し、信頼関係を仲介します。

詳細は、次を参照してください:

- バージョン1.4 (JAX-WS): http://docs.oasis-open.org/ws-sx/ws-trust/200802

- バージョン1.3 (JAX-RPC): http://docs.oasis-open.org/ws-sx/ws-trust/200512/ws-trust-1.3-os.html

WebLogic Webサービスでサポートされるその他の仕様

- http://www.w3.org/TR/xmlschema-1に記述されている「XML Schema Part 1: Structures」

- http://www.w3.org/TR/xmlschema-2に記述されている「XML Schema Part 2: Data Types」

Copyright © 2007, 2012, Oracle and/or its affiliates. All rights reserved.