BEA ホーム | 製品 | デベロッパ・センタ | support | askBEA
 ドキュメントのダウンロード   サイト マップ   用語集 
検索

B2B Integration サンプルの使い方

 前 次 目次 PDFで表示  

Trading Partner Zeroweight Client サンプル(非推奨)

Trading Partner Zeroweight Client サンプルは、BEA ソフトウェアのホストではないトレーディング パートナが 1 つ以上ある場合に使用する、ブラウザおよびファイル共有という 2 通りの通信方法を例示します。このサンプルは、ブラウザ クライアントまたはファイル共有クライアントを介しての要求側と応答側の通信のための、ビジネス実施機能およびビジネス プロセスに基づいています。

この章では、以下のトピックを取り上げます。

注意: Zeroweight サンプルは、WebLogic Integration Messaging API、B2B ブラウザ クライアント、B2B ファイル共有クライアント用の JSP タグ ライブラリに基づいていますが、そのすべてが、このリリースの WebLogic Integration から非推奨になっています。WebLogic Integration Messaging API、B2B ブラウザ クライアント、B2B ファイル共有クライアントの JSP タグ ライブラリに代わる機能の詳細については、『WebLogic Integration リリース ノート』を参照してください。

 


Zeroweight Client サンプルの概要

B2B Integration のほとんどの会話には、共に BEA WebLogic Integration がインストールされている 2 社のトレーディング パートナが関与しています。ブラウザ クライアントおよびファイル共有クライアントは、BEA ソフトウェアをインストールしていないトレーディング パートナと通信する手段を提供します。Zeroweight Client サンプルでは、ブラウザ クライアントを使用する要求側トレーディング パートナと、ファイル共有クライアントを使用する応答側トレーディング パートナの間での通信を例示しています。

サンプルの目的

Zeroweight Client サンプルには、WebLogic Integration がインストールされていない要求側と 1 社以上の応答側の間でどのようにビジネス通信を行うことができるかが示されています。この通信は、B2B Integration がインストールされたリモートまたはホストにおいてコンフィグレーションされた 2 種類のゼロウェイト クライアントを使用して行われます。

このサンプルでは、応答側のプライベート ワークフローで呼び出されたビジネス オペレーションが、事前にコンフィグレーションされたディレクトリから要求を取得し、この要求に基づく応答を作成し、応答を事前にコンフィグレーションされた出力ディレクトリに入れます。実際の FTP サーバは使用されません。このサンプルでは、ビジネス オペレーションを使って FTP サーバをシミュレートしています。

Zeroweight Client サンプルのシナリオおよび図

Zeroweight Client サンプルのシナリオには、2 社のトレーディング パートナ(一方は要求側、もう一方は応答側)が関与しています。これらのトレーディング パートナは、ゼロウェイト クライアントを処理するように事前にコンフィグレーションされているリモートの WebLogic Integration を通じて通信します。要求側は、2 つの整数の乗算要求を送信します。応答側は乗算を実行し、積を要求側に返します。

WebLogic Integration のサンプル インスタンスを実行しているマシン以外のマシン上の任意のブラウザを使用します。そうすることで、要求側にローカルの WebLogic Integration インストールが存在しないという状況が発生します。その代わり、要求側はブラウザを使って、リモート マシンにインストールされた WebLogic Integration に存在する JSP にアクセスします。

JSP はメールボックスを作成し、WebLogic Integration によって提供される JSP タブ ライブラリで XML 要求を送信します。また同じ JSP が、要求側のメールボックス内のメッセージのチェック、および要求側と応答側のメールボックスからのメッセージの削除にも使用されます。

注意: Zeroweight Client サンプルのデフォルトのコンフィグレーションでは、WebLogic Integration のサンプル インスタンス、ブラウザ クライアント、および FTP クライアントを同じマシン上で実行する指定になっています。ただし Zeroweight Client サンプルのプロダクション デプロイメントでは、WebLogic Integration、ブラウザ クライアント、および FTP クライアントは 3 つの異なるマシンで実行されます。

