ヘッダーをスキップ
Oracle WebCenter Framework開発者ガイド
10g(10.1.3.2.0)
E05044-04
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

G WebCenterアプリケーションのトラブルシューティング

この付録は、WebCenterアプリケーションおよびポートレットの構築とデプロイで発生する問題を、ユーザーが診断する際に役立つことを目的としています。この付録で取り上げるのは、WebCenterアプリケーションおよびポートレットのトラブルシューティングです。内容は、次のとおりです。

G.1 問題と解決方法

この項では、Oracle WebCenter Frameworkでの作業中に発生する可能性のある代表的な問題と解決方法について説明します。次の分野に分類されます。

G.1.1 WebCenterアプリケーションのトラブルシューティング

この項では、WebCenterアプリケーションの問題と解決方法について説明します。

G.1.1.1 Oracle Enterprise Managerに資格証明MBeanが表示されない

デプロイされたアプリケーションでセキュアな資格証明を更新するために使用される資格証明MBeanが、Application Server Controlコンソールを使用してアクセスを試みるときに表示されません。

問題1

アプリケーションが停止しています。

解決方法1

アプリケーションを起動します。

問題2

アプリケーションのweb.xmlファイルに、Oracle Application Development Framework(Oracle ADF)認証サーブレットが含まれていません。

解決方法2

アプリケーションのweb.xmlにOracle ADF認証サーブレットが確実に含まれるようにします。この方法については、12.5項「デプロイ済アプリケーションでの資格証明の更新」を参照してください。

問題3

Oracle ADF認証サーブレットが起動時にロードされませんでした。

解決方法3

起動時に認証サーブレットが確実にロードされるようにします。この方法については、12.5項「デプロイ済アプリケーションでの資格証明の更新」を参照してください。

問題4

oracle.extapp.runtime.jarファイルが、アプリケーションのクラスパスで使用できない可能性があります。

解決方法4

oracle.extapp.runtime.jarファイルがアプリケーションのクラスパスで確実に使用できるようにします。

G.1.1.2 大型のWebCenterアプリケーションが様々なエラーで機能しなくなる

大型のWebCenterアプリケーション(複数ページで、各ページに複数のコンポーネントがある)を実行中に、様々なエラーによりアプリケーションが機能しなくなります。

問題

プロジェクト・テンプレートのデフォルトのメモリー・サイズ設定が、大型WebCenterアプリケーションには小さすぎます。この問題が原因で、アプリケーションが様々なエラーによって機能しなくなる可能性があります。

解決方法

プロジェクトのMaxPermSizeを増やして、大型WebCenterアプリケーションに対応するようにします。

  1. プロジェクトの「プロジェクト・プロパティ」に移動します。

  2. 左側のパネルで「実行/デバッグ」を選択します。

  3. 「実行構成」「編集」ボタンをクリックします。

  4. 「Javaオプション」に、次のように入力します。

    -XX:MaxPermSize=256m
    
  5. 「OK」をクリックします。

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

G.1.1.3 WebCenterアプリケーションを事前生成済スタンドアロンOC4Jにデプロイする際にエラーが発生する

WebCenterアプリケーションを事前生成済スタンドアロンOC4Jにデプロイするとき、メモリーが十分でないことを示すエラーが発生します。

問題

WebCenterアプリケーションを事前生成済スタンドアロンOC4Jにデプロイするとき、次のエラーが発生します。

2007-03-05 17:17:47.140 INTERNAL_ERROR oracle.adf.share.config.ADFConfigImpl null
date time java.lang.OutOfMemoryError: PermGen space
date time java.lang.OutOfMemoryError: PermGen space
date time java.lang.OutOfMemoryError: PermGen space
date time java.lang.OutOfMemoryError: PermGen space
date time java.lang.OutOfMemoryError: PermGen space
date time java.lang.OutOfMemoryError: PermGen space

デプロイ前ステージでは多数のクラスがロードされるため、デプロイ前ツールを実行する前に、事前生成済スタンドアロンOC4Jで使用される永続メモリー・サイズを増やす必要があります。

解決方法

永続メモリー・サイズを増やすためにJVM引数を組み込んでください。次の例のように、引数文字列に-XX:MaxPermSize=256m(またはこれ以上)を指定して、クラスのロードで使用される永続メモリーを増やします。

Microsoft Windowsの場合:

cd OC4j_HOME\j2ee\home
start java -server -XX:MAXPermSize=512M -Xmx256m -jar oc4j.jar

UNIX/Linux(Bourneシェル)の場合:

cd OC4J_HOME/j2ee/home
java -server -XX:MAXPermSize=512M -Xmx256m -jar oc4j.jar &

G.1.2 一般的なポートレットの問題のトラブルシューティング

この項では、ポートレットで発生する代表的な問題と解決方法について説明します。

G.1.2.1 コンポーネント・パレットにポートレットが2回表示される

Oracle JDeveloperでの設計時に、コンポーネント・パレット内の同じプロデューサの下に同じポートレットが2回表示されます。

問題

複数のプロデューサに、登録時に同じ名前が指定されました。同じ名前を指定されたプロデューサは、コンポーネント・パレット上で1回しか表示されません。したがって、2つのプロデューサを登録して、それぞれにMyProducerという名前を指定すると、MyProducerの名前は、コンポーネント・パレット上に1回しか表示されず、両方のプロデューサのポートレットが1つのインスタンスの下に表示されます。重複の問題に加えて、これではどのポートレットがどのプロデューサのものか判断するのが難しくなります。

解決方法

プロデューサを編集して、一意の名前を指定します。

G.1.2.2 重複アプリケーションでカスタマイズが欠落する

同じアプリケーションを同じOC4Jインスタンスに、同じプロデューサに対して異なるURLを持つ別の名前で2回デプロイすると、ポートレットのカスタマイズは、一方のアプリケーションに対してのみ表示され、他方のアプリケーションには表示されません。

問題

同じアプリケーションを2回デプロイしたため、両方のアプリケーションでは、同じ名前のプロデューサとURLの接続を使用します。その結果、2つのアプリケーション間でプロデューサURLが異なる場合、connections.xmlはアプリケーションごとにではなく、グローバルにロードされるため、一方のプロデューサのカスタマイズのみが使用可能です。したがって、最初にロードされるアプリケーションが、接続エントリを使用されるアプリケーションです。その後、その接続がメモリーにグローバルにプールされ、アクセスされる2番目のアプリケーションでは最初のアプリケーションの接続マッピングが使用されます。したがって、2番目のアプリケーションのカスタマイズにはアクセスできません。これはそのプロデューサURLが最初のアプリケーションと異なるためです。

解決方法

同じアプリケーションを同じOC4Jインスタンスに複数回デプロイする場合、各アプリケーションが必ず同じ接続マッピングを使用するようにします。

