本文へジャンプ

ソフトウェア > Lotus > Lotus Developer Domain > 製品別技術情報 > Lotus Notes/Domino > 

LDD Today

WebSphere Application Serverと組み合わせてDomino用ビジネス統合ソリューションを開発する


Lotus Software
by Jay Zhao SoftwareEngineer,IBMCorp.
レベル:中級者
原文の掲載:2004年3月22日

LDD Todayの原文(US)

インデックス
WebSphere Business Integration Adapter用WebSphere Application Serverイネーブルメント
WebSphere Application Serverと組み合わせたDomino用ビジネス統合ソリューションの開発
WebSphere Application Serverプロジェクトと展開用JARをSystem Managerを使って作成する
WebSphere BIA for Domino用にWebSphere Application Serverイネーブルメント・プロジェクトを開発する
WebSphere Studio AD IE内でWebSphere BIA for Domino用Hub One Wayパターンを開発する
WebSphere Application Server EnterpriseにEARに展開する
WebSphere BIA for DominoをWebSphere Application Server Enterpriseの環境で実行する
まとめ
リソース

シリーズの三回目は、WebSphere Application ServerとWebSphere Business Integration Adapter for Dominoを使ったビジネス・アプリケーション・ソリューションの構築方法について技術的詳細を解説していきます。

これまでの2回では、WebSphere Business Integration (WebSphere BI)のアーキテクチャー、統合サーバー、ツール・セット、アダプターについて概要を解説してきました。また、Dominoビジネス・アプリケーションとエンタープライズ・アプリケーションとの統合を実現するうえで、どのようにWebSphere InterChange Server (WebSphere ICS)を使うかについても深い話を行いました。WebSphere BI Adapter for Lotus Domino (WebSphere BIA for Domino)のアーキテクチャーについても1回目で扱いました。今回は、サーバーとWebSphere Application Server Enterprise V5.0との別の統合について見ていきます。また、WebSphere Application Server Enterprise経由で、Dominoビジネス・アプリケーションを他のエンタープライズ・アプリケーションと統合する方法の詳細についても扱っていきます。


WebSphere Business Integration Adapter用WebSphere Application Serverイネーブルメント

IBMではWebSphere Business Integration Adapters (WebSphere BI Adapters)用のWebSphere Application Serverイネーブルメントを、WebSphere Business Integrationの最新リリースで提供しています。他のWebSphere BIのアプローチと異なり、WebSphere Application Serverのビジネス統合では、開発者が既存のJ2EEアプリケーションと強力なWebSphere BIアプリケーションを統合する方法を用意しています。この新しいアプローチはWebSphere Application Serverの"Build-to-Integrate"プラットフォームとビジネス・オン・ディマンド(business-on-demand)インフラストラクチャーに基づいたものです。サービス指向のアーキテクチャーであり、J2EEとWeb Services技術を完全にサポートしています。
WebSphere Application Serverビジネス統合では、以下の組み合わせパターンをサポートしています。
  • Agent Delivery
  • Agent Request
  • Hub Request
  • Hub One Way
それぞれのパターンについてみていきましょう。

Agent Delivery
非同期のメッセージがWebSphere BI AdapterからWebSphere Application Serverへ送信されます。メッセージはアダプターのイベント通知メカニズムにより開始されます。このメカニズムではDominoデータベースでのイベントの発生を通史します。アダプターは、メッセージに対するWebSphere Application Serverからの返事には関知しません。
Agent Request
Agent Deliveryとほぼ同じですが、非同期ではなく同期メッセージがWebSphere BI AdapterからWebSphere Application Serverへ送信されます。このメッセージはDominoデータベースでのイベント発生を知らせる、アダプターのイベント通知メカニズムにより開始されます。このコネクターは、メッセージに対するWebSphere Application Serverからのレスポンスを待ち受けます。
Hub Request
同期リクエストがWebSphere Application ServerからDominoサーバーへ、WebSphere BIアダプター経由送られます。WebSphere Application Serverは統合サーバーとして振る舞い、メッセージをアダプターに送信し、Dominoサーバーからのレスポンスを待ち受けます。
Hub One Way
非同期リクエストがWebSphere Application ServerからDominoサーバーへ、WebSphere BI Adapter経由で送信されます。WebSphere Application Serverは統合サーバーとして振る舞い、アダプターへメッセージを送信しますが、Dominoサーバーからのレスポンスを待ち受けることはありません。

図1. WebSphere Application Server Business統合パターン