応答側にも WebLogic Integration はインストールされていません。一部のトレーディング パートナとの通信には、サード パーティ製の FTP サーバ アプリケーションを使用します。また、メッセージの処理には独自のメカニズムを使用することもあります。応答側は、ファイル共有クライアントを通じて要求側と通信します。

Zeroweight Client サンプルでは、次のイベントを例示しています。

  1. 要求側のプライベート ワークフローが、ブラウザ クライアントの JSP タグから送信された XML イベントによってトリガされます。

  2. 応答側のパブリック ワークフローは、ファイル共有クライアントが応答側のメールボックスに入れた応答によってトリガされます。

  3. 要求側のメッセージおよび応答側のメッセージはそれぞれ適切なメールボックスに入れられます。

Zeroweight Client サンプルでは、あらかじめコンフィグレーションされた 4 つのメールボックスを使用します。各トレーディング パートナは、次のように受信ボックスと送信ボックスを 1 つずつ使用します。

 


Zeroweight Client サンプルを実行する前に

Zeroweight Client サンプルを実行する前に、次の手順を実行します。

  1. サンプルの実行前の作業に記載の手順に従います。

  2. サンプル WebLogic Server への接続が妨げられないようにブラウザのプロキシ設定を確認します。Web ブラウザ コンフィグレーションの要件の詳細については、『WebLogic Integration の起動、停止およびカスタマイズ』の「WebLogic Integration 管理ツールと設計ツール」の「Web ブラウザ コンフィグレーションの要件」を参照してください。

 


Zeroweight Client サンプルの実行

