表 6 WebLogic Portal フレームワークと開発に関する確認済みの制限事項とその回避策
|
|
|
|
|
エクスポート/インポート ユーティリティでは、英語以外のロケールでインポートしたアーティファクトの追加のロケールが作成される。
この問題は、ユーザがライブラリ内のブックを en_US 以外のロケールにローカライズし、そのブックを .pinc としてエクスポートしてから、その .pinc を en_US 以外のロケールで送り先にインポートした場合に発生する。リソースをインポートする場合に、ライブラリ レベルにスコープが設定されていると、エクスポート/インポート ユーティリティでは、ライブラリの一部のアーティファクトがローカライズされていなくても、メイン ブック内だけでなくライブラリ内のすべてのページとブックに対応するエントリが L10N_LOCALE テーブルに作成される。
回避策 : .pinc リソースを en_US 以外のロケールでインポートするときは、ライブラリ スコープを使用しない。
|
|
|
KeyBootstrap クラスで鍵を生成できない
ドメイン スコープの複数の起動クラスを同時に使用することができないため、Oracle コマース機能で構築されたコマース アプリケーションでは、アプリケーション スコープ JDBC プールの使用がサポートされない。
|
|
|
ポートレットの非同期表示が有効な場合は、ポートレットで直接ウィンドウのモードまたは状態を変更できない
WebLogic Portal では、ポートレットの現在のウィンドウの状態とモードを、プログラムによって、または URL に追加されたパラメータを使用してポートレットから変更できる。非同期表示 (AJAX または iframe を使用) が有効な場合は、これらのメカニズムによって一貫性のあるビューがエンド ユーザに表示されない。特に、ポートレットの上に表示されるタイトルバーには、モードまたは状態の変更がすぐに反映されない。
|
|
|
プロキシ ポートレットの状態管理 : 8.1.x のコンシューマで、プロデューサのセッション タイムアウトが正しく回復されない。
コンシューマが 8.1.x を実行中の結合されたコンフィグレーションの場合、コンシューマがプロデューサのセッション タイムアウトから正しく回復しないことがある。
コンシューマのセッション タイムアウトは、すべてのプロデューサのうち最も小さい正のセッション タイムアウトよりも厳密に少なくする必要がある。たとえば、3 つのリモート プロデューサ RP1、RP2、および RP3 に対応する 3 つのプロキシ ポートレット PP1、PP2、および PP3 がコンシューマ ポータルにあるとする。RP1 にはセッションがなく (セッション タイムアウト = 0)、RP2 には 5 分のセッション タイムアウトがあり、RP3 には 2 分のセッション タイムアウトがある。したがって、コンシューマのセッション タイムアウトは 2 分未満にする必要がある。
すべてのプロキシ ポートレットを別の 1 つのグループに割り当てる。このオプションの欠点は、リモート ポートレットとの状態の共有ができないことである。
最後に、(1) と (2) が実行できない場合は、プロデューサのセッション タイムアウトについては、ユーザがブラウザを閉じてポータルを開き直す必要がある。
|
|
|
オフサイト URL の生成時に非圧縮 URL テンプレートを使用する必要がある
圧縮が有効な Web アプリケーションで、GenericURL、そのサブタイプまたは対応する JSP タグを使用してオフサイト URL (URL を生成するコードの Web アプリケーションでホストされないリソースの URL) を生成する場合は、圧縮が無効な URL テンプレートを指定する必要がある。
GenericURL redirectURL = GenericURL.createGenericURL(request, response); redirectURL.setDomain("www.yahoo.com"); redirectURL.setPort(80); redirectURL.setPath("/compressedUrl/index.html"); redirectURL.setTemplate("no_compression_template");
ここで、「no_compression_template」は、{url:compression} 擬似トークンを除外する URL テンプレートの名前である。
回避策 : URL 圧縮を使用しない。また、GenericURL を使用してオフサイト リソースの URL を作成しない。
|
|
|
実行中のサーバに対してサーバ ポートの変更を行うと、ポータル アプリケーションを再起動する必要がある
実行中のサーバに対してサーバ ポート (HTTP または HTTPS) の変更を行うと、その変更を反映するためには、影響を受けるすべてのポータル アプリケーションを再起動する必要がある。
|
|
|
WebLogic Portal では、カスタマイズされたポータル オブジェクトを使用した既存のポータル Web アプリケーションのコンテキスト ルートの変更がサポートされない。
.portal ファイルをカスタマイズ済みの場合や、デスクトップ用の資格を作成済みの場合は、そのカスタマイズおよび資格を削除しない限り、Web アプリケーションのコンテキスト ルートを変更できない。
|
|
|
onInit イベントがリモート ポートレットでサポートされない
「onInit」タイプのハンドラを登録することで、ポートレットはオプションでイベント ハンドラを登録してポートレットの開始時に通知を受けることができる。この機能は、現在リモート ポートレットではサポートされていない。
回避策 : 通常、ポートレットは、ユーザの対話が発生した場合または他のイベントが処理された場合に、onInit を論理的に遅く実行することができる。
|
|
|
複数のユーザ のプロパティ セットの値を使用する条件式に基づく訪問者ロールは、訪問者が適切にロールを予測できないよう「false negative」値を返す。
訪問者ロールは複数のプロパティに基づく条件がある場合、条件に入力したいずれかの値 (UUP impl またはデフォルトな Property Manager によって提供される) が「null」である場合は、「null」が明示的にチェックされていないので、結果 (つまり、ロール) は確定できない。
プラットフォーム : XACML セキュリティ プロバイダでのみ行われる。
回避策 : プロパティ セット属性に対して常にデフォルト値が含まれているので、比較する場合「null」が使用されない。
|
|
|
ポートレットの表示依存関係は HTTP アドレス可能なリソースを参照するための完全修飾 URL をサポートしない。
ポートレットの依存関係表示ファイルはスクリプト、形式、および他の HTTP アドレス可能なリソースを参照するには完全修飾 URL の使用をサポートしない。例えば、スクリプトは、.dependencies ファイルで定義される グーグルマップを参照しようとすると、「ルック アンド フィール リソースはベース パス <path> で見つかりません。」というエラーが発生する。
| 注意 : |
複数のポートレットは同じリソースをロードしようとすると、このアプローチの使用が限定されています。このように複製されたリソースをロードする場合には、JavaScript に対して保護するか避けることが必要です。 |
|
|
|
新しいライブラリ ポートレットを作成する可能なユーザを決定するために、REST はより細かく機能を管理することが必要である。
新しいライブラリ ポートレットを作成するために、REST はより細かくエンド ユーザの機能を管理することが必要である。
回避策 : rest-config.xml または web.xml ファイルの使用は以下のとおりである。
REST サーブレットを無効にする。
rest-config.xml を使用してポートレットを作成する REST コマンドを無効にする。
カスタム アクセスを確認して rest-config.xml でコンフィグレーションするには、com.bea.wlp.rest.command.MethodPermission のバージョンを実装する。
|
|
|
デフォルト ポーリングは 3 秒から 5 秒に変更される場合。
デフォルト ポーリングの間隔が増加される。この間隔はシステム プロパティに設定する。
-Dcom.bea.p13n.management.ApplicationFilePoller.sleepInterval
|
|
|
ポータル EAR プロジェクトの名前にスペースが含まれていると、Portal Administration Console ツールにはアイコンは表示されない。
たとえば、ポータル EAR プロジェクトの名前にスペースが含まれていると、コンソール内のアイコンはデスクトップの作成ウィザードに表示されない。また、Administration Console で「アイコンが指定されていない」エラーが表示される。
<Aug 30, 2007 1:33:00 PM MDT> <Error> <netuix> <BEA-423139> <The look and feel resource wlp-help-16.gif could not be found in the path /framework/skins/default/images.>
回避策 : ポータル EAR プロジェクトの名前からすべてのスペースを削除する。
|
|
|
JSF 検証がポータルの namingContainer タグで機能しない。[IllegalStateException: Client-id] 例外が発生する。
既知の問題は JSF 1.1 のいくつかのバージョンに存在する。そこで、コンポーネント (独自のクライアント ID を指定しない) に対する ID の生成に使用されるシーケンス番号はリセットされない。MyFaces ページが再表示する場合およびナビゲーション ルールが定義されていない場合は、IllegalStateException が発生する場合がある。
回避策 : 下記の回避策を利用することができます。
JSF 1.2 (生成された ID の順序を別の方法で処理する)。
問題が修正された JSF 1.1 のバージョンを使用する。(現在、10.2 には、このようなバージョンが付属していません)
namingContainer コンポーネントを f:subview コンポーネントで囲むと、シーケンス生成がリセットされる。
| 注意 : |
この問題によって、ポータルの動作が変更されない。 |
|
|
|
Java ポートレット (JSR-168) からタイトルバーが削除できない。
Java ポートレット (JSR-168) からタイトルバーが削除できない。
回避策 : タイトルバーを削除するには、ポートレットでボーダレス テーマを使用する。
|
|
|
jsp:useBean を使用する JSTL タグより JSF に対して複数の Bean インスタンスが使用される。
JSF ポートレットは、 jsp:useBean を使用する JSF 管理対象 Bean と JSTL タグを統合しようとすると、JSTL タグより JSF のために異なる Bean インスタンスが使用される。
回避策 : これは、 jsp:useBean が JSF で使用されている管理対象 Bean の環境を考慮していないために起こる。正しく機能させるため、 jsp:useBean によって参照する Bean インスタンスは、最初、JSF 内からアクセスするかまたは以下のように変数リゾルバへ明確に呼び出すことで、「作成」される必要がある。
<jsp:scriptlet> javax.faces.context.FacesContext.getCurrentInstance().get Application(). getVariableResolver().resolveVariable(javax.faces.context .FacesContext. getCurrentInstance(), 'myVar'); </jsp:scriptlet>
|
|
|
Apache MyFaces が潜在的な JSF 実装 プロバイダである場合、セッションを無効にすると、IllegalStateException 例外が発生する。
Apache MyFaces を潜在的な JSF 実装 プロバイダとして使用する JSF ポートレットでは、
JSF アプリケーション ロジックのセッションを無効にする場合は、JSF アクションの処理を実行した後で、IllegalStateException 例外が発生する。
ログアウトのセッションを有効にする。
Sun RI のような別の JSFの実装を使用する。
MyFacesの複数のバージョンを使用する。ここでは、インストール済みのNavigationHandler は、リクエストがMyFaces JSF ブリッジに対するものかのチェック、セッションの有効性のチェック、またはセッションが無効になった場合にはIllegalStateExceptions の捕捉をする。
バッキング ファイルでは、セッションを無効にする。
セッションを無効にする中間の非 JSF ポートレット (サーブレットや .jsp など) にリダイレクトし、ログイン ページに転送される。
|
|
|
<f:param> JSF タグが WSRPで機能しない。
WSRP を使用すると、 <f:param> タグは機能しない。これは、事前表示およびライフサイクル段階での表示でリクエスト パラメータを利用できないことに起因する。WSRPを通じて使用されるすべてのポートレットタイプに対して [true] となる。「 表示コードでのリクエスト パラメータへのアクセスの回避」を参照。
回避策 : パラメータがコンテナ管理対象 Bean に配置されるか、 handlePostbackData の間に処理される必要がある。
|
|
|
ポートレットが、データベースに逆アセンブルするよう title 属性を指定する必要がある。
.portlet XML スキーマが、ポートレットに対して、 <title> 属性を指定しないことを許可する。ただし、データベースにポートレットの逆アセンブルを成功させるために title 属性が必要である。 <title> 属性セットのないポートレットを逆アセンブルしようとすると、 XmlDisassemblerException 例外が発生する。
回避策 : 逆アセンブルが成功するように、.portlet ファイルに <title> 属性を追加する。
|
|
|
ポートレットを公開すると、公開サービスは公開のコンテキストからのテーマを正しく反映されない。
ポートレット インスタンスがテーマに影響されると、表示依存関係がテーマの影響を正しく反映しない。さらに、ポートレットの公開バージョンではテーマが正しく表示されない。API および URL モードで公開したポートレットにおいて適用される。
完全 URL モードで公開したポートレットにテーマの視覚的側面が含まれない。
回避策 : この問題のために確認済みの回避策は存在しない。
|
|
|
リース管理者によって登録された害のないエラー メッセージ
リース管理者によって次のエラー メッセージが記録される。このエラー メッセージは無害で、無視できる。
<BEA-403302> <An unexpected SQL exception occurred java.sql.SQLException: Data exception -- row already exist in index PK_LEASE on table P13N_LEASE.
複数のノードが同じリースを同時に取得しようとすると、このエラーがクラスタ環境でのみ記録される。
|
|
|
XIE によって非同期 JavaScript をインポートすると、参照スクリプトが存在しない場合に Internet Explorer 7 がハングする可能性がある。
存在しない外部 JavaScript リソースを参照するポートレット コンテンツまたは表示依存関係がXIE によってロードされるか、ロードに失敗した場合、Internet Explorer 7+ で実行している XIE ライフサイクル処理に失敗する。これは、XIE が、連続的にスクリプトを実行することで最初のブラウザのロードと類似した動作をするが、IE7+ のようなブラウザでスクリプトが非同期的にフェッチされるため。スクリプトをロードすることに失敗すると (スクリプトが存在していないことによる)、IE7+ はそのスクリプトに対して「ロード」時に readyState フィールドの進行を停止してエラー メッセージを発行しない。
回避策 : ここで参照されている .js ファイルが指定されたパスに存在するようにする。
|
|
|
コンテンツ プレゼンタ プレビュー モードでテーマの変更が表示されない
コンテンツ プレゼンタ プレビュー モードでは、現在のユーザに対しポートレットが現在のウィザード設定での表示方法についてのプレビューを示す。ただし、このリリースでは、テーマ設定の変更がプレビュー モードで表示されない。選択したテーマを反映させるには、ウィザードで行った変更を保存する。
|
|
|
ポータル エディタでドラッグ アンド ドロップ操作の際に、Linux プラットフォーム上で問題が発生する
複数のポータル エディタ (または、他の関連するポータル アーティファクト) を同時に開いている場合、コンポーネントをドラッグ アンド ドロップする操作に関して既知の問題がある。この問題は Linux プラットフォームにのみ発生する。アクティブな (表示) ポータル エディタを対象とするドラッグ アンド ドロップ 操作において、誤処理され、非アクティブな (非表示) ポータル エディタのタブに不適切に配信される。コンポーネントを Workshop デザイン パレットからポータル エディタにドラッグするか、ポータル エディタ内でコンポーネントの位置を変更するためにドラッグ アンド ドロップを使用するどちらの場合も、この問題が発生する。
プラットフォーム : Enterprise Linux 5
回避策 : 一度に 1 つの開いているポータルでのみ操作できるように他の開いている非アクティブなエディタ タブを閉じる。
|
|
|
作成中にファセットのインストールが失敗したプロジェクトのファセットを変更する場合、非 Web ファセットが表示される。
プロジェクト作成時に、ファセットのインストールが失敗すると (LP DVT Sample ファセットなど)、プロジェクト プロパティから利用できる プロジェクトのファセットを変更するウィザードがプロジェクトに対して無効な非 Web ファットを表示する。これらのファセットは表示には問題がないがウィザードによって選択できないようになる。
|
|
|
ポートレット ウィザードを使用してページフロー ポートレットを作成した場合、JSP ポートレットが作成されない。
ポートレット ウィザードを使用してページフロー ポートレットを作成する場合、適切なホーム jsp が作成されない。たとえば、pageflow\my\Flow.jpf を作成すると、このページフローは\my\flow.jsp でのデフォルトの JSP を参照する。ただし、ウィザードはこの JSP ファイルを作成しない。
回避策 : 手動で jsp を作成する。あるいは、ページフロー作成ウィザードを使用することで最初にページフローを作成して、それでページフローからポートレットを作成する。
|