G.1.2.3 ポートレット上の「ログイン情報の更新」リンクへのアクセス時にエラーが発生する

外部アプリケーション・ポートレット上の「ログイン情報の更新」リンクをクリックすると、次のエラーが発生します。

"javax.faces.el.MethodNotFoundException: processExtAppsCredentailEvent"

問題

「ログイン情報の更新」リンクは、ユーザーの資格証明を格納するために資格証明プロビジョニング・ページを作成した場合にのみアクセスできます。現在、外部アプリケーション・ポートレットを含むプロジェクト内に資格証明プロビジョニング・ページがありません。

解決方法

外部アプリケーション対応プロデューサのポートレットを持つページを含むプロジェクト内で、資格証明プロビジョニング・ページを作成します。実行する手順は、10.7.2.1項「資格証明プロビジョニング・ページの追加」を参照してください。

G.1.2.4 ポートレット・プロデューサにアクセスできない

Oracle Application Serverインスタンスは起動し実行中ですが、プロデューサにアクセスできません。

問題

インストール時にWebCenterのみオプションを選択した場合、ポートレット・プロデューサは、同じHTTPポートでアプリケーションをホスティングするOracle Application Serverとして実行されていません。

解決方法

Oracle Application Serverの「ようこそ」ページにアクセスすれば、ポートレットが実行されているポートを簡単に見つけることができます。

http://myhost:port

ページの右上の領域で、ポートレット・リンクをクリックします。

G.1.2.5 「ログイン情報の更新」を使用して表示された資格証明プロビジョニング・ページにエラーが発生する

外部アプリケーション・ポートレット上の「ログイン情報の更新」リンクをクリックすると、資格証明プロビジョニング・ページが次のエラーとともに表示されます。

1. External application ID was found to be null while rendering the Credential Provisioning page!
2. Cause: The credential page was probably run standalone or invoked from a
portlet added from a producer that must be but has not been associated with an
external application.
3. Action: The credential page must be invoked from the link in portlets added
from producers associated with the external application. Running the credential
page standalone is not supported.

問題

外部アプリケーション認証が必要なプロデューサを登録しましたが、外部アプリケーションを定義し、このプロデューサと外部アプリケーションを関連付けていません。ページ上にこのプロデューサからのポートレットを追加すると、ページには実行時に資格証明をプロビジョニングするリンクが表示されました。NULL外部アプリケーションIDを持つエラーは、プロデューサが資格証明をプロビジョニングする外部アプリケーションと関連付けられていないことを意味します。

解決方法

外部アプリケーション認証が必要なすべてのプロデューサについて、必ずプロデューサを外部アプリケーションに関連付けます。

G.1.2.6 実行時のポートレット表示でエラーが発生する

実行時に、ページ上のポートレットの1つに次のエラーが表示されます。

Unable to get portlet response (Internal Error) for portlet binding portlet_name_1

ログ・ファイルをチェックすると、このエラーに次の原因が示されています。

oracle.adf.extapp.exception.ExtAppNotFoundException: The external application with
ID /oracle/adf/externalApps/extApp243128437261430784.xml cannot be found.

問題

外部アプリケーションは、偶然または意図的に削除されましたが、アプリケーションが関連付けられたプロデューサは登録が解除されていません。

解決方法

外部アプリケーションが偶然に削除された場合は、関連の外部アプリケーションを再び作成し、プロデューサを関連付けます。

外部アプリケーションを意図的に削除した場合は、アプリケーションを関連付けたプロデューサを確実に登録解除するようにします。実行する手順は、4.3.1.6項「ポートレット・プロデューサの登録解除」を参照してください。

G.1.2.7 ページURLが変わるときにポートレット・エラーが発生する

同じセッション内で異なるURLから1つのポートレット・ページにアクセスすると、OC4Jではそのセッションが失われ、その結果、その後ポートレットにアクセスするとエラーが発生します。

問題

