プライマリ・コンテンツに移動
Oracle® Fusion Middleware Oracle WebLogic Serverリリース・ノート
11g リリース1 (10.3.6)
E61942-03
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次

前
 
 

2 Oracle WebLogic Serverの問題

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


注意:

WebLogic Server 11gリリース1 (10.3.6)で修正された不具合のリストを参照するには、「ナレッジ・ベースの検索」フィールドに次のドキュメントIDを入力してください。このドキュメントIDをそのまま入力する必要があります。

1302753.1


一般的な問題と回避策

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

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 WebLogic Serverのリリース番号

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

Oracle Fusion Middleware 11gにはOracle WebLogic Server 11gが含まれています。Oracle WebLogic Serverのリリース番号は、10.3.6です。

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
    

Sun JDK 6 U35-B52の10.3.5.0 Oracle WLS汎用インストールに対する可用性

プラットフォーム: IBM AIX

Linux x86-64、Microsoft Windows x64 (64-Bit)およびOracle SolarisプラットフォームへのOracle WebLogic Server 10.3.5.0 (PS4)の汎用インストールには、Sun JDK 1.6.0.U35-B52バージョンが必要です。

記載されたバージョンのJDKはOracle Webサイトからダウンロードできません。

http://www.oracle.com/technetwork/indexes/downloads/index.html

次の手順を完了して、必要なJDKバージョンをダウンロードします。

  1. My Oracle Supportにアクセスします。

    https://support.oracle.com
    
  2. 「パッチと更新版」タブをクリックします。

  3. パッチ12346791を「パッチ検索」の下の「パッチ名または番号」」フィールドに入力します。

  4. 「検索」をクリックします。

  5. このパッチに含まれているREADMEの説明に従って、対象のプラットフォーム用のパッチを選択してダウンロードします。

IBM JDK 6.0 SR16 FP3またはJDK 7.0 SR8 FP10のフィックスの入手方法

プラットフォーム: IBM AIXおよびzLinux

WebLogic Serverが、Fix Pack 3を適用したIBM JDK 6.0サービス・リフレッシュ16またはFix Pack 10を適用したJDK 7.0サービス・リフレッシュ8で構成されている場合、WebLogic ServerはAPAR IV71293のフィックスをJDKに適用しないと正常に機能しない可能性があります。APAR IV71293は次のURLで説明しています。

http://www-01.ibm.com/support/docview.wss?uid=swg1IV71293

APAR IV71293のフィックスは、次のいずれかのメソッドを使用して取得できます。

  • IBM Support Portalに移動します。ここでは、サービス・リクエスト(SR)ツールを使用して問題管理レポート(PMR)をオープンし、APAR IV71293のフィックスをリクエストできます。

  • ISVポータルでIBM Javaに移動し、次の手順でフィックスをダウンロードします。

    1. ブラウザに次のURLを入力します。

      https://www14.software.ibm.com/webapp/iwm/web/preLogin.do?source=swg-ibmjavaisv

    2. ユニバーサルIBM IDでログインします。(権限の契約キーについては、IBMサポートに連絡する必要がある場合があります。)

    3. 使用しているIBM JDKリリースにあわせて、次のフィックスのいずれかをダウンロードします。

      • JDK 6.0 SR16 FP3用: pap6460sr16fp3ifix-20150323_01 (SR16FP3 + IV71293)

      • JDK 7.0 SR8 FP10用: pap6470sr8fp10ifix-20150323_01 (SR8FP10 + IV71293)

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

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

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

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

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

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

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

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

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

回避策

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

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

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

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

回避策

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

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

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

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

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

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

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

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

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

回避策

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

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

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

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

回避策

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

Oracle OCIドライバ・サポート

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

Oracle OCIドライバは、管理コンソールに事前構成済ドライバ・タイプとして明示的にリストされなくなりました。

回避策

Oracle OCIドライバは、アプリケーション・データ接続用にサポートされるドライバとして残り、以前のリリースのOracle WebLogic Serverと一貫性があります。ただし、ユーザーは、データベース・ユーザー名など、すべての必要な構成プロパティを手動で指定する必要があります。

「メトリック・ブラウザ」タブでデータの表示に長時間かかる

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

Internet Explorer 7(IE 7)を使用して「監視ダッシュボード」の「メトリック・ブラウザ」タブにデータを表示する場合、データの表示に異常に長い時間がかかり、この間、ページが応答しなくなります。このタブでのデータの表示にかかる時間は、ドメインのサイズによって決まります。

回避策

「監視ダッシュボード」→「メトリック・ブラウザ」タブにデータを表示する必要がある場合は、Internet Explorer 8以上、Firefox 3以上、Safari 4以上など、IE 7以外のサポートされるWebブラウザで管理コンソールを開きます。

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

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

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

この項では、クラスタリングに関する次の問題と回避策について説明します。

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

プラットフォーム: Linux

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

回避策

この問題を解決するには、次のシステム・プロパティを設定します。

-Dweblogic.unicast.HttpPing=true

構成の問題と回避策

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

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

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

まれに、Fusion Middlware製品のインストールを開始する前にインストール環境に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%\wlserver_10.3\common\bin\wlst.cmd

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

プラットフォーム: Microsoft 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. 変更を反映するには再起動します。

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

プラットフォーム: Linux

存在しないサーバー名で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. 構成ウィザードをもう一度実行します。

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

このリリースのWebLogic Serverには、コネクタ(リソース・アダプタ)の既知の問題はありません。

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

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

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

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

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

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

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

回避策

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

-Dweblogic.client.SocketConnectTimeoutInSecs

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

IPv6形式のアドレスの使用

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

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

回避策

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

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

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

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

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

回避策

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

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

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

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

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

Java EEアプリケーションでFastSwapが有効化されている場合、開発中にJavaクラスに対して特定のタイプの変更を行い、再デプロイすることなくその変更を参照できます。このとき、Javaオブジェクトのすべてのインスタンス状態は保持されます。

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

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

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

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

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

回避策

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

ユニキャスト・メッセージの処理順序の強制

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

次の条件は、JNDIが非常に頻繁に更新される原因となることがあり、JMSサブスクライバはjava.naming.NameNotFoundExceptionを検出することがあります。

  1. クラスタ通信にユニキャスト・メッセージングが使用されている。

  2. JMSトピック接続がsetReconnectPolicy("all")で設定されている。

  3. トピックのJMS恒久サブスクライバが非常に頻繁に作成および削除される。

回避策

この問題を解決するために、新しいプロパティMessageOrderingEnabledClusterMBeanに追加されています。このプロパティは、ユニキャスト・メッセージを強制的に厳密な順序で処理するようにします。デフォルトでは、このプロパティは有効化されていません。プロパティを有効化するには、次の行をconfig.xml<cluster>要素に手動で追加します。

<message-ordering-enabled>true</message-ordering-enabled>

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

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

ホスト名を使用して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

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

回避策

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

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

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

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という名前のファイル仕様をアクティブにしようとします。

java.lang.NoClassDefFoundErrorが表示される

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

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

回避策

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

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();

プランの適用時に「"config-root" <directory>が見つかりませんでした」という警告が表示される

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

管理コンソールを使用してアプリケーションの構成を変更すると、デプロイメント・プランが生成されます。外部ディスクリプタがデプロイメント・プランの一部として生成されると、それらは構成ルートのplanディレクトリに配置されます。このディレクトリは、デプロイメント・プランのconfig-root属性に設定されます。

外部ディスクリプタが必要ない場合、構成ルート・ディレクトリは作成されず、デプロイメント・プランの適用時に警告が表示されます。この結果、サーバー出力に次の警告が記録されます。