この記事では、新しいやり方を使ってDominoのビジネス統合アプリケーションを開発する方法について探っていきます。また、Agent DeliveryとHub One Wayのパターンについても全てをカバーしていきます。(Dominoアプリケーション統合ではこの2つが最も便利なパターンであるためです。) 図1はAgent DeliveryパターンとHub One Wayパターンの関連性およびこの記事での扱う範囲を示したものです。この図では、これから扱うソリューションのデータ・フローについても示されています。
 
上に戻る
 
WebSphere Application Serverと組み合わせたDomino用ビジネス統合ソリューションの開発

このセクションでは、WebSphere Application ServerとWebSphere BI Adaptersの技術を使用してDominoのビジネス統合ソリューションを構築する方法を扱います。Agent DeliveryとHub One WayパターンをDominoで使用する詳細なステップもこのセクションで扱っていきます。Domino用WebSphere Application Serverビジネス統合ソリューションの開発およびテストを行うには、以下のタスクを完了させておいてください。
  1. WebSphere Application Serverプロジェクトを作成し、System Manager でJARを展開する。
  2. WebSphere Studio Application Developer Integration Edition (WebSphere Studio AD IE) V5.0.1を使って、WebSphere BIA for DominoのDevelop WebSphere Application Serverイネーブルメント・プロジェクトを開発する。
  3. Enterprise Application Archive (EAR)ファイルをWebSphere Application Serverに展開する。
  4. WebSphere Application Server Enterprise環境で、WebSphere BIA for Domino EARを実行する。
以上のタスクを行う前に、前提条件をすべて満たしていることを確認しておいてください。以下に示すタスクはその前提条件を満たすためにやっておかなければならないことの概要を示したものです。
  1. Follow the installation guide for WebSphere Application Server V5 EnterpriseおよびWebSphere Studio Application Developer Integration Edition V5.0.1のインストール・ガイドに従って、インストールとセットアップが終了していること。(詳細については WebSphere Application Server V5 Enterprise InfoCenterWebSphere Studio AD IE Webサイト をご覧ください。)
  2. WebSphere BI Adapters 2.3.1のインストール。インストール中に、Dominoおよび他のアダプターを選択することができます。また、WebSphere Application Serverをブローカー・タイプとしてのインストールを選ぶこともできます。(WebSphere BI Adaptersインストール時にオプションを尋ねられます。)
  3. WebSphere BI Adapter for Lotus Domino User Guideに従って、WebSphere BIA for DominoとDominoサーバーを設定します。WebSphere BIA for Dominoコネクター設定を設定ファイル(CFGフォーマット)で保存します。(詳細については、WebSphere BI Adapter for Lotus Domino ユーザー・ガイドをご覧ください。) WebSphere Business Integration Adapters V2.3.1をダウンロードし、Lotus Domino Adapterのガイドを見つけておいてください。
 
上に戻る
 
WebSphere Application Serverプロジェクトと展開用JARをSystem Managerを使って作成する

WebSphere BIA for Dominoのセットアップが終了すると、System Managerが使えるようになります。これはWebSphere BI Adaptersツールとして出荷されています。以下のタスクを完了させます。

  1. System ManagerでWebSphere BIA for Domino用のIntegration Component Library (ICL)を作成します。
  2. BOとConnector ConfigurationをSystem Managerへインポートします。
  3. WebSphere Application Serverプロジェクトをインポートし、System ManagerでJARをエキスポートします。
Step 1: System Manager でWebSphere BIA for Lotus Domino 用Integration Component Library (ICL)を作成する
System ManagerでWebSphere BIA for Lotus Domino用のDomino_ICLという名前でICLを作成します。シリーズの第一回目でWebSphere ICS用に行ったものと同様の作業です。

Step 2: System ManagerにBOとConnector Configurationをインポートする
Business Object Designerを開き、メニューから、<WebSphere BI Adapters Start Menu> - Programs - Toolsを選択して、DominoDocument.txtをBO Designerへインポートします。BOをXML Schema Definition (XSD)ファイルへ保存します。そして、それらをDomino_ICLにも保存します。<WebSphere BI Adapters Start Menu> - Programs -Toolsを選択してConnector Configuratorを開きます。(図2)

File - Open - From Fileを選択して、WebSphere BIA for Dominoコネクター設定ファイル(DominoConnector.cfg)を開きます。WebSphere Application Serverをブローカー・タイプとして選択し、キュー名とキュー・マネージャーを更新して、WebSphere MQで行った変更内容を反映させます。プロジェクトをDomino_ICLに保存し、DominoConnector.cfgにも保存します。

図2. WebSphere Application Server用WebSphere BIA for Lotus Dominoコネクター設定


System Managerに戻ります。Dominoコネクターと、Domino_ICL projectにインポートされたそのビジネス・オブジェクトが表示されているはずです。

