Oracle® Fusion Middleware Oracle WebLogic Server WLECのためのWebLogic Tuxedo Connector移行ガイド 11gリリース1 (10.3.6) B61643-06 |
|
![]() 前 |
![]() 次 |
以下の項では、Oracle WebLogic Tuxedo Connector用にWLECアプリケーションを変換するために必要な手順について説明します。
Tuxedoユーザーは、以下の項で説明されるように環境の変更を行う必要があります。
新しいdmconfig
ファイルを作成して、TuxedoアプリケーションとWebLogic Serverアプリケーションの間の接続を提供する必要があります。Tuxedoドメインの作成方法については、http://www.oracle.com/technetwork/middleware/tuxedo/overview/index.html
でCORBAドメインのプランニングと構成に関する説明を参照してください。
アプリケーションはTuxedo/T Domainゲートウェイを使用するので、UBBCONFIG
ファイルを変更する必要があります。これを行うには、このファイルの*SERVERS
セクションにTuxedoドメイン・サーバーを追加します。
例:
DMADM SRVGRP=SYS_GRP SRVID=7 GWADM SRVGRP=SYS_GRP SRVID=8 GWTDOMAIN SRVGRP=SYS_GRP SRVID=9
Oracle WebLogic Tuxedo ConnectorではISLは使用されません。ISLを必要とするその他のアプリケーションがない場合は、UBBCONFIG
ファイルの*SERVERS
セクションからISL
を削除できます。または、次の例に示すように、ISLをコメント・アウトすることができます。
# ISL # SRVGRP = SYS_GRP # SRVID = 5 # CLOPT = "-A -- -n //lchp15:2468 -d /dev/tcp"
以下の項では、WebLogic Server環境を変更する方法について説明します。
注意: Oracle WebLogic Tuxedo Connectorの構成方法の詳細は、『Oracle WebLogic Server Tuxedo Connector管理ガイド』のアプリケーション用のOracle WebLogic Tuxedo Connectorの構成に関する項を参照してください。 |
この項では、WebLogic Server管理コンソールを使用して、移行されたWLECアプリケーション用にWTCサービスを作成する基本的な方法について説明します。WTCサービスは、WebLogic ServerがTuxedoアプリケーションへの接続の作成に使用する構成情報を表します。移行されたWLECアプリケーション用のWTCサービスは通常、ローカルTuxedoアクセス・ポイント、リモートTuxedoアクセス・ポイント、およびインポートされたサービスで構成されます。
次の項で説明された手順に従って、アプリケーションを管理するための構成を作成します。
WebLogic Server管理コンソールを使用して、WTCサービスを作成および構成するには:
管理コンソールのナビゲーション・ツリーで、「相互運用性」を展開して「WTCサーバー」を選択します。
「WTCサーバー」ページで、「新規作成」をクリックします。
「新しいWTCサーバーの作成」ページの「名前」フィールドに、WTCサービスの名前を入力します。たとえば、mySimpapp
です。
「OK」をクリックします。
新しいWTCサービスがWTCサーバーのリストに表示されます。
注意: ローカル・アクセス・ポイントのネットワーク・アドレスを構成する場合、使用するポート番号は、他のプロセスに割り当てられたポート番号とは異なる必要があります。たとえば、WebLogic Serverのリスニング・ポートが//mymachine:7001 に割り当てられている場合、ネットワーク・アドレスを//mymachine:7001 に設定すると無効になります。 |
ローカルTuxedoアクセス・ポイントを構成するには:
管理コンソールで、「相互運用性」を展開して「WTCサーバー」を選択します。
「WTCサーバー」ページで、mySimpapp
などのWTCサービス名をクリックして、設定ページにアクセスします。
「ローカルAP」タブをクリックします。
「WTCローカル・アクセス・ポイント」ページで、以下のフィールドに次のとおり、値を入力します。
「アクセス・ポイント」に、このローカルTuxedoアクセス・ポイントをWTCサービスの構成内で一意に識別する名前を入力します。これにより、同じアクセス・ポイントIDを持つ複数のローカルTuxedoアクセス・ポイントの構成を作成できます。
「アクセス・ポイントID」に、リモートTuxedoアクセス・ポイントへのセッション接続を確立するときに使用する接続名を入力します。「アクセス・ポイントID」は、Tuxedo DMCONFIG
ファイルの*DM_REMOTE_DOMAINS
セクションにある、対応するDOMAINID
に一致する必要があります。
「ネットワーク・アドレス」に、このローカルTuxedoアクセス・ポイントのネットワーク・アドレスとポートを入力します。たとえば、//123.123.123.123:5678
です。
「OK」をクリックします。
Tuxedo 6.5ドメインに接続する場合:
「接続」タブをクリックします。
「相互運用」フィールドを「はい」に設定します。
「保存」をクリックします。
リモートTuxedoアクセス・ポイントを構成するには:
管理コンソールで、「相互運用性」を展開して「WTCサーバー」を選択します。
「WTCサーバー」ページで、mySimpapp
などのWTCサービス名をクリックします。
「リモートAP」タブをクリックします。
「WTCリモート・アクセス・ポイント」ページで、次のフィールドに次の値を入力します:
「アクセス・ポイント」に、このリモートTuxedoアクセス・ポイントをWTCサービスの構成内で一意に識別する名前を入力します。これにより、同じアクセス・ポイントIDを持つ複数のリモートTuxedoアクセス・ポイントの構成を作成できます。
「アクセス・ポイントID」に、ローカルTuxedoアクセス・ポイントへの接続を確立するときにリモートTuxedoアクセス・ポイントを識別するために使用する接続名を入力します。リモートTuxedoアクセス・ポイントの「アクセス・ポイントID」は、Tuxedo DMCONFIG
ファイルの*DM_LOCAL_DOMAINS
セクションにある、対応するDOMAINID
に一致する必要があります。
「ローカル・アクセス・ポイント」に、このリモート・ドメインのローカル・アクセス・ポイントの名前を入力します。
「ネットワーク・アドレス」に、このリモート・ドメインのネットワーク・アドレスとポートを入力します。たとえば、//123.123.123.123:1234
です。
「OK」をクリックします。
インポートされたサービスを構成するには:
管理コンソールで、「相互運用性」を展開して「WTCサーバー」を選択します。
「WTCサーバー」ページで、mySimpapp
などのWTCサービス名をクリックします。
「インポート済み」タブをクリックします。
「WTCインポート・サービス」ページで、次のフィールドに次の値を入力します:
「リソース名」に、このインポートされたサービスの構成を識別するための名前を入力します。この名前により、WTCサービス内で同一のリモート名を持つ、一意の複数のインポート・サービス構成を作成できます。
「ローカル・アクセス・ポイント」を、サービスを使用するローカルTuxedoアクセス・ポイントの名前に設定します。
「リモート・アクセス・ポイント・リスト」に、このインポートされたサービスを提供するリモート・アクセス・ポイントの名前のリストを入力します。
「リモート名」に、//
domain_id
を入力します。domain_id
は、Tuxedo UBBCONFIG
ファイルで指定されたDOMAINID
です。このCORBAドメインの一意の識別子の最大長は、//
を含めて15文字です。たとえば、//simpappff
。
「OK」をクリックします。
Oracle WebLogic Tuxedo Connectorでは、ドメイン・ゲートウェイを使用してWebLogicアプリケーションとTuxedoアプリケーションが接続されます。IIOP接続プールは使用されないので、記述子をejb-jar.xml
ファイルから削除できます。以下は、wlec/ejb/simpapp
サンプルからのコード・スニペットです。
以下の項では、Oracle WebLogic Tuxedo Connectorを使用してWebLogic ServerオブジェクトとTuxedo CORBAオブジェクトを相互運用するために、WLECアプリケーションを変更する方法について説明します。
以下の手順に従って、EJBを変更し、Oracle WebLogic Tuxedo Connectorを使用してTuxedoにデプロイされているCORBAオブジェクトを呼び出します。
WLECはweblogic.jndi.WLInitialContextFactory
を使用して、Tobj_Bootstrap
オブジェクトによって使用されるコンテキストを返します。
Properties p = new Properties(); p.put(Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory"); InitialContext ic = new InitialContext(p); rootCtx = (Context)ic.lookup("java:comp/env");
WLECコンテキストの参照を置き換えて、BeanのWTC ORBを初期化します。例:
// Initialize the ORB. String args[] = null; Properties Prop; Prop = new Properties(); Prop.put("org.omg.CORBA.ORBClass", "weblogic.wtc.corba.ORB"); orb = (ORB)new InitialContext().lookup("java:comp/ORB");
各WLEC接続プールには、Tuxedoドメインへのアクセスに使用されるTobj_Bootstrap
FactoryFinderオブジェクトがあります。例:
Tobj_Bootstrap myBootstrap = Tobj_BootstrapFactory.getClientContext("myPool"); org.omg.CORBA.Object myFFObject = myBootstrap.resolve_initial_references("FactoryFinder");
Tobj_Bootstrap
FactoryFinderオブジェクトへの参照を削除します。次のメソッドで、ORBを使用してFactoryFinderオブジェクトを取得します。
// String to Object. org.omg.CORBA.Object fact_finder_oref = orb.string_to_ object("corbaloc:tgiop:simpapp/FactoryFinder"); // Narrow the factory finder. FactoryFinder fact_finder_ref = FactoryFinderHelper.narrow(fact_finder_oref); // Use the factory finder to find the simple factory. org.omg.CORBA.Object simple_fact_oref = fact_finder_ref.find_one_factory_by_id(SimpleFactoryHelper.id());
注意: JTAトランザクションの実装方法の詳細は、『Oracle WebLogic Server JTAのプログラミング』を参照してください。 |
この項では、トランザクションを使用するWLECアプリケーションの変更方法について説明します。
JTAトランザクションを使用するWLECアプリケーションの場合、変更は必要ありません。
CosTransactionsを使用するWLECアプリケーションの場合、JTAに変換する必要があります。WLECクライアントがトランザクション内で実行中であり、新しいCosTransactionを呼び出す必要がある場合、新しいトランザクションは新しいトランザクション・コンテキストで実装されます。JTAで同じ動作を実装するには、次の手順に従います。
元のトランザクションを一時停止します。
新しいトランザクションを開始します。
新しいトランザクションが完了した後で、元のトランザクションを再開します。
次の表に、セキュリティ事項のWLECとWTCの間のマッピング・ガイドラインと、そのTuxedoとの関係を示します。
表2-1 WLECからWTCへ移行するセキュリティのマッピング・ガイドライン
WLECのセキュリティ事項 | WTC/WLSでのマッピング | Tuxedo |
---|---|---|
ユーザー名 |
「WTCサーバー」ページにアクセスし、「ローカルAP」タブをクリックします。「アクセス・ポイントID」フィールドのユーザー名を使用します。 |
|
ユーザー・パスワード |
パスワードのペア(相互認証を形成するには、1つのパスワードではなく、ローカル・アクセス・ポイント用のパスワードと、リモート・アクセス・ポイント用のパスワードを定義する必要があります)。
|
|
ロール |
サポートされていません。 WTCでは、なりすましユーザーが信され、Tuxedoで定義されている、なりすまされたユーザーのロールが使用されます。 |
非適用 |
アプリケーション・パスワード |
「WTCリソース」ページのパスワード。 |
特別な構成は不要。 |
最小暗号化レベル |
|
|
最大暗号化レベル |
|
|
証明書認証 |
サポートされていません。 |
非適用 |
セキュリティ・コンテキストの伝播 |
|
|
以下の考慮事項に留意していただくと、現在お使いのWLECセキュリティをWTCおよびTuxedoセキュリティにマップする方法が理解しやすくなります。
証明書のWLECユーザー名は、「ローカルAP」ページのアクセス・ポイントIDとして使用できます。
「リモートAP」ページのアクセス・ポイントIDは、リモートTuxedoドメイン・ゲートウェイのDOMAINID
を使用して構成する必要があります。(このDOMAINID
はDMCONFIG
ファイルのDM_LOCAL_DOMAINS
セクションのエントリのいずれかでなければなりません。)
セキュリティ・コンテキストの伝播が必要な場合は、TuxedoとWTCの両方でユーザーを構成する必要があります。
セキュリティ・コンテキストの伝播が不要な場合は、credential-policy
を構成しないでください。デフォルトでは、credential-policy
は、伝播しないことを意味する"LOCAL"
に設定されています。また、TuxedoのACL_POLICY
を構成しないでください。デフォルトでは、ACL_POLICY
は、受信したリモート・セキュリティ・コンテキストを受け付けないことを意味する"LOCAL"
に設定されています。この場合、Tuxedoのセキュリティ・レベルがUSER_AUTH
より高いときは、DMCONFIG
ファイルのDM_REMOTE_DOMAINS
セクションで構成されているWTC用のDOMAINID
が使用されます。
「ローカルAP」ページの「セキュリティ」タブで、「セキュリティ」フィールドを「ドメイン・パスワード」に設定します。TuxedoのDMCONFIG
ファイルにあるDM_LOCAL_DOMAINS
セクションのいずれかのエントリで'SECURITY="DM_PW"'
を構成する必要があります。この場合、WTCとTDomainゲートウェイの両方に対してパスワードを構成する必要があり、アプリケーション・パスワードは不要です。
「セキュリティ」を「ドメイン・パスワード」に設定しない場合は、「セキュリティ」を「アプリケーション・パスワード」に設定できます。この場合、「WTCパスワード構成」ページでパスワードのペアを構成する必要はありませんが、「WTCリソース」ページの「アプリケーション・パスワード」フィールドと「アプリケーション・パスワードIV」フィールドを構成する必要があります。