<Warning <WWebLogicDescriptorWL> <BEA-2156000><"config-root" C:\deployments\plan was not found>.

回避策

planディレクトリを手動で作成します。

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

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

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を使用する場合、このフラグは必要ありません。

サーバーがMSIモードで起動した場合にアプリケーション状態が更新されない

プラットフォーム: Linux

管理対象サーバーの起動時にWebLogic Server管理サーバーが使用可能でない場合、管理対象サーバーはMSIモードで起動します。後で管理サーバーを起動すると、管理対象サーバーは管理サーバーに接続します。ただし、管理対象サーバーにデプロイされている各アプリケーションの状態は、管理対象サーバー上のアプリケーションの状態を反映するようには更新されません。各アプリケーションの状態は、WebLogic Server管理コンソールでNEWまたはPREPAREDとして表示されます。

回避策

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

  • 管理対象サーバーを起動する前に管理サーバーを起動します。

  • 管理サーバーの起動後に、アプリケーションを再デプロイします。

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

プラットフォーム: 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のデプロイメント制限が原因です。デプロイメントのソース・ファイルを指定した後、それを再デプロイメントで変更することはできません。

回避策

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

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インジェクションの拡張モデルでは、lookupメソッドのインジェクションはサポートされません。

管理対象の環境で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に設定します。

例の問題と回避策

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

medrec.wls.configのセキュリティ構成

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

SAMPLES_HOME/server/medrec/setup/build.xmlにあるmedrec.wls.configターゲットには、セキュリティ構成に関する既知の問題があります。

StreamParser.javaファイルに対してHTMLファイルが作成されない

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

../xml/staxサンプルには、同じルートで異なる拡張子を持つ2つのファイル(StreamParser.javaStreamParser.jsp)があります。しかし、サンプル・ビューアのビルドでは、タイプごとの2つのファイルではなく、対応するHTMLファイルが1つだけ作成されます。この場合、StreamParser.jspファイルには対応するHTMLファイルがありますが、StreamParser.javaファイルにはありません。

この問題は、ドキュメントのファイルを生成するためのjava2htmlの動作を制御するbuild.xmlファイルの設定が原因で発生します。

java2htmlを使用する場合、useShortFileName="true"パラメータを指定すると、HTML出力ファイルのファイル名を作成するために、ソース・ファイルのファイル拡張子が削除されます。2つのファイルが同じ名前で異なる拡張子を持つ場合は、後から生成されたHTMLファイルが前に生成されたファイルを上書きします。

回避策

useShortFileNameパラメータを"false"に設定します。この設定では、ファイル拡張子を名前に含めてHTMLファイルが生成されます。この解決策の欠点は、対象のファイルがこのバグの影響を受けるかどうかに関係なく、HTML出力ファイルを指すすべてのリンクを修正する必要があることです。

MedrecまたはSamplesドメインを開始するときに警告メッセージが表示される

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

medrecまたはsamplesドメインを起動すると、次のような警告メッセージが表示されることがあります。

<Warning> <WorkManager> <BEA-002919> <Unable to find a WorkManager with name 
weblogic.wsee.mdb.DispatchPolicy. Dispatch policy 
weblogic.wsee.mdb.DispatchPolicy will map to the default WorkManager for the 
application bea_wls_async_response>

この警告メッセージは、非同期のWebサービスがデプロイされたWebLogic Serverサンプル・アプリケーションの起動中に、コンソールの標準出力に出力されます。

回避策

この警告は無害ですので無視して構いません。

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

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

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

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

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

ローカル・クライアントによってパブリッシュされたイベント・メッセージを受信できない

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

クラスタ化環境では、あるサーバー上のローカル・クライアントがパブリッシュしたイベント・メッセージは、同じサーバーに接続しているサブスクライブ済クライアントのみが受信できます。クラスタ内の他のサーバーに接続しているサブスクライブ済クライアントはこれらのメッセージを受信できません。

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

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

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

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

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

アップグレード・インストールでSybase JDBCドライバがダウンロードされない

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

Oracle WebLogic Server 11g リリース1のインストーラでは、Sybase JDBCドライバがダウンロードされません。最新のインストーラを使用して既存のWebLogic Server 10.3インストール環境をアップグレードする場合、元のインストール環境からSybase JARファイルは削除されません。このインストーラでは、weblogic.jarファイルのみがアップグレードされます。

/server/libまたは/server/ext/jdbc/sybaseディレクトリのSybase JARファイル(jconn2.jar、jconn3.jarおよびjConnect.jar)は、アップグレードされたweblogic.jarファイルのマニフェスト・クラスパスから削除されます。そのため、WebLogic ServerアプリケーションのクラスパスにSybase JARファイルが含まれず、weblogic.jarのみが含まれる場合、アップグレード・インストール後にアプリケーションからClassNotFoundExceptionがスローされます。

この問題を回避するには、WebLogic Serverアプリケーションのクラスパスに明示的にSybase JARファイルを追加します。

アップグレード・インストールを途中で終了した場合、前のインストールへのロールバックが適切に行われない

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

アップグレード・インストーラまたはSmart Updateを使用して既存のWebLogic Server 10.3.xインストール環境をWebLogic Server 10.3.4にアップグレードする場合、完了前にアップグレードを中断すると、通常、インストール環境は自動的に前のインストール環境にロールバックされます。これが行われず、インストールが使用できなくなることがあります。

WebLogic Serverインストーラがディスク領域不足エラーで失敗する

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

WebLogic Serverインストーラは、ファイル・システムまたはディスクに使用可能ディスク領域が大量にある場合でも、ディスク領域不足エラーで失敗することがあります。

回避策

インストール・コマンドの-Dspace.detectionプロパティを使用して、使用可能領域チェックを無効にします。次に例を示します。

java -Xmx1024M -Dspace.detection=false -jar installer_file_name -mode=silent -silent_xml=silent.xml

または

wls1034_linux.bin -Dspace.detection=false

WebLogic Serverホームをミドルウェア・ホームと同じにすることはできない

プラットフォーム: MS Windows

ミドルウェア・ホーム・ディレクトリをWebLogic Serverホーム・ディレクトリとして使用することはできません。たとえば、ミドルウェア・ホーム・ディレクトリがC:\Oracle\Middlewareの場合、C:\Oracle\MiddlewareをWebLogic Serverのホーム・ディレクトリとして指定することはできません。指定すると、構成ウィザード、テンプレート・ビルダー、および場合によって他のWebLogic Serverツールで重大な問題が発生することがあります。

回避策

ミドルウェア・ホーム・ディレクトリ以外のディレクトリにWebLogic Serverをインストールします。たとえば、ミドルウェア・ホーム・ディレクトリがC:\Oracle\Middlewareの場合は、WebLogic ServerをC:\Oracle\Middleware\wlserverまたはC:\Oracle\wlserverにインストールできます。

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

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

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

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

回避策

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

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

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

ネットワーク・ドライブを使用してインストールする場合にWebLogic Serverのインストールが失敗する

プラットフォーム: MS Windows

ネットワークの別のマシンからインストーラにアクセスする場合、WebLogic Serverのインストールが失敗し、次のエラー・メッセージがスローされます。

com.bea.plateng.wizard.installer.utils.SelfExtract - Error accessing jar

回避策