Step 3: WebSphere Application Serverプロジェクトの作成と、JARをSystem Managerでエキスポートする
新規User ProjectをWebSphere Application Server Projectsの配下に作成し、コネクターとBOをICLから追加します。Domino_WASProjで右クリックして、Deploy WebSphere Application Server Projectを選択して、WebSphere Application Serverを展開します。Deploy WizardでExport as Directoryを選択して、展開作業を終了します。

展開作業が終了すると、指定したディレクトリーに、Wizardで生成したWSDLファイル3つが見えているはずです。このWSDLファイルは、WebSphere Studio AD IEを使ってWebSphere Application
Serverイネーブルメント・パターンを後ほど作成する際に使用します。
 
上に戻る
 
WebSphere BIA for Domino用にWebSphere Application Serverイネーブルメント・プロジェクトを開発する

このセクションでは、WebSphere Studio AD IEでAgent DeliveryとHub One Wayのパターンを作成する方法の詳細手順について解説していきます。既に解説した通り、Agent Deliveryのやりとりのパターンは一方通行型の処理で、WebSphere BIA for DominoからWebSphere Application Serverへメッセージが届けられる形です。一方、Hub One Wayのパターンでは、WebSphere Application ServerがWebSphere BIA for Dominoへメッセージを送信します。

WebSphere Studio AD IE でWebSphere BIA for Domino 用のDevelop Agent Deliveryパターンを開発する
Agent DeliveryパターンのWebSphere BIA for Lotus Dominoへの実装では3つのプロジェクトが入っています。
  • WBIADServiceProj ベース・プロジェクトにはインポートされたWebSphere BIA for Domino WSDLとXSDファイル、生成されたヘルパー・クラスが含まれています(データ・タイプ・ビーンとフォーマット・ハンドラー)。このプロジェクトは全てのパターンで共有されます。
  • WBIAD_AgentDeliveryEJBProj  このEJBプロジェクトには、サービスとEJBスケルトンとMessage Driven Bean (MDB)が含まれています。
  • WBIAD_AgentDeliveryEARProj Enterprise Application Archive (EAR)プロジェクトはモジュールとユーティリティーJARが含まれています。
このパターンをWebSphere Studio AD IE v 5.0.1で開発するのに必要な手順は以下の通りです。

  1. WebSphere BIA for Dominoサービス・プロジェクトをBusiness Integration Perspectiveで作成します。
  2. EJBプロジェクト、WBIAD_AgentDeliveryEJBProjとEARプロジェクト、WBIAD_AgentDeliveryEJBProjを作成します。
  3. 展開可能なサービス・コードを生成します。
  4. サービスとEJBスケルトンをWebSphere BIA for Dominoインターフェース・ファイル、G(DominoConnector.wsdl)から生成します。このステップはSession Beanを作成し、ヘルパー・クラスとEARを生成するものです。
  5. Message Driven Bean (MDB)を作成します。
Step 1: ビジネス統合の観点から、WebSphere BIA for Dominoサービス・プロジェクトを作成する
WebSphere Studio AD IE 5.0.1でBusiness Integration Perspectiveを開き、新規サービス・プロジェクトをService Projects配下に作成します。XSDとSystem Manager で生成されたWSLDファイルを、ファイル・システムからサービス・プロジェクトへインポートします。(図3)

図3. XSDとWSLDファイルをサービス・プロジェクトにインポートする


Step 2: EJBとEARプロジェクトを作成する
新規EJB、WBIAD_AgentDeliveryEJBProjとEAR project - WBIAD_AgentDeliveryEARProjを作成します。(図4) Business PerspectiveでJ2EE Hierarchyタブを選択し、File - New - Project - EJBプロジェクトを選択し、新規EJB 2.0プロジェクトを作成します。

図4. WebSphere BIA for Lotus Domino EJBとEARプロジェクトを作成する


同じウィザードでWebSphere BIA for Domino用のEARファイルを定義します。EJBプロジェクトの生成により、J2EE Perspectiveができてきます。J2EE Hierarchyに定義した2つのプロジェクトが表示されているはずです。

Step 3: 展開サービス・コードを生成する
テストあるいは本番サーバーでエンタープライズ・ビーンを動作させるには、エンタープライズ・ビーン用に展開コードを生成する必要があります。WebSphere BIA for Dominoサービス・プロジェクトでDominoConnectorJMSService.wsdlを選択し、右クリックで、Enterprise Services - Generate Deploy Codeを選択します。Generate Deploy Codeウィザードで、既存のポートを使用するオプションを選択して、DominoDocumentAgentDeliveryBindingPortがポート名として選択されていることを確認してください。正しいEARとEJBプロジェクトを選択して、「次へ」をクリックします。サービス・プロジェクトからJMS service WSDLファイルを選択し、ポート名としてAgent Deliveryポートを選択します。「終了」をクリックしてコード生成を終了します。

