ヘッダーをスキップ
Oracle® Fusion Middleware Oracle WebLogic Serverリリース・ノート
12c (12.1.2)
E47998-03
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次

前
 
 

2 Oracle WebLogic Server

この章では、Oracle WebLogic Serverに関連する問題について説明します。この節は、以下のトピックで構成されています。

一般的な問題と回避策

この項では、次の問題と回避策について説明します。

Safariを使用している場合にファイル名にマルチバイト文字が正しく表示されない

プラットフォーム: すべて

Safariブラウザを使用してコンテンツをダウンロードする場合、ファイル名にマルチバイト文字が含まれていると、ファイル名の文字が"------"として表示されます。

回避策

管理対象サーバーでUseHeaderEncodingtrueに設定します。この操作を行うには、次のWLSTコマンドを使用します。

connect("admin_name", "admin_password", "t3://localhost:port")
edit()
startEdit()
cd("Servers/server_name/WebServer/server_name")
set("UseHeaderEncoding", "true")
save()
activate()
exit()

Oracle ojdbc14.jarファイルがojdbc6.jarに変更された

プラットフォーム: すべて

Oracle ojdbc14.jarファイルは、JDK 5または6で使用するため、ojdbc6.jarに変更されました。この結果、ojdbc14.jarへの明示的な参照はすべて、ojdbc6.jarへ変更する必要があります。

強力なパスワードの適用がWLSTオフライン・スクリプトの問題を引き起こすことがある

プラットフォーム: すべて

このリリースのWebLogic Serverでの強力なパスワードの適用(8文字以上で、1つの数値または特殊文字を含む)の実装により、既存のスクリプトで問題が発生する可能性があります。

回避策

次のいずれかの回避策を使用して、新しいパスワード制限をバイパスします。

  • BACKWARD_COMPAT_PW_CHECK環境変数をtrueに設定します。

  • WLSTを呼び出す際に-Dbackward.compat.pw.check=trueオプションを含めます。

この変数とオプションはWebLogic Serverの将来のリリースで削除されるため、新しいパスワード要件を満たすようにパスワードを変更することをお薦めします。

トルコ語ロケールでMDSの初期化に失敗する

プラットフォーム: すべて

idという名前の属性にnull値が返されるため、MDSリポジトリを使用するアプリケーションは、WebLogic ServerにバンドルされているJAXBバージョンでデプロイまたは実行できません。

回避策

サーバーを英語ロケールで起動します。

管理サーバーがEMコンソールで「開いているファイルが多すぎます」
のメッセージをレポートする

プラットフォーム: Linux

管理サーバーに対して構成されているファイル記述子の最大数が65535未満の場合、WebLogic Server管理サーバーは、Enterprise Manager (EM)コンソールで「開いているファイルが多すぎます」のメッセージをレポートします。

回避策

次のコマンドを実行して、現在構成されているファイル記述子の最大数を確認します。

cat /proc/sys/fs/file-max

値が65535未満の場合は、次の手順を実行します。

  1. ルート権限でファイル/etc/security/limits.confを編集します。

    > sudo vi /etc/security/limits.conf
    
  2. 65535以上の値を使用して、次の2行を追加します。

  3. *                soft    nofile          65535
    *                hard    nofile          65535
    
  4. 新しいターミナル・セッションを開始します。

  5. limit descriptorsコマンドを実行して、記述子が指定した値(65535以上)に増やされたことを確認します。

    > limit descriptors
    descriptors  65535
    

CoherenceをMavenとともに使用する場合のインストール要件

WebLogic Serverに依存しておらず、Mavenを使用するCoherenceユーザーは、独立型のCoherenceインストーラを使用する必要があります。

WebLogic Serverに依存しておらず、Mavenを使用するCoherenceユーザーは、「WebLogic Server」または「Completeおよび例」インストール・オプションを選択する必要があります。「Coherenceインストール」オプションは選択しないでください。

管理コンソールの問題と回避策

この項では、次の問題と回避策について説明します。

キャッシュされたJDBC情報が表示されない

プラットフォーム: すべて

キャッシュされたJDBC文に関する情報が、JDBCの「モニター」ページに表示されません。

ブラウザの「戻る」ボタンをクリックするとコンテキストが破棄される

プラットフォーム: すべて

管理コンソールでページ・フローが完了すると、別のページ(通常は表)に進みます。

この時点でブラウザの「戻る」ボタンをクリックすると、完了したアシスタント内の最後のJSPファイルのロードが試行されます。この時点で、このアシスタントのコンテキストはすべて破棄されます。

回避策

変更がキャンセルされるか完了した後は、アシスタントに戻るためにブラウザの「戻る」ボタンを使用しないことをお薦めします。また、アシスタント内の前の手順に戻らないこともお薦めします。代わりに、管理コンソールのナビゲーション・リンクおよびボタンを使用してください。

サポートされないワーク・マネージャ構成を作成できる

プラットフォーム: すべて

管理コンソールでは、サポートされておらず想定どおりに機能しないワーク・マネージャの構成を作成することができます。不適切なワーク・マネージャ構成があるとサーバー・ログに多数の例外が記録されます。最も多いのは、デプロイメント記述子の解析中に発生する「Validation problems were found」例外です。

回避策

ワーク・マネージャ構成に関するオンライン・ヘルプのガイドラインに従ってください。特に、特定のワーク・マネージャに割り当てられるリクエスト・クラスは1つだけです。リクエスト・クラスのスコープはワーク・マネージャと同じかそれより広くする必要があります。アプリケーション・スコープのリクエスト・クラスをグローバルなワーク・マネージャに割り当てないでください。また、アプリケーション・スコープのワーク・マネージャに対して複数のアプリケーション・スコープのリクエスト・クラスを作成しないでください。

ワーク・マネージャの構成を記載されている制約に従って修正すれば、これらの問題は解決します。

サーバー・ステータス表が一貫性のない情報を反映する

プラットフォーム: すべて

「クラスタ: 監視: サマリー」ページの「サーバー・ステータス」表には、「プライマリ」「セカンダリ分散名」の2つのデフォルトの列があります。レプリケーションのシナリオによっては、これらのフィールドに、「クラスタ:モニター:フェイルオーバー」ページで修正および表示されたすべてのレプリケーション統計が反映されない場合があります。

詳細情報については、「クラスタ: 監視: フェイルオーバー」ページを参照してください。

EJBのセキュリティ・ポリシーを定義する際の例外

プラットフォーム: すべて

別のライブラリ・デプロイメントで定義された型を参照しているEJBデプロイメントに対して、管理コンソールでセキュリティ・ポリシーを定義するとき、そのライブラリ・デプロイメントをConsoleから使用できない場合に、例外が発生する可能性があります。

回避策

すべてのライブラリ・デプロイメントは、WebLogic Server管理サーバーと、アプリケーションの参照をサポートするために必要な任意の管理対象サーバーをターゲットにする必要があります。こうすると、ポリシーを定義するときに、必要に応じて参照された型をクラスロードするために、Consoleがそれらのライブラリ・デプロイメントにアクセスできるようになります。

管理コンソールに、デプロイメント・プランに加えられた
外部の変更が反映されない場合がある

プラットフォーム: すべて

管理コンソールに、デプロイメント・プランに加えられた外部の変更が反映されない場合があります。ユーザーがコンソールでデプロイメント・プランを表示しているときに、コンソールの外部でデプロイメント・プランに変更が加えられた場合(たとえば、Workshopを使用する、プランのテキスト・ファイルを直接編集する、WLSTやWebLogic.Deployerを使用して新しいプランでデプロイメントを更新する場合など)、その変更はコンソールに表示されません。

回避策

別のデプロイメントの構成ページに移動してから、元のデプロイメントに再び戻ってください。

アプリケーション・テスト・リンクが管理コンソールでの解決に失敗する

プラットフォーム: すべて

一部の構成では、WebLogic Server管理コンソールに含まれているアプリケーション・テスト・ページは、テストするリンクでIPv6アドレスを使用します。これらのアドレスは、WebLogicサーバー・インスタンスでは有効ですが、IPv4とIPv6の混合環境のいくつかにおいては、アプリケーションとの対話のためにブラウザから使用することはできず、テストするリンクを解決できません。

回避策

このシナリオは、一般に、管理者が構成でサーバーのためのリスニング・アドレスを指定せず、サーバーが、Javaおよびオペレーティング・システムがIPv4よりもIPv6を使用するよう構成されているデュアル・スタック(IPv6/IPv4)マシン上で実行されている場合に起こります。IPv4スタックがIPv6と通信できないこれらの混合環境では、IPv4のみを使用するためにすべてのサーバーがダウングレードされるよう、次のコマンドを使用してすべてのサーバー・インスタンスを開始することをお薦めします。

-Djava.net.preferIPv4Stack=true

java.lang.NoClassDefFoundErrorが表示される

プラットフォーム: すべて

管理対象サーバーにデプロイされたアプリケーションやEJBをWebLogic Server管理コンソールで操作する際、それらがデプロイされたライブラリに依存しているとjava.lang.NoClassDefFoundErrorが発生することがあります。

回避策

WebLogic Server管理コンソールでは、Javaデータ型およびアノテーションを処理するために、共有ライブラリ・デプロイメントにアクセスする必要があります。したがって、すべての共有ライブラリ・デプロイメントは、管理対象サーバーまたはクラスタだけでなく、WebLogic Server管理サーバーにもターゲット指定されている必要があります。

新しく作成したCoherenceクラスタ・サービスまたはキャッシュのセキュリティ・ロール構成時のエラー

プラットフォーム: すべて

新しく作成したCoherenceクラスタ・サービスまたはキャッシュのセキュリティ・ロール構成時に、WebLogic Server管理コンソールで、予想していないエラー状態が示されました。これは、WebLogic Server管理コンソールでは一般的なパターンであり、新しく作成されたアーティファクト上のセキュリティ・ロールおよびポリシーを構成するためにそれらにアクセスするには、アーティファクトを保存してアクティブ化する必要があります。多くのコンソール・ページはこれを確認し、次のことを示すメッセージを表示します: 「必要なセキュリティ・プロバイダが構成されていないか、構成の変更が保留中でアクティブ化されていないため、このページは使用できません。このページを使用するには変更をアクティブ化して、(必要に応じて)管理サーバーを再起動してください」。このチェックは、Coherenceセキュリティ・ページでは行われません。

回避策

新しいCoherenceクラスタを作成したら、構成の変更をアクティブ化し、再起動変更リストで示されている任意のサーバーを再起動します。これにより、Coherenceクラスタのリソースを、ロールおよびポリシー構成のために使用できるようになります。

「スタート」メニューでショートカットを使用してノード・マネージャを起動するようにオンライン・ヘルプで指示される

プラットフォーム: MS Windows

「スタート」メニューからショートカットを使用してWindowsマシンでノード・マネージャを起動するオプションは、WebLogic Server 12.1.2ではなくなりました。

回避策

Windowsでは「スタート」メニューでショートカットを使用してノード・マネージャを起動できることを示すテキストは無視してください。

ノード・マネージャを起動するには、他の方法を使用してください。Oracle WebLogic Serverのノード・マネージャの管理のノード・マネージャの起動と停止に関する項を参照してください。

Apache Beehiveサポートの問題と回避策

このリリースのWebLogic Serverには、Apache Beehiveサポートの既知の問題はありません。

クラスタリングの問題と回避策

この項では、次の問題と回避策について説明します。

ユニキャスト・モードのクラスタ・メッセージングでスレッドがブロックされる

プラットフォーム: Linux

クラスタ通信にユニキャスト・モードを使用している場合、クラスタ・メッセージングで多くのスレッドがブロックされ、クラスタ・メンバーによるハートビート・メッセージの送信が難しくなることがあります。この状況では、一部のクラスタ・メンバーがクラスタからドロップアウトし、クラスタへの再参加に時間がかかることがあります。

管理対象サーバーをクローニングして動的でない大規模なクラスタを拡張する際に例外が発生する

プラットフォーム: すべて

管理対象サーバーをクローニングして動的でない大規模なクラスタを拡張しようとしているときに、java.nio.channels.CancelledKeyExceptionおよびjava.lang.RuntimeException:MaxThreads制約の例外が発生する可能性があります。また、管理サーバーの速度が低下するか、応答しなくなる可能性があります。

回避策

次のいずれかの回避策を選択してください。

  • マルチキャスト・メッセージング・モードを使用します。

  • サーバー・テンプレートを使用して、動的クラスタを作成し、そのクラスタを拡張します。詳細は、Oracle WebLogic Serverのクラスタの管理の動的クラスタの作成に関する項を参照してください。

  • 管理対象サーバーをクローニングして、実行しているクラスタ構成に、クローニングしたサーバーを追加するのではなく、まず、クラスタに必要な管理対象サーバーの数を判別し、それらの管理対象サーバーをクラスタ構成に追加してから、必要に応じてそれらを起動します。

構成の問題と回避策

この項では、次の問題と回避策について説明します。

WebLogicドメインの作成時にASProvWorkflowExceptionが発生する

プラットフォーム: すべて

Fusion Middleware製品のインストールを開始する前に既存のJAVA_OPTIONSがインストール環境に含まれている場合、ASProvWorkflowExceptionが原因でドメインが作成されないことがまれにあります。

回避策

Fusion Middleware製品のインストールを開始する前に、既存のJAVA_OPTIONSをクリアします。これらのJAVA_OPTIONSを使用するアプリケーションが環境内にある場合、アプリケーションはオプションをクリアした後で動作しなくなることがあります。この場合は、既存のJAVA_OPTIONSをテキスト・ファイルに保存し、他のアプリケーションを実行するための代替方法を調べます。

英語以外のロケールでWLSTを実行している場合は-Dfile.encodingプロパティを使用する

プラットフォーム: MS Windows

WLSTは、目的のロケールを設定することでローカライズされたメッセージで実行できます。英語以外のロケールでWLSTを実行する場合は、次の問題があることを認識してください。

Windowsオペレーティング・システムで、DOSコマンド・ウィンドウのアクティブ・コード・ページがシステムのローカル(ANSI)コード・ページと異なる場合は、DOSコマンド・ウィンドウを介してWLSTを起動する際に、-Dfile.encoding=<DOS window's active code page>プロパティをWLSTプロセスに追加する必要があります。これにより、Javaプロセスのデフォルトの文字セットが変更されます。次に例を示します。

  • DOSウィンドウのアクティブ・コード・ページは850です。これは、WLSTコマンド・ウィンドウでchcpコマンドを発行することで設定できます。

  • システムのローカル(ANSI)コード・ページは1250です。システムのローカル・コード・ページは、WindowsレジストリでHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\NLS\CodePage\ACPキーの値を表示することで確認できます。標準のWindows編集ツール(メモ帳やワードパッドなど)で作成されたファイルは、この方法でエンコードされます。

この状況では、WLSTを次のように起動できます。

set WLST_PROPERTIES="-Dfile.encoding=cp850"

$WL_HOME%\common\bin\wlst.cmd

WebLogicインストール・パスに空白が含まれている場合に構成ツールが失敗することがある

プラットフォーム: MS Windows

