B WebLogic Server 12.2.1.4.0の旧リリースとの互換性
関連項目:
-
Oracle WebLogic Serverの理解のWebLogic Serverの互換性に関する項。この項では、WebLogic Serverの互換性の目標に関する一般情報、およびこのリリースのWebLogic Serverへの適用方法について説明します。
-
このリリースおよび以前のリリースの『Oracle WebLogic Serverの新機能』 12.2.1.4.0。これらのドキュメントでは、使用可能な新機能に関する情報、およびアプリケーションに影響を及ぼす可能性がある動作の変更について説明します。
互換性に関する検討事項は、次のように分類されます。ユーザーの状況に該当する項は、WebLogic Server 12.2.1.4.0にアップグレードする前のWebLogic Serverのバージョンによって異なります。WebLogic Serverの現在のバージョンに基づいて参照する各項の一覧については、表B-1を参照してください。
表B-1 各バージョンのWebLogic Serverからのアップグレードに適用される項
このバージョンのWebLogic Serverからアップグレードする場合 | これらの項を参照 |
---|---|
12.2.1.3.0 |
WebLogic Serverクラスタのメッセージングについて |
12.2.1.0.0 |
|
12.1.3 |
上記のすべての項、および次の項: パーティション、アプリケーションおよびコンテナのコンテキスト・ルーツの想定 |
12.1.2 |
上記のすべての項、および次の項: |
12.1.1 |
上記のすべての項、および次の項: |
10.3.5および10.3.6 |
上記のすべての項、および次の項: ノード・マネージャのstartScriptEnabledのデフォルト値 WebLogic Server 8.1 Webサービス・スタックの削除 Universal Description and Discover (UDDI)レジストリの削除 DataDirectのOracleタイプ4 JDBCドライバ |
10.3.3および10.3.4 |
上記のすべての項、および次の項: |
10.3.2 |
上記のすべての項、および次の項: |
10.3.1 |
上記のすべての項、および次の項: Oracle Internet Directory認証プロバイダとOracle Virtual Directory認証プロバイダ |
10.3.0 |
上記のすべての項、および次の項: |
WebLogic Serverクラスタのメッセージングについて
12.2.1.4.0では、WebLogic Serverクラスタのメッセージングが強化されました。クラスタ内のすべてのサーバーで同じインストール・バージョンのWebLogic Serverが実行されている場合は、何も変更する必要はありません。
12.2.1.3.0から12.2.1.4.0へのローリング・アップグレード、または12.2.1.4.0から12.2.1.3.0へのダウングレードを実行する場合、古いプロトコルを一時的に許可するために、新しい12.2.1.4.0サーバーを明示的に設定する必要があります。これを行うには、システム・プロパティweblogic.upgradeExpirationDate
に有効期限を設定します。これにより、12.2.1.4.0サーバーのクラスタ上での通信は有効期限に達するまで許可されます。たとえば:
-Dweblogic.upgradeExpirationDate=2020-01-05T08:47
異なるバージョンのクラスタが必要な場合、長期間通信を継続するには、値を将来のアップグレード日付に設定する必要があります。
ノート:
システム・プロパティ-Dweblogic.upgradeExpirationDate
は、各管理対象サーバーのサーバー起動引数で使用する必要があり、startWebLogic.sh
またはstartWebLogic.cmd
スクリプトのJAVA_OPTIONS
環境変数では使用できません。
Apache Antのバージョンのアップグレード
clientgen
Antタスクの使用に影響を与える可能性があります。clientgen
Antタスクは、クライアント・アプリケーションがWebLogic Webサービスと非WebLogic Webサービスの両方の呼出しに使用できるクライアント・コンポーネント・ファイルを既存のWSDLファイルから生成します。このAntタスクの<binding>
子要素を使用するときは、次のことに注意してください。
-
<binding>
要素を、同じ属性を使用する、標準のAnt FileSetデータ・タイプと同じ方法で使用します。 -
Apache Ant 1.9.8では、Ant FileSetデータ・タイプは、1つのファイルまたは1つのディレクトリのいずれかを指定できるように変更されています。そのため、
<binding>
要素を使用して複数のファイルまたはディレクトリを指定すると、clientgen
Antタスクが失敗する場合があります。
<binding>
子要素の指定についての詳細は、『Oracle WebLogic Server WebLogic Webサービス・リファレンス』のbindingに関する項
を参照してください。
WebLogic Server起動時のランタイム使用量の制限のオプションの削除
WebLogic Serverインスタンスの起動時には、EJB、JMS、コネクタ、クラスタリング、デプロイメント、管理などすべてのサービスが起動します。WebLogic Serverには、WebLogicドメインで軽量化ランタイム・インスタンスを実行するのに使用できる起動オプションがあります。
この起動モードを使用すると、WebLogic Serverの起動時間が短くなり、ホスト・マシンのリソース範囲が小さくなります。軽量化ランタイム・インスタンスを起動するには、次のweblogic.Server
コマンド・オプションを指定します。
java weblogic.Server -DserverType= {"wlx" | "wls"}
Oracle WebLogic Serverバージョン12.2.1.0.0で、この起動オプションは削除されています。
乱数ジェネレータ
Oracle WebLogic Server 12.2.1.4.0では、以前のリリースにおいて使用されたものよりセキュアな乱数ジェネレータ・アルゴリズムを使用しています。この結果、低エントロピ・システム上で管理対象サーバー、構成ウィザード、ノード・マネージャおよびWebLogic Javaユーティリティ(utils.ImportPrivateKey
など)の起動が遅くなることがあります。このため、システム・エントロピを増加する手段を講じてください。
UNIXシステムでは、rng-tools
を使用して、システム・エントロピを置換します。構成するには、/etc/sysconfig/rngd
を編集して、次の行を追加します。
EXTRAOPTIONS="-i -r /dev/urandom -o /dev/random -b"
-t 60
および-W 2048
パラメータを使用することもできます。これらのパラメータは、60秒ごとに、プールのサイズが2048に達するまでエントロピ・プールにビットを追加します。
次のコマンドを使用して、手動でエントロピを生成します。
rngd -r /dev/urandom -o /dev/random -b
次のコマンドを使用して、現在のエントロピを確認します。
cat /proc/sys/kernel/random/entropy_avail
パーティション、アプリケーションおよびコンテナのコンテキスト・ルーツの想定
Webコンテナのコンテキスト・ルートに関連した想定をするJava EEアプリケーションが、uriPrefix
セットがある仮想ターゲットにデプロイされている場合、これを変更する必要があります。このような場合、アプリケーションのコンテキスト・パスには、仮想ターゲットのuriPrefix
が含まれます。
ノート:
WebLogic Server Multitenantドメイン・パーティション、リソース・グループ、リソース・グループ・テンプレート、仮想ターゲットおよびリソース消費管理は、WebLogic Server 12.2.1.4.0で非推奨になっており、次のリリースで削除されます。その例は、次のとおりです。
-
アプリケーションは、受信URLを解析して別のURLを作成ます。この解析でURLルートが
host:port
で終了すると想定される場合、アプリケーションを更新して、URLルートをURIベースのルーティングを使用したhost:port/
prefix
にする必要があります。MedRecサンプル・アプリケーションが、その例の1つです。MedRecは、受信URLを解析して別のURLを作成し、ルートURLが
host:port
だけから構成されていると想定していました。これに対処するために、次の変更が、MedRecアプリケーションに加えられました。-
この内科医用アプリケーション用の
JaxWsProperties.java
ファイルの元のコードは、次のとおりです。public final static String WSURL = "http://" + ServerPropertiesUtils.getServerAddress("physician", "localhost") + ":" + ServerPropertiesUtils.getServerPort("7001") + "/medrec-jaxws-services/";
これは次のコードに変更されました。
ServerPropertiesUtils.getRegion()
は、URLにパーティションURI接頭辞が含まれる可能性を示しています。public final static String WSURL = "http://" + ServerPropertiesUtils.getRegion() + "medrec-jaxws-services/";
-
この内科医用Webアプリケーション用の
GettingHostFilter.java
ファイルの元のコードは、次のとおりです。ServerPropertiesUtils.setAddress(request.getServerName()); ServerPropertiesUtils.setPort(String.valueOf(request.getServerPort())); chain.doFilter(request, response);
host:port
(または、MT URIベースのルーティングを使用する場合、Webサービス・クライアントでhost:port/partition
)を維持するために、これは次のコードに変更されました。if (ServerPropertiesUtils.getRegion() == null || ServerPropertiesUtils.getRegion().equals("")) { StringBuilder builder = new StringBuilder(); builder.append(request.getServerName()); builder.append(":"); builder.append(String.valueOf(request.getServerPort())); builder.append(partition); ServerPropertiesUtils.setRegion(builder.toString());
-
-
アプリケーションは、HTML/JSPコード内で「/」にリンクしています。非MT環境では、アプリケーションに、デプロイされるコンテキスト・ルートに関する想定がある場合があります。たとえば、アプリケーションが、コンテキスト・ルート
/fruits
でデプロイされ、次を参照するページを含むとします。<a href="/fruits/index.html">Back to Fruits List</a>
URI接頭辞を使用する仮想ターゲットを持つパーティションにアプリケーションがデプロイされる場合、このタイプの絶対参照は機能しません。前述のリンクは、
host:port
/partition1/fruits/index.html
ではなく、host:port
/fruits/index.html
に移動しようとします。最も安全な手法は、次のように、リンクで相対URLを使用することです。<a href="index.html">Back to Fruits List</a>
デフォルトのCommonJ Work Managerの自動バインディングが削除されました
Work Manager API (commonj.work
)は、アプリケーションがコンテナ内で複数の作業項目を同時に実行できるようにするインタフェースのセットを提供します。デフォルトCommonJ Work Managerのjava:comp/env/wm/default
への自動バインディングは、Java EE 7プラットフォーム仕様に準拠しないためWebLogic Server 12.2.1で削除されました。
デフォルトCommonJ Work Managerを使用するアプリケーションがある場合、次のいずれかのようにします。
-
デプロイメント記述子で、
wm/default
のためのresource-refエントリを追加します。たとえば:<resource-ref> <res-ref-name>wm/default</res-ref-name> <res-type>commonj.work.WorkManager</res-type> <res-auth>Container</res-auth> </resource-ref>
-
CommonJワーク・マネージャを、アプリケーション・コンポーネントにインジェクトします。たとえば:
@Resource commonj.work.WorkManager myWorkManager;
パラレル・デプロイメント
WebLogic Server 12.2.1では、アプリケーションおよびモジュールのパラレル・デプロイメントに対するサポートが追加されて、起動および実行後デプロイメント時間が改善されました。
WebLogic Server 12.2.1 (または以降)で作成されたまたはアップグレードされたWebLogicドメインのデフォルトは、次のとおりです。
-
アプリケーションのパラレル・デプロイメントが有効です。
-
ドメイン内のすべてのアプリケーション用モジュールのパラレル・デプロイメントは、無効です。
WebLogic Server 12.1.3以前のバージョンでは、アプリケーションは常にシリアルでデプロイされました。デフォルトのデプロイメント順序は、ドメイン構成で定義される自然順序です(つまり、config.xml
ファイルで確立されます)。ただし、以前のWebLogic Serverリリースで、デプロイメント順序を明示的に制御するには、WebLogic Server管理コンソールを使用してAppDeploymentMBean
のDeploymentOrder
属性を設定するか、Oracle WebLogic Serverへのアプリケーションのデプロイのアプリケーションおよびスタンドアロン・モジュールのデプロイメント順序の変更に関する項で説明するようにプログラム的に制御します。アプリケーション間に固有の依存性がある場合、この機能を旧リリースで使用することが重要です。
WebLogic Server 12.2.1.4.0で新しいドメインを作成する、または既存のドメインを12.2.1.4.0にアップグレードする場合、WebLogic Server 12.1.3デプロイメント順序動作をリストアするには、DomainMBean
の次の属性を無効にします。
-
ParallelDeployApplications
: アプリケーションをパラレルにデプロイするかどうか決定します。(この属性はデフォルトで有効になっています。) -
ParallelDeployApplicationModules
: アプリケーションのモジュールをパラレルにデプロイするかどうか決定します。(この属性は、デフォルトでは無効になっています。)
ただし、前述の属性を無効化すると、パラレル・デプロイメントによるパフォーマンス向上の利点を効果的に使用できない可能性があります。WebLogic Server 12.2.1.4.0にアップグレードするドメイン内のパラレル・デプロイメントをすべて無効化するのではなく、アプリケーションまたはモジュールのデプロイメント順序付けがカスタム化されているかどうか、その場合、それが必要かどうかを確認することをお薦めします。
参照:
-
Oracle WebLogic Serverへのアプリケーションのデプロイのアプリケーションおよびモジュールのパラレル・デプロイメントの有効化に関する項には、パラレル・デプロイメントの使用におけるアプリケーションおよびモジュールの依存性に関する重要な考慮事項が記載されています。
-
Oracle WebLogic Server管理コンソール・オンライン・ヘルプのサーバー・デプロイメント順序の変更に関する項には、WebLogic Server管理コンソールを使用したデプロイメントのデプロイメント順序を表示するまたは変更する方法が説明されています。
サーバー・ロギング・ブリッジ
サーバー・ロギング・ブリッジは、現在JavaロギングまたはLog4Jロギングを使用してログ・メッセージをWebLogicロギング・サービスにリダイレクトさせているアプリケーションに対して軽量のメカニズムを提供します。WebLogic Server 12.1.3では、サーバー・ロギング・ブリッジがjava.util.logging
ロガー・ツリーのルート・ロガーに追加されました。従って、サーバー・ロギング・ブリッジを明示的に構成する必要がありません。
『Oracle WebLogic Serverログ・ファイルの構成とログ・メッセージのフィルタ処理』のサーバー・ロギング・ブリッジに関する項の説明に従ってweblogic.logging.ServerLoggingHandler
を構成した場合:
-
weblogic.logging.ServerLoggingHandler
がルート・ロガーにアタッチされている場合、logging.properties
ファイルから削除することを強くお薦めします。 -
weblogic.logging.ServerLoggingHandler
がルート以外のロガーにアタッチされている場合、logging.properties
構成から削除するか、useParentHandlers
属性をfalse
(たとえばcom.foo.barUseParentHandlers=false
など)に設定することを強くお薦めします。
これらの状況はLog4Jにも適用されます。ただし、用語が異なります。
-
weblogic.logging.log4j.ServerLoggingAppender
は、Log4J用のブリッジです。 -
useParentHandlers
は、Log4JではAdditivity
と呼ばれます。これは、log4j.propertiesファイルではlog4j.additivity.com.foo.bar=false
として構成されます。
Oracleデータベース・ドライバ
リリース12.1.2で、WebLogic ServerのインストールにはOracle Database 12cドライバが含まれるようになりました。
これは、アプリケーションに次の変更が必要です:
-
wlserver/server/lib/ojdbc6.jar
への参照を${MW_HOME}/oracle_common/modules/features/com.oracle.db.dbc7-no-dms.jar
に置き換えます。これは、weblogic.jar
の使用時に自動的にクラス・パスに含まれます。 -
wlserver/server/lib/aqapi.jar
への参照を${MW_HOME}/oracle_common/modules/oracle.jdbc_12.1.0/aqapi.jar
に置き換えます。これはcom.oracle.db.jdbc7-no-dms.jar
も使用する必要があります。
Oracle Database 11gドライバJARを使用して実行を続行する場合、次の操作が必要です。
-
クラスパスの最前部へのドライバJARの追加
-
MW_HOME/oracle_common/modules/oracle.jdbc_12.1.0
ディレクトリの外部へのOracle Database 12cドライバJARの移動。
OracleでJavaNet FastPathの有効化
「OracleでJavaNet Fastpathの有効化」により、Oracle JDBC JavaNet Fastpathがデータ・コピーと断片化を削減できるようになりました。WebLogic Server 12.1.3で、この属性はWebLogic Server管理コンソールでサポートされなくなりました。
以前のバージョンのWebLogic Serverでは、WebLogic Server管理コンソールの「構成:Oracle」タブでOracle Enable JavaNet FastPath属性を構成できました。WebLogic Server管理コンソールの「構成:Oracle」タブに移動し、「ドメイン構造」、「サービス」、「データ・ソース」の順にクリックします。
最大POSTサイズ
新しいセッション記述子max-save-post-size
がWebLogic Server 12.1.2に追加されました。これは既存のアプリケーションに影響を及ぼす可能性があります。この記述子は、FORM認証中にアプリケーション・コンテナによって保存またはバッファリングされるPOSTの最大サイズ(バイト単位)を設定します。
max-save-post-size
記述子のデフォルト値は4096バイトです。
FORM認証中に、アプリケーションでサイズが4096バイトを超えるフォームをポストする場合は、max-save-post-size
を適切な値に増やす必要があります。そうしない場合、ブラウザでMaxPostSizeExceededException
が発生します。
WLDFスキーマのアップグレード
WebLogic Diagnostics Framework (WLDF)イベントおよびハーベスタ・データにJDBCベースのストアを使用している場合は、データベースのWLDF表を更新または再作成する必要があります。
wls_events
表で、THREADNAME
列をvarchar(128)
からvarchar(250)
に変更します。wls_hvst
表で、WLDFMODULE varchar(250) default NULL
列を追加します。
このアップグレードはWebLogic Serverのスタンドアロンのインストールにのみ適用されます。Fusion Middleware製品を含むインストールの場合、スキーマ・アップグレード・プロセスはOracle Upgrade Assistantを介して行います。
『Oracle WebLogic Server診断フレームワークの構成と使用』のJDBCベースのストアの構成に関する項を参照してください。
jdbc-connection-timeout-secs要素の削除
weblogic.xml
デプロイメント記述子のjdbc-connection-timeout-secs
要素は削除されています。 アプリケーションでjdbc-connection-timeout-secs
要素を構成する場合は、アプリケーションのデプロイメントが失敗しないように、weblogic.xml
デプロイメント記述子からそれを削除する必要があります。
ローカル・トランザクションのコミット
-
-Dweblogic.datasource.endLocalTxOnNonXAConWithCommit=false
を使用すると、アプリケーションでトランザクションの明示的な完了を保証できる際に、非XA接続でこれ以上のDBMSアクセスが不要になります。このパラメータをfalse
に設定すると、setAutoCommit(true)
の呼出し時に使用する特定のJDBCドライバの動作に応じて、接続プールを閉じるときに非XA接続のローカル・トランザクションが暗黙的にコミットまたはロールバックされます。JDBC仕様に準拠する場合、そのアクションはトランザクションをコミットしますが、ドライバごとに準拠の度合いは異なります。デフォルトでは、このプロパティをtrue
に設定すると、これらのトランザクションはコミットされます。 -
-Dweblogic.datasource.endLocalTXOnXAConWithCommit=true
を使用すると、接続プールを閉じるときにXA接続のローカル・トランザクションをコミットできます。デフォルトでは、これらのトランザクションはロールバックされます。
JVMの設定
Java仮想マシン(JVM)は、マイクロプロセッサ上でJavaクラス・ファイルのバイト・コードを実行する仮想の実行エンジン・インスタンスです。JVMのチューニングは、WebLogic Serverとアプリケーションのパフォーマンスに影響を与えます。
Oracle WebLogic Server 12.2.1.4.0にアップグレードした後、JVM設定の一部を再構成する必要がある場合があります。次のトピックを確認し、必要に応じて設定を変更します:
Java承認ディレクトリの場所の設定
次の状況では、Java承認ディレクトリの場所の手動設定は必要ありません。
-
JDK8を使用している場合。
-
WebLogic Server 12.1.1でインストールされたJDKの1つを使用中の場合。
-
WebLogic Server 12c構成ウィザードによるドメイン作成で生成されたWLS 12cドメインおよび起動スクリプトを使用中の場合、またはWebLogic Serverインストーラでインストールされたように起動スクリプトが
commEnv.cmd/sh
を参照する場合、あるいはその両方の場合。
この状況がいずれも当てはまらないとき、次のいずれかの状況が当てはまる場合は、管理対象サーバーの起動に使用するコマンドでJava承認ディレクトリの場所を手動設定する必要があります。
-
管理対象サーバーの起動にノード・マネージャを使用しているが、起動スクリプト(
startScriptEnabled=false
)を使用していない場合。WebLogic Server 12.1.1以降、startScriptEnabled
のデフォルト値はtrue
になりました。 -
カスタム起動スクリプト、つまりOracleで提供されていない起動スクリプトを使用中の場合。
-
java.weblogic.Server
を使用して空のドメインを作成しようとしている場合。
このいずれのケースでも、管理対象サーバーの起動コマンドにjava.endorsed.dirs
パラメータを含めてください。
startWeblogic.sh -Djava.endorsed.dirs=
WL_HOME
/endorsed
複数のJava承認ディレクトリを指定する場合は、各ディレクトリ・パスをコロン(:)で区切ります。
ノート:
この項に記述されているオプションではすべて、WL_HOME
を自分のWebLogic Serverインストールのフル・パスに置き換える必要があります。
次のように、startServer
を呼び出すときに値をjvmArgs
として渡すか、nmstart
を呼び出すときに値をプロパティとして渡すことで、この値を指定することもできます。
wls:/nm/mydomain> prps = makePropertiesObject("Arguments=-Djava.endorsed.dirs=/
WL_HOME
/endorsed")
wls:/nm/mydomain> nmStart("AdminServer",props=prps)
管理対象サーバーの起動にノード・マネージャを使用している場合は、WLSTまたはWebLogic Server管理コンソールを使用して、-Djava.endorsed.dirs=/
WL_HOME
/endorsed")
パラメータをServerStartMBeanのarguments
属性に含めることができます。WebLogic Server管理コンソールを使用中の場合、サーバーの「構成」→「サーバーの起動」タブでこのパラメータを「引数」フィールドに入力します。管理サーバーに接続されているWLSTクライアントからstart(server_name 'Server')
を呼び出す際、またはWebLogic Server管理コンソールでサーバーの「起動」ボタンをクリックした際にこの属性は適用されます。
MaxMetaSpaceSizeの使用
JavaクラスにはJava Hotspot VM内の内部表現があり、それはクラス・メタデータと呼ばれます。以前のリリースのJava Hotspot VMで、クラス・メタデータはPermanentと呼ばれる永続的世代に割り当てられていました。JDK 8では、永続的(Permanent)世代が削除され、クラス・メタデータがネイティブ・メモリーに割り当てられます。
クラス・メタデータに使用できるネイティブ・メモリーの容量はデフォルトで無制限です。クラス・メタデータに使用するネイティブ・メモリーの容量に上限を設定するには、オプションMaxMetaspaceSize
を使用します。『Java Platform, Standard Edition HotSpot仮想マシン・ガベージ・コレクション・チューニング・ガイド』のクラス・メタデータに関する項を参照してください。
ノード・マネージャのstartScriptEnabledのデフォルト値
WebLogic Server 12.1.1以降、startScriptEnabled
のデフォルト値はtrue
に変更されました。これまでの旧リリースでは、デフォルトはfalse
でした。ノード・マネージャで起動スクリプトを使用しない場合は、アップグレード後にこの値をfalse
に変更します。
Enterprise Java Beans (EJB)
WebLogic Server 12.1.1から、JPA 2.0のサポートが組み込まれています。JPA 2.0では、ドメイン・モデリング、オブジェクト/リレーショナル・マッピング、EntityManager
インタフェース、問合せ
インタフェースおよびJava Persistence Query Language (JPQL)などの各機能が向上し、強化されています。『Oracle WebLogic Server Enterprise JavaBeansの開発』のドメインのデフォルト・プロバイダの設定に関する項を参照してください。
WebLogic Server 8.1 Webサービス・スタックの削除
WebLogic Server 12.1.1リリースで、WebLogic Server 8.1 Webサービス・スタックは削除されています。したがって、WebLogic Server 8.1 Webサービス・アプリケーションは今後機能しません。
「8.1のWebLogic WebサービスのWebLogic JAX-WSスタックへのアップグレード」の説明に従って、このようなアプリケーションをWebLogic JAX-RPCまたはJAX-WSスタックにアップグレードすることをお薦めします。
Universal Description and Discover (UDDI)レジストリの削除
WebLogic Server 12.1.1リリースで、UDDIは削除されています。
UDDIを引き続き使用中の場合にWebLogic Server 12.1.1にアップグレードする際は、Oracle Service Registry (OSR)に移行することをお薦めします。OSRはUDDI 3.0に準拠しています。
Certicom SSLの実装は削除されています
WebLogic Serverリリース12.1.1で、Certicom SSLの実装は削除されています。
この変更によって、『Oracle WebLogic Serverセキュリティの管理』のSSLデバッグの有効化のためのコマンド・ライン・プロパティに関する項およびJSSE SSL実装とCerticom SSL実装のシステム・プロパティの相違に関する項の説明に従って、システム・プロパティの更新およびスイッチのデバッグが必要な場合があります。
Oracle Coherenceのバージョン
WebLogic Server 12.1.1インストーラにはCoherence 3.7.1が含まれています。クラスタ内のサーバーはすべて同じバージョンのCoherenceを使用する必要があります。したがって、クラスタ内のすべてのキャッシュ・サーバーをCoherence 3.7.1にアップグレードします。
非推奨および廃止済Webアプリケーションの機能
Oracle WebLogic Server 12.1.1で非推奨またはサポート対象外となったWebアプリケーション機能のリストについては、次を参照してください。
-
Oracle WebLogic Server 11gリリース1で非推奨になった機能に関する情報は、My Oracle Support (
https://support.oracle.com/
)で入手できます。「ナレッジ・ベースの検索」フィールドに、ドキュメントID
888028.1
を入力してください。 -
Oracle WebLogic Server 12.1.1で非推奨になった機能に関する情報は、My Oracle Support(
https://support.oracle.com/
)で入手できます。「Deprecated Features」で検索してください。
PointBaseからDerbyに変更された評価版データベース
WebLogic Server 10.3.3以降では、WebLogic Serverインストール・プログラムの評価版データベースがPointBaseからApache Derbyに変更されています。
「製品とコンポーネントの選択」画面の評価版データベース・オプションを選択すると、DerbyデータベースがWL_HOME\common\derby
ディレクトリにインストールされます。「標準」インストールを選択すると、Derbyがデフォルトでインストールされます。
データ・ソース・プロファイル・ロギング
ONSのデバッグ
DataDirectのOracleタイプ4 JDBCドライバ
ドライバの動作の詳細は、DataDirectドキュメントを確認することをお薦めします。http://www.datadirect.com/index.html
の『Progress DataDirect for JDBC User's Guide Release 5.1』および『Progress DataDirect for JDBC Reference Release 5.1』を参照してください。
デフォルトのメッセージング・モードの変更
org.apache.commons.fileupload.disk.DiskFileItem Javaクラスへの変更
Oracle WebLogic Serverパッチ・セット更新(PSU)バージョン10.3.6.0.1610180以降では、Weblogic ServerにバンドルされているApache Commons FileUpload jarファイルのJavaクラスorg.apache.commons.fileupload.disk.DiskFileItem
が変更され、潜在的なセキュリティ脆弱性を防ぐためにjava.io.Serializable
を実装しなくなりました。アプリケーションがこのタイプのオブジェクトをシリアライズしようとすると、java.io.NotSerializableException
で失敗します。
Apache Commons FileUploadのセキュリティ脆弱性の詳細は、『Apache Commons FileUpload Security Vulnerabilities』を参照してください。
Oracle WebLogic Server 12.2.1.4.0にアップグレードした後、アプリケーションを変更してorg.apache.commons.fileupload.disk.DiskFileItem
オブジェクトのシリアライズを停止するか、フィルタリング・クラス・ローダーを構成してアプリケーションからロードする問題のあるパッケージを指定できます。フィルタリング・クラス・ローダーの構成の詳細は、My Oracle SupportドキュメントID 1163020.1のWeblogic.xmlでのフィルタリング・クラス・ローダーの構成方法を参照してください。
JSPファイルのサイズの制限
Java仮想マシン(JVM)では、アップグレード後のJavaメソッドごとにコードの量が65536バイトに制限されます。したがって、Oracle WebLogic Server 12.2.1.4.0へのアップグレード後にアプリケーションを再デプロイする際に、JSPファイルに埋め込まれているスクリプトレットが多すぎると、コンパイラはコードの最適化に失敗し、デプロイメントがCompilationException
で失敗します。
このような問題が発生した場合は、スクリプトレットを最小限に抑えてJSPファイルのサイズを小さくし、アプリケーションを再デプロイします。
SSLMBeanへの変更
SSLMBean
はWebLogicから、JSSEアダプタを有効化または無効化する機能など追加のSSL構成機能をサポートするように変更されています。次のトピックを参照してください。
-
JSSE SSL実装がWebLogicシステム・プロパティを扱う方法の相違点の一覧は、『Oracle WebLogic Serverのセキュリティの管理』のJSSE SSL実装とCerticom SSL実装のシステム・プロパティの相違に関する項を参照してください。
-
WebLogic ServerでのSSLサポートの詳細は、『Oracle WebLogic Serverセキュリティの理解』のSSL: 概要に関する項を参照してください。
-
JSEEの詳細は、Java Secure Socket Extention (JSEE)リファレンス・ガイドを参照してください。
新しいWebサービス機能
Oracle WebLogic Server 10.3.3では、いくつかの新しいWebサービスが追加されました。Webサービスのアトミック・トランザクションのサポート、クラスタ環境のサポートの強化、Fusion Middleware Controlを使用して、Oracle WSMポリシーをWebLogic Webサービスに添付できる機能などです。
リリース10.3.3で、WebLogic Serverには次の機能が追加されました。
-
Webサービスの原子性トランザクションのサポート: WebLogic Webサービスは、WebSphere、JBoss、Microsoft .NETなどの外部トランザクション処理システムとの相互運用性を実現します。
-
クラスタ環境でのWebサービスの拡張サポート
-
Webサービスおよびクライアントの監視の拡張
-
Fusion Middleware Controlを使用するWebLogic WebサービスへのOracle WSMポリシーの添付
-
リレーショナル・データベースにアクセスするための宣言Webサービス・ソリューションのEclipseLink DBWSサポート
-
メソッドレベルのポリシー添付動作の変更: WebLogic Server 10.3.3より前のリリースでは、WebLogic Server管理コンソールを使用してWebサービスのメソッドにポリシーを添付すると、そのポリシーはモジュール内のすべてのWebサービスで同じ名前を持つメソッドにも添付されていました。WebLogic Server 10.3.3では、ポリシーは適切なWebサービスのメソッドのみに添付されます。
-
OWSMポリシー名からの
policy:
接頭辞の削除 -
Webサービスの「WSDL」タブの削除: WebLogic Server 10.3.3より前のリリースでは、「構成」→「WSDL」タブを選択すると、現在のWebサービスのWSDLを表示できました。「WSDL」タブはWebLogic Server 10.3.3以降では削除されています。
-
新しい開発ツール: Oracle JDeveloperおよびOracle Enterprise Pack for Eclipse (OEPE)
-
Oracle Enterprise Manager Fusion Middleware Controlとの統合
-
Oracle WebLogic Services Manager (WSM)セキュリティ・ポリシーのサポート
-
JAX-WSでのWS-SecureConversation 1.3、およびJAX-WSでのWS-SecurityによるMTOMのサポート
『Oracle WebLogic Serverの新機能』を参照してください。
JSSEの導入
WebLogic Server 10.3.3から、Java Secure Socket Extension (JSSE)がSSL実装として導入されています。JSSEは、SSLおよびTLS用のJava標準フレームワークで、ブロッキングI/O API、ノンブロッキングI/O API、および複数の信頼性のあるCAを含む参照実装が含まれています。
セキュリティ・ポリシー・デプロイメントのパフォーマンス向上
ただし、カスタムのデプロイ可能な認可プロバイダまたはロール・マッピング・プロバイダで並列呼出しがサポートされていない場合は、セキュリティ・ポリシーとロールの並列変更を無効にし、かわりに同期メカニズムを強制的に使用する必要があります。この場合、各アプリケーションとモジュールはキューに入り、順番にデプロイされます。この同期強制メカニズムは、WebLogic Server管理コンソールまたはRealmMBeanのDeployableProviderSynchronizationEnabled
属性とDeployableProviderSynchronizationTimeout
属性を使用することで有効にできます。
『Oracle WebLogic Serverのセキュリティの管理』のデプロイメント時のセキュリティ・ポリシーとロール変更での同期の有効化に関する項を参照してください。
ActiveCache
クラス・キャッシュ
-
サーバーの起動時間が短縮されます。
-
パッケージ・レベルの索引により、すべてのクラスとリソースの検索時間が短縮されます。
startWebLogic
スクリプトを使用することで、クラス・キャッシュはサーバーの起動時に開発モードでサポートされます。クラス・キャッシュはデフォルトでは無効になっており、本番モードではサポートされません。起動時間の短縮の程度は様々なJREベンダーによって異なります。『Oracle WebLogic Serverアプリケーションの開発』のポリシー・クラスローダーを使用したクラス・キャッシュ機能に関する項を参照してください。
非推奨となったJDBCドライバ
Oracle用のWebLogicタイプ4 JDBCドライバとSybase JConnect 5.5および6.0ドライバは非推奨です。
-
Oracle用のWebLogicタイプ4 JDBCドライバ
このドライバは、WebLogic Server 10.3で非推奨になり、削除されています。この非推奨のドライバのかわりに、WebLogic Serverにも付属しているOracle Thin Driverを使用してください。Oracle Thin Driverの詳細は、『Oracle WebLogic Server JDBCデータ・ソースの管理』のWebLogic ServerでインストールされるJDBCドライバに関する項を参照してください。
-
Sybase JConnect 5.5および6.0ドライバ
これらのドライバは、サンプル・コードのデフォルト・インストールに関するOracleセキュリティ・ポリシーに従ってリリース10.3.3の時点でWebLogic Serverから削除されました。これらのドライバはSybaseからダウンロードできます。また、WebLogic Serverに付属しているOracleブランドのSybase用JDBCドライバを使用することもできます。
weblogic.jms.extension APIの変更
weblogic.jms.extensions.WLMessage
インタフェースの内部メソッドが、Oracle WebLogic Server Java APIリファレンスから削除されました。このようなメソッドには、次のようなものがあります。
public void setSAFSequenceName(String safSequenceName); public String getSAFSequenceName(); public void setSAFSeqNumber(long seqNumber); public long getSAFSeqNumber();
アプリケーションでこれらの内部メソッドを使用しないでください。内部メソッドは、将来のリリースで予告なしに変更または削除される場合があります。
永続ストアの更新
Oracle Internet Directory認証プロバイダとOracle Virtual Directory認証プロバイダ
WebLogic Server 10.3.2で、Oracle Internet Directory認証プロバイダとOracle Virtual Directory認証プロバイダという2つの新しいLDAP認証プロバイダがWebLogic Serverに追加されました。これらの認証プロバイダは、Oracle Internet Directory LDAPサーバーとOracle Virtual Directory LDAPサーバーにユーザーとグループを格納したり、両サーバーからユーザーとグループを読み取ることができます。
これらの新しいセキュリティ・プロバイダの構成と使用の詳細は、『Oracle WebLogic Serverのセキュリティの管理』のLDAP認証プロバイダの構成に関する項を参照してください。
CapacityIncrement属性
WebLogic Server 10.3.1では、JDBCConnectionPoolMBean
のCapacityIncrement
属性は構成可能ではなくなり、1という値に設定されます。
Middlewareホーム・ディレクトリ
<drive:>Oracle/Middleware
です。 この変更がWebLogic Serverに及ぼす影響は次のとおりです。
-
10.3.1の複数のWebLogicスクリプトに、Middlewareホームを表すための新しい環境変数
MW_HOME
が導入されています。この変数が設定されているディレクトリは通常はBEA_HOME
と同じで、これまでどおりWebLogic Serverスクリプトで使用できます。 -
インストール時のデフォルトでは、WebLogic Serverのインストール・ディレクトリのルート製品として
<drive:>Oracle/Middleware
が選択されます。ただし、既存のWebLogic Serverが検出された場合は、デフォルトでそのインストール・ディレクトリが選択されます。 -
現在、WebLogic Server 10.3.1のドキュメントでは、BEAホームではなく
Middlewareホーム
という用語を使用します。ただし、この変更は用語のみに適用されます。この変更では、WebLogicソフトウェア、カスタム・ドメインまたはアプリケーションの移動や、それらの場所を表す既存の環境変数の変更は必要ありません。
この変更によって、コンピュータ上の既存のWebLogic Serverインストール、カスタム・ドメイン、アプリケーションまたはスクリプトが影響を受けることはありません。従来どおりBEA_HOME
環境変数を使用し続けることができます。
リソース登録名
『Oracle WebLogic Server JTAアプリケーションの開発』のXAResourceのトランザクションへの参加の登録に関する項を参照してください。
サーブレット・パス・マッピング
Javaサーブレットの仕様バージョン2.3の時点で、2つの追加の文字/
と*
がマッピングの定義に使用できます。
-
/
(スラッシュ)文字だけが含まれるサーブレット・パス文字列は、アプリケーションのデフォルト・サーブレットを表します。サーブレットのパスはリクエストURIからコンテキスト・パスを除いたものに解決されます。この場合、パスはnull
に解決されます。 -
1個の
*
(アスタリスク)で始まる文字列は、拡張子マッピングを指定します。
これらの変更により、次のHttpServletRequest
メソッドの動作に変化が生じます。
-
getPathInfo
-
getServletPath
動作の変更を説明するために、例として/abc/def.html
というリクエストがServletAに解決される場合を考えます。
-
/
がServletAにマップされると、servletPath="abc/def.html"
およびpathInfo=null
になります。 -
/*
がServletAにマップされると、servletPath=""
およびpathInfo="abc/def.html"
になります。
確実にnullでないパス情報が返されるようにするには、/
(スラッシュ)のサーブレット・マッピング文字列が出現するすべての箇所を/*
に置換します。
web.xml
デプロイメント・ディスクリプタ・ファイルの<servlet>
要素と@WebServlet
注釈の両方を使用してサーブレットを定義する場合、指定したサーブレット名は両方の場所で同じであることを確認する必要があります。この名前が一致しない場合、アプリケーションの起動を妨げる例外が生成されます。この要件は12.2.1.0より前のWebLogic Server 12cのバージョンでは強制されませんでした。
Javaサーブレット仕様は、次の場所からダウンロードできます。
http://www.oracle.com/technetwork/java/javaee/servlet/index.html