次のいずれかの方法を実行します。

  1. ネットワーク・マシンに存在するインストーラの場所をローカル・マシンのドライブに割り当てた後、インストールします。

    ドライブを割り当てる手順は次のとおりです。

    1. 「マイ コンピュータ」を右クリックして、「ネットワーク ドライブの割り当て」オプションを選択します。

    2. ドライブを選択し、インストーラが存在するマシンのネットワーク・パスを参照して選択します。

    3. 「完了」をクリックします。

    その後、コマンドjava -XX:MaxPermSize=1024m -jar Y:\wls1031_generic.jarを使用してインストールを完了します。Y:は、割り当てたローカルのドライブです。

  2. WLSインストーラをネットワーク・ドライブからローカル・マシンのフォルダにコピーして、インストールの際にその場所を指すようにします。

    次に例を示します。

    java -XX:MaxPermSize=1024m -jar c:\Installer\wls1031_generic.jar
    

WLS 10.3.6をSybase 15.7で使用する場合の例外

WLS 10.3.6をSybase 15.7で使用する場合、バイナリ・データの処理時に次の例外が発生します。

[Sybase JDBC Driver][Sybase]The token datastream length was not correct. This is an internal protocol error.

これは、WLS 10.3.6にパッケージ化されているSybaseドライバのSybase 15.7に対する制限です。

回避策

Sybase用の最新のWLSドライバについては、My Oracle Supportに連絡して確認してください。

Java EEの問題と回避策

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

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

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

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

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

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

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

回避策

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

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

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

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

回避策

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

JDBCの問題と回避策

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

MS SQLServerにJDBCドライバを使用している場合、setTransactionIsolation()の呼出しが失敗することがある

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

MS SQLServerにJDBCドライバを使用している場合、getTransactionIsolation()が最初に呼び出されると、setTransactionIsolation()がトランザクション・コンテキストで失敗することがあります。

リモート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 RACノードを使用するように構成されたSOAサーバーでORA-01591エラーが発生する

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

複数の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をダウンロードして適用することもできます。

JMSの問題と回避策

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

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

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

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

回避策

Java EE仕様に準拠したモジュールがEARに少なくとも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名にはマルチバイト・キャラクタを使用しないでください。

デフォルトで生成されるUOO名の変更

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

WebLogic Server 10.3.4には、JMSの通常の宛先、分散宛先またはテンプレートにデフォルトの順序単位(UOO)を設定する構成の修正が含まれます。この修正により、宛先のホストJMSサーバーの再起動後も、デフォルトの順序単位名が同じであることが保証されます。現在、デフォルトのUOO名は、ドメイン、JMSサーバーおよび宛先名に基づきます。

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

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

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

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

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

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

回避策

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

ユニキャスト・メッセージの処理順序の強制

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

特定の条件は、JNDIが非常に頻繁に更新される原因となることがあり、JMSサブスクライバはjava.naming.NameNotFoundExceptionを検出することがあります。詳細は、「ユニキャスト・メッセージの処理順序の強制」を参照してください。

JMS分散宛先がドメインを拡張した後に存在しない

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

JMS分散宛先を含むドメインから生成された拡張テンプレートを使用してドメインを拡張した後、分散宛先がドメインに存在しなくなります。これは次の分散宛先に影響を与えます。

  • distributed-queue

  • distributed-topic

  • uniform-distributed-queue

  • uniform-distributed-topic

これらの要素のいずれかがソース・テンプレートにあるJMS XMLファイルに含まれている場合、これらは処理されず、宛先ドメインでは構成されません。

回避策

これを解決するには、WLSTコマンドの次のシーケンスを対話的にまたはスクリプトで使用します。

readDomain('domain_path')

addTemplate('extension_template_file') 

unassign('JmsSystemResource','resource_name','Target','destination_name') 
For example: unassign('JmsSystemResource','JMSModule','Target','C1')

assign('JmsSystemResource','resource_name','Target','destination_name')
For example: assign('JmsSystemResource','testModule','Target','Server-1')

unassign('JmsSystemResource','resource_name','Target','destination_name')
For example: unassign('JmsSystemResource','testModule','Target','Server-1')

assign('JmsSystemResource','resource_name','Target','destination_name')For example: assign('JmsSystemResource','testModule','Target','C1')

updateDomain()

closeDomain()

JNDIの問題と回避策

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

JSPおよびサーブレットの問題と回避策

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

デプロイメント・プランを使用して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エラーが発生します。

Java SE 7言語拡張は、JSPページ内ではサポートされない

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

Java SE 7は、次のリストに示すように、新しいプログラミング言語拡張を導入しました。 http://docs.oracle.com/javase/7/docs/technotes/guides/language/enhancements.html

WebLogic Serverのこのリリースでは、JSPページのどの側面でも、新しいJava SE 7拡張の使用をサポートしていません。このことはWebLogic Serverの実行にJava SE 7ランタイムを使用できなくすることはなく、Java SE 6以下の言語構文を使用するJSPページを実行します。

回避策

JSPページがJava SE 7で導入された新しいプログラミング言語拡張のどれかを使用する場合には、WebLogic Server 12.1.3にアップグレードしてください。

JTAの問題と回避策

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

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

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

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

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

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

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

プラットフォーム: RedHat Linux

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

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

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

この問題の個別の再現に関心がある場合は、Oracleに問い合せてOracle Bug#8160147を参照してください。

回避策

Linuxの正式なパッチはまだありません。代わりに、クロックのソースをtscからhpetに変更してください。テスト・システムでこの変更を行った後は、System.currentTimeMillis()/gettimeofday()の無効な戻り値が原因の例外は発生しなくなります。試験的にシステム・クロックをtscからhpetに変更するには、rootとして以下の手順を実行します。

  1. ntpdを無効にします(実行されている場合)

  2. Echo 'hpet' &gt; /sys/devices/system/clocksource/clocksource0/current_clocksource

  3. ntpdを有効にします

この変更は再起動後に失われることに注意してください。詳細は、http://www.gossamer-threads.com/lists/linux/kernel/813344を参照してください。

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

プラットフォーム: Linux

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

回避策

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

 -XXrollforwardretrylimit:-1

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

プラットフォーム: Linux

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

回避策

以前にコンパイルしたアプリケーションのシリアライゼーションと互換にするには、BEA_HOME/wlserver_10.3/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

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

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

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

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

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

回避策

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

JVMレベルで収集されたイベントが低ボリュームで生成されない

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

WebLogic Server 10.3.3では、デフォルトのWLDF診断ボリューム設定は「オフ」です。WebLogic Server 10.3.4の時点では、デフォルトの診断ボリューム設定は低ボリュームですが、WebLogic Server 10.3.4では、JVMレベルで生成されるイベントは低ボリューム設定では生成されません(WebLogic Server 10.3.3では、JVMレベル・イベントは低ボリューム設定で生成されました)。JVMレベル・イベントは、WebLogic Server 10.3.4では高ボリュームおよび中ボリューム設定で生成されます。

回避策

次のいずれかの回避策を使用すると、JVMレベル・イベントが生成されます。

  • WLDF診断ボリュームを「中」または「高」レベルに上げます。

  • JRMC、JRCMDまたはJRockitコマンド・ライン設定を使用して、WebLogic Serverインスタンスで別のフライト記録をアクティブにします。これにより、JVMでは、JVMイベントがすべてのWLDF診断ボリューム設定(「オフ」、「低」、「中」および「高」)に存在します。

JVMイベントが有効になっている場合にWLDFのパフォーマンスの問題が発生することがある

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

JVMイベントが有効になっている場合、次の状況でWLDFのパフォーマンスの問題が発生することがあります。

  • 他のJRockitフライト記録が有効になっていない場合、WLDF診断ボリュームが「中」または「高」レベルに設定されていると、パフォーマンスが低下することがあります。

  • 他のJRockitフライト記録が有効になっている場合は、すべてのWLDF診断ボリューム・レベル(オフ」、「低」、「中」または「高」)でパフォーマンスが低下することがあります。

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

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