一部のMicrosoft Windowsプラットフォームでは、WebLogic構成ツール・コマンド(wlstconfigpackunpackなど)は、WebLogicインストール・パスに空白が含まれている場合に失敗することがあります。この場合、コマンドは、クラスが空白の後のインストール・パスの部分から導出されるjava.lang.ClassNotFoundExceptionで失敗することがあります。コマンドは、Windowsレジストリで短いファイル名の生成が無効になっている場合に失敗します。

回避策

構成ツールで空白が正しく処理されるようにするには、Windowsレジストリで短い名前の生成を有効にする必要があります。短い名前の生成を有効にするには、次のようにします。

  1. regeditを実行します。

  2. HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystemフォルダに移動します。

  3. NtfsDisable8dot3NameCreationをダブルクリックし、その値を0に設定します。

  4. 変更を反映するには再起動します。

存在しないサーバー名のディレクトリが作成される

プラットフォーム: すべて

存在しないサーバー名でWebLogic Server管理サーバーに接続しようとすると、存在しないサーバー名のディレクトリがdomain_name/serversディレクトリの下に作成されます。

回避策

管理サーバーに接続する際に有効な名前を指定します。

WebLogicパスワードの入力後のターミナル・ウィンドウの異常な動作

プラットフォーム: Linux

WebLogicパスワードの入力直後に[Ctrl]+[C]を押してstartManagedWebLogic.shプロセスを終了した後で、ターミナル・ウィンドウで異常な動作が発生することがあります。たとえば、[Return]を押すと、プロンプトが次の行に移動するかわりにタブ移動し、プロンプトに入力した文字がターミナルに表示されません。

回避策

現在のxtermを終了して新規に開始するか、xtermにstty echoと入力します。

ドメインの作成と更新に長時間かかる

プラットフォーム: Linux

次の場合には、WebLogic Serverドメインの作成または更新に長時間かかることがあります。

  • インストールにサーバー例が含まれている場合にUNIXまたはLinuxオペレーティング・システムにWebLogic Serverをインストールする場合。

  • WebLogic Server構成ウィザードを使用してドメインを作成または変更する場合。

  • WLSTを使用してドメインを作成または変更する場合。

回避策

CONFIG_JVM_ARGS環境変数を次の値に設定します。

-Djava.security.egd=file:/dev/./urandom

新規ドメインの構成時に「パスワード」フィールドを編集できない

プラットフォーム: Linux

Linuxシステムでは、Oracle Fusion Middleware構成ウィザードで新規ドメインを作成する際に、「パスワード」および「パスワードの確認」フィールドが編集不能になることがあり、ドメインを作成するためのパスワードを入力できません。

回避策

この問題を回避するには2つの方法があります。

  • 問題が発生するたびに回避するには、構成ウィザードの右上にある「ウィンドウを閉じる」(X)ボタンをクリックします。表示される確認ダイアログで、「いいえ」をクリックして構成ウィザードに戻ります。その後で、ドメインのパスワードを入力および確認できます。

  • この問題を永続的に解決するには、次のようにします。

    1. すべてのscimプロセスを強制終了します。次に例を示します。

      kill `pgrep scim`

    2. ファイル~/.scim/configを変更(または作成)して、次の行を含めます(大文字と小文字は区別されます)。

      /FrontEnd/X11/Dynamic = true

    3. VNCを実行している場合は、VNCサーバーを再起動します。

    4. 構成ウィザードをもう一度実行します。

管理サーバーのメモリー消費量およびJMX通知

プラットフォーム: すべて

ドメイン実行時MBeanサーバーは、ドメイン内のすべての管理対象サーバー実行時MBeanサーバーと通信できる、フェデレーテッドMBeanサーバーです。フェデレーション・アーキテクチャは、問合せの際によいパフォーマンスを示します。ただし、JMX通知がMBeanに追加される場合、ドメイン実行時MBeanサーバーは、多量のメモリーを消費する可能性があります。

JMX通知が使用される場合は、管理サーバーが、ドメイン内のすべての管理対象サーバーで実行されているすべての実行時MBeanサーバーに登録されているすべてのJMXオブジェクト名のコピーを保持する原因となる、2つのケースがあります。

  • WebLogic Serverレベルで、管理対象サーバー停止時のMBean通知の登録解除をシミュレートします。

  • JDK JMXクライアント通知レイヤーにおいてです。

この問題が発生する可能性は、次の両方の条件が存在する場合に増加します。

  • EM Fusion Middleware Controlは、ドメイン実行時MBeanサーバーに通知リスナーを追加するため、大きいドメインを管理するために使用されています。

  • JMX実行時MBeanの数を大幅に増加させるFusion Middleware製品が、ドメインに含まれています。これには、ドメイン内で実行されているWebLogic Server実行時MBeanサーバー・インスタンス(つまり、管理サーバーおよび管理対象サーバー)に登録されているMBeanを持つすべての製品が含まれます。(これらの製品には、Coherence、SOA Suite、OSBなどが含まれます。)

回避策

managed-server-notifications-enabled属性を無効にします。この構成属性は、管理対象サーバー実行時MBeanサーバーに含まれる、MBean上で通知を定義する能力を無効にします(これらのMBeanは、ObjectName内にLocation=keyを含みます)。

管理対象サーバーの通知が無効になっている場合は、WebLogic ServerおよびJDKコンポーネントに含まれるMBeanのためのObjectNameの2つのセットは保持されません。通知リスナーは、MBeanServerDelegate上、およびローカルのドメイン実行時MBeanサーバーに含まれるMBean上でまだ定義できます。ただし、通知リスナーは、非ローカルMBeanには追加できません。

managed-server-notifications-enabled属性は、次のようにWLSTを使用して設定できます。

edit()
startEdit()
cd("JMX/domain-name")
cmo.setManagedServerNotificationsEnabled(false)
activate()

構成ウィザードでSIPサーブレット・テンプレートを選択してはいけない

プラットフォーム: すべて

SIPサーブレット・ドメイン作成テンプレートは、WebLogic Server構成ウィザード内の利用可能なコンポーネントとしてリストされます。表示されますが、WebLogic Serverドメインの構成時にはSIPサーブレット・テンプレートを選択しないでください。

editCustom()MBeanへの変更をロールバックする際の問題

プラットフォーム: すべて

editCustom()ツリーには、上位のスタックおよびシステム・コンポーネント製品のためのMBeanが含まれています。これらのMBeanに変更を行うと、その変更は、保留中のディレクトリにすぐに続きます。これは、明示的な保存が必要な、edit()ツリー内のWebLogic Server MBeanとは異なります。

stopEdit()cancelEdit()を使用するか、開いている編集セッションでWLSTを終了すると、WebLogic Server MBeanへの保存されていない変更はロールバックされます。ただし、editCustom()ツリーへの変更は持続されるため、ロールバックされません。

回避策

undo('y')コマンドを使用して、editCustom() MBeanへのアクティブ化されていない変更をロールバックします。

Solaris 5.10でWebLogic Serverのシェル・スクリプトが「識別子ではありません」というエラーを返す

プラットフォーム: Solaris 5.10 - X64およびSPARC

Solaris X64およびSolaris SPARCプラットフォームでは、/bin/shシェルのための等号記号(=)と同じ行にexportキーワードがある場合はエラーが発生します。

回避策

exportキーワードおよび等号記号を含む行を2つの別個の行と置き換えます。次に例を示します。

> ./Middleware/oracle_common/common/bin/getproperty.sh 
> 26:export ${ENV_VAR}=`grep ${PROPERTY_NAME} ${PROPERTIES_FILE} | cut -d '='  -f 2` 
>
> ./Middleware/wlserver/common/bin/wlsifconfig.sh  
> 391: export INET6="inet6" 

同一ホスト上での複数の開発サーバー起動の問題

プラットフォーム: すべて

1つのDerbyインスタンスを共有している場合、同一ホスト上で2つの開発サーバーを起動できません。

回避策

1つのDerbyインスタンスを共有するかわりに、それぞれの開発サーバーが一意のDerbyインスタンスを使用するように構成してください。詳細は、Oracle Service Bus開発者ガイド一意のDerbyインスタンスによる各ドメインの実行に関する項を参照してください。

Coherenceキャッシュのオーバーライドが機能しない

プラットフォーム: すべて

ドメインの作成にWebLogic Server構成ウィザード(config.sh)を使用し、WebLogic Coherenceクラスタの拡張テンプレートを指定する場合は、Coherenceクラスタが定義されます。Coherenceクラスタは、同様に構成ウィザードで作成した任意の管理対象サーバーまたはWebLogic Serverクラスタに関連付けることができます。管理対象サーバーまたはWebLogic Serverクラスタを作成しない場合は、Coherenceクラスタは管理サーバーに関連付けられます。Coherenceクラスタとサーバー間のこの関連付けはWebLogic Server構成ツールを使用して完全には定義されないため、Coherenceキャッシュ構成オーバーライド・ファイルはCoherenceクラスタによって検出されません。この問題は、キャッシュ・オーバーライド機能を使用する場合にのみ発生します。

回避策

次の回避策を使用します。

  1. 構成ウィザードで作成したドメインを起動し、WebLogic Server管理コンソールを使用して接続します。

  2. 管理コンソールの左側のペインで「環境」を展開して、「Coherenceクラスタ」を選択します。

  3. 使用するCoherenceクラスタを選択します。そのCoherenceクラスタの設定ページが表示されます。

  4. 「メンバー」タブを選択すると、このCoherenceクラスタのすべてのメンバーが表示されます。

  5. このCoherenceクラスタのメンバーであるサーバーおよびクラスタを選択解除して、「保存」をクリックします。

  6. このCoherenceクラスタのサーバーおよびクラスタとして望ましいメンバーを再選択して、「保存」をクリックします。

この手順によって、Coherenceクラスタとターゲット・サーバー間の完全な関連付けが行われますが、これは指定されたCoherenceクラスタ・キャッシュ構成オーバーライド・ファイルの検索および使用のために必要です。

コネクタ(リソース・アダプタ)の問題と回避策

この項では、次の問題と回避策について説明します。

JCAコネクタをデプロイするときにjava.IO.Serializableエラーが発生する

WebLogic Serverリソース・アダプタをデプロイする際、次のエラーが発生します。

The activation_spec, which is defined as resource from implementing_class, must implement java.io.Serializable but does not. 

回避策

クラスを実装しているアクティブ化仕様を、シリアライズ可能となるように更新します。

コンソール拡張の問題と回避策

このリリースのWebLogic Serverには、拡張の既知の問題はありません。

コア・サーバーおよびコア・ワーク・マネージャの問題と回避策

この項では、次の問題と回避策について説明します。

マルチキャスト・ソケットの作成時にjava.io.例外が発生する

プラットフォーム: zLinux

JDKまたはオペレーティング・システムがIPv6形式で構成されている場合に、WebLogic ServerクラスタのためにIPv4形式のアドレスでマルチキャスト・ソケットを作成する際に、java.io.IOExceptionが発生しました。

回避策

サーバー起動コマンドに-Djava.net.preferIPv4Stack=trueパラメータを含めます。

ノード・マネージャ、管理サーバーまたは管理対象サーバーが失敗する

プラットフォーム: AIX、Solaris X64、SPARC

オープン・ファイル記述子の数に対するオペレーティング・システムのulimit値がunlimitedに設定されている場合、ドメイン内のノード・マネージャ、管理サーバーまたは管理対象サーバーで起動が失敗、あるいは実行が停止する場合があります。

回避策

WebLogic Serverの起動に使用されているユーザー・アカウントに対して、オペレーティング・システムのulimit値をunlimited以外に設定します。次に例を示します。

ulimit -n 1024

接続の取得を待機中にスレッドがスタックする

プラットフォーム: すべて

管理対象サーバーの1つをホストするマシンが突然停止される、ネットワーク・カードが取り外される、またはネットワーク・インタフェース・カードに問題がある場合に、サーバーがその管理対象サーバーと通信しようとすると、スレッドが接続の確立を待機したままスタックします。

回避策

現在は、この問題を解決するには、次のプライベート・フラグを使用し、

-Dweblogic.client.SocketConnectTimeoutInSecs

適切なタイムアウト値を設定します。接続を確立しようとしているスレッドが解放され、リクエストがすぐに失敗するようになります。

タイムアウト・プロパティの詳細は、Oracle WebLogic ServerのRMIアプリケーションの開発のクライアント・タイムアウトの設定に関する項を参照してください。

IPv6形式のアドレスの使用

プラットフォーム: すべて

WebLogic ServerでIPv6フォーマットのアドレスを使用する場合は、URLのホスト・アドレス部分に大カッコ([および])を含める必要があります。そうしないと、WLSTは実行中のサーバーに接続できません。

回避策

ホスト・アドレスに大カッコを追加してください。次に例を示します。

t3://[fe80:0:0:0:203:baff:fe2f:59e5]:9991

サーバー全体を移行した後でサーバーを起動できない

プラットフォーム: すべて

クラスタ・サーバーのサーバー全体の移行が行われるときにWebLogic Server管理サーバーが停止していて、サーバーがそれまでに一度も実行されていないマシンに移行される場合、サーバーを新しいマシンで起動できません。

回避策

この問題には次のいずれかの回避策を使用してください。

  • サーバーの移行の実行中は必ず管理サーバーを稼働させておきます。

  • クラスタ内のすべての移行可能サーバーで共有のディスク/NFSを使用します。

フィールド名を変更した後でオブジェクト状態が保持されない

プラットフォーム: すべて

J2EEアプリケーションでFastSwapを有効にしている場合、デプロイメント中にJavaクラスに対して特定の変更を行うと、再デプロイせずにその変更を確認することができますが、その際、Javaオブジェクトのすべてのインスタンスの状態は保持されます。

オブジェクトの状態が保持されないケースとして、フィールド名の変更があります。これは次のように処理されます。

  • 古い名前のフィールドが削除される

  • 新しい名前のフィールドが追加される

したがって、この場合、古いフィールドの状態はすべて、名前変更後のフィールドに持ち越されません。

WorkshopまたはFastSwap antタスクを使用すると、インスタンス・フィールド名の変更により値がリセットされた場合でも、「FastSwap操作は正常に完了しました」というメッセージが表示される場合があります。

回避策

インスタンスの値がリセットされることを踏まえた上でフィールド名を変更してください。

あるホスト名でリスニングするように構成されたサーバーが、
起動後に別のホスト名でリスニングする

プラットフォーム: すべて

ホスト名を使用してWebLogic Server管理サーバーまたは管理対象サーバーのリスニング・アドレスの構成を指定する場合、複数のイーサネット・カードで構成されたマシンは、起動後に別のホスト名でリスニングすることがあります。次に例を示します。

  • マシンに3つのイーサネット・カードがあります。

  • カード1はhostname1-s (DNS登録ホスト名)にマップされています。

  • カード2はhostname1-i (DNS登録ホスト名)にマップされています。

  • カード3はhostname1(実際のノードのホスト名)にマップされています。

  • hostname1でリスニングするようにサーバーを構成します。

  • Windowsは実際のノードのホスト名を最初に有効になったイーサネット・カード・アドレスに解決するため、サーバーは起動後にhostname1-sでリスニングします。

回避策