Zerotweight Client サンプルを実行するには、次の手順を実行します。

  1. WLI_HOME(WebLogic Integrationをインストールしたディレクトリ)に移動します。
    cd WLI_HOME

  2. WebLogic Integration の上位レベルの環境変数を設定するには、お使いのプラットフォームに合った setenv スクリプトを実行します。

  3. プラットフォームに合わせて適切な手順を実行し、RunSamples スクリプトを起動します。

    警告: UNIX システムの場合、netscape 実行ファイルが入ったディレクトリが PATH 環境変数に含まれている必要があります。環境変数に含まれていない場合は、RunSamples スクリプトの実行時に、サンプル起動ページが表示されません。サンプル起動ページは、現在 RunSamples スクリプトが実行されているマシンで Netscape ブラウザを起動して、次の URL を入力すると起動されます。
    http://localhost:7001/index.html

  4. RunSamples スクリプトのコンフィグレーション セクションが実行済みであることが検知されると、次のプロンプトが表示されます。
    The WebLogic Integration repository has already been
    created and populated, possibly from a previous run
    of this RunSamples script. Do you want to destroy all the
    current data in the repository and create and populate the
    WebLogic Integration repository, again? Y for Yes, N for No

    この質問に N と入力すると、RunSamples スクリプトはリポジトリを作成してデータを入れる手順を省略し、WebLogic Server のサンプル インスタンスを起動する手順のみを実行します。

    この質問に Y と入力すると、RunSamples スクリプトはリポジトリを再度作成してデータを入れてから、WebLogic Server のサンプル インスタンスを起動します。Y を入力した場合、RunSamples スクリプトは、現在リポジトリにある全データを破棄し、リポジトリに改変されていないバージョンのサンプル データをロードします。現在のサンプル データが変更または削除され、新規または未変更のサンプル データをリポジトリに格納する場合にのみ、Y を入力してください。

    これで、RunSamples スクリプトは WebLogic Server のインスタンスをバックグラウンド プロセスとして開始し、サンプル起動ページが表示されます。


     

  5. 左ペインで、[サンプル アプリケーション] の下の [Trading Partner Zeroweight Client] アプリケーションのリンクをクリックします。右ペインに [Zeroweight Client Main Page] ページが表示されます。

    .
     

  6. 以下の各プラットフォームに対応した手順を実行してファイル共有クライアントを起動します。

    注意: JSP のロード前にファイル共有クライアントを起動した場合、Mailbox not found 例外を繰り返し受け取ることになります。メールボックスの作成が行われるのは最初に JSP がロードされたときなので、これらの例外は無視してかまいません。メールボックスの作成後、これらの例外は表示されなくなります。

  7. [サンプル開始] をクリックします。次のページが表示されます。

    .
     

  8. [Go to the request input page] オプションを選択します。[Request for Multiplication] ページが表示されます。


     

  9. ここで、次の手順を実行して、BrowserTP1_Outbox へ手動でメッセージを送信します。

    1. 2 つの整数を選択します。

    2. [Send Multiplication Request] をクリックします。

    注意: この手順の副次的作用として、SendmsgTag およびラッパー Mailbox API がテストされます。

    次の図のように、画面が更新されています。


     

  10. 受信メールボックスに届いた応答をチェックするには、[Check all replies] をクリックします。応答のリストが表示されます。


     

    注意: 応答のリストがチェックされるときに、CheckallmsgTag もチェックされます。

    応答がなければ、次のメッセージが表示されます。


     

  11. 参加しているすべてのトレーディング パートナの受信メールボックスと送信メールボックス(このサンプル内では、BrowserTP1 および FtpTP1 のメールボックス)からメッセージをすべて削除するには、次の手順を実行します。

    1. [ Delete all messages in all mailboxes ] をクリックします。B2B Integration のすべてのメールボックスに入っている全メッセージのリストが表示されます。


       

    2. [Delete all messages in all mailboxes] を再度クリックします。削除されたメッセージの総数が表示されます。

    注意: この手順の副次的作用として、DeleteallmsgTag のテストも行われます。

  12. メールボックスから特定のメッセージを削除するには、次の手順を実行します。

    1. [Check All Replies] ウィンドウ(ステップ 6 で表示)で、メッセージを選択します。

    2. [Delete] をクリックします。

      [Delete One Reply] ウィンドウで、メッセージが正常に削除できたことが確認できます。


       

    注意: この手順の副次的作用として、DeletemsgTag のテストも行われます。

  13. メッセージの詳細を表示するには、次の手順を実行します。

    1. [Check all replies] と表記されたリンクをクリックします。

    2. [Message ID] 欄から表示するメッセージを選択します。[View Reply Detail] ウィンドウが表示されます。


       

  14. このとき、さらに多くの B2B サンプルを実行する場合は、サンプル起動ページを開いた状態で、WebLogic Server のインスタンスの実行を続行します。

    この時点で、これ以上の B2B サンプルを実行しない場合は、ブラウザを終了し、プラットフォームに合わせた適切な手順によって WebLogic Server のインスタンスをシャットダウンします。

 


ゼロウェイト クライアントの作成および使用

この節では、ゼロウェイト クライアントの作成とコンフィグレーションに関する次の情報を提供します。

ゼロウェイト クライアントのソース ファイル

WebLogic Integration は、ユーザ独自のゼロウェイト クライアントの作成に必要なすべてのソース ファイルを提供しています。Zeroweight Client サンプルは B2B Integration の情報を Hello Partner サンプルと共有します。

次の表に、Zeroweight Client サンプル専用に提供される全ファイルをリストしています。いずれのパス名でも、SAMPLES_HOME は、WebLogic Platform のサンプル ディレクトリを表しています。

ソース ディレクトリ

サブディレクトリ

およびファイル

内容

SAMPLES_HOME¥integration¥samples¥lightweightClient¥src¥wlcsamples¥lightweightClient


ビジネス オペレーションおよびそのヘルパーのためのソース ファイルが格納されている。どちらもワークフロー インスタンスによって呼び出される。

SAMPLES_HOME¥integration¥config¥samples


LwcFileSync.dtd

LwcFileSync.xml のための DTD ファイル

LwcFileSync.xml

ファイル共有クライアントによって読み取られるファイル。使用している環境に合わせて、次の個所を修正する必要がある。

SAMPLES_HOME¥integration¥samples¥lightweightClient¥lib


SAMPLES_HOME¥integration¥config¥samples 内にある LwcFileSync.dtd および LwcFileSync.xml の元のファイルが格納されている。

