![]() ![]() ![]() ![]() ![]() |
開発ガイド 05/16/03 09:21:28 |
リソースアダプタは、J2EE Connector技術の重要な部分です。この章では、リソースアダプタについて紹介します。この章は次の節で構成されています。
リソースアダプタは、J2EEサーバにあるソフトウェアコンポーネントであり、J2EEコンポーネントが、J2EEサーバの外側にあるEIS (企業情報システム)と通信できるようにします。リソースアダプタはJDBC ドライバのようなもので、これにより、サービス(接続プール、トランザクション管理、セキュリティ管理など)にアクセスしたり、このようなサービスをEISに提供したりするためにJ2EEアプリケーションサーバで使用できる標準APIが提供されます。また、リソースアダプタでは、EISにより管理されるリソースにアクセスするためにJ2EEクライアントアプリケーションで使用できるインタフェースも定義および実装されます。Connector Architecture Specification (1.0)では、クライアントアプリケーションによる使用のためにリソースアダプタで実装できるCCI (Common Client Interface)と呼ばれるクライアントインタフェースが定義されますが、必須ではありません。
リソースアダプタは、RAR (Resource Adapter Archive)ファイルに保存され、他のアーカイブタイプが配備される場合と同様にJ2EEサーバに配備されます。配備後、リソースアダプタおよびその基盤であるEISは、ターゲットサーバのツールを使用してConnectorの接続プールを作成および設定するまで、クライアントアプリケーションに対して使用できません。
リソースアダプタをJ2EEアプリケーションでどのように使用できるかは、次の図のとおりです。
各リソースアダプタは特定のデータソース(EIS)にアクセスできるように開発されるため、任意のJ2EEサーバに複数のリソースアダプタをインストールすることが可能です。J2EE Connectorアーキテクチャでは、リソースアダプタによって次のコントラクトが実装される必要があります。
契約 |
説明 |
---|---|
CCI (Common Client Interface) |
リソースアダプタを通じてデータにアクセスするためにクライアントで使用できるAPIを定義します。リソースアダプタプロバイダがCCIを実装する必要はありません。CCI APIは、異種EISデータに共通しており、EIS接続およびデータを作成したり管理したりするためのメソッドおよびクラスを含んでいます。
|
接続管理 |
リソースアダプタを使用してアプリケーションのパフォーマンスおよびスケーラビリティを向上できる接続プールをJ2EEアプリケーションサーバで作成および管理できるようにするAPIを定義します。 |
トランザクション管理 |
リソースアダプタを使用してEISリソースをJ2EEアプリケーションサーバでグローバルまたはローカルのトランザクションに含めることができるようにするAPIを定義します。J2EE Connectorアーキテクチャでは、次のタイプのリソースアダプタが定義されます。 |
セキュリティ |
リソースアダプタを使用してEISリソースへの安全な接続をJ2EEアプリケーションサーバでサポートできるようにするAPIを定義します。リソースアダプタによってサポートされるセキュリティは、EISの要件によって異なります。 |
リソースアダプタは、RAR (Resource Adapter Archive)ファイルに保存され、任意のJ2EE互換サーバに配備することができます。RARファイルには、次のものが含まれている必要があります。
また、ほとんどのJ2EEサーバではランタイム配備情報を含むファイルが必要であるため、ターゲットJ2EEサーバで必要なファイルを提供しなければなりません。
[Deployment]ダイアログボックスに情報を入力します。
配備情報は、配備する先のサーバによって異なります。選択したサーバに基づいて適切な配備ツールを実行するためにWorkbenchで使用できるJ2EEサーバプロファイルを作成するには、サーバプロファイルダイアログボックスを使用します。
Workbenchにより、複数のJ2EEサーバへの自動配備が行われます。
詳細については、『ツールガイド』の
アーカイブ配備に関する章を参照してください。
リソースアダプタを作成するためのWorkbenchの使用 Workbenchを使用して、リソースアダプタを作成することもできます。J2EEコンポーネントを開発するためのWorkbenchの使用の詳細については、『ツールガイド』を参照してください。
クライアントアプリケーションでは、EISまたはリソースアダプタに直接アクセスすることはありません。クライアントアプリケーションでは、リソースアダプタの接続プールにアクセスします。
EISにアクセスするために、クライアントアプリケーションでは次のことが実行されます。
javax.resource.ResourceException、およびリソースアダプタのクライアントインタフェースを使用するために必要な他のパッケージをインポートする。
JNDIを使用して、リソースアダプタに対するConnectionFactoryを取得する(必要な場合は、ユーザ名およびパスワードの値も取得します)。
使用されていない接続に接続プールからアクセスする。CCI が使用されている場合、 クライアントアプリケーションではgetCCIConnection()メソッドを使用します。
接続したら、CCIのメソッド、またはリソースアダプタベンダによって定義された独自のインタフェースを使用して、データにアクセスします。
次のコードでは、(JNDIを通じて) ConnectionFactoryを見つける方法、およびCCIを使用して接続を確立する方法が示されています。
public void setSessionContext(SessionContext ctx) { try { m_sessionContext = ctx; Context ic = new InitialContext(); username = (String) ic.lookup("java:comp/env/user"); password = (String) ic.lookup("java:comp/env/password"); Object obj=ic.lookup("java:comp/env/myEIS"); cf=(ConnectionFactory)obj; } catch (NamingException ex) { ex.printStackTrace(); } }
![]() ![]() ![]() ![]() ![]() |
開発ガイド 05/16/03 09:21:28 |
Copyright © 1997, 1998, 1999, 2000, 2001, 2002, 2003 SilverStream Software, LLC, a wholly owned subsidiary of Novell, Inc. All rights reserved.