JSSEの使用時に管理対象サーバーを起動するとノード・マネージャで捕捉されないSSL例外が発生する

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

JSSEを有効にしてノード・マネージャおよび管理サーバーを実行している場合、管理対象サーバーの起動時にノード・マネージャで次の捕捉されない例外が発生します。

<Jun 11, 2014 4:50:53 AM> <WARNING> <Uncaught exception in server handlerjavax.net.ssl.SSLException: Inbound closed before receiving peer's close_notify: possible truncation attack?>

これらのエラーは無害であり、無視して構いません。

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

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

Oracle Kodoの問題と回避策

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インスタンスに対して単純なホスト名に設定されている場合。

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

このリリースの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}"
    

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

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

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://download.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を追加します。この回避策は、純粋な乱数ではなく擬似乱数を使用するため、本番環境では使用しないでください。

WebLogic ServerでServer Name Indicationがサポートされない

JSSEはそのSSL実装でServer Name Indication(SNI)をサポートしますが、WebLogic ServerはSNIをサポートしません。

WebLogic Server 10.3.6でのSHA256の使用

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

特定のチェーンをutils.ImportPrivateKeyまたはutils.ValidateCertChainを使用してロードしようとすると、SHA256認証局は失敗します。

これは、証明書ロード・ユーティリティ(ImportPrivateKeyおよびValidateCertChainなど)がCerticomを使用し、CerticomがSHA256 CAをサポートしないためです。

回避策

WLS 10.3.6でSHA256を使用する場合は、JSSEを有効にして-Dweblogic.security.SSL.enableJSSE=trueフラグをWebLogic Serverが提供するすべての証明書ユーティリティおよびキーストア・ユーティリティで使用する必要があります。

SNMPの問題と回避策

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

整数以外のMBean属性でJMX監視に基づいたトラップを送信するためにSNMPを使用できない

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

SNMPゲージおよびカウンタ監視構成では、しきい値として整数値のみしか使用できません。そのため、これらの監視はMBean属性に基づく整数型以外(floatlongまたはdoubleなど)のトラップを送信するように構成できません。対応するJMXベースのゲージおよびカウンタ監視は、java.lang.Numberのしきい値をサポートします。ただし、現在のWebLogic ServerでのSNMP実装ではint値しか使用できません。

回避策

WebLogic Diagnostic Framework (WLDF)の「ウォッチ」コンポーネントおよび「通知」コンポーネントを使用して、いかなるMBean属性でも監視でき、WLDF監視ルールに基づいてトラップを生成できます。監視ルールはMBean属性のしきい値を監視するように構成でき、監視ルールがtrueと評価すると、SNMP通知を送信できます。

詳細は、『Oracle WebLogic Server診断フレームワークの構成と使用』の「監視および通知の構成」を参照してください。

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アプリケーションの問題と回避策

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

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

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

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

回避策

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

接続プールの「接続予約タイムアウト」の値がオーバーライドされる

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

JDBCセッションを使用している場合、接続プールの「接続予約タイムアウト」の値は次のいずれかに変更されます。

  • セッション記述子(weblogic.xmlまたはweblogic-application.xml)で定義されているJDBC接続タイムアウト秒

  • 120秒のデフォルト値

回避策

セッション記述子でjdbc-connection-timeout-secsを構成します。

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/.

バージョン0のCookieの有効期限の日付形式の変更

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

WebLogic Serverでは、Cookieの有効期限の読取りおよび書込みに関してバージョン0 (Netscape)とバージョン1 (RFC2109)の2種類をサポートしています。以前は、バージョン0のCookieの有効期限の読取りおよび書込みに次の形式が使用されていました: EEEE, dd-MMM-yyyy HH:mm:ss zz。この形式は適切でないため、次のように更新されました: EEE, dd-MMM-yyyy HH:mm:ss zz

現在は適切な形式(EEE, dd-MMM-yyyy HH:mm:ss zz)を使用して書込みを行っていますが、引き続き、次の形式のCookieの有効期限の読取りができます。

  • EEE, dd-MMM-yyyy HH:mm:ss zz

  • EEE, dd MMM yyyy HH:mm:ss zz

  • EEEE, dd-MMM-yyyy HH:mm:ss zz

  • EEEE, dd MMM yyyy HH:mm:ss zz

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ドキュメントを参照してください。

https://www.python.org/doc/

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

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

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

回避策

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

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

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

WLST returnType='a'オプションが子管理オブジェクトを返す

プラットフォーム: Linux

WLST returnType='a'オプションは、指定したディレクトリからのみ属性を返す必要があります。しかし、子管理オブジェクトも返します。次に例を示します。

ls('Server')
drw-   AdminServer
drw-   worker01

ls('Server', returnMap='true', returnType='a')
drw-   AdminServer
drw-   worker01

ls('Server', returnMap='true',returnType='c')
drw-   AdminServer
drw-   worker01

returnType='a'を指定したlsは、子管理オブジェクトをリストしてはなりませんが、AdminServerworker01は子です。

回避策

ls(returnType='a')からの出力を処理するときに、返されたエントリがディレクトリかどうかを確認します。

Windows Server 2012上のドメインの作成に失敗する

プラットフォーム: Windows

「Windows Server 2012」がjavashell.pyファイル内のサポートされるWindowsバージョンの一覧に含まれていない場合、Windows 2012上で実行中のWebLogic Server 10.3.6では、WLSTによるドメインの作成が失敗します。

回避策

http://support.oracle.comのMy Oracle Supportから適切なパッチをダウンロードし、適用します。次のパッチが入手できます。

  • WebLogic Server 10.3.6 – NPM3

  • WebLogic Server 10.3.6.0.1 – YMQY

  • WebLogic Server 10.3.6.0.8 – GXHK

  • WebLogic Server 10.3.6.0.9 – IFNW

  • WebLogic Server 10.3.6.0.10 – DL4N

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

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

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

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

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

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

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

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を手動で管理サーバーにターゲット指定します。

複数のバッファ・サイズ変更呼出しが発生する

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

送信用としてメッセージ転送最適化メカニズム(MTOM)アタッチメントが処理されるWebサービス・クライアント呼出しを実行すると、複数のバッファ・サイズ変更呼出しが発生します。

回避策

この問題を解決できるパッチがあります。このパッチは、WebLogic Server 10.3.4に対してのみ適用できます。このパッチにはシステム・プロパティjaxws.transport.streamingが用意されています。このプロパティは、Webサービス・クライアントに対してトランスポート層でストリーミングを有効化または無効化します。Webサービスの対話にクライアントとして参加し、サイズの大きなメッセージを送信しているWebLogic Serverインスタンス上で実行されているCPU高負荷のアプリケーションに対して、このプロパティをtrueに設定します。

このパッチを取得するには、次のいずれかの手順を実行します。

  • My Oracle Supportに連絡し、Oracle Bug#9956275のパッチをリクエストします。

  • My Oracle Supportからこのパッチをダウンロードし、次のMy Oracle Supportドキュメントの指示に従ってSmart Updateを使用してインストールします。

    1302053.1

    Oracleパッチ番号9956275またはSmart Updateパッチ7Z5Hを検索します。

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パフォーマンスおよびチューニング』のファイル・ストアのチューニングに関する項を参照してください。

wseeclient.jarの使用時にClassNotFound例外が発生する

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