この問題には次の3つの回避策のいずれかを使用します。

  1. WebLogic Server管理サーバーのリスニング・アドレスとして、ホスト名ではなくIPアドレスを使用します。管理対象サーバーで、IPアドレスをリスニング・アドレスとして使用するか、実際の物理ホスト名をマシンの最初のイーサネット・カードに構成します。

  2. マシンのC:\Windows\system32\drivers\etc\hostsファイルに次のエントリを追加します。

    <ip_address> <hostname>

  3. マシンのネットワーク・カードの順序を変更して、実際のノードのホスト名を持つカードがカード1になるようにします。

管理サーバーまたはノード・マネージャが、
管理対象サーバーのステータスを追跡できない

プラットフォーム: Linux

コマンド・ラインから正しくないWebLogic Server管理サーバーURLを指定して管理対象サーバーを起動した場合(つまり、管理サーバーが指定されたURLに到達できない場合)、管理対象サーバーは管理対象サーバー独立(MSI)モードで起動します。

この場合、管理サーバーとノード・マネージャは管理対象サーバーのステータスを追跡できません。管理コンソールには、管理対象サーバーのステータスがUNKNOWN(不明)と表示されますが、サーバーは実際にはMSIモードでRUNNING(実行中)です。

ネットワークの分割中またはその後でマルチキャスト・トラフィックの信頼性がなくなる

プラットフォーム: Linux

サーバー移行が行われる原因となったネットワークの分割中またはその後で、マルチキャスト・トラフィックの信頼性がなくなります。たとえば、あるノードはマルチキャスト・トラフィックを受信できますが、このノードから発信されたトラフィックはネットワークの他のノードで受信されません。その結果、移行されたサーバーは、ハートビートが受信されなかったためクラスタに追加されません。

回避策

現在わかっている回避策は、ユニキャスト・クラスタ・メッセージングを使用することだけです。

Java DBリース・スクリプトまたはサポートがない

プラットフォーム: すべて

WebLogic Serverでは、移行のためのJava DBをサポートしていません。Java DBのためのWL_HOME/server/dbディレクトリには、使用可能なリース・スクリプトはありません。

この問題に対する回避策はありません。

T3のブートストラップ接続はロード・バランサでキャッシュできない

プラットフォーム: すべて

外部ロード・バランサでt3プロトコルを使用する場合、WebLogic Serverによって、t3のブートストラップ接続が最初のハンドシェイクの後にキャッシュされ、そのキャッシュは接続が停止するまで使用されます。これは、Oracle WebLogic Serverのクラスタ管理のEJBおよびRMIオブジェクトのロード・バランシングに関する項で説明されている予期された動作ではありません。

データ・ソースの問題と回避策

この項では、次の問題と回避策について説明します。

リモート10.3.2以降のWLSデータ・ソースへのアクセス試行に失敗する

プラットフォーム: すべて

新しいシステム・プロパティ-Dweblogic.jdbc.remoteEnabledが、Oracle WebLogic Server 10.3.2のJDBCに追加されています。以前のリリースのWebLogic Serverとの互換性を保つために、このプロパティのデフォルト設定はtrueになっています。このプロパティがfalseに設定されている場合、リモートJDBCアクセスはオフになり、このようなアクセスによって例外が発生します。

リモート・アクセスは、アプリケーションで明示的に行われる場合と、LLR、1PCまたはEmulate XAグローバル・トランザクション・オプションで構成された非XAデータ・ソースが参加しているグローバル(XA/JTA)トランザクション中に暗黙的に行われる場合があります。例外がスローされるケースと、各ケースの回避策(存在する場合)を次に示します。

次のケースでは例外が発生します。特定のケースの回避策(存在する場合)を示します。

  • スタンドアロン・クライアント・アプリケーションで任意のタイプのデータ・ソースを使用している場合。

  • WebLogic Serverにホストされているアプリケーションが任意のタイプのデータ・ソースを使用し、データ・ソースがローカルに構成(ターゲット指定)されていない場合。可能な回避策は、データ・ソースをローカルにターゲット指定することです。

  • 同じグローバル・トランザクションの複数のWebLogic Serverインスタンスで、LLR、1PCまたはEmulate XAのトランザクション・オプションを使用して同じ名前の非XAデータ・ソースにアクセスしている場合。この場合は、可能な回避策が2つあります。

    • XAを使用するようにデータ・ソースを変更します(これによりパフォーマンスが低下することがあります)。

    • 1PC/emulateXAタイプの場合は、データ・ソースが単一のサーバーからアクセスされるようにアプリケーションを変更します。

  • トランザクション・コーディネータとは異なるサーバー上でLLRトランザクション・オプションを使用して非XAデータ・ソースにアクセスしている場合。サーバーが開始したトランザクションの場合、コーディネータの場所はトランザクションに最初に参加しているリソースに基づいて選択されます。この場合は、可能な回避策が2つあります。(a) XAを使用するようにデータ・ソースを変更します(これによりパフォーマンスが低下することがあります)。(b)『Oracle Fusion Middleware Oracle WebLogic Server JTAのプログラミング』のLLRでのパフォーマンスの最適化に関する項の説明に従って、データ・ソースがトランザクション・コーディネータでアクセスされるようにアプリケーションを変更します。後者の方法は使用できない場合があります。たとえば、MDBアプリケーションがリモートWebLogic JMSサーバーからメッセージを受信する場合、トランザクション・コーディネータは常にJMSサーバーをホストしているWebLogicサーバーになりますが、MDBアプリケーションを同じWebLogicサーバーに移動できないことがあります。

    • XAを使用するようにデータ・ソースを変更します(これによりパフォーマンスが低下することがあります)。

    • Oracle WebLogic ServerのJTAアプリケーションの開発のLLRでのパフォーマンスの最適化に関する項の説明に従って、トランザクション・コーディネータでデータ・ソースがアクセスされるようにアプリケーションを変更します。この回避策は、場合によっては使用できないことがあります。たとえば、MDBアプリケーションがリモートWebLogic JMSサーバーからメッセージを受信する場合、トランザクション・コーディネータが常にJMSサーバーをホストしているWebLogicサーバー・インスタンスになりますが、MDBアプリケーションを同じWebLogicサーバー・インスタンスに移動できないことがあります。

詳細は、Oracle WebLogic ServerのJDBCアプリケーションの開発のWebLogic RMIドライバのセキュリティの考慮事項に関する項を参照してください。

複数のOracle RACノードを使用するように構成された
SOAサーバーでORA-01591エラーが発生する

プラットフォーム: Linux

複数のOracle RACデータベース・ノードを使用しているSOAサーバーでは、XAおよびロード・バランシングにWebLogic Serverの複数データ・ソースが構成されている場合に、ORA-10591エラーが発生することがあります。

回避策

Linux x86、Oracleリリース11.1.0.7.0用のOracle RACデータベース・パッチ7675269をダウンロードして適用します。このパッチはMy Oracle Supportからダウンロードできます。または、パッチ7675269を含むLinux x86、Oracleリリース11.1.0.7.0用のパッチ・セット9007079をダウンロードして適用することもできます。

非XAコミットのためJDBC接続の解放が遅い

プラットフォーム: すべて

非XA接続では、接続のクローズ時に自動コミットがfalse状態にある場合は、setAutoCommit(true)がコールされます。これにより、未処理のローカル・トランザクションは自動的にコミットされるはずですが、一部のドライバはJDBCの仕様に準拠していないためトランザクションは開かれたままです。アプリケーションによって、接続のクローズ前にローカル・トランザクションが完了(コミットまたはロールバック)されていない場合、接続はプールに返され、未処理の作業は完了することがないか、その接続の次回予約によってコミットまたはロールバックされる可能性があります。これが起こるのを防ぐために、WebLogicデータ・ソースでは、接続がプールに返される際にコミットがコールされます。詳細は、『Oracle WebLogic Server JDBCデータ・ソースの管理』の接続クローズ時のローカル・トランザクションの完了に関する項を参照してください。

回避策

これは、ドライバがsetAutoCommit(true)でローカル・トランザクションを自動コミットするか、アプリケーション・コードがクローズをコールする前に常にトランザクションを完了することがわかっている場合は、システム・プロパティにweblogic.datasource.endLocalTxOnNonXaConWithCommit=falseを設定することで修正可能なパフォーマンス・リグレッションです。

デプロイメントの問題と回避策

この項では、次の問題と回避策について説明します。

weblogic-application.xmlでsecurity-permission要素を使用できない

プラットフォーム: すべて

security-permission要素は、weblogic.xmlおよびweblogic-ejb-jar.xmlデプロイメント記述子では使用できますが、weblogic-application.xml記述子では使用できません。したがって、エンタープライズ・アプリケーションでは、セキュリティ・ポリシーはEJBまたはWebアプリケーションのJARファイルにしか適用できません。

無関係な文字列値がファイル仕様として解釈される

プラットフォーム: すべて

weblogic.Deployerツールでは、コマンド・ライン引数の間にある無関係な文字列値がファイル仕様として解釈されます。たとえば、次のコマンドを入力したとします。

java weblogic.Deployer -activate -nostage true -name myname -source c:\myapp\mymodule

この場合、-nostageオプションは引数をとらないため、trueは無関係な文字列値です。ツールは、trueという名前のファイル仕様をアクティブにしようとします。

restoreメソッドがプラン・オーバーライドでDConfig Beanを更新しない

プラットフォーム: すべて

restoreメソッドは、DConfig Beanをプラン・オーバーライドで正しく更新しません。たとえば、次のステップを実行するとします。

  DeployableObject dObject =
     WebLogicDeployableObject.createDeployableObject(new File(appName));
  DeploymentConfiguration dConfig =
     WebLogicDeploymentManager.createConfiguration(dObject);
  dConfig.restore(new FileInputStream(new File(plan)));

この場合、プランはDConfig Beanを正しくオーバーライドしません。

回避策

アプリケーションの構成を初期化する際にプランを指定します。次に例を示します。

    helper = SessionHelper.getInstance(
        SessionHelper.getDisconnectedDeploymentManager());
    helper.setApplication(app);
    helper.setPlan(new File(plan));
    helper.initializeConfiguration();

大きなアプリケーション・ファイルがデプロイされるときにデプロイメント・タスクが失敗する

プラットフォーム: すべて

uploadオプションを使用して大きなアプリケーション・ファイルがデプロイされる場合、デプロイメント・タスクは次のエラーで失敗します。

java.lang.OutOfMemoryError: Java heap space

この問題を解決するために、新しいシステム・プロパティweblogic.deploy.UploadLargeFileが追加されました。この問題が発生する場合は、このフラグを、デプロイメント・クライアントの起動に使用するjavaコマンドに含めます。

WebLogic Serverパッチ・リリース9.2 MP2、9.2 MP3、10.0 MP1、10.0 M2、10.3、10.3.1、10.3.2または10.3.3を使用する場合、このフラグは必要ありません。

アプリケーションが別のソース・ファイルの場所を使用してデプロイされている場合、
アプリケーションの再デプロイの試行に失敗する

プラットフォーム: Linux

最初にあるソース・ファイルの場所を使用してアプリケーションをデプロイし、ソース・ファイルの新しい場所を使用してアプリケーションを再デプロイしようとした場合、デプロイメントは次の例外で失敗します。

New source location <new_source_file_path> cannot be configured deployed to 
configured application, <application_name>. The application source is at 
original_source_file_path. Changing the source location is not allowed for a 
previously attempted deployment. Try deploying without specifying the source.

これは、WebLogic Serverのデプロイメント制限が原因です。デプロイメントのソース・ファイルを指定した後、それを再デプロイメントで変更することはできません。

回避策

新しいソース・ファイルの場所を使用して再デプロイを試行する前に、アプリケーションをアンデプロイします。

デプロイメント・プランを使用してワーク・マネージャ・コンポーネントを作成する際に
Munger:2156217エラーが発生する

プラットフォーム: すべて

管理コンソールを使用して、デプロイされたアプリケーションのためにワーク・マネージャ・コンポーネントを作成する場合は、デプロイメント・プランの適用時にWebLogic ServerでMunger:2156217エラーが表示されます。

このエラーは次の状況下で発生します。

  1. Webアプリケーションをデプロイします。

  2. 管理コンソールを使用して、「構成」→「ワークロード」ページ上のアプリケーションを開きます。

  3. 新しいワーク・マネージャを作成します。

  4. ワーク・マネージャを開きます。

  5. レスポンス時間リクエスト・クラスを入力して、新しいワーク・マネージャ・コンポーネントを作成します。

  6. 「終了」をクリックします。

    ページが空になり、管理コンソールにMunger:2156217エラーが表示されます。

回避策

デプロイメント・プランのXMLファイルを変更し、追加したワーク・マネージャ用のxpath要素を変更します。

次からxpathを変更します。

<xpath>/weblogic-web-app/work-manager/[name="WorkManager-0"]/response-time-request-class/[name="ResponseTimeReqClass-0"]/name</xpath> 

変更後

<xpath>/weblogic-web-app/work-manager/[name="WorkManager-0"]/response-time-request-class[name="ResponseTimeReqClass-0"]/name</xpath> 

開発者の操作性の問題と回避策

この項では、次の問題と回避策について説明します。

ユーザーはPub-SubモジュールのためのAppcの使用時にBEA_HOMEシステム・プロパティを設定する必要がある

プラットフォーム: すべて

同期プラグインを使用してローカル・リポジトリにWebLogic Server Maveアーティファクトをインストールした後、appc Mavenプラグインを使用した際にエラーが発生します。

回避策

WebLogic Serverのpub-subライブラリは、コンパイラ問題の解決をBEA_HOMEシステム・プロパティに依存しています。コンパイルのためにpub-subアプリケーションでappcを実行する際に、BEA_HOMEシステム・プロパティを設定し、これらの依存関係を解決します。

weblogic-maven-plugin appcゴールのverbosejavacパラメータ・ケースが正しくない

プラットフォーム: すべて

weblogic-maven-plugin appcゴールの、verbosejavacパラメータの大/小文字が正しくありません。verbosejavacではなくverboseJavacである必要があります。式が誤ってverbosejavacだったため、-DverboseJavac=trueを指定してコマンド・ラインからverboseJavacパラメータに値を渡そうとしましたが失敗しました。

回避策

コマンド・ラインから-Dverbosejavac=trueを使用します。

EJBの問題と回避策

この項では、次の問題と回避策について説明します。

Oracle表の主キーがCHARになる

プラットフォーム: すべて

Oracle表の主キーはCHARですが、SQL表の問合せフィールドはVARCHAR2です。

回避策

データベース・スキーマをCHARからVARCHAR2に変更してください。Oracleデータベースで、主キーとしてCHARを使用することはお薦めできません。

クラスタ化可能なタイマーの作成を有効にするために使用可能なアノテーションがない

プラットフォーム: すべて

EJB3 BeanおよびEjbgenに、クラスタ化可能なタイマーを作成するためのアノテーションがありません。

回避策

weblogic-ejb-jar.xmlファイルを作成し、これに<timer-implementation>要素および対応する値を記入してください。

KodoのMappingToolでスキーマを生成できない

プラットフォーム: すべて

Kodoの MappingTool は、主キーでBLOBを使用しているクラスのスキーマを生成することができません。BLOBを主キーに使用することはできますが、スキーマは手動で定義する必要があります。ただし、JDOおよびJPA仕様では、主キーでBLOB列をサポートすることは必須ではありません。

JPAメタデータ・モデルに対する拡張はアノテーションを介してのみ指定できる

プラットフォーム: すべて