SAMPLES_HOME¥integration¥samples¥bin


以下のタスクを担当するファイル共有クライアントを起動するスクリプト。

SAMPLES_HOME¥integration¥config¥samples¥lightweightClient¥


ftpDir¥

Zeroweight Client サンプルの実行用に作成されたディレクトリ。ファイル共有クライアント上の受信ディレクトリと送信ディレクトリをシミュレートする、2 つのディレクトリ(FtpTP1_indir および FtpTP1_outdir)が含まれている。名前は、このサンプル用にハードコード化されている。

注意: このディレクトリ、およびそのサブディレクトリは、実行時に作成される。

integration¥samples¥lightweightClient¥


web¥

*.jpg ファイルや *.jsp ファイルなど、Web アプリケーション用のファイルが格納されている。

web¥lwcWebApp¥


Zeroweight Client Web アプリケーションで使用される JSP タグ ライブラリ記述ファイル、および web.xml ファイルが格納されている。

SAMPLES_HOME¥integration¥samples¥lightweightClient¥src¥wlcsamples¥lightweightClient¥


tags¥

B2B Integration JSP タグ ライブラリの参照実装が格納されている。com.bea.lwclient.LwcMailbox によるメッセージ管理に使用する。


 

JSP タグ ライブラリの使用

JSP タグ ライブラリは、WebLogic Integration Messaging API の処理にラッパーを使用します。JSP タグ ライブラリは、図6-2 に示すように、あらかじめ定義されたワークフローで、メールボックスとの会話に使用されます。

図6-2 JSP タグ ライブラリを使用するメールボックスのシナリオ


 

この図に示したメールボックスは、リポジトリを補助するものです。タグ ライブラリは必要に応じてメールボックスにアクセスします。リポジトリにも、メールボックス メッセージは保存されます。

エラー処理は、Mailbox API クラスによる標準の Java 例外とエラー処理、およびブラウザ クライアントに渡される JSP に基づいています。

JSP タグの詳細なリストについては、JSP タグ リファレンスを参照してください。

注意: WebLogic Integration Messaging API のB2B JSP タグ ライブラリは、このリリースの WebLogic Integration から非推奨になっています。このタグ ライブラリに代わる機能については、『WebLogic Integration リリース ノート』を参照してください。

Zeroweight Client のコンフィグレーション

この節は、WebLogic Integration のサンプル インスタンスが実行されているマシン以外のマシンにブラウザ クライアントまたはファイル共有クライアントを移動しようとしているユーザのみを対象としています。クライアントをこのように移動する場合は、ここに記載した適切な手順を実行して、リモート ゼロウェイト クライアントのコンフィグレーションを行ってください。

Zeroweight Client サンプルと、WebLogic Integration のサンプル インスタンスを同じマシン上で実行している場合は、この節を読む必要はありません。

この節では、次のタスクのための手順を説明します。

ファイル共有クライアントのコンフィグレーション

ゼロウェイト クライアントとは、WebLogic Integration が専用の Java 仮想マシンで実行するプロセスです。したがって、セキュリティ メカニズムは不要です。WebLogic Integration は、LwcFileSync.xml コンフィグレーション ファイルで定義されているあらゆるゼロウェイト クライアントにサービスを提供することができます。詳細については、この節で後述するファイル共有コンフィグレーション ファイルの編集を参照してください。

WebLogic Integration コンフィグレーション ファイルの編集

コード リスト 5-1 のゼロウェイト トレーディング パートナ コンフィグレーション情報を、B2B Integration のコンフィグレーション ファイル config.xml に追加します。

コード リスト 6-1 ファイル共有クライアントのコンフィグレーション

<StartupClass
ClassName="com.bea.lwclient.Startup"
Name="LwcStartup"
Targets="myserver"
/>

コンフィグレーション ファイルは、以下のコンフィグレーション済みサンプルのドメイン(SAMPLES_HOME は WebLogic Integration のサンプル ディレクトリ)で編集できます。

SAMPLES_HOME¥integration¥config¥samples¥config.xml