このリリースでは、スタンドアロンJAX-WSクライアントはサポートされません。

回避策

Java Standard Edition Release 6 (JDK 1.6) Update 4以上と統合されたクライアント側のJAX-WS 2.1を使用します。この場合、WebLogic Server固有のAPISのかわりにJAX-WS APIを使用する必要があります。

JDK 1.6の現行リリースは、http://www.oracle.com/technetwork/java/javase/downloads/index.htmlからダウンロードできます。スタンドアロンのJAX WS 2.1クライアント・アプリケーションの記述方法の詳細は、https://jax-ws.java.net/にあるJAX-WS 2.1参照実装WebサイトのJAX-WSユーザーズ・ガイドを参照してください。

SOAドメインに拡張Webサービス・コンポーネントを追加した場合の不完全な構成

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

構成ウィザードを使用して、新規作成されたSOAドメインにWebLogic Server拡張Webサービス・コンポーネントを追加すると、構成が不完全になる可能性があります。デフォルトの即時利用可能なsoa_server1サーバー定義のみを含むクラスタを作成すると、生成されるクラスタには、そのクラスタでWebLogic Server Webサービスを実行するのに必要なリソースが含まれません。

回避策

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

  1. 構成ウィザードの実行時に、クラスタ内に第2のサーバーを作成します。

    1. 「オプションの構成を選択」画面で、「管理対象サーバー、クラスタ、およびマシン」を選択します。

    2. 「管理対象サーバーの構成」画面で、管理対象サーバーを追加します。

    3. 「サーバーのクラスタへの割当」画面で、デフォルトのsoa_server1サーバーが存在するクラスタにこのサーバーを追加します。

  2. 構成ウィザードの「サービスのクラスタまたはサーバーへのターゲット設定」画面で、Webサービス・リソース(WseeJmsServerやWseeJmsModuleなど)をクラスタにターゲット設定します。

これらの回避策のいずれかによって、構成ウィザードで、WebLogic Server拡張Webサービス・コンポーネントのリソースがクラスタに適用されます。

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名を用いるようにします。

ドキュメントの訂正箇所

この項では、ドキュメントの訂正箇所を示します。

サンプル・ビューアの「検索」機能に関する問題

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ファイルを抽出できません。

Evaluation Databaseコンポーネントがsilent.xmlにリストされない

WebLogic Server 10.3.3および10.3.4用の『WebLogic Serverインストレーション・ガイド』の第5章「サイレント・モードでのインストール・プログラムの実行」の表5-1には、Evaluation Databaseがインストール可能なコンポーネントとしてリストされていません。「コンポーネント・パス」行には次のエントリが含まれる必要があります。

WebLogic Server/Evaluation Database

Serverサンプル・コンポーネントがsilent.xmlにインクルードされる場合、評価データベース・コンポーネントは自動的にインストールされます。そのため、silent.xmlに明示的にインクルードする必要はありません。ただし、Serverサンプルをインストールしなくても評価データベースをインストールする場合、silent.xmlWebLogic Server/評価データベースをインクルードする必要があります。

信頼性のあるSOAPメッセージング・コード例の説明が正しくない

「JAXWS Webサービス用のセキュアで信頼性のあるSOAPメッセージングの構成」の例に関する説明は、「JAX-WS Webサービスへの接続および信頼できるメッセージングの使用」の例に関する説明のコピーです。

「JAXWS Webサービス用のセキュアで信頼性のあるSOAPメッセージングの構成」の例に関する正しい説明は、次のとおりです。

この例について

この例は、JAX-WS Webサービス用にセキュアで信頼性のあるメッセージングを構成する方法を示しています。この例には、次のWebLogic Webサービスが含まれています。

  • 信頼性のあるセキュアなSOAPメッセージングを使用して操作を呼び出せるWebサービス(宛先エンドポイント)。

  • 信頼性のあるセキュアな方法で最初のWebサービスの操作を呼び出すクライアントWebサービス(送信元エンドポイント)。

セキュアで信頼性のあるSOAPメッセージングの概要

Webサービスの信頼性のあるメッセージングとは、あるアプリケーション・サーバーで実行中のアプリケーションが、別のアプリケーション・サーバーで実行中のWebサービスを確実に呼び出せるフレームワークです。ここでは、双方のサーバーでWS-RelicableMessaging仕様が実装されていることが前提となっています。信頼性が高いとは、ソフトウェア・コンポーネント、システム、またはネットワークの障害があっても、2つのエンドポイント(Webサービスとクライアント)間でメッセージ配信を保証することができる状態として定義されます。

WebLogic Webサービスは、WS-ReliableMessaging 1.2仕様 (2009年2月)に準拠しており、バージョン1.1をサポートしています。この仕様では、異なるアプリケーション・サーバー上の2つのエンドポイント(Webサービスとクライアント)が確実に通信できる方法について記述されています。仕様では、特に、送信元エンドポイント(クライアントWebサービス)から宛先エンドポイント(操作を確実に呼び出せるWebサービス)に送信されるメッセージが、1つ以上の配信保証によって確実に配信されるか、そうでなければ必ずエラーが発生する、相互運用性プロトコルについて説明されています。

WebLogic Webサービスでは、宛先Webサービスが信頼性のあるSOAPメッセージング機能と要件を記述および公表できるように、WS-Policyファイルを使用します。WS-Policyファイルは、サポートされているWS-ReliableMessaging仕様のバージョン、送信元Webサービスの再送信間隔、宛先Webサービスの承認間隔などの特性を記述するXMLファイルです。

サンプルの概要

この例では、JWSアノテーションを使用してWebサービスの形式と動作を指定しています。宛先Webサービスで信頼性のあるセキュアなSOAPメッセージングを有効にし、送信元Webサービスからセキュアな方法で操作を確実に呼び出すための追加JWSアノテーションを記述しています。

宛先ReliableEchoService Webサービスには、信頼性のあるセキュアな方法で呼び出せる2つの操作echoおよびechoOnewayがあります。このWebサービスを実装するJWSファイルでは、@Policiesおよび@Policy JWSアノテーションを使用して、信頼性のあるセキュアなSOAPメッセージング・アサーションが含まれるWS-Policyファイルを指定します。

ClientService送信元Webサービスには、1つの会話内でReliableEchoService Web サービスのecho操作をセキュアな方法で確実に呼び出す1つの操作、runTestEchoWithResがあります。ClientService Webサービスを実装するJWSファイルでは、@WebServiceRef JWSアノテーションを使用して、呼び出される信頼性のあるWebサービスのサービス名を指定します。

Webサービスを生成するには、build.xmlファイルで示すように、jwsc WebLogic WebサービスAntタスクを使用します。jwscターゲットは信頼性のあるセキュアなWebサービスを生成し、jwsc-client-appターゲットは、ReliableEchoService Webサービスのecho操作を呼び出す送信元Webサービスを作成します。jwsc Antタスクは、JWSファイルをコンパイルして、Webサービスのデプロイメント・ディスクリプタ、WSDLファイル、データ・バインディング・コンポーネントなどの標準のJava EE Enterprise Webサービスの実装に必要な追加ファイルを生成します。Antタスクは、WebLogic Serverにデプロイできるエンタープライズ・アプリケーション・ディレクトリ構造にすべてのコンポーネントを自動生成します。この例では、wldeploy WebLogic Antタスクを使用してWebサービスをデプロイしています。

また、jwsc-client-appターゲットは、最初にclientgen Antタスクを実行してReliableEchoService宛先Webサービス用のJAX-WSスタブを生成し、生成されたJavaソース・ファイルをコンパイルした後、jwscclasspath属性を使用して、ClientServiceImpl.javaクラスが検出できるように、これらのクラスが格納されているディレクトリを指定する方法を示しています。

