Web サービスの園芸用品オンライン・ショップ・シナリオ: サプライヤーに対する静的照会
このシナリオでは、オンライン上で商品を提供する小売業者が、 主なサプライヤーの在庫をチェックするために、アプリケーションを Web サービスに変えます。
Plants by WebSphere® は、植物および園芸用品を販売するインターネット・ストアフロントです。同社は、Web サービス・プログラミング・インターフェースを使用してその既存の Web アプリケーションを 「ラップする」ことができることに気付きました。 例えば、BackOrderStock セッション Bean を、 サプライヤーに配置されているサプライヤーの Web サービス・アプリケーションと対話する SOAP Web サービス・クライアントに変えることができます。 特に、BackOrderStock セッション Bean の機能は、Web Services for Java™ Platform, Enterprise Edition (Java EE) クライアント、および Java API for XML-based remote procedure call (JAX-RPC) クライアント向けになっています。

アプリケーション・サーバーは、JAX-WS および JAX-RPC プログラミング・モデルに準拠した Web サービスをサポートします。 JAX-WS は、標準的な注釈ベースのモデルをサポートして Web サービス・アプリケーションおよびクライアントを開発することにより、アプリケーションの開発を簡素化する、新しいプログラミング・モデルです。 JAX-RPC クライアントと JAX-WS クライアントは同じモジュールで使用できますので、オンライン店は JAX-RPC アプリケーションをまだ使用できます。アプリケーション・サーバーは構成が簡単で構成の再利用も容易なため、新しい Web サービス・プロファイルをシームレスに取り込めます。JAX-WS 標準は相互運用が可能で信頼性の高い Web サービス・アプリケーションをサポートしています。オンライン店は非同期にメッセージを送信できます。つまり、そのメッセージは通話者の一方が一時的にオフラインであったり、ビジーであったり、または使用不可であっても確実に通信できるということです。 これらの新しいテクノロジーを使用することにより、オンライン店は他のベンダーと相互運用している間にも通信が確実に行われ、宛先に届くと確信できます。
在庫切れ品目の取り扱い方法
- Plants by WebSphere は、自社保有の在庫をチェックします。
Web サイトで稼働するアプリケーションは、Plants by WebSphere の在庫データベースをチェックします。このアプリケーションにより、その品目が在庫にないことが分かります。
- Plants by WebSphere は、Web サービスを使用してサプライヤーの在庫をチェックします。
アプリケーションは、サプライヤーのサイトで SOAP サーバーと通信する SOAP クライアントを呼び出し、 そのサプライヤーの在庫にその品目があるかどうかを確認します。 サプライヤーのデータが Plants by WebSphere に送信されます。
- Plants by WebSphere は、在庫切れの品目を入手することもあれば、入手しないこともあります。
サプライヤーが、その品目が在庫にあることを示した場合、 Plants by WebSphere を動かしているアプリケーションは、顧客のためにその品目を注文するかどうかを判別します。データの交換には、Plants by WebSphere で卸売り品を注文しないようにする、上限の価格しきい値のチェックが含まれます。また、サプライヤーが品目の配送に要する期間や、 製造メーカーが品目の製造を中止する予定の日付などの意思決定情報が含まれる場合もあります。
- Plants by WebSphere は、顧客にできるだけ早く結果を通知します。
サプライヤーと迅速に連絡を取ることができれば、 Plants by WebSphere は入手可能性について顧客を煩わせなくても済みます。その品目が Plants by WebSphere の在庫にあるかのように、入手可能であるかを確認するだけです。 その品目が一時的にサプライヤーの在庫にない場合や、 Plants by WebSphere がそのサプライヤーからその品目を注文しないことを選択した場合、 Plants by WebSphere はその顧客に適した応答を出すことができます。
このシナリオで使用される Web サービス・テクノロジー
このシナリオでは、以下の Web サービス・テクノロジーを使用します。- XML (Extensible Markup Language)
- XML は、Plants by WebSphere とそのサプライヤーの間のデータ交換を標準化するために使用されます。
- Web Services for Java Platform, Enterprise Edition (Java EE)
- Web Services for Java EE (JSR-109 とも呼ばれます) は、 Java EE アプリケーションが Web サービスを作成し、それにアクセスする方法を定義します。
- JAX-RPC
- JAX-RPC (JSR-101 とも呼ばれる) は、 Java アプリケーションが Web サービスにアクセスする方法を定義します。
- JAX-WS
- JAX-WS プログラミング・モデルは、Web サービス・アプリケーションおよびクライアントを開発するための標準的なアノテーション・ベースのモデルをサポートすることにより、アプリケーションの開発を簡素化します。 JAX-WS プログラミング・モデルは、JAX-RPC 1.1 プログラミング・モデルの後継モデルです。アプリケーション・サーバーは、JAX-WS と JAX-RPC の両方のプログラミング・モデルをサポートします。
- WSDL (Web サービス記述言語)
- WSDL は、基礎となるアプリケーションとその他の Web 対応アプリケーションとの間のインターフェースとして機能することにより、 既存のアプリケーションを Web サービスに変えるために使用します。
- SOAP
- SOAP は、Web サービスがインターネットを介してサプライヤーと通信するために使用されるプロトコルです。