BEA ホーム | 製品 | デベロッパ・センタ | support | askBEA |
|
e-docs > WebLogic Integration > WebLogic Integration 移行ガイド > 移行に関するその他のトピック |
WebLogic Integration 移行ガイド |
移行に関するその他のトピック
この章の内容は以下のとおりです。
クラスタ化
クラスタ化は、BPM (Business Process Management) によってサポートされており、アプリケーション統合機能は、WebLogic Integration 2.1、2.1 SP1、および 7.0 で提供されています。7.0 クラスタ アプリケーションのコンフィグレーション要件は、2.1 または 2.1 SP1 クラスタ アプリケーションの要件とは異なっており、その結果 2.1 および 7.0 リリースの config.xml ファイルのクラスタ化セクションが異なります。また、WebLogic Integration 7.0 は WebLogic Integration によって提供された B2B 機能のクラスタ化をサポートしています。
WebLogic Integration クラスタ アプリケーションをリリース 2.1 または 2.1 SP1 からリリース 7.0 に移行する場合、まずクラスタ化が使用可能な状態で新しい WebLogic Integration ドメインを作成し、次に手順 7. WebLogic Integration アプリケーションのコンポーネントの移行に記載する(JMS キューなどの)アプリケーション固有のエンティティを移行する必要があります。クラスタ化を使用可能にした状態で WebLogic Integration ドメインを作成する方法についての詳細は『WebLogic Integration ソリューションのデプロイメント』の「クラスタ デプロイメントのコンフィグレーション」を参照してください。
クラスタ化に関連するコンフィグレーション要件は、次の BPM リソースではリリース 7.0 で変更されました。
クラスタ化に関連するコンフィグレーション要件は、次のアプリケーション統合リソースではリリース 7.0 で変更されました。
詳細については『WebLogic Integration ソリューションのデプロイメント』の「WebLogic Integration クラスタについて」にある「JMS リソース」を参照してください。
Application Integration アダプタ EAR ファイルのコンフィグレーション
この節では、サンプル WebLogic Integration 7.0 アプリケーションで使用する Application Integration アダプタの EAR ファイルのコンフィグレーション手順を説明します。このサンプルは次にシナリオに基づきます。
Acme という WebLogic Integration 2.1 の顧客が WebLogic Integration アプリケーションを WebLogic Integration 7.0 に移行するとします。Acme アプリケーションには、ACME_DBMS というリレーショナル データベース アダプタを使用する EastCoast.Sales.CustomerManagement というアプリケーション ビューが 1 つ含まれています。ACME_DBMS アダプタは Acme の IT 開発者によって開発されました。
Acme アプリケーションの Application Integration アダプタ EAR ファイルのコンフィグレーションを行うには、次いずれかを実行します。
新しいドメインのコンフィグレーション ファイルを編集する
(手順 5. 新しいドメインの作成およびデータベース情報のコンフィグレーションで作成した)新しいドメインの config.xml ファイルを開き、アダプタのコンフィグレーション情報を追加します。手順は、次のとおりです。
コード リスト 3-1 アダプタ EAR ファイルの WebLogic Integration 2.1 のデプロイ
<Application Deployed="true" Name="ACME_DBMS" Path="d:\ACME_DBMS.ear">
<ConnectorComponent Name="ACME_DBMS"
Targets="myserver"
URI="ACME_DBMS.rar"/>
<WebAppComponent Name="DbmsEventRouter"
Targets="myserver"
URI="DbmsEventRouter.war"/>
<WebAppComponent Name="ACME_DBMS_Web"
Targets="myserver"
URI="ACME_DBMS_Web.war"/>
</Application>
コード リスト 3-2 Application 要素への TwoPhase 属性の追加
<Application Deployed="true" Name="ACME_DBMS" TwoPhase="true" Path="d:\ACME_DBMS.ear">
コード リスト 3-3 EAR ファイルのパスの更新
<Application Deployed="true" Name="ACME_DBMS" TwoPhase="true" Path="c:¥adk¥ACME_DBMS.ear">
警告: アダプタ EAR ファイルが WebLogic Integration 2.1 または WebLogic Integration 2.1 SP1 インストールのホーム ディレクトリにある場合(たとえば、Windows システムの %WLI_HOME%¥lib)、c:¥adk などの WebLogic Integration 2.1 インストール外の場所に移動することをお勧めします。
コード リスト 3-4 Config.xml ファイルからのサーバ名の取得
<Domain Name="mydomain">
<!-- Domain log -->
<Log FileName="c:/bea/user_projects/mydomain/logs/mydomain.log" Name="mydomain"/>
<Server ListenPort="7001"
Name="myserver"
TransactionLogFilePrefix="c:/bea/user_projects/mydomain/logs/"
NativeIOEnabled="true">
.
.
.
</Domain>
コード リスト 3-5 Targets 属性の更新
<Application Deployed="true" TwoPhase="true" Name="ACME_DBMS" Path="c:\adk\ACME_DBMS.ear">
<ConnectorComponent Name="ACME_DBMS"
Targets="myserver"
URI="ACME_DBMS.rar"/>
<WebAppComponent Name="DbmsEventRouter"
Targets="myserver"
URI="DbmsEventRouter.war"/>
<WebAppComponent Name="ACME_DBMS_Web"
Targets="myserver"
URI="ACME_DBMS_Web.war"/>
</Application>
WebLogic Server Deployer を呼び出す
WebLogic Server Deployer コマンド ライン ユーティリティを使用してアダプタ EAR をデプロイします。たとえば、Windows システムの ACME_DBMS.ear ファイルをデプロイするには、次のコマンドを使用します。
java -classpath %BEA_HOME%¥weblogic700¥lib¥weblogic.jar
weblogic.Deployer -adminurl
http://wls_admin_host:wls_admin_port -user wls_admin_user
-password wls_admin_pass -verbose -stage -activate -source
c:¥adk¥ACME_DBMS.ear -name ACME_DBMS -targets server_name
表3-1 Deployer の例で使用される代替可能な文字列
Deployer ユーティリティの詳細については、『WebLogic Server アプリケーションの開発』の「WebLogic Server デプロイメント」にある「デプロイメント ツールおよび手順」を参照してください。このマニュアルは、BEA WebLogic Server マニュアル セットの次の URL にあります。 警告: DBMS Sample Adapter は WebLogic Integration のリリース 7.0 で変更されました。これにより、このアダプタのアプリケーション ビューに影響する場合があります。詳細については『アダプタの開発』の「WebLogic Integration 7.0 へのアダプタの移行」にある「要求データを必要としないサービスに対する DBMS サンプル アダプタの変更」を参照してください。 Application Integration アダプタの移行の詳細については、『アダプタの開発』の「WebLogic Integration 7.0 へのアダプタの移行」を参照してください。http://edocs.beasys.co.jp/e-docs/wls/docs70/programming/deploying.html
トラステッド リレーションシップ
WebLogic Server トラステッド リレーションシップのセキュリティ モデルは、WebLogic Server のリリース 7.0 で変更されました。(クライアントとして機能している) WebLogic 7.0 サーバは、別のドメインの別の WebLogic 7.0 サーバを認証します。いずれのドメインも SecurityConfigurationMBean に同じ Credential 属性を持つ必要があります。異なる場合、次の例外が送出されます。java.lang.SecurityException Invalid Subject.
次のいずれかの方法でドメインの Credential 属性を変更できます。
http://edocs.beasys.co.jp/e-docs/wls/docs70/admin.html
<SecurityConfiguration Credential=”foobar” Name=”mydomain”/>
新しい SerializedSystemIni.dat ファイルの生成
WebLogic Integration 7.0 サーバを開始したときに次のような例外が発生した場合、SerializedSystemIni.dat ファイルを再生成する必要があります。
weblogic.security.internal.FileUtilsException: Couldn't
rename DOMAIN_HOME¥SerializedSystemIni.dat to
DOMAIN_HOME¥SerializedSystemIni.dat42698.old
これらのメッセージでは DOMAIN_HOME は手順 5. 新しいドメインの作成およびデータベース情報のコンフィグレーションで作成した新しいドメインのパス名を表します。
ドメインに新しい SerializedSystemIni.dat ファイルを生成するには、次の手順を実行します。
cd DOMAIN_HOME
コード リスト 3-6 暗号化された Credential 要素
<EmbeddedLDAP
Credential="{3DES}CUnX5jDsmxluwzO45cb+kErCo+3pa92oXcPZl8L23pwx" Name="mydomain"/>
<SecurityConfiguration Credential="{3DES}aKaA3CEY4TIx" Name="mydomain"/>
コード リスト 3-7 Credential 要素から削除された暗号化箇所
<EmbeddedLDAP
Credential="" Name="mydomain"/>
<SecurityConfiguration Credential="" Name="mydomain"/>
copy fileRealm.properties fileRealm.properties.src
cp fileRealm.properties fileRealm.properties.src
rename SerializedSystemIni.dat SerializedSystemIni.dat.old
mv SerializedSystemIni.dat SerializedSystemIni.dat.old
コード リスト 3-8 暗号化されたパスワードを持つ fileRealm.properties ファイルのリストの一部
group.ConfigureSystem=admin,joe,mary,guest,wlisystem
acl.lookup.weblogic.jndi.weblogic.fileSystem=everyone
acl.enablermonitor.WLCAdmin=admin
user.joe=0xa078cb45e6f6c4eefdd1f14495ff739b5536904c
group.DeleteTemplate=admin,joe,mary,guest,wlisystem
group.AdministerUser=admin,joe,mary,guest,wlisystem
group.Deployers=Administrators
コード リスト 3-9 クリア テキスト のパスワードを持つ fileRealm.properties ファイルのリストの一部
group.ConfigureSystem=admin,joe,mary,guest,wlisystem
acl.lookup.weblogic.jndi.weblogic.fileSystem=everyone
acl.enablermonitor.WLCAdmin=admin
user.joe=password
group.DeleteTemplate=admin,joe,mary,guest,wlisystem
group.AdministerUser=admin,joe,mary,guest,wlisystem
group.Deployers=Administrators
java weblogic.security.internal.acl.FileRealm
fileRealm.properties SerializedSystemIni.dat
RosettaNet スキーマの変更点
WebLogic Integration では RosettaNet メッセージのスキーマ検証が提供されています。WebLogic Integration 2.1 および WebLogic Integration 2.1 SP1 の検証のスキーマは、W3C (World Wide Web Consortium) XSD (2000 XML Schema Definitions) スキーマに基づきます。WebLogic Integration 7.0 の検証のスキーマは、W3C (World Wide Web Consortium) XSD (2001 XML Schema Definitions) スキーマに基づきます。
RosettaNet メッセージは 2 つの部分で構成されています。メッセージ ヘッダ XML ドキュメント(サービス‐ヘッダ)および XML ビジネス ドキュメントまたはペイロードです。メッセージ ヘッダ XML ドキュメントおよび XML ビジネス ドキュメントの両方を検証するために使用する XSD スキーマは、W3C 2001 XSD スキーマを使用するようにコンバートされました。WebLogic Integration メッセージの検証のためのスキーマを開発した場合、2001 XSD スキーマを使用するように更新する必要があります(スキーマは、リスト3-11またはリスト3-12で示すスキーマ要素で始まる必要がある)。WebLogic Integration 7.0は、2001 XSD スキーマの RosettaNet メッセージの検証のみサポートしています。
RosettaNet メッセージの検証スキーマは、WLI_HOME¥lib¥xmlschema¥rosettanet ディレクトリにあります(WLI_HOME は WebLogic Integration ホーム ディレクトリを表す)。
2000 XSD スキーマは、次のリストのスキーマ要素から始まります。
コード リスト 3-10 2000 XSD スキーマ要素
<schema xmlns="http://www.w3.org/2000/10/XMLSchema">
<!-- schema content goes here -->
</schema>
2001 XSD スキーマは、リスト3-11またはリスト3-12に示すスキーマ要素に類似したものから始まります。リスト3-12の XSD スキーマ要素は、XSD スキーマの要素を完全に修飾するためにネームスペース xsd を使用します。
コード リスト 3-11 2001 XSD スキーマ要素
<schema xmlns="http://www.w3.org/2001/XMLSchema">
<!-- schema content goes here -->
</schema>
コード リスト 3-12 xsd ネームスペースの付いた 2001 XSD スキーマ要素
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<!-- schema content goes here -->
</schema>
xml: ネームスペース
WebLogic Integration 7.0 では xml: ネームスペースの使用をサポートしています。xml: ネームスペースは、次の属性名を含む標準 W3C ネームスペースです。
WebLogic Integration 2.1 または 2.1 SP1 XSD スキーマ ファイルでは、次のように、xml:lang は文字列にコンバートされます。
<xsd:attribute name=”xml:lang” type=”xsd:string”/>
WebLogic Integration 7.0 XSD スキーマ ファイルでは、xml:lang の値は xml: ネームスペース によって決定されます。メッセージの検証のために独自のスキーマを開発した場合、次のリストに示すように、xml:lang 属性を変更してください。
<xsd:attribute ref=”xml:lang”/>
デフォルトでは WebLogic Integration 7.0 は、xml: ネームスペース XSD スキーマを次の標準 xml: ネームスペース URL でからではなく、ローカル ファイルシステムから取得します。
http://www.w3.org/2001/xml.xsd
ローカル ファイルシステムでネームスペースをルックアップすることにより、パフォーマンスが向上し、ネットワーク トラフィックが軽減されます。
URL からではなくローカル ファイルシステムからスキーマを取得することにより、WebLogic Integration 7.0 ではネットワーク トラフィックを軽減してパフォーマンスを向上させることができます。たとえば、次のリストに示すように、0A1_MS_V02_00_FailureNotification.xsd スキーマによって schemaLocation 属性値を schemas/xml.xsd に設定します。この設定により、xml: ネームスペース スキーマは、ローカル ファイルシステムから取得されます。
コード リスト 3-13 ローカル スキーマを使用した 0A1_MS_V02_00_FailureNotification.xsd
<?xml version = "1.0" encoding = "UTF-8"?>
<xsd:schema xmlns:xsd = "http://www.w3.org/2001/XMLSchema">
<xsd:import namespace = "http://www.w3.org/XML/1998/namespace"
schemaLocation = "schemas/xml.xsd"/>
.
.
.
リスト3-14では、schemaLocation 属性の値は http://www.w3.org/2001/xml.xsd です。この設定が使用された場合、WebLogic Integration では、URL を使用して xml: ネームスペース スキーマが取得されます。
コード リスト 3-14 URL スキーマ を使用した 0A1_MS_V02_00_FailureNotification.xsd
<?xml version = "1.0" encoding = "UTF-8"?>
<xsd:schema xmlns:xsd = "http://www.w3.org/2001/XMLSchema">
<xsd:import namespace = "http://www.w3.org/XML/1998/namespace"
schemaLocation = "http://www.w3.org/2001/xml.xsd"/>
.
.
.
URL から xml: ネームスペースを検証する場合、WLI_HOME¥lib¥xmlschema¥rosettanet ディレクトリの XSD スキーマ ファイルを標準の xml: ネームスペース URL に schemaLocation 属性の値を設定する XSD スキーマ ファイル セットに置き換えることができます。手順は、次のとおりです。
jar xvf schemas.jar
追加の 2001 XSD スキーマの変更点
独自のメッセージ検証のスキーマを開発する場合、スキーマに次の変更を加える必要がある場合があります。
コード リスト 3-15 2000 XSD スキーマの例(WebLogic Integration 2.1 または 2.1 SP1)
<xsd:complexType content = "elementOnly">
<xsd:choice>
<xsd:element ref = "GlobalLocationIdentifier"/>
<xsd:group ref = "StreetAddress"/>
<xsd:group ref = "GlobalLocationIdAndStreetAddress"/>
</xsd:choice>
コード リスト 3-16 2001 XSD スキーマの例(WebLogic Integration 7.0)
<xsd:complexType>
<xsd:choice>
<xsd:element ref = "GlobalLocationIdentifier"/>
<xsd:group ref = "StreetAddress"/>
<xsd:group ref = "GlobalLocationIdAndStreetAddress"/>
</xsd:choice>