.

ファイル共有コンフィグレーション ファイルの編集

ゼロウェイト クライアントをコンフィグレーションするには、LwcFileSync.xml で定義します。LwcFileSync.xml のファイル共有クライアントのコンフィグレーションは、LwcFileSync.dtd に準拠している必要があります。

注意: LwcFileSync.dtd は、ファイル共有クライアントが起動するディレクトリ内に置く必要があります。

リスト6-2 は、サンプル DTD ファイルを示します。太字の値を、ご使用のゼロウェイト クライアントに適した値に置換してください。

コード リスト 6-2 サンプル LwcFileSync.dtd

<!-- この DTD は、ファイル共有クライアントのコンフィグレーション ファイルを説明する -->
<!ELEMENT wlcfilesyncconfig (wlcfilesync*) >

<!-- maxThreads 所定の時点のスレッド プール内における -->
<!-- スレッドの最小許容数 -->
<!ATTLIST wlcfilesyncconfig maxThreads CDATA #REQUIRED>

<!-- minThreads 所定の時点のスレッド プール内における -->
<!-- スレッドの最小許容数 -->
<!ATTLIST wlcfilesyncconfig minThreads CDATA #REQUIRED>

<!-- maxIdleTime The maximum time interval thread could be idle -->
<!-- それ以外の場合は、プールから削除される -->
<!ATTLIST wlcfilesyncconfig maxIdleTime CDATA #REQUIRED>

<!-- pollInterval ポーリング前の待機間隔を定義する時間間隔 -->
<!ATTLIST wlcfilesyncconfig pollInterval CDATA #REQUIRED>

<!-- url Weblogic JNDI ルックアップに使用される URL -->
<!ATTLIST wlcfilesyncconfig url CDATA #REQUIRED>

<!-- デバッグ処理のオン/オフを切り替えるデバッグ フラグ -->
<!ATTLIST wlcfilesyncconfig debug (TRUE | FALSE) "FALSE">

<!-- 次の要素は、LWTP の詳細のコンフィグレーションに使用される -->
<!ELEMENT wlcfilesync EMPTY>

<!-- LWTP name -->
<!ATTLIST wlcfilesync name CDATA #REQUIRED>

<!-- ローカル ファイル システム上の受信ディレクトリのパス -->
<!ATTLIST wlcfilesync directoryin CDATA #REQUIRED>

<!-- ローカル ファイル システム上の送信ディレクトリのパス -->
<!ATTLIST wlcfilesync directoryout CDATA #REQUIRED>

リスト6-3 は、ファイル共有クライアントがゼロウェイト トレーディング パートナとして定義されるサンプル XML ファイルを示します。太字の文字列を、ご使用のゼロウェイト クライアントに適した値に置換してください。

コード リスト 6-3 サンプル LwcFileSync.xml

<?xml version="1.0"?>
<!DOCTYPE wlcfilesyncconfig SYSTEM "LwcFileSync.dtd">
<wlcfilesyncconfig maxThreads="9"
minThreads="3"
maxIdleTime="5000"
pollInterval="2000"
url="t3://localhost:7001"
debug="FALSE">
<wlcfilesync name="FtpTP1"
directoryin="<SAMPLES_HOME>/samples/integration/config/samples
/lightweightClient/ftpDir/FtpTP1_indir"
directoryout="<SAMPLES_HOME>/samples/integration/config/samples
/lightweightClient/ftpDir/FtpTP1_outdir"/>
</wlcfilesyncconfig>

ブラウザ クライアントのコンフィグレーション

WebLogic Integration では、使用されるセキュリティの枠組みに応じて、HTTP と HTTPS、または SSL という、ブラウザ クライアントをコンフィグレーションする 2 つの方法をサポートしています。以下の各節では、これらの方法のための手順を説明します。

HTTP ブラウザ クライアントのコンフィグレーション