WebSphere BIA for Domino EJB展開コードの生成が終了すると、空白のWebSphere BIA for Domino EJBプロジェクトがServicesビュー配下のDeployable Servicesに表示されているはずです。

Step 4: WebSphere BIA for Dominoインターフェース・ファイルからサービスとEJBスケルトンを生成する
Business Integration Perspective配下のServicesビューに戻り、WebSphere BIA for Dominoサービス・プロジェクト配下にサービス・プロジェクトを生成します。DominoConnector.wsdlファイルを選択し、右クリックで、New - Otherを選択します。すると新たにウィザードが立ち上がります。ServiceからBuildを選択します。新規Service Skeleton wizard (図5)で、EJB Service Skeletonを選択し、「次へ」をクリックします。

図5. EJBサービス・スケルトン


Create a new port bindingを選択し、Generate helper classesを選択します。「次へ」をクリックします。WSDLファイル名が正しいことを確認します。Service Skeletonで、DominoDocumentAgentdeliveryをProt type名として、また/WBIAD_AgentDeliveryEJBProj/ejbModuleをSourceフォルダーとして選択します。EJB Skeletonで、EJBプロジェクトがWBIAD_AgentDeliveryEJBProjであることを確認します。JNDI名はデフォルトのままにし、「終了」をクリックします。

Home InterfaceやRemote Interfaceやビーン自身を持つEJBセッション・ビーンはDeployable Services で生成されます。また、Services Projectでヘルプ・クラスがServicesビューに生成されます。Deployable Services配下にある、WBIAD_AgentDeliveryEJBProjプロジェクトは、EJBアプリケーション用の全てのリソースを含んでいます。その中には、セッション・ビーン(DominoDocumentAgentDeliveryService)や2つの展開用ディスクリプター・ファイルが含まれています。WebSphere BIA for Dominoサービス・プロジェクトには、サービス定義が含まれています。サービス・プロジェクトはJARファイルとして格納され、エンタープライズ・アプリケーション・プロジェクト(WBIAD_AgentDeliveryEARProj)内に置かれます。これはJ2EE Hierarchyビューで見ることができます。J2EE PerspectiveのJ2EE Hierarchyからコードをレビューできます。

Step 5: メッセージ・ドリブン・ビーン(MDB)の作成
メッセージ駆動型ビーン(MDB: Message-Driven Bean)はEJB 2.0で入ったもので、JMS技術をベースにしています。これを使うことで、アプリケーションは非同期型メッセージを処理できるようになり、J2EEサーバー(図6)へのメッセージング・ゲートウェイとして機能することができます。メッセージはJ2EEコンポーネントならどれからでも送ることができます。例えば、アプリケーション・クライアント、エンタープライズ・ビーン、Webコンポーネントなどです。JMSとMDBは必ずJ2EE 1.3をサポートしています。WebSphere Application Server V5 Enterpriseは、J2EE 1.3を完全にサポートしています。

図6. Message Driven Bean in EJB 2.0のロジカル・ビュー


このパターンでは、メッセージ駆動型ビーンはJMSメッセージとしてコネクター・エージェントからイベントを受信する役割を持っています。そして、最後のステップで作成したセッション・ビーンを起動してイベントを処理します。WebSphere BIA for Domino用のMDBを生成するには、Deployable ServicesでDominoDocumentAgentDeliveryEJBService.wsdlを選択し、右クリックでEnterprise Services - Generate Deploy Codeをクリックします。Generate Deploy Codeダイアログボックスで、Create a new port and binding optionを選択し、自分のEJBとEARプロジェクトを選択し、「次へ」をクリックします。Inbound Service Filesのダイアログボックスで、DominoDocumentAgentDeliveryEJBService.wsdlを選択し、プロジェクトとしてDominoDocumentAgentDeliveryEJBBinding.wsdlファイルを選択し、「終了」をクリックします。

J2EE Hierarchyビューに戻ります。EJB Modules配下のWebSphere BIA for Domino EJBプロジェクトで、2つのセッション・ビーンが見えたならば、古い方を削除します。このケースではWBIAD_AgentDeliveryEJBProj の下にあるDominoDocumentAgentDeliveryを削除します。

DMBを作成したら、DMBがJ2EE HierarchyビューのEJB Modulesの下に見えるはずです。図7では、WebSphere BIA for Domino用のMDB名であるDominoDocumentServiceMDBが見えています。