WsrmJaxwsExampleRequest.javaクラスは、送信元Webサービスのecho操作を呼び出すスタンドアロンJavaアプリケーションです。build.xmlファイルのクライアント・ターゲットは、clientgenを実行して生成された全JavaファイルおよびWsrmJaxwsExampleRequest.javaアプリケーションをコンパイルする方法を示しています。

この例で使用されるファイル

ディレクトリの場所: MW_HOME/wlserver_10.3/samples/server/examples/src/examples/webservices/wsrm_jaxws/wsrm_jaxws_security

MW_HOMEは、Oracle Fusion Middlewareホーム・ディレクトリを表します。

ファイル 説明
ClientServiceImpl.java ReliableEchoService Webサービスのecho操作をセキュアな方法で確実に呼び出す送信元Webサービスを実装するJWSファイル。
ReliableEchoServiceImpl.java 信頼性のある宛先Webサービスを実装するJWSファイル。このJWSファイルでは、@Policiesおよび@Policyアノテーションを使用して、信頼性のあるセキュアなSOAPメッセージング・アサーションが含まれるWS-Policyファイルを指定します。
client/WsrmJaxwsExampleRequest.java 送信元WebLogic Webサービスを呼び出すスタンドアロンJavaクライアント・アプリケーション。呼び出されたWebサービスがReliableEchoervice Webサービスの操作を信頼性のあるセキュアな方法で呼び出します。
ws_rm_configuration.py 信頼性のあるSOAPメッセージングに必要なコンポーネントを構成するWLSTスクリプト。このスクリプトは、信頼性のある宛先WebサービスをホストするWebLogic Serverインスタンスに対して実行します。初期状態のExamplesサーバーは、確実に操作を呼び出す送信元Webサービスに必要なリソースを使用してすでに構成されています。
configWss.py セキュアなSOAPメッセージングに必要なコンポーネントを構成するWLSTスクリプト。送信元WebサービスをホストするWebLogic Serverインスタンスに対してこのスクリプトを実行します。このスクリプトの実行後に、送信元WebLogic Serverを再起動してください。
configWss_Service.py セキュアなSOAPメッセージングに必要なコンポーネントを構成するWLSTスクリプト。宛先WebサービスをホストするWebLogic Serverインスタンスに対してこのスクリプトを実行します。このスクリプトの実行後に、宛先WebLogic Serverを再起動してください。
certs/serverKeyStore.jks サーバー側BinarySecurityToken資格証明プロバイダの作成に使用されるサーバー側キーストア。
certs/clientKeyStore.jks クライアント側BinarySecurityToken資格証明プロバイダの作成に使用されるクライアント側キーストア。
jaxws-binding.xml 生成されたコードのパッケージ名を記述するXMLファイルで、クライアント側コードに非同期呼出しインタフェースを含める必要があることを指定します。
build.xml サンプルをビルドおよび実行するためのターゲットが含まれたビルド・ファイル。

例の準備

この項では、例の準備方法について説明します。

前提条件

この例で作業する前に、次の手順を実行します。

  1. Oracle WebLogic Serverのインストールを行います(例を含む)。

  2. Examplesサーバーを起動します。

  3. 環境を設定します。

宛先WebLogic Serverインスタンスを構成します(省略可)

この例のデフォルト構成では、送信元と宛先の両方のWebサービスがExamplesサーバーにデプロイされます。このデフォルト構成を使用して、例がどのように動作するかを確認できますが、信頼性のあるセキュアなSOAPメッセージングの実際の使用例(宛先Webサービスをホストするものとは異なるWebLogic Serverに送信元Webサービスがデプロイされる)を示しているわけではありません。この項では、実際の例の設定方法について説明します。

例には、次の構成に使用されるWebLogic Server Scripting Language (WLST)スクリプトが含まれます。

  • ストア・アンド・フォワード(SAF)サービス・エージェント

  • ファイル・ストア

  • JMSサーバー

  • JMSモジュール

  • JMSサブデプロイメント

  • JMSキュー

  • 論理ストア

  • セキュリティ・コンテキスト・トークン用の資格証明プロバイダ

  • 導出キー用の資格証明プロバイダ

  • x.509用の資格証明プロバイダ

  • 機密保護および整合性のためのキーストア

  • PKI CreditMapper

セキュアで信頼性のある宛先Webサービスを異なるWebLogic Serverインスタンスにデプロイする場合は、次の手順を実行します。

  1. 信頼性のあるJAX-WS Webサービスをデプロイする管理対象WebLogic Serverが存在しない場合は、作成します。

  2. SAMPLES_HOME\server\examples\src\examples\webservices\wsrm_jaxws\wsrm_jaxws_securityディレクトリに変更します。SAMPLES_HOMEは、WebLogic Server例のメイン・ディレクトリ(c:\Oracle\Middleware\wlserver_10.3\samplesなど)を指します。

  3. build.xmlファイルを編集し、信頼性のあるJAX-WS Webサービスが宛先WebLogic Serverに必ずデプロイされるように、次のプロパティ定義を更新します。

    <property name="wls.service.server" value="destinationServerName" />
    <property name="wls.service.hostname" value="destinationHost" />
    <property name="wls.service.port" value="destinationPort" />
    <property name="wls.service.username" value="destinationUser" />
    <property name="wls.service.password" value="destinationPassword" />
    

    前述のプロパティのイタリック体の部分を、宛先WebLogic Serverの実際の値に置き換えます。デフォルトの初期状態のbuild.xmlでは、これらのプロパティがExamplesサーバーに設定されています。

例のビルドとデプロイ

例をビルドおよびデプロイするには:

  1. SAMPLES_HOME\server\examples\src\examples\webservices\wsrm_jaxws\wsrm_jaxws_securityディレクトリに変更します。SAMPLES_HOMEは、WebLogic Server例のメイン・ディレクトリ(c:\Oracle\Middleware\wlserver_10.3\samplesなど)を指します。

  2. 環境を設定したシェルから、build.xmlファイルのconfig.ws.reliable.serviceターゲットを実行して宛先WebLogic Serverを構成するWLSTスクリプトを実行します。

    prompt> ant config.ws.reliable.service

  3. 環境を設定したシェルから次のコマンドを実行して、JAX-WS Webサービス・セキュリティを構成します。

    prompt> ant config.wss

  4. 異なる宛先WebLogic Serverを構成した(つまり、宛先サーバーがExamplesサーバーではない)場合は、certs\serverKeyStore.jksファイルを宛先サーバーのdomainディレクトリにコピーします。

  5. クライアントと宛先の両方のWebLogic Serverを再起動してMBeanの変更をアクティブにします。

  6. 環境を設定したシェルから次のコマンドを実行します。

    prompt> ant build

    このコマンドは、例のコンパイルおよびステージングを行います。具体的には、送信元と宛先の両方のWebサービスがコンパイルされます。また、送信元Webサービスを呼び出すスタンドアロンのWsrmJaxwsExampleRequestアプリケーションもコンパイルします。呼び出されたWebサービスが信頼性のある宛先Webサービスを呼び出します。

  7. 環境を設定したシェルから次のコマンドを実行します。

    prompt> ant deploy

    このコマンドは、デフォルトで、送信元と宛先の両方のWebサービスを、WebLogic Serverのwl_serverドメインにデプロイします。異なる宛先WebLogic Serverを構成し、それに応じてbuild.xmlファイルを更新した場合は、信頼性のあるJAX-WS Webサービスは構成された宛先サーバーにデプロイされます。