HTTP ゼロウェイト クライアントをコンフィグレーションするには、web.xml ファイルを編集する必要があります。ブラウザ クライアントのセキュリティをオンにするには、次の手順を実行します。

  1. トレーディング パートナ ゼロウェイト クライアント Web アプリケーションの HTML ユーザ インタフェースを担当する JSP 開発者は、sendmsg タグを使用し、引数(必須) security = ON または OFF を指定します。

    ワークフローテンプレートの開発者も、wlcsamples.zeroClient.LwcBizOp.putMessage() メソッドを呼び出すことで、セキュリティのオンとオフを切り替えることができます。このメソッドは、SECURITY の最後の引数として文字列(ON または OFF)を受け付けます。セキュリティのオン、オフを切り替えるには、開発者は以下の引数のうち 1 つを指定します。

  2. ホストされた Web アプリケーションをデプロイする担当者は、web.xml ファイルを修正し、このアプリケーションを使用するためのパーミッションを与えられたすべてのユーザに対し、セキュリティ上の制約を付加します。このファイルのパス名は、SAMPLES_HOME¥samples¥lightweightClient¥web¥lwcWebApp¥web.xml で、SAMPLES_HOME はWebLogic Platform サンプル ディレクトリ を表しています。

    たとえば、Web アプリケーション lwcWebApp.war を使用するために必要なセキュリティ権限を新規ユーザに付与するには、次のコードを追加します。

  <security-constraint>
<web-resource-collection>
<web-resource-name>lwcWebApp</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>newpartner</role-name>
</auth-constraint>
</security-constraint>
  <login-config>
<auth-method>BASIC</auth-method>
</login-config>
  <security-role>
<role-name>newpartner</role-name>
</security-role>

  1. newpartner という名前を付けられたユーザが、有効な WebLogic Server ユーザであることを確認します。このユーザ名は、WebLogic Server Administration Console または WebLogic Integration B2B Console によって割り当てることができます。詳細については、それぞれ『WebLogic Server 管理者ガイド』または『B2B Integration 管理ガイド』を参照してください。

  2. newpartner ユーザは、B2B Console を使って、次の 2 つの手順によって有効なトレーディング パートナ ゼロウェイト クライアントにマップする必要があります。

    1. トレーディング パートナ ゼロウェイト クライアントを作成する。

    2. ユーザの ID を適切なトレーディング パートナのレコードにマップする。

    詳細については、『B2B Integration 管理ガイド』を参照してください。

  3. WebLogic Integration Studio を使って、newpartner と B2B Integration ハブの間のコラボレーション アグリーメントを作成します。詳細については、『WebLogic Integration Studio ユーザーズ ガイド』を参照してください。

HTTPS(SSL)ブラウザ クライアントのコンフィグレーション

ゼロウェイト HTTPS(SSL)クライアントをコンフィグレーションするには、次の手順を実行します。

  1. ブラウザと B2B Integration ノードの双方に対する証明書をコンフィグレーションします。

  2. newpartner という WebLogic Server ユーザを作成します。このユーザは、トレーディング パートナ ゼロウェイト クライアントの代わりにブラウザを実行できます。このユーザは、WebLogic Server Administration Console または WebLogic Integration B2B Console で作成することができます。

  3. B2B Console を使って、トレーディング パートナ ゼロウェイト クライアントを作成します。

  4. 適切なトレーディング パートナ レコードに newpartner をマップします。

  5. WebLogic Integration B2B Console を使って、ゼロウェイト クライアントと B2B Integration ハブの間のコラボレーション アグリーメントを作成します。詳細については、『B2B Integration 管理ガイド』を参照してください。

 


サンプルの再コンパイル方法

サンプルに何らかの変更を加えた場合は、実行前に再コンパイルする必要があります。修正したサンプルを再コンパイルするには、次の手順を実行します。

  1. WLI_HOME(WebLogic Integrationをインストールしたディレクトリ)に移動します。
    cd WLI_HOME

  2. プラットフォームに対応した手順を実行することによって setenv スクリプトを実行し、最上位の WebLogic Integration 環境変数を設定します。

  1. project ディレクトリに移動します。

  2. 次のコマンドを実行します。

    ant all

 

ページの先頭 前 次