![]() |
![]() |
|
|
| |
WebLogic Server 4.5 および 5.1 アプリケーションのバージョン 6.x への移行
以降の節では、WebLogic Server バージョン 4.5 または 5.1 から WebLogic Server 6.x にアプリケーションを移行する方法を説明するとともに、移行とデプロイメントに関する追加情報を提供します。説明は、WebLogic Server 4.5 および 5.1 から WebLogic Server 6.0 および 6.1 への移行に対するものです。詳細な手順については、BEA dev2dev の移行チュートリアルを参照してください。
weblogic.properties ファイルと .xml ファイル
WebLogic Server の以前のリリースでは、アプリケーションのコンフィグレーションに weblogic.properties
ファイルを使用していました。WebLogic 6.0 および 6.1 では、アプリケーションのコンフィグレーションは XML 記述子ファイルと Administration Console を使用して処理します。WebLogic Server の以前のバージョンの weblogic.properties
ファイルを変換すると、アプリケーションの新しいドメインが作成され、アプリケーションの設定方法を定義する .xml
ファイルが追加されます。
config.xml
ファイルは、WebLogic Server のドメイン全体のコンフィグレーションを記述した XML ドキュメントです。config.xml
ファイルは一連の XML 要素で構成されます。Domain 要素は最上位の要素で、Domain 内のすべての要素は Domain 要素の子です。Domain 要素には、Server、Cluster、および Application 要素などの子要素があります。これらの子要素自身が子を持つ場合もあります。各要素には 1 つまたは複数のコンフィグレーション可能な属性があります。config.dtd
で定義される属性には、コンフィグレーション API に対応する属性があります。
weblogic.xml
ファイルには、Web アプリケーション用の WebLogic 固有の属性が入っています。このファイルでは、HTTP セッション パラメータ、HTTP クッキー パラメータ、JSP パラメータ、リソース参照、セキュリティ ロール割り当て、文字セット マッピング、およびコンテナ属性を定義します。
デプロイメント記述子 web.xml
は、Sun Microsystems のサーブレット 2.3 仕様で定義されています。このデプロイメント記述子を使用して、J2EE 準拠のアプリケーション サーバに Web アプリケーションをデプロイできます。
WebLogic Server 6.x アプリケーションの種類
WebLogic Server 6.0 および 6.1 のような J2EE 準拠のサーバでは、アプリケーションは Web アプリケーション、エンタープライズ JavaBean、エンタープライズ アーカイブ、およびクライアント アプリケーションのいずれかのタイプで作成およびデプロイされます。既存のコンポーネントを WebLogic Server 6.1 に移行するには、適切な J2EE デプロイメント ユニットを作成します。Web アプリケーションは、一般にサーブレット、JSP、および HTML ファイルの集合であり、.war
ファイルとしてパッケージ化されます。エンタープライズ JavaBean(.jar
ファイルとしてパッケージ化)は、EJB 仕様に基づいて記述されたサーバサイド Java コンポーネントです。エンタープライズ アーカイブ(.ear
ファイル)には、EJB コンポーネントと Web アプリケーション コンポーネントの組み合わせが格納されます。クライアント アプリケーションは、Remote Method Invocation(RMI)を使用して WebLogic Server に接続する Java クラスです。これらの各 J2EE デプロイメント ユニットについては、以降の節で詳しく説明します。
移行の主な手順
次に、移行の一般的な手順を簡単に示します。以降の節では、アプリケーションの種類ごとにこの手順をさらに詳しく説明します。BEA dev2dev の移行チュートリアルも参照してください。
weblogic.properties
ファイルを .xml ファイルに変換します。
weblogic.properties ファイルの .xml ファイルへの変換
注意: 変換が正しく行われるようにするには、weblogic.properties
ファイルで以下を指定する必要があります。
weblogic.password.system=gumby1234
weblogic.properties
ファイルを適切な .xml
に変換するには、次の手順に従います。
http://localhost:7001/console/index.jsp
など)で、見出し [はじめに] の下にあるリンク [weblogic.properties
のコンバート] をクリックします。
C:
\weblogic
など)を見つけます。適切なディレクトリを見つけたら、そのアイコンをクリックして選択します。
weblogic.properties
ファイルまたはクラスタ化 weblogic.properties
ファイルがある場合は、表示されるウィンドウを使用してそれらのファイルを選択します。これまで使用してきたバージョンの WebLogic Server の適切なルート ディレクトリが選択されていれば、選択した追加の properties ファイルに関係なくグローバルの weblogic.properties
ファイルが変換されます。
weblogic.properties ファイルを変換するプロセスによって、wlserver6.1/config/
domainName
ディレクトリに config.xml ファイルが作成されます。このファイルには、ドメインに固有のコンフィグレーション情報が収められています。Web アプリケーションは、wlserver6.1/config/
domainName
/production_apps/DefaultWebApp_serverName/
ディレクトリに作成されます。Web アプリケーションに対する web.xml
ファイルと weblogic.xml
ファイルは、wlserver6.1/config/
domainName
/production_apps/DefaultWebApp_serverName/WEB-INF/
ディレクトリに格納されます。
注意: 前述の変換ユーティリティは、weblogic.xml ファイルで Java ホームの場所を指定します。変換ユーティリティは、System.getProperty(java.home) を使用してこの場所を読み取ります。つまり、WebLogic Server が変換を目的として起動された Java ホームの場所が指定されます。
このマニュアル全体を通して、作成された新しいドメインのディレクトリを domainName
と呼びます。WebLogic Server 6.1 のオリジナルのインストール時のデフォルト ドメインは mydomain
とします。これは wlserver6.1
¥
config
¥
ディレクトリに配置されます。
weblogic.properties
ファイルの変換時に生成される起動スクリプトは、start
domainName
.cmd
(Windows ユーザ用)および start
domainName
.sh
(UNIX ユーザ用)という名前で、WebLogic Server 6.x 配布キットの WL6x_HOME/config/
domainName
ディレクトリの下にあります。これらのスクリプトは、新しいドメインでサーバを起動します。
スクリプトおよびサーバの起動の詳細については、「WebLogic Server の起動と停止」を参照してください。
weblogic.properties のマッピング表
weblogic.properties のマッピング表は、どの config.xml
、
web.xml
、または
weblogic.xml
属性で weblogic.properties
プロパティで以前に実行されていた機能が処理されるのかを示します。Administration Console で属性をコンフィグレーションできる場合は、その属性へのアクセス方法が示されます。
アプリケーションを WebLogic Server 6.0 または 6.1 上にデプロイされる Web アプリケーションに移行するには、アプリケーションのファイルを特定のパターンに従うディレクトリ構造に配置する必要があります。開発段階では、ディレクトリ フォーマットに注意する必要はありません。ただし、プロダクション段階では、アプリケーションを .war
ファイルに 1 つの Web アプリケーションとしてまとめることをお勧めします。Web アプリケーションの詳細については、「WebLogic Server J2EE アプリケーションについて」と『Web アプリケーションのアセンブルとコンフィグレーション』を参照してください。
以下の節では、WebLogic Server 5.1 から WebLogic Server 6.1 への単純なサーブレットの移行手順など、Web アプリケーションの移行とデプロイについて知っておくべき情報を提供します。
Web アプリケーションのディレクトリ構造
Web アプリケーションは、WebLogic Server で保管およびデプロイできるように、指定されたディレクトリ構造に整理されます。Web アプリケーションに属するすべてのサーブレット、クラス、静的ファイル、およびその他のリソースは、ディレクトリ階層に基づいて配置されます。この階層構造のルートにより、Web アプリケーションのドキュメント ルートが定義されます。このルート ディレクトリの下に置かれたファイルは、WEB-INF
および META-INF
という特別なディレクトリの下にあるファイルを除き、すべてクライアントに提供されます。ルート ディレクトリは、Web アプリケーションと同じ名前にして、wlserver6.1
\config
\domainName
\applications
ディレクトリに配置する必要があります。
次の図は、Web アプリケーションのディレクトリ構造を示しています。
WebApplicationRoot\(.jsp、.html、.jpg、.gif などの
| 公開されるファイル)
|
+WEB-INF\-+
|
+ classes\(Web アプリケーションで使用
| されるサーブレットなどの
| Java クラスを格納する
| ディレクトリ)
|
+ lib\(Web アプリケーションで使用
| される jar ファイルを格納する
| ディレクトリ)
|
+ web.xml
|
+ weblogic.xml
weblogic.properties
ファイルを変換すると、適切な web.xml
ファイルおよび weblogic.xml
ファイルが wlserver6.1
\config
\domainName
\applications
\DefaultWebApp_myserver
\WEB-INF
ディレクトリに自動的に作成されます。上記のディレクトリ構造に従って、.xml
ファイルを wlserver6.1
\config
\domainName
\applications
\webAppName
\WEB-INF
ディレクトリに配置します。すべてのアプリケーションは、wlserver6.1
\config
\domainName
\applications
ディレクトリに配置する必要があります。このディレクトリに配置しないとデプロイできません。詳細については、『WebLogic Server アプリケーションの開発』を参照してください。
XML デプロイメント記述子
Web アプリケーションのデプロイメント記述子(web.xml
)は標準の J2EE 記述子であり、サーブレットの登録、サーブレット初期化パラメータの定義、JSP タグ ライブラリの登録、セキュリティ制約の定義などに使用します。デプロイメント記述子を作成する詳しい手順については、「Web アプリケーションのデプロイメント記述子の記述」を参照してください。
WebLogic 固有のデプロイメント記述子(weblogic.xml
)もあります。このファイルでは、JSP プロパティ、JNDI のマッピング、セキュリティ ロールのマッピング、および HTTP セッション パラメータを定義します。WebLogic 固有のデプロイメント記述子では、web.xml
ファイルで指定されたリソースが WebLogic Server のどこかにあるリソースにどのようにマップされるのかも定義します。WebLogic 固有のデプロイメント記述子を作成する詳しい手順については、「WebLogic 固有のデプロイメント記述子の記述」を参照してください。前述のプロパティ、マッピング、またはパラメータが必要ない場合は、このファイルは必ずしも必要ではありません。
web.xml
ファイルと weblogic.xml
ファイルは、コンソールと一緒にアプリケーションをコンフィグレーションするために使用します。.xml
ファイルは、テキスト エディタで表示できます。.xml
ファイルを編集するには、必要な変更を行い、規定のディレクトリ構造で指定されている適切なパスを指定して web.xml
または weblogic.xml
として保存します。詳細については、『Web アプリケーションのアセンブルとコンフィグレーション』を参照してください。アプリケーションを 1 つの Web アプリケーションとしてデプロイしない場合は、自動的に作成された .xml
ファイルを分割し、Web アプリケーションごとに適切な .xml
ファイルを作成する必要があります。
WAR ファイル
.war
ファイルは、Web アプリケーションのアーカイブです。Web アプリケーションの規定のディレクトリ構造に正確に従い、適切な web.xml
ファイルと weblogic.xml
ファイルを作成したら、プロダクション環境では、アプリケーションを .war
ファイルとしてデプロイされる Web アプリケーションにまとめることをお勧めします。アプリケーションを .war
ファイルにまとめた後は、WebLogic Server で各アプリケーションのインスタンスが 1 つだけになるように以前のディレクトリ構造を削除することが重要です。
Web アプリケーションのあるルート ディレクトリで次のコマンドを使用すると、.war
ファイルを作成できます。「webAppName」は、Web アプリケーションに選択した特定の名前に置き換えます。
jar cvf webAppName.war *
この時点で、Web アプリケーションのすべてのファイルとコンフィグレーション情報を格納する .war
ファイルが作成されています。
Web アプリケーションのデプロイメント
まとめた Web アプリケーションを適切にデプロイするには、適切な .war
ファイルを c:
\wlserver6.1
\config
\domainName
\applications
ディレクトリに配置します。Administration Console を使用してアプリケーションをインストールすることもできます。そのためには、コンソールのホームに移動して、[はじめに] メニューの下にある [アプリケーションのインストール] をクリックします。正しい .war
ファイルを選択すると、ファイルが自動的にインストールされます。アプリケーションを機能させるためには、アプリケーションが c:
\wlserver6.1
\config
\domainName
\applications
ディレクトリに配置されている必要があります。
Web アプリケーションは、インストールされた後に自動的にデプロイされます。Administration Console の左ペインの [デプロイメント] ノードの下に Web アプリケーションがデプロイされていることを確認してください。
Web アプリケーションの特定のデプロイメント属性は、Administration Console を使用してコンフィグレーションできます。[デプロイメント] という見出しの下の [Web アプリケーション] ノードを選択します。Web アプリケーションを選択します。コンフィグレーションする適切なタブをクリックします。Administration Console での属性設定の詳細については、Administration Console ヘルプの Web アプリケーションの節を参照してください。
セッションの移行
WebLogic Server 6.0 以降のバージョンでは、以前のバージョンからのクッキーが認識されません。バージョン 6.0 でクッキーのフォーマットが変更されたからです。WebLogic Server では、旧式のフォーマットのクッキーは無視され、新しいセッションが作成されます。
クッキーのデフォルト名はバージョン 5.1 から変更されています(以前の名前は WebLogicSession
)。WebLogic 6.0 以降は、クッキーのデフォルト名は JSESSIONID
です。
詳細については、http://edocs.beasys.co.jp/e-docs/wls61/webapp/weblogic_xml.html
にある「web.xml デプロイメント記述子の要素」を参照してください。
JavaServer Pages(JSP)とサーブレット
この節では、アプリケーションに関連付けられる場合のある JSP およびサーブレットに特有の情報を提供します。
web.xml
および weblogic.xml
の XML
属性に変換する必要があります。このプロセスの詳細については、Administration Console ヘルプの変換のセクションを参照してください。
web.xml
でセキュリティ制約として定義されます。
WebLogic Server 5.1 から WebLogic Server 6.1 への単純なサーブレットの移行
次の手順では、WebLogic 5.1 Server で提供されていた単純な Hello World サーブレットを WebLogic Server 6.1に移行します。
C:
\hello
など)と、C:
\hello
\WEB-INF
ディレクトリおよび C:
\hello
\WEB-INF
\classes
ディレクトリを作成します。HelloWorld.Servlet.java
ファイルを C:
\hello
\WEB-INF
\classes
ディレクトリに配置します。
web.xml
ファイルを作成します。weblogic.properties
ファイルが変換されている場合、web.xml
ファイルは既に自動的に作成されています。変換前に weblogic.properties
ファイルで HelloWorldServlet が登録されている場合、サーブレットは新しい web.xml
ファイルで適切にコンフィグレーションされます。.xml
ファイルは、どのテキスト エディタでも作成できます。HelloWorldServlet で使用できる基本的な web.xml
ファイルの例は次のとおりです。
<!DOCTYPE web-app (View Source for full doctype...)>
- <web-app>
- <servlet>
<servlet-name>HelloWorldServlet</servlet-name>
<servlet-class>examples.servlets.HelloWorldServlet</servlet-class>
</servlet>
- <servlet-mapping>
<servlet-name>HelloWorldServlet</servlet-name>
<url-pattern>/hello/*</url-pattern>
</servlet-mapping>
</web-app>
web.xml
ファイルの詳細については、「Web アプリケーションのデプロイメント記述子の記述」を参照してください。weblogic.xml
ファイルは、HelloWorld のようなスタンドアロンの単純なサーブレットでは必要ありません。
weblogic.xml
ファイルの詳細については、「WebLogic 固有のデプロイメント記述子の記述」を参照してください。
web.xml
ファイルを wlserver6.1
\config
\domainName
\applications
\DefaultWebApp_myserver
\WEB-INF
から C:
\hello
\WEB-INF
\ に移動します。
C:
\hello
\WEB-INF
\classes>javac -d . HelloWorldServlet.java
このコマンドで、ファイルがコンパイルされ、適切なパッケージ構造が作成されます。
.war
ファイルにまとめることができます。
jar cvf hello.war *
このコマンドで、hello.war
ファイルが作成され、そのファイルが C:
\hello
ディレクトリに配置されます。
.war
ファイルを参照し、[Upload] をクリックします。
デプロイされたサーブレットが、コンソールの左ペインにある [デプロイメント] の下の [Web アプリケーション] ノードに表示されます。
http://localhost:7001/hello/hello
のように入力します。
/hello/
は、サーブレットのコンテキスト パスです。コンテキスト パスは、.war
ファイルの名前(この場合は hello.war
)で決まります。2 番目の /hello
は、web.xml
ファイルのサーブレット マッピング タグでマップされています。
エンタープライズ JavaBean アプリケーションの移行と変換
以降の節では、エンタープライズ JavaBean の移行と変換の手順について説明します。
EJB の移行に関する考慮事項
エンタープライズ JavaBean を WebLogic Server 6.x に移行するときには以下の事項を考慮してください。
ejbc
が実行されていない EJB 場合、WebLogic Server 6.1 では Bean がデプロイされるときに ejbc
が自動的に実行されます。デプロイメントの前に ejbc
で Bean をコンパイルする必要はありません。必要な場合は、起動時に ejbc
を実行することもできます。詳細については、『WebLogic エンタープライズ JavaBeans プログラマーズ ガイド』を参照してください。
ejb-jar.xml
ファイルに標準のデプロイメント記述子が含まれます。ejb-jar.xml
は、EJB 1.1 DTD(文書型定義)または EJB 2.0 DTD に準拠している必要があります。
weblogic-ejb-jar.xml
ファイルが必要です。このファイルは、WebLogic Server EJB コンテナのコンフィグレーション情報が含まれる WebLogic Server 固有のデプロイメント記述子です。このファイルは、WebLogic Server 5.1 DTD または WebLogic Server 6.0 DTD に準拠している必要があります。
EJB の移行に関する推奨事項
TxDataSource
を使用する。
EJB では常に、TxDataSource
からデータベース接続を取得する必要があります。そうすることで、EJB コンテナのトランザクション管理は JDBC 接続と連携でき、XA トランザクションをサポートすることもできます。
WebLogic Server 6.x CMP デプロイメント記述子は TxDataSource
をサポートするので、この記述子を接続プールのみを指定する WebLogic Server 5.1 CMP デプロイメント記述子の代わりに使用する必要があります。
ejbc
とともに高速なコンパイラを使用する。
WebLogic Server EJB コンパイラ(weblogic.ejbc
)では、java コンパイラでコンパイルされる java コードが生成されます。デフォルトでは、WebLogic Server では同梱の JDK に含まれている javac
コンパイラが使用されます。EJB コンパイラは、より高速な java コンパイラを使用すると非常に高速で動作します。-compiler
オプションを使用すると、代わりのコンパイラを次のようにして指定できます。
java weblogic.ejbc -compiler sj pre_AccountEJB.jar AccountEJB.jar
WebLogic Server 6.1 EJB コンパイラ(ejbc)には、以前のリリースの WebLogic Server にはなかった検証機能が追加されています。このため、以前のバージョンの WebLogic Server でエラーなくデプロイされた EJB でも、WebLogic Server 6.1 ではエラーが報告される可能性があります。それらのエラーは、EJB を WebLogic Server 6.1 にデプロイする前に修正する必要があります。
たとえば、WebLogic Server 6.1 はトランザクション属性があるメソッド名に対して設定されている場合はそのメソッドが必ず存在するようにします。このことは、存在しないメソッドでトランザクション属性が誤って設定されているようなよくあるエラーを特定するのに役立ちます。
WebLogic Server 配布キットには、デプロイメント記述子のあるいくつかの EJB サンプルが含まれています。それらの EJB サンプルは、WebLogic Server 6.1 配布キットの samples
\examples
\ejb
ディレクトリおよび samples
\examples
\ejb20
ディレクトリにあります。
次の表は、WebLogic Server 6.1 でサポートされている記述子の組み合わせを示しています。
エンタープライズ JavaBean の詳細については、「エンタープライズ JavaBeans コンポーネント」および『WebLogic エンタープライズ JavaBeans プログラマーズ ガイド』を参照してください。
1.0 EJBean を WebLogic Server 4.5.x から WebLogic Server 6.1 に移行する手順
WebLogic Server 3.1.x、4.0.x、および 4.5.x では、EJB 1.0 仕様がサポートされていました。WebLogic Server 4.5 から WebLogic Server 6.1 へ 1.0 EJB を移行するには、次の手順を行います。
ejbc
ツールを使用すると、EJB がコンパイルされるときに、それが確実に EJB 1.1 仕様または EJB 2.0 仕様に準拠します。
EJB 1.1 または 2.0 に確実に準拠するために、EJB 1.0 Bean で次のような変更を行います。
SessionContext
または EntityContext
が一時的に参照されていました。EJB 1.1 または 2.0 の Bean をデプロイする場合、参照は一時的にはなりません。次に例を示します。
private transient SessionContext ctx;
これは次のように修正する必要があります。
private SessionContext ctx;
ejbCreate
メソッドには void 型の戻り値の型がありました。EJB 1.1 または 2.0 の Bean をデプロイする場合、戻り値の型は Bean 管理の永続性エンティティ Bean を記述し、CMP 実装でそれをサブクラス化することが可能な主キー クラスでなければなりません。次に例を示します。
public void ejbCreate (String name) {
firstName = name;
}
これは次のように修正する必要があります。
public AccountPK ejbCreate (String name) {
firstName = name;
return null; // EJB 仕様で必須
}
1.1 EJBean を WebLogic Server 5.1 から WebLogic Server 6.1 に移行する手順
WebLogic Server 5.1 デプロイメント記述子では、排他的または read-only の同時実行性オプションのみを使用できます。データベース同時実行性オプションは、WebLogic Server 6.x の weblogic-ejb-jar.xml
ファイルにアップグレードすると利用可能になります。このオプションの詳細については、「weblogic-ejb-jar-xml デプロイメント記述子」のデータベース同時実行性に関する情報を参照してください。
WebLogic Server 6.x CMP デプロイメント記述子では、複数の EJB を指定でき、接続プールの代わりに TxDataSource
を使用できます。EJB 1.1 CMP で XA を使用する場合は、TxDataSource
を使用する必要があります。
WebLogic Server 5.1 から WebLogic Server 6.1 へ 1.1 EJB を移行するには、次の手順を行います。
setEnv
スクリプトを実行し、開発環境を設定します。詳細については、「開発環境の構築」を参照してください。
javac -d %CLIENTCLASSES% Trader.java TraderHome.java TradeResult.java Client.java
java examples.ejb.basic.statelessSession.Client
EJB 1.1 を EJB 2.0 に変換する手順
EJB 1.1 Bean を EJB 2.0 Bean に変換するには、WebLogic Server DDConverter ユーティリティを使用できます。
WebLogic Server 6.1 では、EJB 2.0 Bean を開発することをお勧めします。ただし、1.1 Bean が既にプロダクション環境で使用されている場合は、それらを 2.0 Bean に変換する必要はありません。EJB 1.1 Bean は、WebLogic Server 6.1 でデプロイできます。1.1 Bean を 2.0 Bean に変換する必要がある場合、その詳細については 「DDConverter」を参照してください。
単純な CMP 1.1 Bean を 2.0 Bean に変換するために必要な基本手順を以下に示します。
public String name
を使用します。2.0 Bean は、public abstract String getName()
と public abstract void setName(String n)
を使用します。この変更を行うと、Bean クラスが、getName
メソッドでコンテナ管理フィールドを読み込んだり、setName
メソッドで更新したりできるようになります。
java.util.Enumeration
を使用していたすべての CMP 1.1 ファインダは、java.util.Collection
を使用する必要があります。これを反映するように、コードを変更してください。CMP 2.0 ファインダは、java.util.Enumeration
を返すことができません。
他の J2EE アプリケーション サーバからの EJB の移行
EJB 1.1 仕様または EJB 2.0 仕様に準拠したすべての EJB は、WebLogic Server 6.1 EJB コンテナにデプロイできます。各 EJB JAR ファイルでは、ejb-jar.xml
ファイル、weblogic-ejb-jar.xml
デプロイメント記述子、および CMP デプロイメント記述子(CMP エンティティ Bean を使用する場合)が必要です。WebLogic Server 配布キットの samples
\examples
\ejb
および samples
\examples
\ejb20
にある WebLogic Server EJB サンプルには、サンプルの weblogic デプロイメント記述子が含まれています。
エンタープライズ アプリケーションは、アセンブル済みのコンポーネントで構成された、拡張子が .ear
の .jar
ファイルです。.ear
ファイルには、アプリケーションのすべての .jar
および .war
コンポーネント アーカイブ ファイルおよびコンポーネントを記述する XML 記述子が格納されます。META-INF
\application.xml
デプロイメント記述子には、各 Web モジュールおよび EJB モジュールのエントリのほか、セキュリティ ロールやアプリケーション リソース(データベースなど)を記述する追加エントリがあります。
EnterpriseApplicationStagingDirectory\
|
+ .jar files
|
+ .war files
|
+META-INF\-+
|
+ application.xml
.ear
ファイルを作成するには、次の手順を行います。
.war
ファイルと EJB .jar
ファイルをステージング ディレクトリにコピーし、次にアプリケーションの META-INF
\application.xml
デプロイメント記述子を作成します。上記のディレクトリ構造に従います。
application.xml
ファイルには、Sun Microsystems の DTD に基づいてアプリケーションの各コンポーネント用の記述子が定義されます。application.xml ファイルの詳細については、「クライアント アプリケーションのデプロイメント記述子の要素」を参照してください。JSP を使用する場合で、JSP を実行時にコンパイルするためには、.war
ファイルのクラス ディレクトリにある Bean のホーム インタフェースとリモート インタフェースが必要です。
jar cvf myWebApp.war *
.ear
ファイルを \wlserver6.1
\config
\domainName
\applications
ディレクトリに配置します。エンタープライズ アプリケーションの詳細については、「エンタープライズ アプリケーションのパッケージ化」を参照してください。
WebLogic Server では、標準の XML デプロイメント記述子を使用して jar ファイルにパッケージ化された J2EE クライアント アプリケーションがサポートされています。このコンテキストのクライアント アプリケーションは、Web ブラウザではないクライアントです。それらのクライアント アプリケーションは、Remote Method Invocation(RMI)を使用して WebLogic Server に接続する Java クラスです。Java クライアントでは、エンタープライズ JavaBean、JDBC 接続、JMS メッセージなどのサービスに RMI を使用してアクセスできます。クライアント アプリケーションは、標準の I/O を使用する単純なコマンドライン ユーティリティから Java Swing/AWT クラスを使用して構築された高度に対話型の GUI アプリケーションまでさまざまです。
WebLogic Server Java クライアントを実行するには、クライアント コンピュータで、クライアント アプリケーション クラスだけでなく、weblogic_sp.jar
ファイル、weblogic.jar
ファイル、および WebLogic Server 上のすべての RMI クラスとエンタープライズ Bean のリモート インタフェースが必要になります。保守とデプロイメントを簡略化するために、クライアントサイド アプリケーションは、weblogic.jar
ファイルおよび weblogic_sp.jar
ファイルと一緒にクライアントのクラスパスに追加できる jar ファイルにパッケージ化したほうがよいでしょう。この仕様に基づいてクライアント アプリケーションをパッケージ化するには、クライアント コンピュータで weblogic.ClientDeployer
コマンドライン ユーティリティを実行します。J2EE クライアント アプリケーションの詳細については、「クライアント アプリケーションのパッケージ化とデプロイ」を参照してください。
JMS アプリケーションの移行
WebLogic Server 6.1 では、JavaSoft JMS 仕様バージョン 1.0.2がサポートされています。
既存の JMS アプリケーションを使用するには、最初に WebLogic Server のバージョンを確認した後、『WebLogic JMS プログラマーズ ガイド』の「WebLogic JMS アプリケーションの移行」で説明されている適切な移行手順を実行する必要があります。
移行手順を開始する前に、以下のリストをチェックして、使用している WebLogic JMS のバージョンで移行がサポートされていることを確認し、特別な移行ルールがそのリリースに適用されるかどうかを明らかにする必要があります。
注意: WebLogic Event は非推奨となり、NO_ACKNOWLEDGE または MULTICAST_NO_ACKNOWLEDGE 配信モードの JMS メッセージに置き換えられます。各配信モードの詳細については、『WebLogic JMS プログラマーズ ガイド』の「WebLogic JMS の基礎」を参照してください。
移行およびデプロイメントの補足事項
以下の節では、WebLogic Server 6.x でアプリケーションをデプロイする際に便利な補足情報を提供します。WebLogic Server 6.1 で非推奨となった機能、アップグレード、および重要な変更点を示してあります。
WebLogic Server 6.1 で用意されているオリジナルのドメインと、weblogic.properties
ファイル コンバータを使用して作成されたすべてのドメインでは、wlserver6.1
\config
\domainName
\applications
\DefaultWebApp
というディレクトリが作成されます。このディレクトリには、Web サーバが公開するファイルが格納されます。HTML ファイルと JSP ファイルは、インストールしたアプリケーションとは別にこの場所に配置して公開できます。必要な場合は、画像ファイルなどの相対リンクを処理するために、DefaultWebApp
ディレクトリ内にサブディレクトリを作成できます。
デフォルトでは、アプリケーションは管理サーバの config.xml
ブロックおよび JVM 上にデプロイされます。ただし、この方法はほとんどの場合に適切ではありません。管理サーバは管理上の目的のみに使用し、新しい管理対象サーバを定義して、それらのサーバを Administration Console でアプリケーションと関連付ける必要があります。詳細については、「WebLogic Server とクラスタのコンフィグレーション」と「ドメイン、管理サーバ、管理対象サーバ」を参照してください。
JTA の変更点は以下のとおりです。
weblogic.jts.*
内、URL は jdbc:weblogic:jts
:..)が JTA JDBC/XA ドライバに置き換えられています。既存のプロパティは下位互換性を目的として利用できますが、JTS から JTA への名前の変更に合わせてクラス名とプロパティを変更する必要があります。
Java Database Connectivity(JDBC)
JDBC の変更点は以下のとおりです。
weblogic.jdbc20.*
パッケージは、weblogic.jdbc.*
パッケージに置き換えられます。すべての WebLogic JDBC ドライバが現在は JDBC 2.0 に準拠しています。
preparedStatement
を使用中で、ストアド プロシージャが DBMS に保存されている場合、ストアド プロシージャを作成するには、新しい名前を使用します。 同じ名前でストアド プロシージャを再作成する場合、preparedStatement
では新しく作成されたストアド プロシージャへのアクセス方法がわかりません。新しく作成されたものは、基本的に、同じ名前を持つ別のオブジェクトであるためです。
以下のヒントは、以前のバージョンの WebLogic Server で RMI を使用していたユーザが WebLogic Server 6.1 に移行する際のものです。
weblogic.rmic
)を再実行して、WebLogic Server 6.1 と互換性を持つようにラッパー クラスを再生成してください。
java.rmi.Remote
を使用してインタフェースをリモートとしてタグ付けします。weblogic.rmi.Remote
は使用しないでください。
java.rmi.*Exception
(import java.rmiRemoteException
など)を使用します。weblogic.rmi.*Exception
は使用しないでください。
*.rmi.Naming
の代わりに JNDI を使用します。
weblogic.rmic
を使用して 動的プロキシおよびバイトコードを生成しますが、RMI IIOP の例外があります。スタブとスケルトンのクラスは、今後は生成されません。
注意: 詳細については、『WebLogic RMIプログラマーズ ガイド』を参照してください。
weblogic.rmi.server.UnicastRemoteObject.exportObject()
を使用してスタブのインスタンスを取得します。
java.rmi.*
と JNDI を使用するように更新されていません。将来のリリースで java.rmi.*
と JNDI を反映するように見直される予定です。
FileServlet
WebLogic Server 6.1 サービス パック 2 以降では、Web アプリケーションのデフォルトのサーブレットである FileServlet の動作が変更されています。 現在の FileServlet では、ソース ファイル名を指定する際に SERVLET_PATH も指定できます。 この設定によって、FileServlet を /dir/*
などにマップすることで、特定のディレクトリからのファイルのみを明示的に提供できるようになりました。
『デフォルト サーブレットの設定』を参照して下さい。
このバージョンでは、インターナショナライゼーションとローカライゼーションが一部変更されています。
LogServicesDef
は非推奨になりました。代わりに、インターナショナライズされた API または weblogic.logging.NonCatalogLogger
(インターナショナライゼーションが不要な場合)を使用してください。
このバージョンのインターナショナライゼーションの詳細については、『 BEA WebLogic Server インターナショナライゼーション ガイド』を参照してください。
WebLogic Server 6.1 でのセキュリティの詳しい使い方については、『WebLogic Security プログラマーズ ガイド』を一読することをお勧めします。以前のリリースから移行する WebLogic Server ユーザは、以下のヒントと問題に目を通してください。
weblogic.properties
ファイルを config.xml
の XML 属性に変換します。weblogic.properties
ファイルの変換の詳細については、Administration Console ヘルプを参照してください。セキュリティ プロパティと XML 属性のすべてのマッピングについては、『管理者ガイド』の「セキュリティの管理」を参照してください。
WLPropertyRealm
からファイル レルムに変更されています。レルム属性は、現在は weblogic.properties
ファイルではなく fileRealm.properties
ファイルに格納されます。
fileRealm.properties
ファイルに格納します。WebLogic Server 6.x でのカスタム レルムの作成については、『カスタム セキュリティレルムの作成』を参照してください。
WebLogic Server 6.1 で WAP アプリケーションを実行するには、Web アプリケーションの web.xml
ファイルで WAP と関連付けられている MIME タイプを指定する必要があります。WebLogic Server 5.1 では、デフォルトの mime-type を weblogic.properties
の weblogic.httpd.defaultMimeType
を使用して設定できます。5.1 でのデフォルト値は「text/plain」です。 WebLogic Server 6.0、WebLogic Server 6.1、および WebLogic Server 7.0 では、デフォルトの mime-type
はありません。 web.xml
ファイルで、それぞれの拡張子に対して明示的に mime-type
を指定する必要があります。必要な MIME タイプについては、『WebLogic Server Wireless Application 開発プログラマーズ ガイド』を参照してください。web.xml
ファイルの作成と編集については、「Web アプリケーションのデプロイメント記述子の記述」を参照してください。
web.xml
ファイルで mime-types
をコンフィグレーションする例を次に示します。
<web-app>
<mime-mapping>
<extension>tiff</extension>
<mime-type>image/tiff</extension>
</mime-mapping>
<mime-mapping>
<extension>tiff</extension>
<mime-type>image/tiff</extension>
</mime-mapping>
</web-app>
セッションの移行
WebLogic Server 6.0 以降のバージョンでは、以前のバージョンからのクッキーが認識されません。バージョン 6.0 でクッキーのフォーマットが変更されたからです。WebLogic Server では、旧式のフォーマットのクッキーは無視され、新しいセッションが作成されます。
クッキーのデフォルト名はバージョン 5.1 から変更されています(以前の名前は WebLogicSession
)。WebLogic 6.0 以降は、クッキーのデフォルト名は JSESSIONID
です。
詳細については、「web.xml デプロイメント記述子の要素」を参照してください。
以下のヒントは、以前のバージョンの WebLogic Server で Web コンポーネントを使用していたユーザが WebLogic Server 6.1 に移行する際のものです。
weblogic.properties
ファイルを使用して実行されたドキュメント ルート、JSPServlet、およびサーブレットの登録に近いことが行われるので、改めて登録を行う必要がありません。
weblogic.properties
ファイルを .xml
に変換するには、Administration Console を使用します。詳細については、Administration Console ヘルプを参照してください。
web.xml
から weblogic.xml
に移動されました。この情報の再編成によって、サーブレット 2.2 に厳密に基づくサード パーティの Web アプリケーションが、J2EE 標準デプロイメント記述子(web.xml
)を変更せずにデプロイできるようになりました。<context-param>
要素を使用して web.xml
ファイルで行われる WebLogic Server 5.1 スタイルの設定が下位互換性のためにサポートされていますが、新しいデプロイメントの方法を採用することをお勧めします。以前は web.xml
で定義されていた以下のパラメータは、現在は weblogic.xml
で定義されます。keepgenerated
、
precompile
compileCommand
、
verbose
、
packagePrefix
、
pageCheckSeconds
、
encoding
)CookieDomain
、
CookieComment
、
CookieMaxAgeSecs
、
CookieName
、
CookiePath
、
CookiesEnabled
、
InvalidationIntervalSecs
、
PersistenceStoreDir
、
PersistenceStorePool
、
PersistenceStoreType
、
SwapIntervalSecs
、
IDLength
、
CacheSize
、
TimeoutSecs
、
JDBConnectionTimeoutSecs
、
URLRewritingEnabled
)
XML 6.0 -> 6.1 パーサが更新されており、現在は Apache Xerces パーサに基づいています。このパーサでは、SAX インタフェースおよび DOM インタフェースのバージョン 2 が実装されています。weblogicaux.jar
に格納されていた古いパーサ(Sun の Project X パーサなど)を使用すると、旧式であることを示すメッセージが表示される場合があります。
以下の API および機能は、将来的に削除される予定なので使用しないでください。
WebLogic Event は非推奨となり、NO_ACKNOWLEDGE または MULTICAST_NO_ACKNOWLEDGE 配信モードの JMS メッセージに置き換えられます。詳細については、『WebLogic JMS プログラマーズ ガイド』を参照してください。
-Dweblogic.management.host
以下の API および機能は削除されています。
新しい Administration Console を使用してください。
この機能は、現在はサポートされていない Microsoft JVM(Jview)に基づいてます。
![]() |
![]() |
![]() |