異なるURLから1つのページにアクセスすると、ポートレットが利用できないというエラーが発生します。たとえば、まず完全修飾URL(http://hostname.domain:portなど)を介してポートレット・ページにアクセスするとします。その後、同じセッション中に、ドメインまたはポートを省略したショートカットURLを使用します。この2回目のアクセスで、セッションが失われているため、ポートレットが利用できないというエラーが発生します。

解決方法

ポートレット・ページにいつも同じURLを指定するようにします。URLを常に完全修飾するか、常にショートカット(ドメインおよびポートを省略)にする必要があります。様々なURLの書式を組み合せることはできません。

G.1.3 JPSポートレットのトラブルシューティング

この項では、JPS(JSR 168)ポートレットで発生する代表的な問題と解決方法について説明します。

G.1.3.1 プロデューサによるWS-Security SAML検証が失敗する

使用側のWebCenterアプリケーションで、SAMLトークンを使用して、プロデューサに対してWS-Securityによるセキュリティをアサートしようとすると、2台のコンピュータのシステム・クロックが同期していないために、アサーションの検証に失敗します。

問題

プロデューサを実行しているコンピュータのシステム・クロックが、そのプロデューサを使用する側のWebCenterアプリケーションを実行するコンピュータ上のシステム・クロックより進んでいます。この状況では、次のような結果になります。

  • 「ポートレットがありません」メッセージがポートレット・マークアップに表示されます。

  • 次のエラー・メッセージがJ2EEログ(log.xml)に表示されます。

    <MSG_TEXT>Assertion NOT_BEFORE_CONDITION invalid : Mon Nov 06 13:15:04 PST
    2006arrival time : Mon Nov 06 13:14:59 PST 2006</MSG_TEXT>
    

SAMLTokenはメッセージが生成された時間を示し、その時間より前のアサーションは有効でないため、検証は失敗します。

解決方法

クロックを必ず同期させるか、プロデューサのクロックをコンシューマのWebCenterアプリケーションのクロックより遅らせます。システム・クロックのチェックおよび設定の最善の方法を判断するには、ご使用のオペレーティング・システムのドキュメントを参照してください。プロデューサとコンシューマがどちらも同じOracle Application Serverインスタンスにデプロイされている場合、同じクロックを使用するため、この問題は発生しません。

G.1.3.2 WS-Security登録のプロデューサでポートレットが使用できない

プロデューサをWS-Securityに無事に登録しましたが、プロデューサのポートレットが実行時にページ上で使用不可として表示されます。

問題1

ポートレットの登録時に、WSRPプロデューサの登録ウィザードで、不注意に(「発行者」などに)間違った値を入力した可能性があります。ウィザードでは実際にはセキュリティ情報の検証ができないため、登録は無事に完了できますが、一部の間違ったセキュリティの値が原因で、実行時にポートレットにアクセスできません。

解決方法1

ポートレットの登録を解除し、正しい値を指定したことを確認して(特に、「発行者」など)登録しなおします。

問題2

キーストア・パスが絶対パスを使用するように正しく構成されていないか、Oracle Containers for J2EE(OC4J)インスタンスが構成後に再起動されませんでした。ログ・ファイル(通常、ORACLE_HOME/j2ee/OC4J_WebCenter/log/OC4J_WebCenter_default_group_1/oc4jにある)に、次のようなWARNINGレベルのログ・メッセージが含まれています。

<MSG_TEXT>
Couldn't resolve kestore path :
/ASINSTALL10132/j2ee/OC4J_WebCenter/META-INF/portal.jks
</MSG_TEXT>

<MSG_TEXT>
Invalid keystore path META-INF/portal.jks
</MSG_TEXT>

解決方法2

10.10.3項「コンシューマの構成」「キーストア・パスの更新」の手順を実行します。

G.1.3.3 JPSプロデューサEARファイルのWSRPプロデューサEARファイルへの変換時にエラーが発生する

JPSポートレット・プロデューサEARファイルのWSRPプロデューサEARファイルへの変換が失敗します。

問題

JPSポートレット・プロデューサEARファイルをWSRPプロデューサEARファイルに変換しようとすると、次の例外が発生します。

Exception in thread "main"
oracle.portlet.server.containerimpl.deploy.PortletDeployException:
A network error occurred during XML transformation. Check your network, firewall and proxy settings.

解決方法

サーブレット・バージョン2.3で開発されたJPS準拠ポートレットの場合、次の形式のコマンドを使用してWebプロキシを指定する必要があります。

java -Dhttp.proxyHost=proxy_host -Dhttp.proxyPort=proxy_port -jar
wsrp-predeploy.jar source_ear_file targeted_ear_file

G.1.3.4 異なるプリファレンス・ストア・パスを持つプロデューサでポートレットが使用できない

プロデューサのプリファレンス・ストア・パスが、OC4Jインスタンス内の他のプロデューサと異なるため、ポートレットがPortlet unavailableエラーをスローします。

問題

同じOC4Jインスタンス内の他のプロデューサのポートレットが使用可能でも、特定のプロデューサのJPSポートレットが使用できません。

解決方法

web.xml内のプリファレンス・ストア・パスoracle/portal/wsrp/server/fileStoreRootは、同じOC4Jインスタンスにデプロイされたすべてのプロデューサで同じにする必要があります。プリファレンス・ストアの場所を明示的に指定せずに、単にデフォルトのままにした場合、すべてのプロデューサがデフォルトの場所としてportletdataを使用します。OC4Jインスタンスのすべてのプロデューサに1つのパスを明示的に指定する場合、同じインスタンス内の他のすべてのプロデューサが同じパスを使用することを確認する必要があります。そうしないと、一部のポートレットが使用できなくなります。

G.1.3.5 JPSポートレットがPlutoで機能しない

JDeveloperを使用して作成されたJPSポートレットがPlutoで機能しません。

問題

PlutoにJPSポートレットをデプロイしようとすると、ポートレットによってエラーがスローされます。

解決方法

JPSポートレットをPlutoで機能させるには、ウィザードで次の手順を実行します。

  1. ポートレット・モードのJSPがWEB-INFフォルダに作成されるように変更する必要があります。

  2. 新たに作成されるweb.xmlで、<web-app>ルートのversion="2.4"以外のすべての属性を削除します。これが適用されるのは、JSR 168ポートレットを作成するときにServlet 2.4\JSP 2.0(J2EE 1.4)のWebアプリケーション・バージョンを選択した場合のみです。

G.1.4 PDK-Javaポートレットのトラブルシューティング

この項では、PDK-Javaポートレットで発生する代表的な問題と解決方法について説明します。

G.1.4.1 PDK-Javaポートレットにおけるリダイレクト・エラー

ポートレットにアクセスしたときに、次のメッセージが表示されました。

##REDIRECT##<URL>

問題

特定のポートレット・モードに切り替わった途端に、ポートレットがあるURLにリダイレクト・コールを発行したものと思われます。ポートレットでは、ポートレット内でのユーザー・アクション(フォーム・ポストなど)の結果としての場合を除き、リダイレクトを発行できません。

解決方法

この動作を回避するために、ポートレットをリライトします。

G.1.4.2 フル・ページ・ポートレット・モードでイメージが表示されない

フル・ページ・ポートレット・モード(編集モードなど)に切り替えると、イメージが破損するかなくなります。

問題1

プロデューサをWebCenter Suite OC4Jインスタンス上で実行中に、ポートレットはOracle ADFページ上で実行されています。イメージのページ・マークアップに相対URL(/images/image_nameなど)が含まれている場合は、イメージがADFPサーブレット上にないことが、最も可能性の高い原因です。

マークアップにイメージへのフルURLが含まれている場合は、プロデューサがリソース・プロキシを使用するように構成されていないことが、最も可能性の高い原因です。この場合、URLは、ADFPサーブレットを介してではなく、プロデューサを直接参照しますが、ユーザーはプロデューサに直接アクセスできません。リソース・プロキシを使用すると、イメージURLはリソース・プロキシ・サーブレットを指します。

解決方法1

次のアクションを実行します。

  • プロデューサ・アプリケーションのweb.xmlにリソース・サーブレット構成詳細が含まれていることを確認し、それらを追加する必要がある場合は、プロデューサをバウンスします。これで、各イメージ・タグのsrc属性にフルURLが表示されるはずです。A.1.1.9.2項「OracleAS PortalからのPDK-Javaプロデューサの再デプロイ」を参照してください。

  • Oracle Technology Networkからイメージzipファイルを取得し、ADFPサーブレット内で解凍します。

問題2

プロデューサをWebCenter Suite OC4Jインスタンス上で実行中に、ポートレットはOracle Application Server Portal(OracleAS Portal)ページ上で実行されています。この場合、リソース・プロキシが正しく構成されていないことが、最も可能性の高い問題です。

解決方法2

プロデューサ・アプリケーションのweb.xmlにリソース・サーブレット構成詳細が含まれていることを確認し、それらを追加する必要がある場合は、プロデューサをバウンスします。これで、各イメージ・タグのsrc属性にフルURLが表示されるはずです。A.1.1.9.1項「OracleAS Portalからのポートレットの使用」を参照してください。

G.1.4.3 非ASCII文字を使用するPDK-Javaポートレットが機能しない

問題

いずれかのポートレット・モードのリソースがJSPで、そのファイル名に非ASCII文字が含まれている場合、PDK-Javaポートレットは機能しません。

解決方法

JSPポートレット・モード・リソースの名前をASCII文字のみ使用するように変更します。

G.1.4.4 サービスIDにマルチバイト文字が含まれるPDK-Javaプロデューサが機能しない

PDK-Javaプロデューサは、サービスIDにマルチバイト文字を使用できません。

問題

登録は失敗し、プロデューサ・テスト・ページからエラーが返されます。

oracle.webdb.provider.v2.utils.soap.SOAPException: Can't read deployment
properties for service: ??????

解決方法

プロデューサを構築しなおし、マルチバイト文字のないサービスIDを指定します。

G.1.4.5 JSFアプリケーションのPDK-Javaポートレットを実行するイメージが見つからない

問題

相対URLでアクセスされるイメージが、OracleAS Portal環境にあったため、Oracle WebCenter Framework環境では見つけられません。

解決方法

この問題は次の2つの方法のいずれかで解決できます。

  • Oracle WebCenter Frameworkサーブレットにイメージを追加し、イメージ・マークアップ内の相対URLがそれらを指すようにします。

  • UrlUtils.constructResourceURLを使用して、リソースのプロキシ(リソース・プロキシがプロデューサに設定されている場合)を参照するか、またはWebプロデューサ上のイメージ・リソースを直接参照する絶対リンクを生成し、レンダリングします。Webプロデューサ・リソース・プロキシの詳細は、18.1.2.4項「内部/リソース・リンク」を参照してください。

G.1.5 Oracle ADF Facesアプリケーションから構築されたポートレットのトラブルシューティング

この項では、後からポートレットとして公開できるOracle ADFページのコーディング中、またはOracle ADF Facesアプリケーションから構築したポートレットの実行中に、発生する可能性のある代表的な問題と解決方法について説明します。

G.1.5.1 ポートレット作成中にエラーが発生する

Oracle ADFページをポートレット化しようとすると、エラーが発生し、先に進めなくなります。

問題

アプリケーションが、JSFを使用するWebアプリケーション・テンプレートを使用して構築されませんでした。

解決方法

必ずJSFを使用するWebアプリケーション・テンプレートの1つを使用して、アプリケーションを構築します。

G.1.5.2 ポートレットでのイメージおよびリソース検索中にエラーが発生する

ポートレットを実行すると、イメージとリソースを見つけることができずにエラーが発生します。

問題

これらのファイルのパスが、Webアプリケーション・コンテキスト・ルートを基準として指定されていません。

解決方法

web-app-context-rootを基準として、イメージとリソースの場所を指定します。相対パスの表記(../)を使用しないでください。

G.1.5.3 別のページへのナビゲートでプライベート・ポートレット・パラメータが失われる

ポートレットの実行中に、ページから離れ、再び戻った場合、ポートレットの状態が失われていることがあります。つまり、以前に設定したプライベート・ポートレット・パラメータの設定が失われているのです。

問題

Oracle ADF Facesアプリケーションの場合、状態はサーバー側に保存する必要があります。デフォルトでは、Oracle ADF Facesはクライアント側で管理されます。

解決方法

web.xmlで次のように定義することにより、サーバー側の状態管理を使用するように、アプリケーションを明示的に構成する必要があります。

<context-param>
  <param-name>javax.faces.state_saving_method</param-name>
  <param-value>server</param-value>
</context-param>

G.1.5.4 プロデューサのWSDL URLのテスト中にエラーが発生する

プロデューサのWeb Services Description Language(WSDL)URLを開発環境でテスト中に、エラーが発生します。

問題

OC4Jインスタンスはバウンスされませんでした。

解決方法

ブラウザでWSDL URLをテストする前にOC4Jを再起動します。

G.1.5.5 WSRPポートレットへのアクセス時にエラーが発生する

WSRPポートレットがOracle Application Server内のOC4Jインスタンスにデプロイされ、ブラウザでテストされるときに、404エラーが発生します。

問題

WSRPポートレットが、Oracle Application Server内のWSRPコンテナのないOC4Jのホーム・インスタンスにデプロイされました。

解決方法

WSRPポートレットを、ホーム・インスタンスのかわりに、Oracle Application ServerのOC4J_Portalインスタンスにデプロイします。

G.1.5.6 ポートレットから別のページにナビゲートできない

ポートレットから別のページにナビゲートできません。

問題

別のページへのナビゲートにresponse.sendRedirect("")を使用した可能性があります。

解決方法

ポートレット環境で正常に作業を行うには、faces-config.xmlでナビゲーション・ルールを持つナビゲーションを実装する必要があります。

G.1.5.7 ポートレットがページにレンダリングされない

ページにJSFポートレットをレンダリングしようとするときに、問題が発生する可能性があります。

問題

ページ定義pageDef.xmlでは、doExecuteWithParams実行可能ファイルのRefresh属性が、prepareModelではなくrenderModelに設定されている必要があります。

解決方法

Refresh属性を、次の例に示すようにrenderModelに設定します。

<invokeAction id="doExecuteWithParams" Binds="ExecuteWithParams"
   Refresh="renderModel" RefreshCondition="${param.id != null}"/>

G.1.5.8 ポートレットのデプロイ時の欠落クラス・エラー

ポートレット・デプロイメント・ディスクリプタportlet.xmlを更新し、アプリケーションをデプロイしようとすると、欠落クラス・エラーが発生します。

問題

正しいクラスがportlet.xmlに定義されていません。portlet.xmlファイルは、web.xmlファイルで指定されたフィルタと一致するように構成されていない可能性があります。

解決方法

portlet.xmlファイルでBridgeLifecycleListeners属性を使用して、次のようにクラスを指定します。

<init-param>
  <name>BridgeLifecycleListeners</name>
  <value>listener_class_n[,listener_class_n+1,...]</value>
</init-param>

たとえば、アプリケーションで、そのweb.xmlに次のコードが含まれるとします。

<filter>
  <filter-name>adfFaces</filter-name>
  <filter-class>oracle.adf.view.faces.webapp.AdfFacesFilter</filter-class>
</filter>

次のクラスをportlet.xmlに含める必要があります。

<init-param>
  <name>BridgeLifecycleListeners</name>
  <value>oracle.portlet.server.bridges.jsf.adf.ADFFacesBridgeLifecycleListener
    </value>
</init-param>

同様に、ADFBindingFilterが、web.xmlで次のように定義されているとします。

<filter>
  <filter-name>adfBindings</filter-name>
  <filter-class>oracle.adf.model.servlet.ADFBindingFilter</filter-class>
</filter>

次のクラスをportlet.xmlに含める必要があります。

<init-param>
  <name>BridgeLifecycleListeners</name>
<value>oracle.portlet.server.bridges.jsf.adf.
    BindingFacesBridgeLifecycleListener</value>
</init-param>

G.1.5.9 ポートレットがないエラー

JSFアプリケーションを、JSFポートレット・ブリッジを使用してポートレットに変え、ポートレットをパッケージ化、デプロイおよび使用すると、ポートレットに次のエラー・メッセージが表示されます。

Portlet Unavailable

問題

アプリケーションではOracle ADFバインディングを使用していませんが、portlet.xmlBindingFacesBridgeLifecycleListenerが含まれています。portlet.xmlに次のようなものが含まれている可能性があります。

     <init-param>
      <name>BridgeLifecycleListeners</name>
      <value>
       oracle.portlet.server.bridges.jsf.adf.ADFFacesBridgeLifecycleListener,
       oracle.portlet.server.bridges.jsf.adf.BindingFacesBridgeLifecycleListener
      </value>
     </init-param>

解決方法

portlet.xmlBindingFacesBridgeLifecycleListenerを参照しないようにします。次のようになります。

    <init-param>
     <name>BridgeLifecycleListeners</name>
      <value>
       oracle.portlet.server.bridges.jsf.adf.ADFFacesBridgeLifecycleListener
      </value>
    </init-param>

この場合、BindingFacesBridgeLifecycleListenerが省略されていることがわかります。

G.1.6 OmniPortletの問題のトラブルシューティング

この項では、OmniPortletの使用中に発生する可能性のある問題のトラブルシューティングに役立つ情報を提供します。

G.1.6.1 「定義」リンクを使用してOmniPortletを定義できない

実行時に「定義」リンクを使用して、OmniPortletを定義できません。

問題

OmniPortletでは、trueRenderPortletInIFrame値のみをサポートします。つまり、OmniPortletは、IFrame内でレンダリングする必要があるため、OmniPortletプロパティのRenderPortletInIFrametrueに設定します。「プロパティ・インスペクタ」で、RenderPortletInIFrameプロパティは、「表示オプション」の下にあります。

現在、RenderPortletInIFrameプロパティの値はfalseで、その結果、実行時に「定義」リンクをクリックすると、「タイプ」タブが表示されないため、OmniPortletの定義を進めることができません。

解決方法

OmniPortletを定義するために、「処理」リストから「カスタマイズ」を選択するか、Oracle JDeveloperの「構造」ペインでOmniPortletを選択して、RenderPortletInIFrametrueに設定します。

G.1.7 アプリケーション・ライフ・サイクルの問題のトラブルシューティング

この項では、WebCenterアプリケーションまたはそのコンポーネントをデプロイまたは事前デプロイするときに発生する可能性のある代表的な問題と解決方法について説明します。

G.1.7.1 デプロイ前ツールでMS Windows上に一時領域を作成できない

デプロイ前ツールは、一時ファイルを作成するための一時ディレクトリをロック解除できないため、一時ファイルの作成に失敗します。

問題

デプロイ前ツールを異常終了する(たとえば、[Ctl]を押しながら[C]を押す)と、一部の一時ファイルがロックされ、MS Windows上で、このロックが起動中のcmdプロセスに送信される可能性があります。したがって、一時ファイルに対するロックは解除されておらず、デプロイ前ツールを再び実行しようとすると、ロックのために、操作に必要な一時ファイルを作成できません。次のエラーが発生します。

Unable to create temporary work area

解決方法

Windowsのタスク マネージャを起動して、起動中のcmdプロセスを見つけ、終了します。

G.1.7.2 汎用EARファイルを作成できない

Oracle JDeveloperでアプリケーションをEARファイルにデプロイすると、デプロイメント・コンソールに次のようなエラーが表示されます。

Error during export

問題

アプリケーション・ポートレット・プロデューサの1つが使用できない可能性があります。

解決方法

プロデューサが停止している場合は、再起動する必要があります。プロデューサが起動しても、まだこのエラーが出る場合は、Oracleサポート・サービスに連絡し、Oracle JDeveloperログ・ウィンドウからの例外スタックを伝えてください。

G.1.7.3 ポートレット・プロデューサ用のMDSが見つからない

要求されたすべての設定を指定した後、デプロイ前ツールが次のエラーのため機能しなくなります。

Unable to find MDS Repository for Portlet Producers

問題

WebCenterアプリケーションWARデプロイメント・プロファイルで、汎用EARファイルを作成しなかった可能性があります。不注意にWARファイル・デプロイメント・プロファイルを使用したものと思われます。

解決方法

必ず「WebCenterアプリケーションWAR」を選択して、デプロイメント・プロファイルを作成しなおします。修正したデプロイメント・プロファイルを使用して、汎用EARファイルを再生成します。

G.1.7.4 予期しないポートレット例外でデプロイ前ツールが機能しない

要求されたすべての設定を指定した後、デプロイ前ツールが次のいずれかのエラーのため機能しなくなります。

Unexpected PortletException

Error during import

問題

ターゲット・プロデューサが停止している可能性があります。

解決方法

ターゲット・プロデューサをチェックし、プロデューサが起動され、稼働中であることを確認します。停止している場合は、再起動します。

G.1.7.5 デプロイされたアプリケーション・ページにポートレットが表示されない

アプリケーションはOracle JDeveloperの埋込みOC4Jでは問題なく実行されますが、Oracle JDeveloper外のOC4Jインスタンスにデプロイすると、ページ上のポートレットはすべてエラーを表示します。

No object with ID /oracle/adf/portlet/...

問題

ポートレットのメタデータが格納されているOracle Metadata Services(MDS)ディレクトリが見つかりません。

解決方法

Oracle JDeveloperでアプリケーションの汎用デプロイメント・ディスクリプタを作成する際、必ずディスクリプタをターゲット・プラットフォーム(たとえば、OC4J)に関連付けてください。

G.1.7.6 MDSデータが見つからないMDSRuntimeException

ページを実行しようとすると、ブラウザに次のいずれかのエラーが表示されます。

Servlet error: An exception occurred.  The current application deployment descriptors do not allow ...

MDSRuntimeException: No metadata found for metadata object .../*.jspx

問題

これらのエラーは、多数の問題が原因で起こる可能性があります。

  • Oracle ADF Facesページと自分のURLがフェース・サーブレットを起動しない。

  • adf-config.xmlに無効なメタデータ・パスの指定が含まれている。

  • web.xmlに、無効なoracle.mds.web-app-root指定が含まれている。

  • 指定した場所に表示文書が存在しない。

  • アプリケーションにorion-application.xmlが含まれていない。

解決方法

次のことをすべてチェックします。

  • URLがフェース・サーブレットを参照することを確認します。通常、このURLは次のようになっているはずです。

    <protocol>://<host>:<port>/<context root>/faces/<jspx document path>
    
  • MDSディレクトリで、表示文書の場所は次のとおりです。

    metadata-path_in_adf-config.xml/oracle.mds.web-app-root_in_web.xml/
    view_document_path_after_/faces_in_the_URL
    

    adf-config.xmlおよびweb.xml内の設定が有効なパスを指し、指定したパスに文書が存在することを確認します。


    注意:

    Oracle JDeveloperから実行するとき、adf-configmetadata-pathエントリが相対パスの場合があります。その場合、adf-config.xmlの場所が基準となります。

  • OC4Jの場合、アプリケーションにはorion-application.xmlが必要です。このファイルがなければ、adf-config.xmlは見つかりません。デプロイされたアプリケーションのMETA-INFディレクトリにorion-application.xmlが見つからない場合、Oracle JDeveloper内のアプリケーション・デプロイメント・ディスクリプタが、プラットフォーム設定でOC4J/Oracle Application Server接続に関連付けられていることを確認します。

G.1.7.7 欧州のMS Windowsでの事前デプロイ時にMDSパスが文字化けする

MDSパスに西欧の文字(母音字上のウムラウトなど)が含まれる場合、デプロイ前ツールで生成されるパスが文字化けします。

問題

事前デプロイ後、adf-config.xmlのMDSパスは文字化けし、使用できません。この破損したパスは、アプリケーションをデプロイしようとするとエラーを引き起こします。

解決方法

コマンド・プロンプトで、chcpを実行することで、コード・ページの値をチェックします。返された値が、その言語のDOSコード・ページ(たとえば、850)の場合、これをWidowsコード・ページ(たとえば、1252)に変更する必要があります。コード・ページを変更するには、コマンド・プロンプトでchcp code_page_numberを実行します。次に例を示します。

chcp 1252

G.2 WebCenterアプリケーションの診断(ロギング)

Oracle WebCenter Frameworkでは、受信するリクエストに関する情報をログ・ファイルに記録できます。この項では、ランタイムおよびデザインタイムの問題を診断する手順を提供します。内容は、次のとおりです。

G.2.1 ロギングの概要

Oracle WebCenter Frameworkロギングは、JDKロギング・フレームワークに基づいています。これにはJDKロギングApplication Programming Interface(API)が含まれます。JDKロギングには、JDK1.4以来Javaプラットフォームで使用可能な標準API、java.util.logging.Loggerが使用されています。基本のJDKロギングを強化するために、Oracle Diagnostic Logging(ODL)フレームワークでは、eXtensible Markup Language(XML)ファイルによる拡張Oracle固有メッセージの書式設定および構成をサポートしています。JDKロギング単独で、ODLの機能強化なしで使用することも、または診断メッセージの記録にJDK APIを使用し、強化された出力の書式設定および構成を、XMLファイルを介して提供するためにODLを使用することもできます。両方の方法について、この後の項で説明します。

G.2.2 ロギングの構成

ロギングを構成する前に、次のことを知っておく必要があります。

同じロギング・フレームワークがデザインタイムとランタイムのどちらにも使用されるため、構成における唯一の違いは、デザインタイム(Oracle JDeveloper)には、必ずjdev.confが正しいロギング構成ファイルを指すようにする必要があることです。このステップは、次の手順で必要に応じてコールアウトされます。

ロギングは次のいずれかの方法で構成できます。最初の方法は、強化されたODL出力を提供します。2番目の方法は、標準のJDKロギング出力のみが提供されます。ただし、いかなる場合でも、基本メッセージの本体は同じ情報を提供します。

G.2.2.1 ログ出力名および有効範囲

ログ出力は、WebCenterアプリケーションの特定のコンポーネントまたは領域の診断メッセージを提供します。表G-1は、使用可能なログ出力と、それらの追跡対象を示しています。ログ出力は、標準の階層ネーミング・スキームに準拠しています。したがって、親ログ出力(oracle.portletなど)を指定して、すべての子(oracle.portlet.bindingoracle.portlet.client)に対するロギングをオンにできます。

表G-1 Oracle WebCenter Frameworkで使用可能なログ出力

ログ出力名 説明
oracle.portlet

ポートレット・バインディングとポートレット・ランタイムの両方のロギングを提供します。

oracle.portlet.binding

ポートレット・バインディングのロギングを提供します。

oracle.portlet.client

ポートレット・ランタイムのロギングを提供します。

oracle.portlet.management.mbean

ポートレットMBeanのロギングを提供します。

oracle.portal

ポータル・サーバー・コンポーネント(WSRP、PDK-Java、Omniportlet、Webクリッピングなど)のロギングを提供します。

oracle.vcr

すべてのJavaコンテンツ・リポジトリ(JCR)関連機能のロギングを提供します。

oracle.vcr.datacontrol

JCRデータ・コントロールのロギングを提供します。

oracle.vcr.jam

JCRアダプタ・マネージャのロギングを提供します。

oracle.vcr.share

JCRランタイム共有パッケージのロギングを提供します。

oracle.vcr.dav

JCRゲット・ハンドラのロギングを提供します。

oracle.vcr.adapter

JCRアダプタのロギングを提供します。

oracle.adfdtinternal.config

Oracle JDeveloperでWebCenterアプリケーションのアプリケーション・ワークスペース構成のロギングを提供します。

oracle.adfdtinternal.model.portlet

ポートレットのデザインタイム拡張のロギングを提供します。

oracle.adfinternal.model.portlet

ポートレットのデザインタイム・モデルのロギングを提供します。

oracle.adfinternal.view.faces.renderkit.html.customizable

カスタマイズ可能なコンポーネントのロギングを提供します。

oracle.adfinternal.view.faces.ui.action

カスタマイズ可能なコンポーネントのロギングを提供します。

oracle.adf.share.security logger

Oracle ADFセキュリティのロギングを提供します。

oracle.adf.extapp

外部アプリケーションおよび資格証明マッピング・サービスのロギングを提供します。

oracle.adf.richtextportlet

リッチ・テキスト・ポートレットのロギングを提供します。


G.2.2.2 ロギング・レベル

ロギングのレベルを指定することにより、記録するログ情報の量を選択できます。表G-2には、デフォルトのJavaログ・レベルおよびODLログ・レベルが示されています。JDKおよびODLの両方のロギング構成ファイルで、JDKロギング・レベルを使用できます。ODLレベルは、ODLロギング構成ファイルでのみ使用できます。

表G-2 ロギング有効範囲

JDKロギング・レベル ODLロギング・レベル 説明

SEVERE+100脚注1

(コードでの指定のみ)

INTERNAL_ERROR

予期しないエラーまたは例外を記録します。これらのエラーは通常コード中の不具合を意味し、顧客はサポートに連絡して問題を報告する必要があります。

SEVERE

ERROR:1

システム管理者の注意が必要なシステム・エラーを記録します。

WARNING

WARNING:1

検出されたアクションまたは状態で、綿密に調べる必要があり、場合によってはエラーが発生する前に処置が必要になるものを記録します。

INFO

NOTIFICATION:1

デフォルトのロギング・レベル。 正常なアクションまたはイベントを記録します。これは、ユーザー操作(ログイン完了など)、または自動操作(ログ・ファイルの回転など)です。

CONFIG

NOTIFICATION:16

構成関連のメッセージまたは問題を記録します。

FINE

TRACE:1

デバッグまたはパフォーマンス監視に使用されるトレース・メッセージまたはデバッグ・メッセージを記録します。通常は、詳細なイベント・データが含まれます。

FINER

TRACE:16

かなり詳細なトレース・メッセージまたはデバッグ・メッセージを記録します。

FINEST

TRACE:32

きわめて詳細なトレース・メッセージまたはデバッグ・メッセージを記録します。


脚注1 SEVERE+100は、コード内でのみ使用できます。構成ファイルでは使用できません。

JDKロギング・レベルの詳細は、次のURLを参照してください。

http://java.sun.com/j2se/1.4.2/docs/api/java/util/logging/Level.html

G.2.2.3 ODL構成ファイルによるロギングの構成

OLD機能を利用するロギングを構成するには、ORACLE_HOME/j2ee/oc4j_instance/configディレクトリにインストールされているj2ee-logging.xmlファイルを使用します。

ODLフレームワークには、Oracleログ分析ツールとログ・データを自動的に統合するために、標準Javaフレームワークを補完するプラグイン・コンポーネントが用意されています。ODLフレームワークでは、ログ・ファイルはプレーン・テキストまたはXMLに書式設定され、他のOracle Application Serverやカスタム開発コンポーネントでの分析や再利用が容易になります。

oracle.core.ojdl.loggingパッケージには、ハンドラ・クラスODLHandlerが含まれており、XMLベースのODL形式またはプレーン・テキストのいずれかでログ出力を生成します。Javaログ出力でODL形式によるログ・メッセージを出力できるようにするには、各ログ出力をODLHandlerにマップする必要があります。このマッピングは、j2ee-logging.xmlを介して管理します。ODLフレームワークを使用するためのJavaログ出力構成の詳細は、『Oracle Containers for J2EE開発者ガイド』を参照してください。j2ee-logging.xmlの一般情報は、『Oracle Application Development Framework開発者ガイド』を参照してください。

j2ee-logging.xmlファイルを使用してロギング情報を構成し、ログ・メッセージをODL形式で出力する手順は、次のとおりです。

  1. ORACLE_HOME/j2ee/home/configディレクトリにナビゲートし、エディタでj2ee-logging.xmlファイルを開きます。コンポーネントがホーム・インスタンス以外のインスタンスにデプロイされる場合、それに応じてhomeをそのパスに置き換える必要があります。たとえば、OC4J_WebCenterというOC4Jインスタンスのパスは、ORACLE_HOME/j2ee/OC4J_WebCenter/configとなります。

  2. ログ出力をXMLまたはプレーン・テキストのいずれの形式にするかを選択します。デフォルトの形式はXMLです。


    注意:

    j2ee-logging.xmlでは、その他のログ・プロパティ(ログ・ファイルの場所など)も変更できます。次に例を示します。
    <property name='path' value='C:/TEMP/log/'/>
    

    • 例G-1は、サンプルj2ee-logging.xmlのXML出力のロギングを構成する部分です。

      例G-1 XMLロギング出力のためのj2ee-logging.xml

      <logging_configuration>
             <log_handlers>
               ...
               <log_handler name='ptlLoggingHandler'
                 class='oracle.core.ojdl.logging.ODLHandlerFactory'>
                 <property name='path' value='C:/TEMP/log/'/>
                 <property name='maxFileSize' value='104857600'/>
                 <property name='maxLogSize' value='1048576000'/>
               </log_handler>
             </log_handlers>
             <loggers>
               ...
               <logger name='oracle.adfinternal.model.portlet'
                       level='FINER'
                       useParentHandlers='false'>
                 <handler name='ptlLoggingHandler'/>
               </logger>
               <logger name='oracle.adfdtinternal.model.portlet'
                       level='FINER'
                       useParentHandlers='false'>
                 <handler name='ptlLoggingHandler'/>
               </logger>
               <logger name='oracle.portlet.client'
                       level='FINE'
                       useParentHandlers='false'>
                 <handler name='ptlLoggingHandler'/>
               </logger>
             </loggers>
           </logging_configuration>
      
    • 例G-2は、サンプルj2ee-logging.xmlのプレーン・テキスト出力のロギングを構成する部分です。太文字の行に注意してください。最初の太文字の2行で、プレーン・テキスト出力のログを構成します。2番目の太文字の2行は、プレーン・テキスト形式で出力を表示する場合によくあるクラッタを削減します。

      例G-2 プレーン・テキスト出力のためのj2ee-logging.xml

      <logging_configuration>
             <log_handlers>
               ...
               <log_handler name='ptlLoggingHandler'
                 class='oracle.core.ojdl.logging.ODLHandlerFactory'>
                 <property name='path' value='C:/TEMP/log/diag.log'/>
                 <property name='maxFileSize' value='104857600'/>
                 <property name='maxLogSize' value='1048576000'/>
                 <property name='format' value='ODL-Text'/>
                 <property name='useSourceClassAndMethod' value='true'/>
                 <property name='useDefaultAttributes' value='false'/>
               </log_handler>
             </log_handlers>
             <loggers>
               ...
               <logger name='oracle.adfinternal.model.portlet'
                       level='FINER'
                       useParentHandlers='false'>
                 <handler name='ptlLoggingHandler'/>
               </logger>
               <logger name='oracle.adfdtinternal.model.portlet'
                       level='FINER'
                       useParentHandlers='false'>
                 <handler name='ptlLoggingHandler'/>
               </logger>
               <logger name='oracle.portlet.client'
                       level='FINE'
                       useParentHandlers='false'>
                 <handler name='ptlLoggingHandler'/>
               </logger>
             </loggers>
           </logging_configuration>
      
  3. j2ee-logging.xmlファイルを保存します。

  4. デザインタイム環境で、JDEV_HOME/jdev/bin/jdev.confを次のように更新することで、ログ出力の設定用にj2ee-logging.xmlを指定する必要があります。

    # Add OJDL jars in the classpath
    AddJavaLibFile ../../BC4J/lib/adfshare.jar
    AddJavaLibFile ../../diagnostics/lib/ojdl.jar
    # Add logger configuration for diagnostics logging
    AddVMOption
    -Djava.util.logging.config.class=oracle.core.ojdl.logging.LoggingConfiguration
    AddVMOption -Doracle.core.ojdl.logging.config.file=
    JDEV_HOME/j2ee/home/config/j2ee-logging.xml
    
  5. Oracle Application Serverを再起動します。

    ログ・ファイルは、j2ee-logging.xmlファイルで指定した場所、つまりC:/TEMP/log/diag.logに生成されます。ログ・ファイルは、Oracle Enterprise Manager 10gでも表示できます。


注意:

デザインタイム環境で、デフォルトのj2ee-logging.xmlファイルを使用するかわりに、カスタム・プロパティ・ファイルを作成し、そのファイルをロギング構成の指定に使用できます。ただし、カスタム・プロパティ・ファイルを使用する場合、新しいプロパティ・ファイルを指すように<JDEV_HOME>/jdev/bin/jdev.confファイルを編集する必要があります。

G.2.2.4 デフォルトJDKロギング・プロパティ・ファイルによるロギングの構成

標準JDKロギングを構成するには、デフォルトのロギング・プロパティ・ファイルjdk/jre/lib/logging.propertiesを使用し、次の手順を実行します。

  1. jdk/jre/libディレクトリにナビゲートし、エディタでlogging.propertiesを開きます。

  2. Global propertiesセクションで、使用するログ・ハンドラ・クラスを指定します。これにより、ログ情報をコンソールに出力するか、ログ・ファイルに記録するかが決まります。デフォルトでは、コンソール出力が構成されており、エントリは次のように表示されます。

    handlers= java.util.logging.ConsoleHandler
    

    ファイル出力も有効にするには、FileHandlerエントリを次のように非コメント化します。

    #handlers= java.util.logging.FileHandler, java.util.logging.ConsoleHandler
    
  3. Global propertiesセクションでlevelを設定して、グローバル・ロギング・レベルを指定します。この指定により、記録する必要のあるイベントのタイプを制御します。デフォルトのグローバル・ロギング・レベルはINFOです。サポートされているログ・レベルについては、G.2.2.2項「ロギング・レベル」で説明しています。

  4. Handler specific propertiesセクションで、次の値を指定します。

    • java.util.logging.FileHandler.pattern: ログ・ファイルの名前および場所を指定します。


      注意:

      デザインタイムに、FileHandlerパターンをportlet.logと指定した場合、ログ・ファイルは<JDev_install>/jdev/binディレクトリに生成されます。

      UNIXおよびWindowsの各プラットフォームに使用されるFileHandlerパターンについては、次の場所を参照してください。

      http://java.sun.com/j2se/1.4.2/docs/api/java/util/logging/FileHandler.html


    • java.util.logging.ConsoleHandler.level: コンソールに出力されるメッセージを制限するロギング・レベルを指定します。

  5. Facility specific propertiesセクションで、各ログ出力に、次の例に示すように追加のコントロールを指定できます。

    oracle.adfinternal.model.portlet.level = FINER
    oracle.adfdtinternal.model.portlet.level = FINER
    oracle.portlet.client.level = FINE
    oracle.vcr.datacontrol.level = FINE
    oracle.vcr.adapter.fs.level = FINE
    
  6. logging.propertiesファイルを保存します。

例G-3は、logging.propertiesファイルでのサンプル構成を示しています。新しい設定は太字のテキストで示されています。

例G-3 logging.propertiesファイルのサンプル構成

# "handlers" specifies a comma separated list of log Handler
# classes.  These handlers will be installed during VM startup.
# Note that these classes must be on the system classpath.
# By default we only configure a ConsoleHandler, which will only
# show messages at the INFO and above levels.
handlers= java.util.logging.ConsoleHandler

# To also add the FileHandler, use the following line instead.
handlers= java.util.logging.FileHandler, java.util.logging.ConsoleHandler

  # Default global logging level.
  .level= INFO
  ############################################################
  # Handler specific properties.
  # Describes specific configuration info for Handlers.
  ############################################################

  # default file output is in user's home directory.
  java.util.logging.FileHandler.pattern = %h/portlet%u.log
  java.util.logging.FileHandler.limit = 50000
  java.util.logging.FileHandler.count = 1
  java.util.logging.FileHandler.formatter = java.util.logging.SimpleFormatter

  # Limit the message that are printed on the console to INFO and above.
  java.util.logging.ConsoleHandler.level = INFO
  java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter

  ############################################################
  # Facility specific properties.
  # Provides extra control for each logger.
  ############################################################

  oracle.adfinternal.model.portlet.level = FINER
  oracle.adfdtinternal.model.portlet.level = FINER
  oracle.portlet.client.level = FINE
G.2.2.4.1 カスタムJDKログ出力プロパティ・ファイルによるロギングの構成

デザインタイムで、デフォルトのlogging.propertiesファイルを使用するかわりに、カスタム・プロパティ・ファイルを作成し、そのファイルを使用して標準のJDKロギング構成を指定できます。ただし、カスタム・プロパティ・ファイルを使用する場合、新しいプロパティ・ファイルを指すようにJDEV_HOME/jdev/bin/jdev.confファイルを編集し、次のエントリを更新する必要があります。

AddVMOption -Djava.util.logging.config.file=<path and name of the properties file>

たとえば、/tmpディレクトリの下でportlet-logging.propertiesというカスタム・ファイルを作成できます。G.2.2.4項「デフォルトJDKロギング・プロパティ・ファイルによるロギングの構成」で説明しているように、デフォルトのlogging.propertiesファイルの内容を新しいファイルにコピーし、構成情報を更新します。この後、ログ出力設定用にportlet-logging.propertiesを指すように、JDEV_HOME/jdev/bin/jdev.confファイルを次のように更新する必要があります。

AddVMOption -Djava.util.logging.config.file=/tmp/portlet-logging.properties

ログ出力の設定は、作成したportlet-logging.propertiesファイルから取得されるようになります。

G.2.3 ログの表示

適切なエディタまたはビューアを使用すれば、構成ファイルで指定したどの場所からでもログ・ファイルを開けます。Oracle JDeveloperを使用している場合は、Oracle JDeveloperログ・ウィンドウで診断の出力を表示できます。Oracle JDeveloperログ・ファイルのデフォルトの場所は、JDEV_HOME/jdev/bin/portlet.logです。

G.3 関連情報

次のURLにあるOracle MetaLinkで、さらに多くの解決方法が見つかります。

http://metalink.oracle.com

問題の解決方法が見つからない場合は、サービス・リクエストを記録してください。

Oracleサポート・サービスに問い合せてください。


関連項目:

Oracle Application Serverのリリース・ノート(Oracle Technology Network(OTN)のhttp://www.oracle.com/technology/documentation/index.htmlで入手可能)