図7. WebSphere BIA for Lotus Domino用MDB


J2EE Hierarchyビューで、WAS_AgentDeliveryEJBProjを選択し、右クリックで"Open With the EJB Deployment Descriptor editor"を選択します。そしてBeanタブを選択します。DestinationタイプはQueue、そしてListenerPort名はSenderQListenerPortです。キュー接続ファクトリーとここでのキューは、WSDLファイルで指定されたものをマッチする必要があります。また、J2EE Hierarchyビューでは、Referencesタブを選択します。MDB配下にリストされたリソース・キュー名(wbia/ibm/com/Domino/DOMINOCONNECTOR/DELIVERYQUEUE)を選択します。

キューのJNDI名はWebSphere Application Serverで、リソース・キューのロケーションを指定するのに使われます。MDB配下にリストされた接続ファクトリー(wbia/ibm/com/DominoQCF)を選択します。WebSphere Bindingsのセクション下で設定するJINIファイル名は、WebSphere Application Server Administrative Console上で指定したJINI名フィールドと同じものでなかればなりません。EJB Deployment Descriptor editorでEJBプロジェクトに加えた変更を保存します。これらのステップを完了すると、WebSphere BIA for Domino Agent DeliveryパターンのEJBアプリケーション開発が完了します。
 
上に戻る
 
WebSphere Studio AD IE内でWebSphere BIA for Domino用Hub One Wayパターンを開発する

これまでのセクションで解説した通り、Hub One Wayパターンは、WebSphere Application Serverがアダプターへメッセージを送るメソッドとして使うことができます。この記事では、WebSphere BIA for DominoをHub One Wayパターンを開発するアダプターとして使用しています。同じロジックは他のアダプターについても適用できます。他のアダプターに対してこのパターンを開発したら、例えばSAPアダプターだと仮定します。Agent DeliveryとHub One Way EJBとの間でEJBコールが確立されると、ポイント・ツー・ポイント(DominoからSAPへ)の統合が提供可能になります。しかし、この記事では今回は扱いません。

この記事でのWebSphere BIA for Domino 用Hub One Wayパターンの実装では、4つのプロジェクトを含んでいます。
  • WBIADServiceProj  The base project containing the imported インポートされたWebSphere BIA for Domino WSDLとXSDファイル、生成されたヘルパー・ファイル(データ・タイプ・ビーンとフォーマット・ハンドラー)を含むベース・プロジェクトです。このプロジェクトは、WebSphere Studio AD IEにおいては、全てのパターンで共有されます。
  • WBIAD_HubOneWayEJBProj EJB実行サービスとバインディングを記述したWSDLファイルと共にSession Beanが含まれるEJBプロジェクトです。
  • WBIAD_HubOneWayEARProj Enterprise Application Archive (EAR)プロジェクト
  • WBIAD_HubOneWayEARClientProj アプリケーション・パッケージを完全にテストができるサービスを実行できるクライアントが入ったEAR Client Projectです。EARプロジェクトのオプションになります。Business Object Initialization LibraryをEJB project、WBIAD_HubOneWayEJBProjに追加します。
WebSphere Studio AD IE V5.0.1でこのパターンを開発するのに必要なタスクは以下の通りです。
  1. WebSphere BIA for Lotus Dominoサービス・プロジェクトを作成します。
  2. EJBとEARプロジェクトを作成します。
  3. Hub One Way EJB展開コードを作成します。
  4. テスト用EARクライアント・プロジェクト(DominoHubOneWayEARClientProj)を作成します。(任意)
  5. Business Object Initialization LibraryをEJBへ追加します。

Step 1: WebSphere BIA for Dominoサービス・プロジェクトの作成
WebSphere BIA for Dominoサービス・プロジェクト、WBIADServiceProjは全てのパターンで共有されます。Hub One Way パターンのところでのAgent Deliveryパターンのステップ1で作成したサービス・プロジェクトを使うことができます。

Step 2: EJBとEARプロジェクトの作成
Hub One Way パターンで使ったEJBプロジェクト、WBIAD_HubOneWayEJBProjとEARプロジェクト、WBIAD_HubOneWayEARProjを使用します。このステップを完了する作業内容は、Agent Deliveryパターンで行ったものと同様です。

Step 3: Hub One Way EJB展開コードの作成
Business Integration PerspectiveのServicesビューから、WBIADServiceProjプロジェクトは以下にあるDominoConnectorJMSService.wsdlを選択します。ファイル上で右クリックし、Enterprise Services - Generate Deploy Codeを選択します。Generate Deploy Codeダイアログボックスが表示されますが、ここでHub One Way EJBプロジェクト用に正しい、Port Name、Inboundバインディング形式、EARプロジェクト、EJBプロジェクトが設定されていることを確認してください。