例の実行

この例を実行する手順は次のとおりです。

  1. 「例の準備」の手順を完了します。

  2. デプロイメント・シェルで、例のメイン・ディレクトリ(SAMPLES_HOME\server\examples\src\examples\webservices\wsrm_jaxws\wsrm_jaxws_security)から次のコマンドを使用してWsrmJaxwsExampleRequest Javaアプリケーションを実行します。

    prompt> ant run

    このコマンドは、送信元Webサービスを呼び出すスタンドアロンのWsrmJaxwsExampleRequestアプリケーションを実行します。呼び出されたWebサービスが信頼性のある宛先JAX-WS Webサービスを呼び出します。

  3. Webサービスの信頼性をテストするには、宛先WebLogic Serverを停止した後、WsrmJaxwsExampleRequestアプリケーションを再実行します。宛先WebLogic Serverを再起動して信頼性のあるWeb serviceがデプロイされると、操作も自動的に呼び出されることを確認してください。

出力の確認

例が正常に実行されると、次のメッセージが、WsrmJaxwsExampleRequestアプリケーションを実行したコマンド・シェルに表示されます。

Trying to override old definition of task clientgen
 
run:
     [java]
     [java]
     [java] ###########################################
     [java]     In testEcho_AsyncOnServerClient_ServiceBuffered...
     [java]     On-Server / Async / Buffered case
     [java]     2011/06/160 03:30:29.938
     [java] ###########################################
     [java]
     [java]
     [java] Client addr:http://localhost:9001/wsrm_jaxws_sc_example_client/Clien
tService
     [java] ---[HTTP request - http://localhost:9001/wsrm_jaxws_sc_example_clien
t/ClientService]---
     [java] Content-type: text/xml;charset=utf-8
     [java] Soapaction: ""
     [java] Accept: text/xml, multipart/related, text/html, image/gif, image/jpe
