|
以下の節では、WebLogic Tuxedo Connector 用に WLEC アプリケーションを変換するために必要な手順について説明します。
Tuxedo ユーザは、次のような環境の変更を行う必要があります。
新しい dmconfig
ファイルを作成して、Tuxedo アプリケーションと WebLogic Server アプリケーションの間の接続を提供する必要があります。Tuxedo ドメインの作成方法の詳細については、「CORBA Domains の計画とコンフィギュレーション」を参照してください。
アプリケーションは Tuxedo /T Domain ゲートウェイを使用するようになるので、tuxconfig
ファイルを変更する必要があります。UBB ファイルの *SERVERS
セクションに Tuxedo ドメイン サーバを追加します。
DMADM SRVGRP=SYS_GRP SRVID=7
GWADM SRVGRP=SYS_GRP SRVID=8
GWTDOMAIN SRVGRP=SYS_GRP SRVID=9
WebLogic Tuxedo Connector では ISL は使用されません。ISL を必要とするその他のアプリケーションがない場合は、*SERVERS
セクションから ISL
を削除できます。
# ISL
# SRVGRP = SYS_GRP
# SRVID = 5
# CLOPT = "-A -- -n //lchp15:2468 -d /dev/tcp"
ここでは、WebLogic Server 環境の変更方法について説明します。
注意 : | WebLogic Tuxedo Connector のコンフィグレーション方法の詳細については、「アプリケーション用の WebLogic Tuxedo Connector のコンフィグレーション」を参照してください。 |
この節では、WebLogic Server Administration Console を使用して、移行された WLEC アプリケーション用に WTC サービスを作成する基本的な方法について説明します。WTC サービスは、WebLogic Server が Tuxedo アプリケーションへの接続の作成に使用するコンフィグレーション情報を表します。移行された WLEC アプリケーション用の WTC サービスは通常、ローカル Tuxedo アクセス ポイント、リモート Tuxedo アクセス ポイント、およびインポートされたサービスで構成されます。
次の手順に従って、アプリケーションを管理するためのコンフィグレーションを作成します。
次の手順に従って、WebLogic Server Administration Console を使用して WTC サービスを作成しコンフィグレーションします。
注意 : | ローカル アクセス ポイントのネットワーク アドレスをコンフィグレーションする場合、使用するポート番号は、他のプロセスに割り当てられたポート番号とは異なる必要があります。たとえば、WebLogic Server のリスン ポートが //mymachine:7001 に割り当てられている場合、ネットワーク アドレスを //mymachine:7001 に設定すると無効になります。 |
次の手順に従って、ローカル Tuxedo アクセス ポイントをコンフィグレーションします。
[アクセス ポイント] に、このローカル Tuxedo アクセス ポイントを WTC サービスのコンフィグレーション内でユニークに識別する名前を入力します。これにより、同じアクセス ポイント ID を持つ複数のローカル Tuxedo アクセス ポイントのコンフィグレーションを作成できます。
[アクセス ポイント ID] に、リモート Tuxedo アクセス ポイントへのセッション接続を確立するときに使用する接続名を入力します。[アクセス ポイント ID] は、Tuxedo DMCONFIG
ファイルの *DM_REMOTE_DOMAINS
セクションにある、対応する DOMAINID
に一致する必要があります。
[ネットワーク アドレス] に、このローカル Tuxedo アクセス ポイントのネットワーク アドレスとポートを入力します。例 : //123.123.123.123:5678
次の手順に従って、リモート Tuxedo アクセス ポイントをコンフィグレーションします。
[アクセス ポイント] に、このリモート Tuxedo アクセス ポイントを WTC サービスのコンフィグレーション内でユニークに識別する名前を入力します。これにより、同じアクセス ポイント ID を持つ複数のリモート Tuxedo アクセス ポイントのコンフィグレーションを作成できます。
[アクセス ポイント ID] に、ローカル Tuxedo アクセス ポイントへの接続を確立するときにリモート Tuxedo アクセス ポイントを識別するために使用する接続名を入力します。リモート Tuxedo アクセス ポイントの [アクセス ポイント ID] は、Tuxedo DMCONFIG
ファイルの *DM_LOCAL_DOMAINS
セクションにある、対応する DOMAINID
に一致する必要があります。
[ローカル アクセス ポイント] に、このリモート ドメインのローカル アクセス ポイントの名前を入力します。
[ネットワーク アドレス] に、このリモート ドメインのネットワーク アドレスとポートを入力します。例 : //123.123.123.123:1234
次の手順に従って、インポートされたサービスをコンフィグレーションします。
[リソース名] に、このインポートされたサービスのコンフィグレーションを識別するための名前を入力します。この名前により、WTC サービス内で同じリモート名を持つ、ユニークな複数のインポートされたサービスのコンフィグレーションを作成できます。
[ローカル アクセス ポイント] を、サービスを使用するローカル Tuxedo アクセス ポイントの名前に設定します。
[リモート アクセス ポイント リスト] に、このインポートされたサービスを提供するリモート アクセス ポイントの名前のリストを入力します。
[リモート名] に "//domain_id" を入力します。domain_id は、Tuxedo UBBCONFIG
ファイルで指定された DOMAINID
です。この CORBA ドメインのユニークな識別子の最大長は、// を含めて 15 文字です。
WebLogic Tuxedo Connector では、ドメイン ゲートウェイを使用して WebLogic アプリケーションと Tuxedo アプリケーションが接続されます。IIOP 接続プールは使用されないので、記述子を ejb-jar.xml
ファイルから削除できます。以下は、wlec/ejb/simpapp
サンプルから削除されるコードの例です。
.
.
.
<env-entry>
<env-entry-name>IIOPPoolName</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>simplepool</env-entry-value>
</env-entry>
.
.
.
以下の節では、WebLogic Tuxedo Connector を使用して WebLogic Server オブジェクトと Tuxedo CORBA オブジェクトを相互運用するために、WLEC アプリケーションを変更する方法について説明します。
以下の手順に従って EJB を変更し、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 を初期化します。次に例を示します。
// 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 オブジェクトを取得します。
// 文字列をオブジェクトに変換
org.omg.CORBA.Object fact_finder_oref = orb.string_to_object("corbaloc:tgiop:simpapp/FactoryFinder");
// ファクトリ ファインダをナロー変換
FactoryFinder fact_finder_ref =
FactoryFinderHelper.narrow(fact_finder_oref);
// ファクトリ ファインダを使用して Simple ファクトリを見つける
org.omg.CORBA.Object simple_fact_oref =
fact_finder_ref.find_one_factory_by_id(SimpleFactoryHelper.id());
注意 : | JTA トランザクションの実装方法の詳細については、『WebLogic JTA プログラマーズ ガイド』を参照してください。 |
この節では、トランザクションを使用する WLEC アプリケーションの変更方法について説明します。
次の表に、セキュリティ事項の WLEC と WTC の間のマッピング ガイドラインと、その Tuxedo との関係を示します。
以下の考慮事項に留意していただくと、現在お使いの WLEC セキュリティを WTC および Tuxedo セキュリティにマップする方法が理解しやすくなります。
DOMAINID
を使用してコンフィグレーションする必要がある (この DOMAINID
は DMCONFIG
ファイルの DM_LOCAL_DOMAINS
セクションのエントリのいずれかでなければならない)。credential-policy
をコンフィグレーションしないこと (デフォルトでは credential-policy
は、伝播しないことを意味する "LOCAL"
に設定されている)。Tuxedo の ACL_POLICY
もコンフィグレーションしないこと (デフォルトでは ACL_POLICY
は、受信したリモート セキュリティ コンテキストを受け付けないことを意味する "LOCAL"
に設定されている)。この場合、Tuxedo のセキュリティ レベルが USER_AUTH
より高いときは、DMCONFIG
ファイルの DM_REMOTE_DOMAINS
セクションでコンフィグレーションされている WTC 用の DOMAINID
が使用されます。DMCONFIG
ファイルにある DM_LOCAL_DOMAINS
セクションのいずれかのエントリで 'SECURITY="DM_PW"'
をコンフィグレーションする必要があります。この場合、WTC と TDomain ゲートウェイの両方に対してパスワードをコンフィグレーションする必要があり、アプリケーション パスワードは不要です。