「次へ」をクリックします。Inbound Service Fileが表示されますので、再度「次へ」をクリックします。EJB Portダイアログボックスが開きますが、「終了」をクリックすると、WebSphere Studio AD IEがコード生成します。ServicesビューのDeployable Services にあるWBIAD_HubOneWayEJBProjプロジェクトには、EJBアプリケーションに必要はリソースが全て含まれています。これには、生成されたセッション・ビーン(DominoDocumentHubOneWayService)や展開用ディスクリプターなどです。また、サービス定義ファイル(DominoDocumentHubOneWayEJBService.wsdl)も含まれており、これには生成されたセッション・ビーンが記述されています。

J2EE Hierarchyビューに、WebSphere BIA for Lotus Domino 用の2つのEJBプロジェクトが見えているはずです。(図8)

図8. WebSphere BIA for Lotus DominoのJ2EE階層ビュー


Step 4: DominoHubOneWayEARClientProjのテスト用EARクライアント・プロジェクトの作成 (任意)
このステップは、WebSphere Application Serverイネーブルメント・パターンを使用して独自のビジネス統合アプリケーションを開発しているが、アプリケーションを十分テストしていない場合に必要なものです。このステップをおこなうことで、アプリケーション・パッケージ全体をテストするのに助けになると思います。この目的のために、クライアント・プロジェクトとEARファイルに任意で追加して、テストロジックを生成されたクライアント・コードに書き加えることもできます。WebSphere BIA for Dominoはよくテストされていることや、WebSphere BI Adaptersで同じ目的を提供できるVTC(Visual Test Connector)があることから、このステップはスキップします。しかし、アプリケーションをテストするためのEARクライアント・プロジェクトを作成する方法の詳細については、WebSphere Studio AD IEヘルプを参照してください。

Step 5: EJBにビジネス・オブジェクト初期化ライブラリーを追加する
Hub One Wayパターンにおいては、EJBプロジェクトはビジネス・オブジェクトを作成し、そのビジネス・オブジェクトをWebSphere BIA for Dominoへ送信します。EJBがビジネス・オブジェクトを生成する際はビジネス・オブジェクト初期化ライブラリーJARファイルに(boutil.jar)に依存しています。このJARファイルはビジネス・オブジェクトを作成するのにEJBに必ず含まれていなければなりません。J2EE Hierarchy View のBusiness Integration Perspective でWBIAD_HubOneWayEARProjを選択します。そして、右クリックでImportを選択します。通常、boutil.jarはWebSphere BI Adapters libディレクトリーにあります。インポート・ダイアログボックスに従って、ファイルシステムからboutil.jarファイルをWBIAD_HubOneWayEARProj projectへインポートします。

インポートを終了すると、boutil.jarがEARプロジェクトのUtility Jarsの配下に見えるはずです。EJBプロジェクトのプロパティーで、boutil.jarを依存するJARのリストに加えます。これで、BOの初期化ユーティリティーをEARやEJBプロジェクトに加える作業が終了します。

WebSphere Studio AD IEでEARファイルをテストする
WebSphere BIA for Domino Agent DeliveryやHub One Wayパターン用のEJBアプリケーション開発が終了したら、WebSphere Studio AD IE EEテスト環境でEARをテストすることができます。この作業では基本的な手順が2つあります。

  1. WebSphere Application Serverテスト環境のためのテスト・サーバーを作成します。
  2. WebSphere Studio AD IE EEテスト環境でEARを実行します。
Step 1: WebSphere Application Serverテスト環境にテスト・サーバーを作成する
EARファイルをテストするに、WebSphere Studio AD IEテスト環境のServer Perspectiveにテスト・サーバーを作ることができます。テスト・サーバーを作成する際に、EEテスト環境が選ばれていることを確認してください。Serversタブで、今作成したサーバーを選択します。右クリックで、Startを選択してテスト・サーバーを起動します。起動すると、"Server server1open for e-business"をいうメッセージが表示されます。

テスト・サーバーのConfigurationタブを選択して、WebSphere Server Configurationパネルを開きます。Enable administration consoleのチェックボックスを選択します。また、Variablesタブを選択します。Defined variablesのドロップダウン・リストではMQ_INSTALL_ROOT変数をみつけ、WebSphere MQインストール・ディレクトリーの値に変更します。(図9)

図9. WMQパスの入力