JPAメタデータ・モデルの拡張は、アノテーションでしか指定できず、仕様に定義されている orm.xml のような構造体では指定できません。

回避策

オブジェクト・モデルにKodo固有のメタデータを指定する方法としては以下があります。

  • Kodo固有のアノテーションを使用するか、または

  • XMLベースのメタデータをJDOメタデータ形式に変換します(拡張のXML仕様はサポートされません)。

ルックアップ・メソッドの注入がSpringでサポートされない

プラットフォーム: すべて

WebLogic Spring注入拡張モデルでは、ルック・アップ・メソッドの注入をサポートしていません。

管理対象の環境でJDO PersistenceManagerFactoryを
デシリアライズするとエラーが発生することがある

プラットフォーム: すべて

管理対象の環境でJDO PersistenceManagerFactoryをデシリアライズするとエラーが発生する可能性があります。例外にはjavax.jdo.PersistenceManagerFactoryClassプロパティがないことが示されています。管理対象の環境では通常、PersistenceManagerFactoryをシリアライズする必要はありません。

スキーマの作成時に索引が作成されないことがある

プラットフォーム: すべて

クラス・レベルで宣言された索引は、スキーマの作成時に作成されないことがあります。

回避策

スキーマ生成ツールの実行後に、索引を手動で作成します。

@Idフィールドに@Uniqueアノテーションも付いている場合にOpenJPAが例外をスローする

プラットフォーム: すべて

一部のデータベースで@Idフィールドに@Uniqueアノテーションも付いている場合、OpenJPAが例外をスローします。データベースの主キーは本質的にユニークです。一部のデータベースでは、列に対してユニークな索引を作成することで、この性質を実装しています。

回避策

1つのフィールドに対して@Id@Uniqueの両方を指定しないでください。

キャッシュのヒットとミスの数が予想外に増える

プラットフォーム: すべて

バージョン・データのないエンティティを操作すると、キャッシュのヒットとミスの数が予想外に増えることがあります。EntityManagerが終了し、含まれているすべてのエンティティがデタッチされるときに、余分なキャッシュ・アクセスが行われます。バージョン・フィールドのないエンティティは、システムからはバージョン・データがないように見え、システムはデタッチ前にそれらのバージョンをキャッシュでチェックすることで応答します。

回避策

バージョン・フィールドまたはその他のバージョン戦略があるエンティティは、余分なキャッシュ・アクセスの原因になりません。

Open JPAは表が存在する場合でも表を作成しようとする

プラットフォーム: すべて

MySQLデータベースを使用していて、OpenJPAが実行時にマッピング・ツールを自動的に実行するように構成され、デフォルト・スキーマに次のような表を作成する場合:

<property name='openjpa.jdbc.SynchronizeMappings' value='buildSchema'/>
<property name='openjpa.jdbc.Schema' value='MySQL database name' />

OpenJPAは、表がデータベースにすでに存在する場合でも表を作成しようとします。表がすでに存在することを示すPersistenceException例外がスローされて、表作成文が失敗します。

回避策

この問題を回避するには、MySQLデータベースを使用する場合、実行時にマッピング・ツールを自動的に実行するようにOpenJPAを構成しないでください。また、デフォルト・スキーマを指定してください。

シリアライゼーション中にEJBアプリケーションが失敗する

プラットフォーム: すべて

エンティティが(Externalizableではなく)Serializableであり、writeObject()メソッドを宣言していない場合、IIOPを使用し、JPAエンティティをサーバーからクライアントに送信するEJBアプリケーションで、シリアライゼーション中にエラーが発生します。

回避策

そのようなエンティティ・クラスにはwriteObject()メソッドを追加してください。書込みオブジェクトは次のようになります。

private void
writeObject(java.io.ObjectOutputStream out)
   throws IOException {
  out.defaultWriteObject();
}

非トランザクション・メッセージドリブンBeanコンテナは、
外部トピックの再現可能な動作を提供できない

プラットフォーム: すべて

外部トピック(非WebLogic) JMSを指定する非トランザクション・トピック・メッセージドリブンBean (MDB)にマルチスレッド処理を使用している場合、MDBコンテナは再現可能な動作を提供できないことがあります。たとえば、onmessage()メソッドでruntimeExceptionがスローされた場合も、コンテナがメッセージを確認応答することがあります。

回避策

デプロイメント記述子でmax-beans-in-free-pool属性を1に設定します。

例の問題と回避策

このリリースのWebLogic Serverには、例に関する既知の問題はありません。

HTTP Publish/Subscribeサーバーの問題と回避策

この項では、次の問題と回避策について説明します。

ローカル・クライアントの認証と認可がサポートされない

プラットフォーム: すべて

HTTP Publish/Subscribeサーバーはローカル・クライアントの認証と認可をサポートしていません。ローカル・クライアントにはHTTP Publish/Subscribeサーバーのチャネルを操作する完全な権限があります。つまり、ローカル・クライアントは、チャネルの作成と削除、チャネルからのイベントのパブリッシュとサブスクライブを行えます。

ローカル・クライアントによってパブリッシュされたイベント・メッセージにフィルタが適用されない

プラットフォーム: すべて

ローカル・クライアントがチャネルにパブリッシュしたイベント・メッセージが、そのチャネルに構成されているメッセージ・フィルタで処理されません。

インストールの問題と回避策

この項では、次の問題と回避策について説明します。

インストールが致命的なエラーで失敗する

プラットフォーム: すべてのUNIX

インストーラでは、インストールの完了前にマシンに十分なディスク領域があるかどうかは確認されません。そのため、領域不足によりインストールを完了できない場合、次のエラー・メッセージが表示され、インストーラが終了します。

Fatal error encountered during file installation. The installer will now
cleanup and exit!

回避策

この問題が発生した場合、次のコマンドを使用してインストーラを再起動します。

server103_linux32.bin -log=log.out -log_priority=debug

このコマンドによりインストール手順のログが生成され、正確な失敗の原因が詳細に示されます。領域不足が原因であれば、ログ・ファイルにそれが明示的に示されています。

Java EEの問題と回避策

この項では、次の問題と回避策について説明します。

FastSwapによってフィールドとメソッドのアクセス修飾子が緩和される可能性がある

プラットフォーム: すべて

FastSwapによってフィールドとメソッドのアクセス修飾子が緩和される可能性があります。privateとprotectedのメンバーは実行時にpublicになる可能性があります。そのためにリフレクションの動作が変わり、Strutsのようなリフレクションに基づくフレームワークが影響を受ける可能性があります。

FastSwapでエンティティBeanとejbClassの再定義がサポートされない

プラットフォーム: すべて

FastSwapは、エンティティBeanとejbClass(セッション/MDB)の再定義をサポートしません。したがって、エンティティ・クラスを更新すると、再定義エラーが発生します。

回避策

エンティティ・クラスの更新後に、アプリケーションを再デプロイします。

EARファイルに複数のJARがある場合に
クラスパス順序が保証されない

プラットフォーム: すべて

個別のJARファイルを含むEARファイルがあり、そのJARファイルの2つ以上に同じ名前のクラスがある場合、WebLogic ServerがどのJARファイルからクラスをインスタンス化するかは予測できません。これは、クラスが同じ場合には問題になりませんが、異なる実装がある場合には結果を予想できません。

回避策

現在、この問題に対する既知の回避策はありません。

CDIの使用時にFastSwapがサポートされない

プラットフォーム: すべて

CDIの使用時にFastSwapはサポートされません。FastSwapを有効にして展開形式でアプリケーションをデプロイすると、デプロイに失敗し、CDIに関連するエラーが発生します。

JDKの問題と回避策

この項では、次の問題と回避策について説明します。

WebLogic Server 12.1.2サーバー・アプリケーションの実行ではOracle JRockitはサポートされていない

プラットフォーム: すべて

Oracle WebLogic Server 12.1.2は、サーバー・アプリケーションの実行のためにJDK 7を、およびWebLogic Server 12.1.2サーバーに接続するWebLogic Server 12.1.2クライアントのためにJDK 6およびJDK 7をサポートしています。Oracle JRockitは、WebLogic Server 12.1.2サーバー・アプリケーションの実行ではサポートされていません。詳細は、Oracle WebLogic Serverの新機能のサポートされている構成に関する項を参照してください。

JMSの問題と回避策

この項では、次の問題と回避策について説明します。

デプロイメント記述子の検証に失敗する

プラットフォーム: すべて

記述子の検証が有効になっていると、デプロイメント記述子の検証に失敗し、EARファイルにJMSモジュールのみが格納されます。

回避策

EARに、J2EE仕様に準拠したモジュールが少なくとも1つ含まれていることを確認してください。

複数のプロデューサが同じクライアントSAFインスタンスを使用する場合の例外

プラットフォーム: すべて

複数のJMSプロデューサが単一のJVM内で同じJMSクライアントSAFインスタンスを使用している場合、JMS SAFクライアントが作成されるタイミングによっては、次の例外がスローされることがあります。

Error getting GXA resource [Root exception is weblogic.jms.common.JMSException:
weblogic.messaging.kernel.KernelException: Error getting GXA resource]

回避策

複数のJMS SAFクライアント・プロデューサを使用する場合は、各クライアントの新規作成のタイミングを少しずらすようにしてください。

ストア・ファイルとディレクトリ名でマルチバイト文字がサポートされない

プラットフォーム: すべて

WebLogicストアのファイルおよびディレクトリの名前には、マルチ・バイト文字を使用することはできません。たとえば、WebLogic Server名にマルチ・バイト文字を使用すると、デフォルト・ストアを作成できず、WebLogic Serverを起動できません。

回避策

パス名にマルチ・バイト文字を使用せずにWebLogic Serverインスタンスを作成し、デフォルト・ストア構成にそのパス名を使用します。WebLogic Server名にマルチ・バイト文字を使用しないようにしてください。

NFSでファイル・ストアを使用している場合にWebLogic Serverのテストが突然失敗する

プラットフォーム: すべて

NFS搭載のディレクトリにJMSメッセージとトランザクション・ログが格納されている場合、マシンが不意に障害したら、サーバーの再起動の動作を検証することをお薦めします。NFS実装に応じて、フェイルオーバー/再起動後、様々な問題が発生する可能性があります。詳細は、6.3項「NFSでファイル・ストアを使用している場合にWebLogic Serverのテストが突然失敗する」を参照してください。

サービスの移行後にJMSメッセージ・コンシューマが再接続しないことがある

プラットフォーム: すべて

アプリケーションのWLConnection.getReconnectPolicy()属性がallに設定されていると、サービスの移行後にJMSメッセージ・コンシューマを再接続できないことがあります。コンシューマが移行されていないと、例外がスローされるか、コンシューマが有効でなくなったことをアプリケーションに通知するonExceptionが発生します。

回避策

アプリケーションで、例外ハンドラまたはonExceptionを使用してコンシューマを更新できます。

夏時間調整の変更後にAQ JMSデキューが失敗する

プラットフォーム: すべて

ExadataDatabase 11.2.0.3の使用時の、夏時間(DST)の変更後に、Oracle Advanced Queueing (AQ) JMSがメッセージを受け取る際に、次のエラーでデキューが失敗しました: JMS-120: デキューが失敗しました。これは、java.sql.SQLDataException: ORA-01878: 指定されたフィールドが日時または間隔で見つかりませんによって引き起こされます。

これは、一部のメッセージドリブンBean (MDB)アプリケーションで、DSTの変更後に起こります。また、メッセージを受け取っている他のAQ JMSでも起こる可能性があります。

回避策

WebLogic ServerでAQ JMS問題を解決するには、ExadataDatabase 11.2.0.3のためのパッチ13880758をダウンロードして適用します。このパッチはMy Oracle Supportからダウンロードできます。

カスタム・ドメイン・テンプレートのアップグレードは、トピック・メッセージの損失またはサーバー・メモリーの枯渇をもたらす可能性がある

プラットフォーム: すべて

WebLogic Server 12.1.2以降は、構成ウィザードでのJMSサーバーおよびWebLogicストア・ターゲット指定は変更されています。

12.1.2では、構成ウィザードは、これらのオブジェクトがドメイン・テンプレート内の管理対象サーバーまたはクラスタを明示的に対象にしない場合に、移行可能なターゲットへのJMSサーバーおよびWebLogicストアを自動的に対象とします。移行可能なターゲットの使用は、JMSシステムのための高可用性を可能にするベスト・プラクティスです。

カスタム・ドメイン・テンプレートを使用してWebLogic Server 12.1.2でドメインを作成し、そのテンプレートに、管理対象サーバーまたはクラスタを明示的に対象としないJMSサーバーおよびWebLogicストアが含まれる場合、ターゲット指定の結果は、前のリリースとは異なります。

動作のこの変更により、generate-unique-client-id拡張を可能にするメッセージドリブンbean (MDB)のための永続トピック・サブスクリプションへの変更も生じます。WebLogic Serverは、MDBなどのための永続トピック・サブスクリプションを作成する際に、移行可能ターゲット名を含めるようサブスクリプション名を変更します。元のサブスクリプション名の下に格納されるメッセージは、MDBには配信されません。また、元のサブスクリプションは、新しいメッセージの累積を継続します。

アップグレードの計画時は、次の重要な変化に注意してください。

  • Oracle WebLogic Serverのアップグレードの指示に従い、再構成ウィザードを使用して12.1.2より前の既存のドメインを再構成する場合、構成および永続トピック・サブスクリプションは変更されないままとなります。

  • 前述のようにカスタム・テンプレートを使用してドメインを再生成する場合、結果となる構成は前のリリースとは異なり、システムの起動時に新しい永続トピック・サブスクリプションが作成されます。ただし、古い永続トピック・サブスクリプションは残ります。それらのサブスクリプションには、メッセージの累積を継続し、サーバー・メモリーを枯渇させる、未処理のメッセージが含まれる可能性があります。

回避策

次のいずれかの推奨回避策を選択してください。

  • 再構成ウィザードを使用して、適切な位置にドメインをアップグレードします。

  • ドメイン構成をアップグレードまたは再生成する前に、メッセージを排出します。アップグレードしたら、WebLogic Server管理コンソールを使用して、古いJMSサブスクリプションを検索して削除します。

  • JMSファイル・ストア・ファイルまたはJMS JDBCストア表を削除します。ファイルまたは表で維持されるすべてのメッセージが削除されることに注意してください。

構成ウィザードは、混在する動的クラスタへのブリッジのターゲット指定を可能にする

プラットフォーム: すべて

混在するか動的なクラスタへのメッセージング・ブリッジのターゲット指定はサポートされていません。これを試みているときに例外は発生しません。

JNDIの問題と回避策

このリリースのWebLogic Serverには、JNDIの既知の問題はありません。

JTAの問題と回避策

このリリースのWebLogic Serverには、JTAの既知の問題はありません。

Java仮想マシン(JVM)の問題と回避策

この項では、次の問題と回避策について説明します。

1.4シン・クライアント・アプレットがWebLogic Serverと通信できない

プラットフォーム: すべて

Sun Microsystems VMの既知のバグ(513552)により、1.4シン・クライアント・アプレットはWebLogic Server 9.0以降と通信できません。これは、クライアントとサーバーの接続間でVMが正しく区別されないことが原因です。VMは、サーバー・タイプ接続を作成し、それをキャッシュします。次に、クライアント・タイプ接続の確立を試行し、キャッシュされた接続を探してそれを使用しようとしますが、クライアントはサーバー接続の使用を許可されないため、エラーが発生します。