g, *; q=.2, */*; q=.2
     [java] <?xml version='1.0' encoding='UTF-8'?><S:Envelope xmlns:S="http://sc
hemas.xmlsoap.org/soap/envelope/"><S:Body><ns2:runTestEchoWithRes xmlns:ns2="htt
p://example.wsrm_jaxws/"><arg0>Foo bar</arg0><arg1>localhost</arg1>
<arg2>8001</arg2><arg3>C:\Oracle\Middleware\wlserver_10.3\samples\server\
examples\src\examples\webservices\wsrm_jaxws_security/certs</arg3>
</ns2:runTestEchoWithRes></S:Body></S:Envelope>--------------------
     [java]
     [java] ---[HTTP response - http://localhost:9001/wsrm_jaxws_sc_example_clie
nt/ClientService - 200]---
     [java] Transfer-encoding: chunked
     [java] null: HTTP/1.1 200 OK
     [java] Content-type: text/xml;charset=utf-8
     [java] X-powered-by: Servlet/2.5 JSP/2.1
     [java] Date: Thu, 09 Jun 2011 07:30:33 GMT
     [java] <?xml version='1.0' encoding='UTF-8'?><S:Envelope xmlns:S="http://sc
hemas.xmlsoap.org/soap/envelope/"><S:Body><ns2:runTestEchoWithResResponse xmlns:
ns2="http://example.wsrm_jaxws/"><return>[2011/06/160 03:30:33.953] ## Making Ec
ho Requests (ASYNC/BUFFERED) ##
     [java] [2011/06/160 03:30:42.703] *** On first good invoke ***
     [java] [2011/06/160 03:30:42.703] echo returned: Foo bar expected: Foo bar
     [java] [2011/06/160 03:30:42.922] echo returned: foo bar 2 expected: foo ba
r 2
     [java] [2011/06/160 03:30:43.031] echo returned: foo bar 3 expected: foo ba
r 3
     [java] [2011/06/160 03:30:43.031] ## Done Making Echo Requests (ASYNC/BUFFE
RED) ##
     [java] </return></ns2:runTestEchoWithResResponse></S:Body>
</S:Envelope>--------------------
     [java]
     [java] [2011/06/160 03:30:33.953] ## Making Echo Requests (ASYNC/BUFFERED)
##
     [java] [2011/06/160 03:30:42.703] *** On first good invoke ***
     [java] [2011/06/160 03:30:42.703] echo returned: Foo bar expected: Foo bar
     [java] [2011/06/160 03:30:42.922] echo returned: foo bar 2 expected: foo ba
r 2
     [java] [2011/06/160 03:30:43.031] echo returned: foo bar 3 expected: foo ba
r 3
     [java] [2011/06/160 03:30:43.031] ## Done Making Echo Requests (ASYNC/BUFFE
RED) ##
     [java]
 
BUILD SUCCESSFUL
Total time: 2 minutes 33 seconds

次のメッセージが、(信頼性のある送信元Webサービスをホストする)クライアントWebLogic Serverとして起動したコマンド・ウィンドウに表示されます。

Service addr:http://localhost:7001/wsrm_jaxws_sc_example/ReliableEchoService
    [2011/06/180 01:33:40.906] ## Making Echo Requests (ASYNC/BUFFERED) ##
 
    [2011/06/180 01:33:40.906] In invokeEchoAsync, invoking echo with request: Foo bar
 
    [2011/06/180 01:33:40.906] In invokeEchoAsync, waiting for response to request: Foo bar ...
 
    SignInfo mismatch  Algo mismatch http://www.w3.org/2000/09/xmldsig#rsa-sha1 VS.
    http://www.w3.org/2000/09/xmldsig#hmac-sha1 Refs: Msg size =1#Signature_prfr5thF
    y2vRPbpC, Policy size =3 #unt_w7HSTtcGcebXFWEr, #Timestamp_XIXttwj9Yq2XO7Tj, #Bo
    dy_81D2x3V7iTNyy1I5,
    STR type mismatch Actual KeyInfo:{http://docs.oasis-open.org/wss/2004/01/oasis-2
    00401-wss-wssecurity-secext-1.0.xsd}KeyIdentifier|http://docs.oasis-open.org/wss
    /oasis-wss-soap-message-security-1.1#ThumbprintSHA1,  StrTypes size=1 :{http://d
    ocs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd}Refere
    nce||http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512/dk,
    Security Token mismatch, token type =http://docs.oasis-open.org/ws-sx/ws-securec
    onversation/200512/dk and actual ishttp://docs.oasis-open.org/wss/2004/01/oasis-
    200401-wss-x509-token-profile-1.0#X509v3
    <WSEE:15>There is no information on the incoming SOAP message.
    <SmartPolicySelect or.getSmartPolicyBlueprint:501>
    testing...................
 
 
    [2011/06/180 01:33:41.718] In ClientServiceImpl.onEchoResponse(request:
    examplesServer: 4b1c0f3e575dfa8c:7291c50f:130d9cbaace:-7fb8)
 
    [2011/06/180 01:33:41.718] Done with ClientServiceImpl.onEchoResponse(request:
    examplesServer: 4b1c0f3e575dfa8c:7291c50f:130d9cbaace:-7fb8): Foo bar
 
    [2011/06/180 01:33:41.718] *** On first good invoke ***
 
    [2011/06/180 01:33:41.734] echo returned: Foo bar expected: Foo bar
 
    [2011/06/180 01:33:41.734] In invokeEchoAsync, invoking echo with request: foo bar 2
 
    [2011/06/180 01:33:41.750] In invokeEchoAsync, waiting for response to request: foo bar 2 ...
 
    <WSEE:15>There is no information on the incoming SOAP message.
    <SmartPolicySelect or.getSmartPolicyBlueprint:501>
    testing...................
 
 
    [2011/06/180 01:33:41.984] In ClientServiceImpl.onEchoResponse(request:
    examplesServer: 4b1c0f3e575dfa8c:7291c50f:130d9cbaace:-7fae)
 
    [2011/06/180 01:33:41.984] Done with ClientServiceImpl.onEchoResponse(request:
    examplesServer: 4b1c0f3e575dfa8c:7291c50f:130d9cbaace:-7fae): foo bar 2
 
    [2011/06/180 01:33:41.984] echo returned: foo bar 2 expected: foo bar 2
 
    [2011/06/180 01:33:42.000] In invokeEchoAsync, invoking echo with request: foo bar 3
 
    [2011/06/180 01:33:42.015] In invokeEchoAsync, waiting for response to request: foo bar 3 ...
 
    <WSEE:31>There is no information on the incoming SOAP message.
    <SmartPolicySelect or.getSmartPolicyBlueprint:501>
    testing...................
 
    [2011/06/180 01:33:42.187] In ClientServiceImpl.onEchoResponse(request:
    examplesServer:4b1c0f3e575dfa8c:7291c50f:130d9cbaace:-7fab)
 
    [2011/06/180 01:33:42.328] Done with ClientServiceImpl.onEchoResponse(request:
    examplesServer:4b1c0f3e575dfa8c:7291c50f:130d9cbaace:-7fab): foo bar 3
 
    [2011/06/180 01:33:42.328] echo returned: foo bar 3 expected: foo bar 3
 
    [2011/06/180 01:33:42.328] ## Done Making Echo Requests (ASYNC/BUFFERED) ##
 
    <WSEE:46>There is no information on the incoming SOAP message.
    <SmartPolicySelect or.getSmartPolicyBlueprint:501>
  

次のメッセージが、(信頼性のある宛先Webサービスをホストする)宛先WebLogic Serverを起動したコマンド・ウィンドウに表示されます。

      %% Echoing: Foo bar %%
      %% Echoing: foo bar 2 %%
      %% Echoing: foo bar 3 %%

送信元と宛先の両方のWebサービスを同じサーバーにデプロイした場合は、次のメッセージが、クライアントと宛先のWebLogic Serverを起動したコマンド・ウィンドウに表示されます。

    Service addr:http://localhost:7001/wsrm_jaxws_sc_example/ReliableEchoService
    [2011/06/180 01:33:40.906] ## Making Echo Requests (ASYNC/BUFFERED) ##
 
    [2011/06/180 01:33:40.906] In invokeEchoAsync, invoking echo with request: Foo bar
 
    [2011/06/180 01:33:40.906] In invokeEchoAsync, waiting for response to request: Foo bar ...
 
    SignInfo mismatch  Algo mismatch http://www.w3.org/2000/09/xmldsig#rsa-sha1 VS.
    http://www.w3.org/2000/09/xmldsig#hmac-sha1 Refs: Msg size =1#Signature_prfr5thF
    y2vRPbpC, Policy size =3 #unt_w7HSTtcGcebXFWEr, #Timestamp_XIXttwj9Yq2XO7Tj, #Bo
    dy_81D2x3V7iTNyy1I5,
    STR type mismatch Actual KeyInfo:{http://docs.oasis-open.org/wss/2004/01/oasis-2
    00401-wss-wssecurity-secext-1.0.xsd}KeyIdentifier|http://docs.oasis-open.org/wss
    /oasis-wss-soap-message-security-1.1#ThumbprintSHA1,  StrTypes size=1 :{http://d
    ocs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd}Refere
    nce||http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512/dk,
    Security Token mismatch, token type =http://docs.oasis-open.org/ws-sx/ws-securec
    onversation/200512/dk and actual ishttp://docs.oasis-open.org/wss/2004/01/oasis-
    200401-wss-x509-token-profile-1.0#X509v3
    %% Echoing: Foo bar %%
    <WSEE:15>There is no information on the incoming SOAP message.
    <SmartPolicySelect or.getSmartPolicyBlueprint:501>
    testing...................
 
 
    [2011/06/180 01:33:41.718] In ClientServiceImpl.onEchoResponse(request:
    examplesServer: 4b1c0f3e575dfa8c:7291c50f:130d9cbaace:-7fb8)
 
    [2011/06/180 01:33:41.718] Done with ClientServiceImpl.onEchoResponse(request:
    examplesServer: 4b1c0f3e575dfa8c:7291c50f:130d9cbaace:-7fb8): Foo bar
 
    [2011/06/180 01:33:41.718] *** On first good invoke ***
 
    [2011/06/180 01:33:41.734] echo returned: Foo bar expected: Foo bar
 
    [2011/06/180 01:33:41.734] In invokeEchoAsync, invoking echo with request: foo bar 2
 
    [2011/06/180 01:33:41.750] In invokeEchoAsync, waiting for response to request: foo bar 2 ...
    
    %% Echoing: foo bar 2 %%
    <WSEE:15>There is no information on the incoming SOAP message.
    <SmartPolicySelect or.getSmartPolicyBlueprint:501>
    testing...................
 
 
    [2011/06/180 01:33:41.984] In ClientServiceImpl.onEchoResponse(request:
    examplesServer: 4b1c0f3e575dfa8c:7291c50f:130d9cbaace:-7fae)
 
    [2011/06/180 01:33:41.984] Done with ClientServiceImpl.onEchoResponse(request:
    examplesServer: 4b1c0f3e575dfa8c:7291c50f:130d9cbaace:-7fae): foo bar 2
 
    [2011/06/180 01:33:41.984] echo returned: foo bar 2 expected: foo bar 2
 
    [2011/06/180 01:33:42.000] In invokeEchoAsync, invoking echo with request: foo bar 3
 
    [2011/06/180 01:33:42.015] In invokeEchoAsync, waiting for response to request: foo bar 3 ...
    
    %% Echoing: foo bar 3 %%
    <WSEE:31>There is no information on the incoming SOAP message.
    <SmartPolicySelect or.getSmartPolicyBlueprint:501>
    testing...................
 
    [2011/06/180 01:33:42.187] In ClientServiceImpl.onEchoResponse(request:
    examplesServer:4b1c0f3e575dfa8c:7291c50f:130d9cbaace:-7fab)
 
    [2011/06/180 01:33:42.328] Done with ClientServiceImpl.onEchoResponse(request:
    examplesServer:4b1c0f3e575dfa8c:7291c50f:130d9cbaace:-7fab): foo bar 3
 
    [2011/06/180 01:33:42.328] echo returned: foo bar 3 expected: foo bar 3
 
    [2011/06/180 01:33:42.328] ## Done Making Echo Requests (ASYNC/BUFFERED) ##
 
    <WSEE:46>There is no information on the incoming SOAP message.
    <SmartPolicySelect or.getSmartPolicyBlueprint:501>
  

enable-global-access-to-classes要素に関するドキュメントの記述が適切でない

10.3.6より前のドキュメントでは、weblogic-connector要素のenable-global-access-to-classesサブ要素に関する記述が次のように不適切でした: false (デフォルト)に設定すると、リソース・アダプタのクラスへのグローバル・アクセスが許可される。

10.3.6でドキュメントが更新され、リソース・アダプタのクラスへのグローバル・アクセスは、enable-global-access-to-classestrueに設定した場合に許可されることが明確に説明されています。更新されたドキュメントを確認するには、『Oracle WebLogic Serverリソース・アダプタのプログラミング』のweblogic-connectorに関する項を参照してください。