設定を保存し、WebSphere Application Server Administrative Consoleを開始します。そしてテスト・サーバーを再起動します。

Step 2: WebSphere Studio AD IE EEテスト環境でEARを実行する
テスト・サーバーを選択し、右クリックでAddを選択してWebSphere BIA for Domino用に作成した2つのEARファイルを追加し、サーバーを再起動します。再起動が終わると、WebSphere BIA for Lotus Domino EARが表示されテスト・サーバー上で実行されているはずです。
 
上に戻る
 
WebSphere Application Server EnterpriseにEARに展開する

After you test your WebSphere BIA for Domino EARファイルをWebSphere Studio AD IE Enterpriseのテスト環境でのテストが完了したならば、EARファイルを実際のWebSphere Application Server V5 Enterpriseに展開します。WebSphere Application Server V5 EnterpriseにWebSphere BIA for Dominoの展開方法を理解するにあたって、このセクションではWebSphere Application ServerおよびWebSphere MQの管理に関する基本知識があることを前提としています。WebSphere Application Serverの管理については、WebSphere Application Server に同梱のWebSphere Application Server InfoCenter を参照してください。

これまで解説したように、JMSとMDBの実装はJ2EE 1.3における必須事項の一部で、WebSphere Application Server V5 Enterpriseでは完全にこれをサポートしています。WebSphere Application ServerでWebSphere BIA for Domino EARの展開と実行に必要なステップは以下の通りです。
  1. WebSphere Application ServerでEARファイルをインストールします。
  2. WebSphere Application ServerでMessage Listener Serviceを設定します。
  3. WebSphere Application ServerでQueue Serviceを設定します。
  4. WebSphere Application ServerでQueue Connection Factory (QCF)を作成します。
Step 1: WebSphere Application Server上にEARファイルをインストールする
To install the EAR files on WebSphere Application Server上にEARファイルをインストールするには、WebSphere Studio AD IEで作成したEARファイルをエキスポートする必要があります。そして、WebSphere Application Server Administrative Consoleのサーバーのアプリケーション・セクションにあるInstall New Applicationを選択します。アプリケーションのインストールには8ステップあります。これらのステップに従って、WebSphere Studio AD IEのDeployment Descriptorでの情報と表示される情報をチェックします。ステップに従って、その情報がDeployment Descriptorとマッチする場合は、インストールが終了したあとで、WebSphere BIA for Dominoアプリケーションを立ち上げることが可能です。(図10)

図10. WebSphere Application Server Enterprise Admin ConsoleからWebSphere BIA for Lotus Domino EARを実行する


WebSphere BIA for Dominoアプリケーションを起動することができない場合には、ステップ2を完了して、WebSphere Application Server Administrative Consoleでのメッセージ・リスナー設定を確認する必要があります。

Step 2: WebSphere Application Serverでメッセージ・リスナー・サービスをセットアップする
WebSphere BIA for Domino MDBの開発において、WebSphere Studio AD IEはMDBとそのDeployment Descriptorを生成します。WebSphere Application Serverで、WebSphere BIA for Domino用に新規情報を扱うための新規Message Listener Portを作成します。WebSphere Application Server V5では、JMS Connection FactoryとJMS Destinationの接続を定義するリスナー・ポートが導入されています。アプリケーションの各MDBについてそれぞれリスナー・ポートをバインドする必要があります。

WebSphere Application Server Administrative Consoleを開き、自分のサーバーのMessage Listener Serviceを選択します。そして新規に、WebSphere BIA for Domino用のリスナー・ポートを作成します。(図11)

図11. MDB用新規リスナーの作成


図11では、EJB Deployment DescriptorのBeanタブで設定したリスナー・ポート名を追加しています。このポート名はEJB Deployment DescriptorのBeanタブで指定したものです。また、EJB Deployment DescriptorのReferencesタブで指定した、同じ接続ファクトリーJNDI値と送り先JNDIキュー名の値を追加します。Maximum sessions、Maximum retries、Maximum messagesフィールドについては必要に応じて変更してください。Acceptを押し、作成したばかりのリスナー・ポートを選択し、Startをクリックします。これで起動の準備が整いました。

Step 3: WebSphere Application Serverでキュー・サービスをセットアップする
WebSphere Application Server V5 Enterpriseでは3種類のJMS Providerの設定が可能です。
  • WebSphere MQ JMS Provider
    WebSphere MQ全てがインストールされ、設定されている場合に使われるものです。この記事ではこのタイプのプロバイダーを使用しています。
  • WebSphere JMS Provider
    アプリケーション・サーバーのインストールの一部として、この埋め込みJMSプロバイダーをインストールすることも可能です。(WebSphere Embedded Messaging) これはWebSphere MQ JMS Providerの軽量バージョンで便利なWebSphere MQ製品のユーティリティーが含まれていないものです。しかし、WebSphere Application Server環境においてJMSを完全にサポートしています。
  • Generic JMS Provider
    サード・パーティーのJMS Providerが、WebSphere Application Server V5 Enterpriseと共に使われる場合に使用されます。