一部のプロセッサで実行されているアプリケーションで
時間の問題が断続的に発生することがある

プラットフォーム: RedHat Linux

RedHat (RH) Linux上で実行され、直接的または間接的にシステム時間の呼出しを使用するアプリケーションにおいて、ClockSourcetsc (デフォルト)に設定されている場合に、時間の問題が断続的に発生する可能性があります。標準のPOSIX C gettimeofday()を呼び出した結果、Java System.currentTimeMillis()java.util.Date()も呼び出されると、シングル・スレッド・アプリケーションの場合でも、将来に約4400秒の値が断続的に返される可能性があります。

この問題はWebLogicやJavaに固有の問題ではなく、RH Linux上で実行されるどのアプリケーションにも当てはまります。この問題が発生するのは、標準Java、または時間ベースのアプリケーション・サーバー・サービスを使用して、時間の呼出しを明示的に行うアプリケーションです。

考えられる症状としては、トランザクションの早過ぎるタイムアウト、JMSメッセージの予期しない期限切れ、タイマーの不適切なスケジューリングなどが挙げられますが、これだけに限りません。

https://bugzilla.redhat.com/show_bug.cgi?id=452185を参照してください。この問題はRedHat 5.3で修正されました。

長い配列のコピーを実行しているときに、JRockit JVMがフリーズしたように見える

プラットフォーム: Linux

無制限のフォワード・ローリングの一部として長い配列のコピーを実行しているときに、JRockit JVMがフリーズしたように見えます。この状況は、Out Of Memory条件により複数のサーバーが再起動した場合に発生することがあります。

回避策

サーバーの起動時に、次のJRockit JVMフラグを指定します。

 -XXrollforwardretrylimit:-1

シリアル・バージョンUIDの不一致

プラットフォーム: Linux

シリアル・バージョンUIDの不一致の問題は、最新のJVMにアプリケーションをデプロイし、以前のサービス・リリースのIBM Java 6 JDKでコンパイルした場合に発生します。

回避策

以前にコンパイルしたアプリケーションのシリアライゼーションと互換にするには、WL_HOME/common/bin/commEnv.shファイルを変更して、次のコマンドを含めます。

JAVA_OPTIONS="$JAVA_OPTIONS 
-Dcom.sun.xml.namespace.QName.useCompatibleSerialVersionUID=1.0"

または、次のコマンド・ライン・オプションを使用できます。

export IBM_JAVA_OPTIONS=
"-Dcom.sun.xml.namespace.QName.useCompatibleSerialVersionUID=1.0"

以前にコンパイルしたアプリケーションとともに新しいアプリケーションをデプロイする場合は、必要に応じて再コンパイルし、同じシリアル・バージョンUIDを持つようにする必要があります。

JVMスタックのオーバーフロー

プラットフォーム: Linux

WebLogic Serverの実行中に、JVMスタックのオーバーフロー・エラーまたは例外が発生することがあります。この問題は、AMD64および64ビットXeonプラットフォーム上のOracle Enterprise Linux 4、5、5.1で発生します。

回避策

スタック・サイズをデフォルトの128kから256kに増やします。

AWTライブラリを使用するとJVMがクラッシュすることがある

プラットフォーム: Linux x86

AWTやjavax.swing(多くの場合、AWTに委任されます)などのGUIライブラリを使用している場合に、JVMクラッシュが発生することがあります。

回避策

次のフラグを使用してサーバーを起動します。

-Djava.awt.headless=true

シリアル・バージョンUIDの不一致

プラットフォーム: Linux、AIX

シリアル・バージョンUIDの不一致の問題は、最新のJVMにアプリケーションをデプロイし、以前のサービス・リリースのIBM Java 6 JDKでコンパイルした場合に発生します。

回避策

以前にコンパイルしたアプリケーションのシリアライゼーションと互換にするには、WL_HOME/common/bin/commEnv.shファイルを変更して、次のコマンドを含めます。

JAVA_OPTIONS="$JAVA_OPTIONS  -Dcom.sun.xml.namespace.QName.useCompatibleSerialVersionUID=1.0"

または、適切なLinuxまたはAIXコマンド・ライン・オプションを使用できます。

AIX:

export IBM_JAVA_OPTIONS="-Dcom.sun.xml.namespace.QName.useCompatibleSerialVersionUID=1.0"

Linux:

export JAVA_OPTIONS="-Dcom.sun.xml.namespace.QName.useCompatibleSerialVersionUID=1.0"

以前にコンパイルしたアプリケーションとともに新しいアプリケーションをデプロイする場合は、必要に応じて再コンパイルし、同じシリアル・バージョンUIDを持つようにする必要があります。

モニタリングの問題と回避策

この項では、次の問題と回避策について説明します。

明示的に@unharvestableとマークされていない
MBean属性が収集可能として表示される

プラットフォーム: すべて

@unharvestableタグはインタフェース・レベルで適用されません。MBean属性が明示的に@unharvestableとマークされていない場合は収集可能と見なされ、WebLogic管理コンソールにも収集可能と表示されます。

回避策

MBean属性を明示的に@unharvestableとマークできます。

曖昧な監視ルールのObjectNameパターンに関する問題

プラットフォーム: すべて

カスタムMBean ObjectNameパターンと一致する、監視ルール式のための変数でワイルドカード・パターンを指定する場合は、パターンが十分に明示的であることを確認してください。MBeanタイプ名を除外して、曖昧なインスタンス・パターンを使用する場合は、次のことが起こる可能性があります。

  • WebLogic Server実行時MBeanインスタンスのみがパターンに一致します。

  • 必要なカスタムMBeanインスタンスが無視されます。

たとえば、次のObjectNameパターンは、タイプを明示的に宣言せず、WebLogic Server実行時MBeanインスタンスと一致する可能性がある曖昧なObjectNameパターンを使用します。

${ServerRuntime//com.b*:Type=Server*,*}

回避策

混乱を避けるため、十分に明示的なObjectNameパターンを使用するか、変数式でMBeanタイプを宣言します。

HARVESTER_WMは、キュー許容量を超えたときにRuntimeExceptionを生成する可能性がある

プラットフォーム: すべて

HARVESTER_WMは、インスタンスがServerRuntime MBeanサーバーに追加されるかそこから削除されるように、新しいインスタンスをアクティブなハーベスタ構成にマップするために(またはそこから削除するために)、MBean登録イベントの処理に使用される内部ワーク・マネージャ・インスタンスです。

HARVESTER_WMは、接続/リソース・プーリングが使用されない特定のJMSストレス・シナリオで実行されているときにキュー許容量を超える場合に、RuntimeExceptionを生成する可能性があります。これらのシナリオでは、JMSは、接続イベントごとにいくつかのMBeanを作成および破棄します。また、負荷が非常に重い場合、これらは1秒当たり何百にもなる可能性があります。これは、ハーベスタに大量のMBean登録イベントの処理をもたらします。HARVESTER_WMに未指定のminThreadsConstraintがあるため、アプリケーションまたはサーバーは、内部HARVESTER_WMを窮乏させる十分な負荷の下にある可能性があり、これらのイベントを処理できるスレッドの割当てを防ぎます。大量のJMX登録イベントを作成するアプリケーションも、同様の動作を引き起こします。

これらのシナリオは、アプリケーションまたはサーバーが生成するように構成されているデバッグ・メッセージやロギングの量など、他の要因によって悪化する可能性があります。これらの要因は、長期間のシステム・スレッドの低下および妨害によって問題を大きくし、窮乏の問題を悪化させる可能性があります。

回避策

いくつかの回避策が考えられます。本番ではデフォルトで有効にされるWLDFビルドイン・システム・リソースなど、任意のWLDFハーベスタ構成を無効にできます。別のオプションは、妥当および/または可能な場合の、実行されているロギングの量の縮小です。最後に、JMS接続プーリングを使用してアプリケーションを構成できます。詳細は、Oracle WebLogic Server診断フレームワークの構成と使用のハーベスタ・パフォーマンスの考慮事項に関する項を参照してください。

WebLogic Serverのロギングでデッドロックが起こる可能性がある

プラットフォーム: すべて

次のような条件下で、WebLogic Serverでデッドロックが起こる可能性があります。

  • stdoutが、サーバーのログにリダイレクトされます。

  • 起動時のサーバー・ログのローテーションが無効です。

  • サーバー・ログ/stdoutへの大量のロギングがあります。

回避策

WebLogic Serverが前述の条件下でデッドロックに入る場合、状況は、サーバーのコマンド・ラインで次を使用して起動時にログ・ローテーションを可能にし、サーバーを再起動することで解決される可能性があります。

-Dweblogic.log.RotateLogOnStartup=true

また、サーバーのLogMBeanRotateLogOnStartupプロパティを設定することで構成される可能性があります。これは、次のようにWLSTを使用して行うことができます。

edit()
startEdit() 
cd('/Servers/yourserver/Log/yourserver') 
cmo.setRotateLogOnStartup(true) 
save() 
activate()

注: 「yourserver」を、ご使用の管理対象サーバーの名前と置き換えます。

ノード・マネージャの問題と回避策

この項では、ノード・マネージャに関する次の問題と回避策について説明します。

プライマリ・インタフェースの削除がサーバーの移行時にエラーを引き起こす

プラットフォーム: Linux

一部の特定のLinuxプラットフォームおよびバージョンでは、仮想インタフェース/エイリアスを動的に削除する問題があります。インタフェースのプライマリ・アドレスである仮想インタフェースの削除は、同時に他のセカンダリ仮想IPアドレスの削除をもたらす可能性があります。これは、サーバーの移行時にノード・マネージャでのランダムな例外を引き起こす可能性があります。この問題が発生した場合は、移行後にサーバーを停止する際に、ノード・マネージャのログ・ファイルで例外が検出されることがあります。たとえば、次のようなエラーを受け取る場合があります。

java.io.IOException: コマンド '/<PATH to DOMAIN>/bin/server_migration/wlsifconfig.sh -removeif -IPv4 eth0 X.X.X.Xが失敗出口コード'1'を返しました

ここに問題の例を示します。

最初に、3つの仮想インタフェースを追加します(最初の1つがプライマリになります)。

$ sudo /sbin/ifconfig eth0:4 X.X.X.178 netmask 255.255.248.0
$ sudo /sbin/ifconfig eth0:5 X.X.X.179 netmask 255.255.248.0
$ sudo /sbin/ifconfig eth0:6 X.X.X.180 netmask 255.255.248.0
$ sudo /sbin/ifconfig eth0:4 down

プライマリ(リスト内の最初の1つ)を削除すると、他の2つは、同時に自動的に削除されます。

回避策

この問題を一時的に修正するには、次のコマンドを使用して、ネットワーク・インタフェース上でpromote_secondariesフラグを有効にします。eth0を実際のインタフェース名に置き換えます。

$ sudo /sbin/sysctl net.ipv4.conf.eth0.promote_secondaries=1

また、次のコマンドを使用して、すべてのインタフェースのデフォルト設定を更新することもできます。

$ sudo /sbin/sysctl net.ipv4.conf.all.promote_secondaries=1

これが有効になっており、インタフェースのプライマリ・アドレスが削除される場合は、セカンダリ・インタフェースが、プライマリ・インタフェースになるようアップグレードされます。デフォルトでは、プライマリ・インタフェースの削除時にはすべてのセカンダリ・インタフェースがパージされます。

サーバーの再起動後にこの問題を永久的に処置するには、sysctl.confファイルを更新します。次に例を示します。

$ echo "net.ipv4.conf.eth0.promote_secondaries=1" >> /etc/sysctl.conf

Javaコマンドを使用してサーバーを起動する際にノード・マネージャが-D64を示さない

プラットフォーム: Solaris on x86-64、SPARC 64およびHPUX IA64

起動スクリプトを使用してサーバーを起動するノード・マネージャとJavaコマンドを使用してサーバーを起動するノード・マネージャの間には基本的な違いがあります。起動スクリプトを使用する場合は、プラットフォームを検出する一部のスクリプト言語に基づいて-d64フラグが追加されます。Javaコマンドを使用してサーバーを起動する場合、ノード・マネージャはこのフラグを追加しません。

回避策

ノード・マネージャを使用してJavaコマンドを介してサーバーを起動する場合は、ServerStart引数フィールドで-d64などの引数を指定します。

Oracle HTTP ServerのインスタンスがUNKNOWN状態で開始する

プラットフォーム: すべて

まれなケースでは、WebLogic Serverによって管理されるOracle HTTP Server (OHS)インスタンスが、状態UNKNOWNで開始される場合があります。これは、管理サーバーがOHSインスタンスの状態を初期化できない場合に起こる可能性があります。たとえば、OHSインスタンスの作成時にノード・マネージャが実行されていない場合や、ノード・マネージャに直接接続しており、最初に状態を確認する際に管理サーバーをバイパスする場合などです。

回避策

管理サーバーの使用を続行します。OHSインスタンスの状態が正しく初期化される必要があります。

操作および管理の問題と回避策

このリリースのWebLogic Serverには、操作および管理の既知の問題はありません。

Oracle Kodoの問題と回避策

この項では、Oracle Kodoの次の問題と回避策について説明します。

空のバイト配列フィールドに対して取得した値がNULLになる

プラットフォーム: MS Windows 2000

エンティティ内の空のバイト配列フィールドをSybaseまたはOracleデータベースに永続化しようとすると、値がバイトではなくNULLとして格納されます。その結果、値を取得したときにNULLが返されます。

これはSybaseおよびOracleドライバの制限であり、データベースに格納するときに空のバイト配列がNULLに変換されます。この問題はWebLogic JDBCドライバとSybaseおよびOracle独自のドライバで発生します。

プラグインの問題と回避策

この項では、様々なWebLogic Serverプラグインの次の問題について説明します。

IISプラグインを使用している場合にapr_socket_connection例外が発生する

プラットフォーム: すべて

次の状況では、IISプラグインが動作しないことがあり、apr_socket_connectionエラーが発生します。

  1. IISとWebLogic Serverの両方のインスタンスが同じマシンにある場合。

  2. マシンでIPv6が有効になっていて、マシンがIPv6環境にない場合(つまり、IPv6インタフェースが有効になっているが動作していない場合)。

  3. WebLogic Serverインスタンスのリスニング・アドレスが単純なホスト名に設定されている場合。

  4. ディレクティブWebLogicHostまたはWebLogicClusterがIISインスタンスに対して単純なホスト名に設定されている場合。

管理対象サーバーによる書込み保護されたドメインの調査に失敗する

プラットフォーム: すべて

イントロスペクションは失敗し、ユーザーは、書込みできないドメインを調査しようとしているときにエラーを受け取ります。

回避策

調査を実行するユーザーを許可するよう、ドメイン・ルート・ディレクトリの権限を変更します。

SYSPROPによりOVAB StudioでHTTPプロキシ処理を有効にする

プラットフォーム: すべて

Oracle Virtual Assembly Builder (OVAB) Studioでは、HTTPプロキシ処理は無効化されています。システム・プロパティを使用してHTTPプロキシ検出を有効にできます。

このシステム・プロパティは、Studioの起動を実行するごとに設定することも、abstudio.shファイルを変更して永続的に設定することもできます。

OVAB Studioの実行1回ごとにこのプロパティを設定するには、次の手順を実行します。

  1. OVAB Studioを停止します。

  2. 構成ディレクトリを削除します。

    $AB_INSTANCE/state/gui/$USER/system.12.1.2.0.0 (または相当するもの)

  3. プロパティになんらかの値(たとえば1)を設定してGUIを再起動します。

    ./abstudio.sh -J-Dovab.studio.enableHttpProxy=1

その後GUIを起動するごとにこのプロパティを定義する必要があり、そうしなければabstudio.shのプロパティ設定によって、プロキシ処理はfalseに戻されます。

HTTPプロキシ処理が常に有効になるようにプロパティを設定するには、次の手順を実行します。

  1. インスタンスのbinディレクトリのabstudio.shファイルを編集します。

  2. プロパティ設定を次のようにSYSPROPSに追加します。

    SYSPROPS="${SYSPROPS} -J-Dovab.studio.enableHttpProxy=1

enableHTTPProxy=1を設定した後で、標準Javaプロパティhttp.proxyHosthttp.proxyPortおよびhttp.nonProxyHostsを使用して、プロキシ・ホスト、ポートおよび例外を設定できます。Linuxで非標準のデスクトップ環境を使用している場合は、valuehost:porthttp_proxyプロパティの設定が必要な場合があります。

プロトコルの問題と回避策

このリリースのWebLogic Serverには、プロトコルの既知の問題はありません。

RMI-IIOPの問題と回避策

この項では、次の問題と回避策について説明します。

Ant 1.7 rmicタスクの非互換性

プラットフォーム: すべて

Antバージョン1.7 rmicタスクを呼び出すと、-vcompat flagが自動的に追加されますが、これはOracle WebLogic Serverのrmicと互換性がありません。

回避策

rmic呼出しが次の形式の場合は、次のいずれかの回避策を使用します。

rmic classname="com.bea.crmsimulation.legacyra.LegacyAdapter"
   base="${module_location}/core-legacy-ra/classes"
   classpath="${core.classes}" compiler="weblogic" />
  • stubversionを追加します

    <rmic classname="com.bea.crmsimulation.legacyra.LegacyAdapter"
       base="${module_location}/core-legacy-ra/classes"
       classpath="${core.classes}" compiler="weblogic"
       stubversion="1.2"/>
    
  • compilerフラグを削除します

    <rmic classname="com.bea.crmsimulation.legacyra.LegacyAdapter"
       base="${module_location}/core-legacy-ra/classes"
       classpath="${core.classes}"
    

セキュリティの問題と回避策

この項では、次の問題と回避策について説明します。

サービス側Kerberos認証がエラー401で失敗する

プラットフォーム: すべて

JDKバージョンがJRockit 1.60_24、1.60_28または1.60_29の場合、サービス側Kerberos認証はHTTP/1.1 Error 401 Unauthorizedで失敗します。

回避策

次のいずれかの回避策を使用します。

  • ktab.exeを使用してキータブ・ファイルを生成するかわりに、kadminなどの別のツールを使用して生成します。

  • ktab.exeを使用して適切なkvnoを手動で指定します。

JSSEベースのSSL Providerを使用している場合にBAD_MAC_RECORDエラーが発生する

プラットフォーム: すべて

WebLogic ServerがJSSEベースのSSLプロバイダを使用するように構成されている場合、SSL接続を作成しようとすると、BAD_MAC_ERRORメッセージで失敗することがあります。

回避策

JDK 7u2以上をインストールし、WebLogic Serverを再起動します。

StoreBootIdentityは、適切なサーバー・セキュリティ・ディレクトリが
存在する場合にのみ動作する

プラットフォーム: すべて

-Dweblogic.system.StoreBootIdentityオプションは、適切なサーバー・セキュリティ・ディレクトリが存在する場合にのみ機能します。このディレクトリは通常、構成ウィザードまたはアップグレード・ツールによって作成されます。

ただし、ソース・コントロール・システムにチェック・インしているドメインでは、この適切なサーバー・セキュリティ・ディレクトリがない場合があります。

SecurityServiceExceptionでブート時のエラーが発生する

プラットフォーム: すべて

WebLogic Server提供のDB2ドライバを使用してDB2データベース用のRDBMSセキュリティ・データ・ストアが構成されている場合、WebLogic ServerインスタンスでSecurityServiceExceptionにより起動時エラーが発生することがあります。

回避策

RDBMSセキュリティ・データ・ストアでDB2データベース用にAlternateId接続プロパティを使用している場合は、WebLogic Server提供のDB2ドライバを使用するときに、追加のプロパティBatchPerformanceWorkaroundtrueに設定する必要もあります。

ドメインをWLS 6.1からアップグレードした後で認証に失敗する

プラットフォーム: すべて

ドメインをWLS 6.1からアップグレードした後で、認証エラーが原因でWebLogic Serverインスタンスが起動しません。

回避策

WebLogic Serverインスタンスを適切に起動するには、アップグレード・プロセスの前か後に、WLS 6.1ドメインでシステム・ユーザー・パスワードを設定する必要があります。

InvalidParameterExceptionメッセージが生成および表示される

プラットフォーム: すべて

SAML 2.0のIDプロバイダまたはサービス・プロバイダを構成した後で、SAML 2.0サービス・メタデータ・ファイルを公開しようとすると、InvalidParameterExceptionメッセージが生成されて管理コンソールに表示される可能性があります。

回避策

WebLogic ServerインスタンスでSAML 2.0フェデレーション・サービスを構成する場合は、構成するSAMLロールで使用可能なすべてのバインディング・タイプを有効にしてください。たとえば、SAML 2.0 IDプロバイダ・サービスを構成する場合は、POST、リダイレクト、およびアーティファクト・バインディングを有効にする必要があります。SAML 2.0サービス・プロバイダ・サービスを構成する場合は、POSTおよびアーティファクト・バインディングを有効にする必要があります。また、優先バインディングを選択することもできます。

SML 2.0サービス・プロバイダ・サービスで認証とパッシブ属性の
両方を有効にするのは無効な構成である

プラットフォーム: すべて

SAML 2.0サービス・プロバイダ・サービスを構成する場合、強制認証とパッシブ属性の両方を有効にすると、WebLogic Serverが検出できない無効な構成となります。これらの属性がどちらも有効な場合に非認証ユーザーがサービス・プロバイダ・サイトでホストされるリソースにアクセスしようとすると、例外が生成され、シングル・サインオン・セッションが失敗します。

WebLogic ServerではSAMLログアウトがサポートされないため、「強制認証」属性の効果がない点に注意してください。ユーザーがIDプロバイダ・サイトですでに認証され、「強制認証」が有効な場合でも、そのユーザーは、IDプロバイダ・サイトで再認証が強制されることはありません。

これらの両方の属性を有効にすることは避けてください。

非フォーク対象VMでのWebLogicフル・クライアントの実行

プラットフォーム: すべて

fork=true属性が設定されていないAntスクリプトから起動した<java>タスクを使用するなど、WebLogicフル・クライアントが非フォーク対象VMで実行されている場合、次のエラーが発生する可能性があります。

java.lang.SecurityException: The provider self-integrity check failed.

このエラーは、RSA Crypto-Jライブラリの読込み時に自動的に実行される自己整合性チェックによって発生します。(Crypto-Jライブラリとcryptoj.jarは、wlfullclient.jarマニフェスト・クラスパスにあります。)

この自己整合性チェック・エラーは、次に示す状況のような、クライアントが非フォーク対象VMで起動され、Crypto-J APIを直接または間接的に使用する場合に発生します。

  • クライアントがCrypto-Jライブラリを直接起動します。

  • クライアントが、基盤となるクライアントSSL実装をトリガーしてCrypto-J APIを起動するT3S接続を試行する場合。

自己整合性チェックが失敗した場合、Crypto-J APIの以降の呼び出しが失敗します。

回避策

Antスクリプトから呼び出された<java>タスクでフル・クライアントを実行している場合は、fork属性を常にtrueに設定します。

自己整合性チェックの詳細は、次のURLにある『Java(tm) Cryptography Architectureでのプロバイダの実装方法』のプロバイダによる自己整合性チェックの実行方法に関する項を参照してください:

http://docs.oracle.com/javase/6/docs/technotes/guides/security/crypto/HowToImplAProvider.html#integritycheck

不十分なエントロピのマシンで
乱数ジェネレータが低速になることがある

プラットフォーム: Linux

予測不能な乱数を生成するために、SSLセキュリティ・コードはマシンの「エントロピ」に依存します。エントロピは、マウスの移動、ディスクIO、ネットワーク・トラフィックなどのアクティビティです。エントロピが最小であるか存在しない場合、乱数ジェネレータは低速になり、セキュリティ操作がタイムアウトになることがあります。これにより、セキュアな管理者チャネルを使用したドメインでの管理対象サーバーの起動などのアクティビティが混乱することがあります。この問題は、一般に起動後の一定期間に発生します。JVMで十分なエントロピが実現された後は、乱数ジェネレータがマシンの存続期間を通して十分に動作します。

詳細は、次の場所でSunバグ6202721および6521844を参照してください。

http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6202721

http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6521844

回避策

サイトがセキュリティの低下を許容できる場合はエントロピの低いシステムで非ブロック乱数ジェネレータを使用できます。そのためには、Javaプロセスを起動するコマンドに-Djava.security.egd=file:///dev/urandomスイッチまたはfile://dev/./urandomを追加します。この回避策は、純粋な乱数ではなく擬似乱数を使用するため、本番環境では使用しないでください。

RCUスキーマの作成がWebLogic Serverコンポーネント用のIBM DB2で失敗する

プラットフォーム: すべて

Oracle Fusion Middleware Repository Creation Utility (RCU)は、ターゲット・データベースがIBM DB2である場合に、WebLogic Serverセキュリティ・ストア・スクリプトの実行に失敗する場合があります。

回避策

各セミコロン(;)を「@」文字と置き換えることで、関連する$MW_HOME/wlserver/server/lib/rdbms_security_store_db2.sqlファイルを編集します。

RCUスキーマの作成がWebLogic Serverコンポーネント用のMicrosoft SQL Serverで失敗する

プラットフォーム: すべて

Oracle Fusion Middleware Repository Creation Utility (RCU)は、ターゲット・データベースがMicrosoft SQL Serverである場合に、WebLogic Serverセキュリティ・ストア・スクリプトの実行に失敗する場合があります。

回避策

GO」という用語を各SQL文の後に追加することで、関連する$MW_HOME/wlserver/server/lib/rdbms_security_store_sqlserver.sqlファイルを編集します。

SNMPの問題と回避策

このリリースのWebLogic Serverには、SNMPの既知の問題はありません。

WebLogic Server上のSpringフレームワークの問題と回避策

この項では、次の問題と回避策について説明します。

JRockitで実行している場合にOpenJPA ClassFileTranformerが動作しない

プラットフォーム: すべて

OpenJPA ClassFileTranformerは、JRockitでWebLogic Serverを実行している場合に動作しません。

回避策

回避策として、OpenJPAエンハンサ・コンパイラを使用して、ビルド時に拡張を適用してください。LoadTimeWeaverは使用しないでください。

WebLogic Serverにpetclinic.earがデプロイされない

プラットフォーム: すべて

SpringSourceのpetclinicサンプルで、petclinic.warは問題なくデプロイされます。petclinic.earは正しくパッケージ化されていないため、WebLogic Serverにデプロイされません。SpringSourceに対してpetclinic.earのパッケージ化を修正するようにリクエストを送信済です。

システム・コンポーネント・アーキテクチャ(SCA)の問題と回避策

このリリースのWebLogic Serverには、SCAの既知の問題はありません。

アップグレードの問題と回避策

この項では、次の問題について説明します。

WebLogic Server 10.3.1で作成されたドメインを
WebLogic Server 10.3で実行できない

プラットフォーム: すべて

WebLogic Server 10.3.1を使用してドメインを作成し、WebLogic Server 10.3にロールバックした場合、そのドメインで作成したサーバーを起動できません。config.xmlファイルにはWebLogic Server 10.3に存在しない新しいスキーマ定義(xmlns.oracle.com)への参照が含まれているため、これは既知の制限です。

Webアプリケーションの問題と回避策

この項では、次の問題と回避策について説明します。

WebブラウザでMaxPostSizeExceededExceptionが報告される

12.1.2より前のWebLogic Serverバージョンからアプリケーションをアップグレードした後に、WebブラウザでMaxPostSizeExceededExceptionが報告されます。

回避策

max-save-post-size session-descriptorを、FORM認証の間にコンテナによって保存またはバッファされるPOSTの最大サイズ(バイト)に設定します。

管理コンソールはセッション・タイムアウトの変更を実装できない

プラットフォーム: すべて

session-timeoutweb.xmlファイルで構成されている場合、管理コンソールを使用してsession-timeoutに対して行った変更は反映されません。

回避策

デプロイメント・プランを使用して、session-timeout設定をオーバーライドします。

PoolLimitSQLExceptionが発生するとデータベース接続が不安定になる

プラットフォーム: すべて

JDBC永続性セッション中にPoolLimitSQLExceptionが発生した場合、データベースへの接続が不安定になり、リカバリあり、またはリカバリなしで失敗することがあります。これにより、セッション・データが失われます。古いセッションまたはnullが返されます。

SSLポートを使用してアクセスした場合にWebページを開けない

プラットフォーム: すべて

SSLポートを使用してWebページにアクセスしている場合、ページを開けず、次のエラーがレポートされます。

Secure Connection Failed 
 
An error occurred during a connection to <hostname>. 
 
You have received an invalid certificate. Please contact the server 
administrator or email correspondent and give them the following information: 
 
Your certificate contains the same serial number as another certificate 
issued by the certificate authority. Please get a new certificate containing a unique serial number.

回避策

Firefoxでは次の回避策を使用できます。

このエラーを受信し、自己署名証明書のあるWebページにアクセスしようとしている場合は、Firefoxで次の手順を実行します。

  1. 「ツール」「オプション」「詳細」「暗号化」タブ「証明書を表示」に移動します。

  2. 「サーバー証明書」タブで、証明書を削除します。

  3. 「認証局証明書」タブで、問題の原因となったセキュリティ・デバイスの認証局(CA)を探し、削除します。

Internet Explorerまたはその他のWebブラウザを使用している場合は、表示される警告ページを無視し、Webページに進むことができます。

Internet ExplorerでJSPXページの出力を表示できない

プラットフォーム: MS Windows

JSPXページがデプロイされ、一部のバージョンのInternet Explorerを使用してアクセスされる場合、ページ・コンテンツのかわりにXHTMLソースが表示されます。この状況は、標準モードとosjp.nextモードの両方で発生します。

回避策

アプリケーション・ユーザーに、FirefoxまたはSafariを使用してアプリケーションにアクセスするよう指示する必要があります。

Internet Explorer 7でSVGファイルの出力を表示できない

プラットフォーム: MS Windows

ページがScalar Vector Graphicsを使用してデプロイされ、Internet Explorer 7 (IE7)を使用してアクセスされる場合、ページのグラフィック・コンテンツのかわりにソースが表示されます。この状況は、標準モードとosjp.nextモードの両方で発生します。

回避策

SVGグラフィックはIE7でネイティブにサポートされないため、アプリケーション開発者は、アプリケーションでSVGグラフィックを使用しないようにする必要があります。使用している場合は、次のような警告を追加する必要があります。

All current browsers, with the exception of Internet Explorer, support SVG 
files. Internet Explorer requires a plug-in to display SVG files. The plug-ins 
are available for free, for example, the Adobe SVG Viewer at 
http://www.adobe.com/svg/viewer/install/.

デプロイメント・プランを使用して2つの記述子をオーバーライドできない

プラットフォーム: すべて

WebアプリケーションまたはWebモジュールのデプロイメント時に、デプロイメント・プランを使用して2つのデプロイメント記述子WEB-INF/classes/META-INF/persistence.xmlおよびWEB-INF/classes/META-INF/persistence-configuration.xmlをオーバーライドすることはできません。それ以外の場合は、デプロイメント・プランを使用して記述子をオーバーライドできます。

回避策

WEB-INF/classes/META-INF/persistence.xmlおよびWEB-INF/classes/META-INF/persistence-configuration.xml(存在する場合)を関連するクラス・ファイルと一緒にjarファイルにパッケージ化してください。JARファイルはWebアプリケーションまたはWebモジュールのWEB-INF/libディレクトリに配置する必要があります。このようなJARファイルであれば、デプロイメント・プランを使用して2つの記述子をオーバーライドできます。

Springの依存関係インジェクションはJSPタグ・ハンドラでサポートされない

プラットフォーム: すべて

Spring拡張モデルが有効になっている場合、WebLogic Server 10.3以降はパフォーマンス上の理由から、JSPタグ・ハンドラではSpringの依存関係インジェクション(DI)をサポートしていません。

現在、WebLogic Serverは、サーブレット、フィルタ、リスナーなどのほとんどのWebコンポーネントでSpring DIをサポートしています。ただし、パフォーマンス上の理由から、現在、Spring DIはJSPタグ・ハンドラではサポートされていません。

有効なセッションIDでアプリケーションにアクセスしたときに503エラーが発生する

プラットフォーム: すべて

セッションが永続化され、サーブレット・コンテキストの古いバージョンがリタイアされる場合に、有効なsessionidでアプリケーションにアクセスすると、503エラーが発生します。

たとえば、バージョン管理されているWebアプリケーションのセッション永続性のタイプは「ファイル」です。ユーザーはアプリケーションに正常にアクセスできます。その後、そのアプリケーションのバージョン2がデプロイされて、バージョン1がリタイアされます。ここで、同じユーザーがアプリケーションにアクセスすると、503エラーが発生します。

jdbc-connection-timeout-secsを構成するアプリケーションがデプロイに失敗する

プラットフォーム: すべて

WebLogic Server 12.1.2以降は、weblogic.xmlデプロイメント記述子内のjdbc-connection-timeout-secs要素はなくなりました。jdbc-connection-timeout-secsを構成するアプリケーションは、WebLogic Server 12.1.2サーバー・インスタンスでデプロイに失敗し、サーバー・ログで次のエラーになります。

Unable to load descriptor /.../WEB-INF/weblogic.xml of module myweb. The error is weblogic.descriptor.DescriptorException: VALIDATION PROBLEMS WERE FOUND 
  <6:7> problem: cvc-complex-type.2.4a: Expected elements 'timeout-secs@http://xmlns.oracle.com/weblogic/weblogic-web-app ...' instead of 'jdbc-connection-timeout-secs@http://xmlns.oracle.com/weblogic/weblogic-web-app' here in element session-descriptor@http://xmlns.oracle.com/weblogic/weblogic-web-app 

回避策

weblogic.xmlデプロイメント記述子からjdbc-connection-timeout-secs要素を削除します。

WebLogic Server Scripting Tool (WLST)の問題と回避策

この項では、次の問題と回避策について説明します。

WLSTオフライン・ロギングで権限拒否エラーが発生する

同時WLSTオフライン操作を実行している異なるファイルシステム・ユーザーによって所有される複数のプロセスがある場合、FileNotFoundExceptionPermission Deniedエラーが起こる可能性があります。

回避策

ログ・ファイル名の競合を避けるには、wlst.sh script_nameを呼び出す前に環境で次のプロパティを設定します。

export WLST_PROPERTIES="-Dwlst.offline.log=./logs/filename.log"

一意な名前をfilenameと置き換えます。各ログ・ファイルに一意な名前を使用して、ログ・ファイル名の競合がないようにします。

「.」文字を含むプロパティ名はloadPropertiesでサポートされない

プラットフォーム: すべて

WLSTのloadPropertiesコマンドで、名前に「.」(ピリオド)が含まれているプロパティのロードがサポートされていません。たとえば、プロパティ・ファイル内にmyapp.db.defaultという名前のプロパティが存在すると、WLSTから次のような名前例外がスローされます。

  Problem invoking WLST - Traceback (innermost last):
    File "<iostream>", line 7, in ?
    File "<iostream>", line 4, in readCustomProperty
  NameError: myapp

これは、PythonおよびloadPropertiesコマンドのシステム制限です。WLSTでは、変数の名前と値を読み込み、それらをPythonインタプリタの変数として設定します。Pythonインタプリタでは、ネームスペース、パッケージ、またはその両方の命名において、モジュールのスコープ指定を示すデリミタとして「.」が使用されています。したがって、前述のプロパティ・ファイルの場合、myapp.db.default.version=9imyapp.db.defaultパッケージに含まれていることを示しますが、そのようなパッケージは存在しないためエラーになります。このパッケージは存在しません。

回避策

変数名にピリオドを使用しないようにしてください。これにより、プロパティ・ファイルから変数をロードし、WLSTスクリプトでそれらを参照できるようになります。ネームスペースの区切り文字としては、「_」(アンダースコア)や英字の大文字/小文字などを使用できます。

別の方法としては、プロパティ・ファイルから変数を設定することも可能です。スクリプト内で変数を使用すると、それらの変数はプロパティ・ファイルからの実際の値に置き換えられます。次に例を示します。

myapp.py
var1=10
var2=20
import myapp
print myapp.var1
10
print myapp.var2
20

この方法は、1レベルのネームスペース(myapp.var1myapp.var2)であれば機能します。同じ名前をネームスペースとして共有する最上位の変数(myapp=oraclemyapp.var1=10など)では機能しません。myapp変数を設定すると、myappネームスペースはオーバーライドされます。

複数のレベルが必要な場合は、ディレクトリを使用してパッケージ・ネームスペースを定義できます。vars.pyファイルで、次のようにmyapp/db/defaultディレクトリを作成します。

var1=10
var2=20

そして、次のようにインポートします。

import myapp.db.default.vars
print myapp.db.default.vars.var1
10

サブディレクトリに__init__.pyファイルを追加する必要がある場合もあります。パッケージの詳細については、次のPythonドキュメントを参照してください。

http://docs.python.org/tut/node8.html

Jythonによって作成された無効なcachedirはWLSTがエラーを出力する原因となる

プラットフォーム: すべて

Jython 2.2によって作成されたデフォルトのcachedirは有効なディレクトリではありません。weblogic.jarからJythonを直接使用している場合、WLSTはエラーを出力します。

回避策

この問題には、2つの回避策があります。

  • WLSTを呼び出す場合は、-Dpython.cachedir=<valid_directory>パラメータを指定します。

  • weblogic.jarに含まれている部分的なJythonを使用するかわりにJython 2.2.1を別途インストールします。

Webサーバー・プラグインの問題と回避策

この項では、次の問題について説明します。

MOD_WLS_OHSがフェイル・オーバーしない

プラットフォーム: すべて

現在、mod_wlmod_wl_ohsは、コンテナ・レベルのフェイルオーバーのみサポートし、アプリケーション・レベルのフェイルオーバーはサポートしません。mod_wl_ohsは、管理対象サーバーが起動し、実行されているかぎり、ダウンしているアプリケーションにリクエストをルーティングし続けます。クラスタ化されている場合、リクエストは、アプリケーションが停止している場合でも元のセッションが開始したコンテナに送信されるため、通常はhttpエラー404が発生します。

WebサービスおよびXMLの問題と回避策

この項では、次の問題と回避策について説明します。

クラスタ環境で非同期MakeConnectionを使用すると例外が
発生する

クラスタ環境で非同期MakeConnectionを使用すると、次のいずれかの例外が発生します。

  • McPollingTimeoutException

  • IllegalStateException

この問題の回避策はありません。

weblogic.wsee.jaxws.mdb.DispatchPolicy WorkManagerが見つからない

プラットフォーム: すべて

状況によっては、weblogic.wsee.jaxws.mdb.DispatchPolicy WorkManagerがドメイン内の管理対象サーバーの1つ以上にターゲット指定されている場合でも、このWorkManagerが見つからないことを示す警告メッセージがログに記録されます。

回避策

この問題を解決するには次のいずれかの回避策を使用します。

  • これらの警告メッセージを回避するには、-Dweblogic.wsee.skip.async.response=trueフラグを指定してWebLogic Serverインスタンスを開始します。このフラグの詳細は、『Oracle WebLogic Server JAX-RPC Webサービスの高度な機能のプログラミング』を参照してください。

  • weblogic.wsee.jaxws.mdb.DispatchPolicy WorkManagerを手動で管理サーバーにターゲット指定します。

WebLogic Advanced Web Services for JAX-WS拡張テンプレートを
適用するときの問題に関するトラブルシューティング

プラットフォーム: すべて

WebLogic Server 10.3.4から10.3.5にアップグレードした後で、WebLogic Advanced Web Services for JAX-WS拡張テンプレート(wls_webservices_jaxws.jar)を使用してドメインを作成または拡張するときに、final.pyスクリプトの実行中に例外が発生する場合があります。詳細と回避策は、Oracle WebLogic Server JAX-WS Webサービスの開発の、JAX-WS拡張テンプレートにWebLogicの高度なサービスを適用する場合の問題のトラブルシューティングに関する項を参照してください。

スパース配列と部分転送配列はサポートされない

プラットフォーム: すべて

WebLogic Serverでは、JAX-RPC 1.1仕様で要求されているスパース配列と部分転送配列がサポートされません。

WSDLコンパイラはシリアライズ可能なデータ型を生成しない

プラットフォーム: すべて

Webサービス記述言語(WSDL)のコンパイラでシリアライズ可能なデータ型が生成されないため、データがリモートのEJBに渡されない、またはJMS宛先に格納されません。

コールバックでのカスタム例外の使用

プラットフォーム: すべて

WebLogic Serverでは、親Webサービスのターゲット・ネームスペースに適合しないパッケージを持つカスタム例外を、コールバックで使用することはできません。

回避策

コールバックで使用されるカスタム例外は、親Webサービスのターゲット・ネームスペースに適合するパッケージに入れるようにしてください。

プロキシ・サーバーも使用している環境ではJMS転送を使用できない

プラットフォーム: すべて

プロキシ・サーバーを使用している環境では、JMS転送を使用できません。これは、JMS転送の場合はWebサービス・クライアントが常に t3 プロトコルを使用してWebサービスに接続するのに対し、プロキシ・サーバーではHTTP/HTTPSしか受け付けられないためです。

WSDLの処理中にclientgenに失敗する

プラットフォーム: すべて

Webサービス・パラメータとして複合型http://www.w3.org/2001/XMLSchema{schema}を使用するWSDLの処理中にclientgenが失敗します。

コールバックWebサービスでのJAX RPCハンドラはサポートされない

プラットフォーム: すべて

WebLogic Server 9.2以降では、コールバックWebサービスでのJAX RPCハンドラはサポートされません。

回避策

WebLogic Workshop 8.1で作成されたWebサービスでJAX RPCハンドラが使用されていた場合、そのアプリケーションは、コールバック・ハンドラ機能を使用しないように再設計する必要があります。

コールバックWebサービスでのメッセージ・レベル・セキュリティはサポートされない

プラットフォーム: すべて

WebLogic Server 9.2以降では、コールバックWebサービスでのメッセージ・レベルのセキュリティはサポートされません。

回避策

WebLogic Workshop 8.1で作成されたWebサービスでWS-Securityを使用している場合は、コールバックでメッセージ・レベルのセキュリティを使用しないようにWebサービスを再設計する必要があります。

JAX-RPCスタイルのJavaBeanであるJavaメソッド引数
または戻り値のパラメータの処理

プラットフォーム: すべて

WebLogic Serverでは、Javaメソッドの引数または戻り値のパラメータがXmlBeanプロパティを含むJAX-RPC形式のJavaBeanである場合、その処理をサポートしていません。たとえば、アプリケーションでは次のようなシグネチャを持つメソッドを使用できません。

void myMethod(myJavaBean bean);

myJavaBeanクラスは次のとおりです。

public class MyJavaBean {
  private String stringProperty;
  private XmlObject xmlObjectProperty;

  public MyJavaBean() {}
  String getStringProperty() {
    return stringProperty;
  }
  void   setStringProperty(String s) {
    stringProperty = s;
  }
  XmlObject getXmlObjectProperty() {
    return xmlObjectProperty;
    }
  void      getXmlObjectProperty(XmlObject x) {
    xmlObjectProperty = x;
  }
}

回避策

現在、この問題に対する既知の回避策はありません。

JWSコールバックで2次元XMLオブジェクトを
使用している場合のIllegalArgumentException

プラットフォーム: すべて

JWSコールバックで2次元のXmlObjectパラメータ(XmlObject[][])を使用すると、IllegalArgumentExceptionが発生します。

回避策

現在、この問題に対する既知の回避策はありません。

空の配列でのSoapElement[]結果の使用

プラットフォーム: すべて

@WildcardBinding(className="javax.xml.soap.SOAPElement[]", binding=WildcardParticle.ANYTYPE)のようにWebサービス・パラメータとしてSoapElement[]を使用すると、クライアントでは常に空の配列が生成されます。

回避策

SOAPElement[]のデフォルト・バインディングをWildcardParticle.ANYTYPEに変更する際に、@WildcardBindingアノテーションを使用しないようにしてください。SOAPElement[]のデフォルト・バインディングがWildcardParticle.ANYに設定されます。

Webサービスが別のWebサービスを呼び出す場合のFileNotFound例外

プラットフォーム: すべて

WebサービスAからWebサービスBを呼び出す場合には、WebサービスAで@ServiceClientアノテーションを使用して呼び出す必要があります。WebサービスBにおいてWebサービスBのWSDLに添付されていないカスタム・ポリシー・ファイルが必要になる場合、WebサービスAの実行は失敗します。WebサービスAはポリシー・ファイルを/Web-Inf/classes/policies/filename.xmlで検索します。しかし、その場所にはポリシー・ファイルが存在しないため、ファイルが見つからないことを示す例外がスローされます。

回避策

WebサービスBにカスタム・ポリシー・ファイルを添付してください。次に例を示します。

@Policy(uri="CustomPolicy.xml",
        attachToWsdl=true)
public class B {
  ...
}

クライアント側がサーバー・レスポンス・メッセージのシグネチャの検証に失敗する

プラットフォーム: すべて

セキュリティ・ポリシーに以下のいずれかのトークン・アサーションが含まれている場合、クライアント側でサーバーのレスポンス・メッセージの署名の検証に失敗する可能性があります。

  <sp:WssX509PkiPathV1Token11/>
  <sp:WssX509Pkcs7Token11/>
  <sp:WssX509PkiPathV1Token10/>
  <sp:WssX509Pkcs7Token10/>

また、<sp:WssX509Pkcs7Token11/>または<sp:WssX509Pkcs7Token10/>トークン・アサーションの場合に、X509のチェーン内に3つ以上の証明書があると、サーバー側で受信するメッセージの署名の検証に失敗する可能性があります。

証明書チェーン全体がクライアント側に保持されない限り、次のようなポリシーはサポートされません。

<sp:AsymmetricBinding>
   <wsp:Policy>
      <sp:InitiatorToken>
         <wsp:Policy>
            <sp:X509Token
               sp:IncludeToken='. . ./IncludeToken/AlwaysToRecipient'>

            <wsp:Policy>
               <sp:WssX509Pkcs7Token11/>
            </wsp:Policy>
         </sp:X509Token>
      </wsp:Policy>
      </sp:InitiatorToken>
      <sp:RecipientToken>
      <wsp:Policy>
      <sp:X509Token sp:IncludeToken='. . ./IncludeToken/Never'>
            <wsp:Policy>
               <sp:WssX509Pkcs7Token11/>
            </wsp:Policy>
         </sp:X509Token>
      </wsp:Policy>
      </sp:RecipientToken>
   . . .
      </wsp:Policy>
   </sp:AsymmetricBinding>

回避策

以下の2つの解決策のいずれかを使用してください。

  1. WssX509PkiPathV1Token11/>のかわりに<sp:WssX509V3Token10/>トークン・アサーションを使用してレスポンスを構成します。ポリシーは次のようになります。

    <sp:AsymmetricBinding>
       <wsp:Policy>
         <sp:InitiatorToken>
            <wsp:Policy>
            <sp:X509Token sp:IncludeToken='. . ./IncludeToken/AlwaysToRecipient'>
               <wsp:Policy>
                  WssX509PkiPathV1Token11/> 
               </wsp:Policy>
            </sp:X509Token>
            </wsp:Policy>
         </sp:InitiatorToken>
         <sp:RecipientToken>
            <wsp:Policy> sp:IncludeToken='. . ./IncludeToken/Never'>
            <sp:X509Token
               <wsp:Policy>
                  <sp:WssX509V3Token10/>
               </wsp:Policy>
            </sp:X509Token>
            </wsp:Policy>
         </sp:RecipientToken>
    . . .
         </wsp:Policy>
       </sp:AsymmetricBinding>
    
  2. WssX509PkiPathV1Token11/>トークン・アサーションを使用してレスポンスを構成しますが、それをメッセージ内に含めます。ポリシーは次のようになります。

     <sp:AsymmetricBinding>
       <wsp:Policy>
         <sp:InitiatorToken>
            <wsp:Policy>
            <sp:X509Token sp:IncludeToken='. . ./IncludeToken/AlwaysToRecipient'>
            <wsp:Policy>
               WssX509PkiPathV1Token11/> 
            </wsp:Policy>
            </sp:X509Token>
         </wsp:Policy>
         </sp:InitiatorToken>
         <sp:RecipientToken>
            <wsp:Policy>
            <sp:X509Token sp:IncludeToken='. . ./IncludeToken/AlwaysToInitiator'>
               <wsp:Policy>
                  WssX509PkiPathV1Token11/>
                </wsp:Policy>
            </sp:X509Token>
            </wsp:Policy>
         </sp:RecipientToken>
     . . .
       </wsp:Policy>
     </sp:AsymmetricBinding>
    

X509証明書チェーンに複数の証明書がある場合は、<sp:WssX509Pkcs7Token11/>または<sp:WssX509Pkcs7Token10/>のかわりに、WssX509PkiPathV1Token11/>または<sp:WssX509PkiPathV1Token10/>を使用する必要があります。

xmlcatalog要素エンティティをリモート・ファイルまたはアーカイブ内のファイルにできない

プラットフォーム: すべて

build.xmlxmlcatalog要素では、エンティティの場所はローカル・ファイル・システム上のファイルでなければなりません。リモート・ファイル(http:など)やアーカイブ内のファイル(jar:など)は使用できません。

回避策

必要な場合は、代わりに、カタログ・ファイル内のエンティティとしてリモート要素を定義してください。

XMLカタログを使用している場合にカタログ・ファイルのpublic要素はサポートされない

プラットフォーム: すべて

XMLカタログ機能を使用する場合、カタログ・ファイルではpublic要素がサポートされません。JAX-WS EntityResolver実装との整合性を保つためにサポートされていません。WebLogic Serverはカタログ・ファイルでsystem要素の定義のみをサポートしています。

ローカルxmlcatalog要素が正常に動作しない

プラットフォーム: すべて

ローカルのxmlcatalog要素がAntの制限のために正しく機能しません。

回避策

Ant build.xmlファイルで、同じターゲット内の場合はclientgen(wsdlc)タスクより上にローカルの要素を定義する必要があります。または、その要素を別のターゲットで定義してください。

JAXRPCクライアントがマルチバイト文字のある
HTTP SOAPActionヘッダーをエンコードしない

プラットフォーム: すべて

WebLogic Server WebサービスJAXRPCクライアントはマルチ・バイト文字を含むHTTP SOAPActionヘッダーをエンコードしません。WebLogic ServerはHTTPヘッダーでASCIIのみをサポートします。

回避策

WSDLでSOAPアクションをASCIIに変更します。

clientgenのxmlcatalog要素で外部カタログ・ファイルを使用できない

プラットフォーム: すべて

clientgenタスクのxmlcatalog要素で外部カタログ・ファイルを使用できません。たとえば、次のようなAntビルド・ファイルのスニペットは機能しません:

<clientgen ...
  <xmlcatalog>
    <catalogpath>
      <pathelement location='wsdlcatalog.xml'/>
    </catalogpath>
  </xmlcatalog>

これはAnt XMLカタログの制限です。

回避策

リソースの場所は、インラインか外部カタログ・ファイルで、または両方で指定できます。外部カタログ・ファイルを使用するには、xml-commonsリゾルバ・ライブラリ(resolver.jar)をクラスパスに含める必要があります。外部カタログ・ファイルの形式はプレーン・テキストまたはXMLです。xml-commonsリゾルバ・ライブラリがクラスパスで見つからない場合、<catalogpath>パスで指定された外部カタログ・ファイルは無視されて、警告がログに記録されます。ただし、この場合でも、インライン・エントリの処理は正常に続行されます。

現在、インラインで指定できるのは<dtd>要素と<entity>要素のみです。これらの要素はそれぞれ、OASISカタログ・エントリ・タイプのPUBLICとURIに対応します。

高負荷状態で信頼性のあるメッセージングを実行している際の例外

プラットフォーム: すべて

Direct-Write同期書込みポリシーが設定されたファイル・ベース・ストレージで、高負荷状態の場合にWebサービスの信頼性のあるメッセージング・シナリオを実行している場合、WebLogic Serverログに次のようなIO例外が検出されることがあります。

weblogic.store.PersistentStoreRuntimeException: [Store:280029]The 
persistent store record <number> could not be found

または

Could not load conversation with id uuid:<some ID> -> Conversation read 
failed: 
    ... 
    weblogic.wsee.jws.conversation.StoreException: 
      Conversation read failed: id=uuid:<some ID> 
         weblogic.store.PersistentStoreException: [Store:280052]The 
         persistent store was not able to read a record. 
           java.io.OptionalDataException 

これらの例外は、Webサービスの信頼性のあるメッセージングを使用している場合にのみ発生することがわかっています。これらは、ファイル・ストアからレコードの読取りに失敗したことを示し、「致命的な」データ・アクセス・エラーとみなされます。

これらのエラーの原因となった基になる問題は、将来のリリースで対処されます。

回避策

この問題には、次の回避策を使用できます。

  • ファイル・ストア同期書込みポリシーをDirect-Write-With-Cacheに変更します。

    または

  • ファイル・ストア同期書込みポリシーをCache-Flushに変更します。

    または

  • 直接書込み同期書込みポリシーを保持し、次のJavaシステム・プロパティをWebLogicサーバーの起動スクリプトに追加します。

    -Dweblogic.store.AvoidDirectIO=true
    

    注意:

    -Dweblogic.store.AvoidDirectIOシステム・プロパティは、WebLogic Server 10.3.4では非推奨です。かわりにストア同期書込みポリシーをDirect-Write-With-Cacheに構成することをお薦めします。


Direct-Write-With-Cacheオプションによってパフォーマンスが向上することがあります。オペレーティング・システムの一時ディレクトリに追加ファイルをデフォルトで作成します。

Cache-FlushおよびAvoidDirectIOの回避策は、パフォーマンスが低下することがあります。ファイル・ストアに別のブロック・サイズを構成することで、パフォーマンス低下を低減または排除できる可能性があります。

これらの設定および追加オプションの重要情報は、Oracle WebLogic Serverパフォーマンスのチューニングのファイル・ストアのチューニングに関する項を参照してください。

WebSphereおよびWebLogic ServerとのWS-AT相互運用性の問題

プラットフォーム: すべて

WebSphereをクライアントとし、WebLogic ServerまたはJRFをサービスとして使用したWeb Services Atomic Transactions (WS-AT) 1.1の相互運用は動作しません。

WS-AT 1.1の相互運用は、WebSphereがサービスで、WebLogic ServerまたはJRFがクライアントの場合に動作します。この場合、相互運用はFix/Feature Pack 7を適用したWebSphere 7がある場合にのみ動作します。

WebLogic Tuxedo Connectorの問題と回避策

この項では、次の問題と回避策について説明します。

VIEWクラスは接続ごとには設定されない

プラットフォーム: すべて

VIEWクラスは接続ごとには設定されません。

2つのアプリケーションが、定義は異なるが同じVIEW名を持つVIEWクラスをそれぞれ指定した場合、WebLogic Tuxedo Connectorの共有ハッシュ表は、サーバーで予期しない動作を引き起こすことがあります。Resourceセクション用のハッシュ表に加えて、その接続におけるVIEWクラス用のハッシュ表を用意する必要があります。

回避策

すべてのWebLogic Workshopアプリケーションで定義されている全VIEWクラスに一貫性を持たせます。つまり、同じVIEWクラスを表す場合にのみ同じVIEW名を用いるようにします。

ドキュメントの訂正箇所

この項では、ドキュメントの訂正箇所を示します。

構成ウィザードのドメイン作成オプションが使用できない

Fusion Middleware構成ウィザードの最近の変更により、構成ウィザードは、使用できない2つのドメイン作成オプションを説明するのを支援します。拡張ドメインの作成およびコンパクト・ドメインの作成オプションはなくなりました。コンパクト・ドメインは、WebLogic Scripting Tool (WLST)を使用することでのみ作成できます。

Fusion Middleware構成ウィザードの最新ドキュメントについては、http://docs.oracle.com/docs/cd/E24329_01/index.htmおよび『構成ウィザードによるドメインの作成』のリファレンスを参照してください。

サンプル・ビューアの「検索」機能に関する問題

プラットフォーム: すべて

Windowsの「スタート」メニューから「Oracle WebLogic」→「WebLogic Server」→「Examples」→「Documentation」を選択してExamplesドキュメントにアクセスすると、サンプル・ビューアの「検索」機能が動作しません。

回避策

サンプル・アプリケーションおよびサンプル・コードを検索するには、Examplesサーバーを起動して、http://localhost:7001/examplesWebApp/docs/core/index.htmlに移動する必要があります。「手順説明」をクリックし、「検索」をクリックします。

Avitek Medical Recordsの一部の検索結果トピックで日本語のテキストが表示される

プラットフォーム: すべて

サンプル・ビューアの「検索」機能を使用すると、Avitek Medical Recordの一部のトピックの日本語版と英語版が同時に表示されるトピックが返されることがあります。

ダウンロードしたライブラリのHTMLページが正しく表示されない

プラットフォーム: すべて

http://www.oracle.com/technetwork/middleware/weblogic/documentation/index.htmlから入手可能なWebLogic Serverドキュメント・ライブラリZIPファイルを抽出した後で、次のライブラリの一部でHTMLページが正しく表示されないことがあります。

  • E12840_01 (WebLogic Server 10.3.0ドキュメント・ライブラリ)

  • E12839_01 (WebLogic Server 10.3.1ドキュメント・ライブラリ)

  • E14571_01 (WebLogic Server 10.3.3ドキュメント・ライブラリ)

回避策

ライブラリE12840-01の場合、E12840_01.zipライブラリ・ファイルを抽出した後で、HTMLページが正しく書式設定されない場合は、次の手順を実行します。

  1. Zipファイルを抽出したディレクトリに移動します。

  2. ディレクトリ構造で/global_resourcesディレクトリを探します。

  3. /global_resourcesディレクトリを同じドライブのルート・ディレクトリにコピーします。

ライブラリE12839-01およびE14571-01の場合、この問題はWindowsオペレーティング・システムでのみ発生します。抽出したライブラリのHTMLページが正しく書式設定されない場合は、解凍ユーティリティで別の抽出オプションを使用してZIPファイルを抽出してみます。たとえば、7-Zipを使用してファイルを抽出している場合は、フル・パス名オプションを選択します。Windows解凍ユーティリティではライブラリZIPファイルを抽出できません。

部分的な再デプロイメントの動作のためのドキュメントの更新

このドキュメントは、グラフィック・ファイル、静的HTMLファイルおよびJSPの部分的な再デプロイメントにおいて推奨される使用法に関して誤りがあります。現行のドキュメントでは、この動作はあらゆる本番環境において安全であると記されています。しかし、この記述は次のように読み替えてください。

アプリケーションの定期的なダウンタイム中、またはクライアント接続や進行中の作業の維持にとって重要ではない時間にのみ使用します。

WebLogic WebサービスSSLでサポートされているOPSSキーストア・サービス

ドキュメントには、OPSSキーストア・サービスはサポートされていないと記述されていますが、これは誤りです。

『Oracle WebLogic Serverセキュリティの管理』のOracle OPSSキーストア・サービスの構成に関する項で説明しているように、OPSSキーストア・サービスは、キーと証明書を管理するための代替メカニズムを備えています。


注意:

WebLogic ServerシステムにOracle JRFテンプレートをインストールしており、そのテンプレートを使用してドメインを作成している場合にかぎり、OPSSキーストア・サービスを使用できます。OPSSキーストア・サービスはJRFテンプレートのみで利用でき、デフォルトのWebLogic Server構成では利用できません。


Secure Sockets Layer (SSL)を必要とするWebLogic Webサービス・ポリシーでは、追加の構成なしでOPSSキーストア・サービスを使用できます。

ただし、『Oracle WebLogic Server WebLogic Webサービスの保護』のメッセージ・レベルのセキュリティの構成に関する項で説明しているように、メッセージの保護にキーと証明書を使用するWebLogic Webサービス・ポリシーでは、OPSSキーストア・サービスを使用できません。具体的には、OPSSキーストア・サービスを使用するためにIntegrityKeyStoreおよびConfidentialityKeyStoreプロパティを構成しないでください。

そのかわりに、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のメッセージ保護の構成に関する項で説明しているように、OPSSキーストア・サービスでOWSMメッセージ保護ポリシーを使用することをお薦めします。