WebSphere Application Server Administrative Consoleで、WebSphere MQ JMS ProviderをResourceとして選択します。New Configuration for WebSphere MQ Queue Destinations で、キューの名称とJNDI名を設定します。(図12)

JNDI名はEJB Deployment Descriptorで設定したもの、またWebSphere Studio AD IEでのWebSphere BIA for Domino MDB用リスナー・ポートと同一でなければなりません。Base Queue Nameフィールドでは、WMQマネージャーで作成したキュー名を入力します。

図12. WebSphere BIA for Lotus Domino用の新規キューを作成する


新規設定を保存します。新規に作成したキューはWMQキューの送り先としてリストされます。

Step 4: Create the queue connection factory (QCF) in WebSphere Application Serverにキュー接続ファクトリー(QCF)を作成する
図13で示されているように、WebSphere Application ServerのWebSphere MQ JMS Providerセクションで、新規キュー接続ファクトリーを作成します。JNDI名は、WebSphere BIA for Domino MDB用EJB Deployment Descriptorで使用した名称と対応していなければなりません。

図13. 新規QCFの作成


WebSphere BIA for Domino EARアプリケーションの展開が終了しました。WebSphere Application Serverからアプリケーションを実行させることができます。WebSphere Application Serverのログ・ディレクトリーにある同じログで、あるいはWebSphere Studio AD IEのテスト・サーバーコンソールに表示されるメッセージで確認して見てください。
 
上に戻る
 
WebSphere BIA for DominoをWebSphere Application Server Enterpriseの環境で実行する

WebSphere BIA for Domino EARをWebSphere Application Server Enterpriseに展開した後は、WebSphere Application Server V5 Enterprise環境でWebSphere BIA for Dominoを稼働させるのに, 以下の作業を行う必要があります。

start_Domino.batファイルを、Domino Java API JARファイル(NCSO.jar)の位置に従って変更することを忘れないでください。通常、data\domino\java directoryにあります。コマンドイランからか、start_Domino.batのショートカットを使ってWebSphere BIA for Dominoコネクターを開始します。スタート・メニューから起動するには、WebSphere BI Adapters program - Adapters - Connectors - Lotus Domino Connectorを選択します。コマンドイランの場合は、<WebSphere BI Adapters Root Directory>\ connectors\Domino (for example C:\WBIA231_WAS\connectors\Domino)で、以下を実行します。

start_Domino Domino IntegrationServerName -cDominoConnector.cfg

IntegrationServerNameはWebSphere Application Serverのサーバー・ノード名です。

WebSphere BIA for Dominoが起動すると、以下のメッセージがWebSphere BIA for Dominoのログ・ファイルかコマンド・ラインに表示され、WebSphere BIA for Dominoがアクティブであることが分かります。

[Time: 2003/08/13 12:32:06.010] [System: ConnectorAgent] [SS: DominoConnector]
[Thread: main (#322628)] [Type: Info] [MsgID: 17066] [Mesg: Application state is connected]
[Time: 2003/08/13 12:32:06.210] [System: ConnectorAgent] [SS: DominoConnector]
[Thread: main (#322628)] [Type: Info] [MsgID: 9054]
[Mesg: Using MQSeries local binding to the Queue Manager.]
[Time: 2003/08/13 12:32:07.362] [System: ConnectorAgent] [SS: DominoConnector]
[Thread: ClientPacketSyncDrvFormatterDominoConnector (#1560607)] [Type: Info] [MsgID: 17064]
[Mesg: Connector Agent state is active.]
 
上に戻る
 
まとめ

この記事では、WebSphere Application Server V5 Enterprise を経由して、エンタープライズ・アプリケーションとDominoビジネス・アプリケーションとを統合する方法のポイントを解説しました。この記事での基本的な実現方法の考え方はEJB、JMS、MDB技術をWebSphere MQを組み合わせて利用したものです。WebSphere Application Server V5 Enterprise でもサポートされているJava Connector Architecture (JCA)を使ったアプローチも可能でしょう。
 
上に戻る
 
リソース


著者について(原文のまま)
Jay Zhao is a software engineer with the IBM WebSphere Business Integration Adapter development team. He has been working in different areas in the WebSphere development team since 1999.
 
上に戻る