| Oracle® Fusion Middleware Oracle WebCenter Portal開発者ガイド 11g リリース1 (11.1.1.7.0) B72084-02 |
|
![]() 前 |
![]() 次 |
この付録では、WebCenter Portal: Frameworkアプリケーションの作成時に、作成および変更されるファイルについての参照情報を提供します。この付録には次の項が含まれます:
データ・モデルやユーザー・インタフェース・プロジェクトで作成するOracle Application Development Framework (Oracle ADF)メタデータ・ファイルの完全な参照は、『Oracle Fusion Middleware Oracle Application Development Framework Fusion開発者ガイド』を参照してください。
主要なアクションがファイルにどのような影響を与えるかについては、4.2.2項「メタデータ・ファイルに影響を与える開発者アクション」を参照してください。
Oracle WebCenter Frameworkを使用してアプリケーションおよびコンポーネントを作成する際、ポートレットの構築や消費などのアクションを実行するときに、いくつかのファイルが作成されます。アプリケーションの作業を行うには、これらの各ファイルについて、またアプリケーションとの関連について、多少知っておくと便利です。Oracle WebCenter Frameworkの影響を受けるファイルは、次の2つのカテゴリに大別できます。
すべてのOracle ADFアプリケーションに共通のファイル(web.xmlなど)。これらのファイルについては、Frameworkアプリケーションのためにどのような追加や変更が加えられるかを知っておくと便利です。この付録ではこれらの変更について説明しますが、共通ファイルの詳細は、『Oracle Fusion Middleware Oracle Application Development Framework Fusion開発者ガイド』を参照してください。
Frameworkアプリケーション固有のファイル(portlet.xmlなど)。これらのファイルについては、ファイルの目的とその内容を知っておくと便利です。これらのファイルについては、この付録で詳細に説明します。
作成および変更されるファイルは、Frameworkアプリケーションの一部として作成するオブジェクトと密接に関連しています。したがって、これらのファイルは、次のようにオブジェクトごとに説明するのが最もわかりやすい方法です。
この項は、次の各項で構成されています。これらの項では、WebCenter PortalのFrameworkアプリケーション・テンプレートを使用してアプリケーションを作成する際に作成されるファイルについて説明します。
また、アプリケーションで使用されるイメージ・ファイルも作成されます。
catalog-registry.xmlは、カタログ・レジストリ・ファイルです。ユーザーがリソース・カタログを作成または編集する際にリソース・マネージャで使用します。レジストリは、作成または変更するカタログに含められるすべてのアイテムのスーパーセットを定義します。1つのアプリケーションに対して複数のカタログを作成できますが、1つのアプリケーションが持つことのできるカタログ・レジストリ・ファイルは1つのみです。
default-catalog.xmlは、デフォルト・リソース・カタログです。ユーザーが実行時にコンポーザを使用してページを編集すると、デフォルトのカタログ・ファイルは、ページに追加できるすべてのアイテムを指定します。
default-navigation-model.xmlは、ポータル・サイトのナビゲーション構造に組み込まれるナビゲーション・モデル・ファイルです。詳細は、第10章「ポータル用のナビゲーション・モデルの構築」および第8.5.3項「ナビゲーション・モデルおよびナビゲーション・レジストリの理解」を参照してください。
index.htmlは、リダイレクト文を含んでおり、ページ階層で指定されたhomeページを参照するURLエレメントpages_homeなどのポータル・ナビゲーション・モデルを参照します。詳細は、第8.13項「デフォルトのホーム・ページおよびログイン/ログアウトしたターゲット・ページの変更」を参照してください。
navigation-registry.xmlは、ユーザーがナビゲーション・モデルを作成または編集する際にリソース・マネージャで使用します。レジストリは、作成または変更するモデルに含められるすべてのアイテムのスーパーセットを定義します。1つのアプリケーションに対して複数のナビゲーション・モデルを作成できますが、1つのアプリケーションが持つことのできるナビゲーション・レジストリ・ファイルは1つのみです。詳細は、第10章「ポータル用のナビゲーション・モデルの構築」を参照してください。
pages.xml(ページ階層ファイル)は、ページ間の親子関係を使用してページをツリー構造に編成します。この階層構造により、ページからサブページにセキュリティ設定を簡単に伝播または継承することが可能になります。詳細は、第8.5.1項「ページ、ページ・テンプレートおよびポータルのページ階層の理解」を参照してください。
home.jspxは、ユーザーにドキュメント・サービス、リンク・サービス、タグ・サービスおよびディスカッション・サービスなどの機能へのアクセスを提供するデフォルト・ホームページです。
login.jspxは、ユーザーにログイン/ログアウト機能を提供するデフォルト・ログイン・ページです。ログイン・ページのカスタマイズの詳細は、第68.9項「ログイン・ページへのポートレットの追加」を参照してください。
navigation-renderer.jspxは、ポートレット、コンテンツ、タスク・フローなど、ナビゲーションに表示されるページ以外のリソースのレンダリングに使用されます。詳細は、第10.5項「ナビゲーション・レンダラの編集」を参照してください。
pageTemplate_globe.jspxは、アプリケーションの作成時に「標準ポータル機能のアプリケーションの構成」オプションを選択したときに作成される2つのシード・ページ・テンプレートの1つです。このテンプレートは、基本的にpageTemplate_swooshy.jxpxと同じ機能を提供しますが、グラフィックは異なります。詳細は、第11.2項「ページ・テンプレートの使用」を参照してください。
pageTemplate_swooshy.jspxは、アプリケーションの作成時に「標準ポータル機能のアプリケーションの構成」オプションを選択したときに作成される2つのシード・ページ・テンプレートの1つです。このテンプレートは、基本的にpageTemplate_globe.jxpxと同じ機能を提供しますが、グラフィックは異なります。詳細は、第11.2項「ページ・テンプレートの使用」を参照してください。
この項は、次の各項で構成されています。これらの項では、JSR 286ポートレットを作成する際に作成されるファイルについて説明します。
portlet.xmlは、JSR 286ポートレットの特性を定義します。portlet.xmlの詳細は、次で入手できるJavaポートレット仕様を参照してください。
http://jcp.org/en/jsr/detail?id=168
例A-1は、portlet.xmlファイルのサンプル・フラグメントです。この例には、portlet.xmlの使用可能な要素がすべて含まれているわけではありません。
例A-1 portlet.xmlのサンプル
<portlet>
<description xml:lang="en">JSR 286 map portlet </description>
<portlet-name>portlet1</portlet-name>
<display-name xml:lang="en">Map Portlet</display-name>
<portlet-class>jsrportlet.MapPortlet</portlet-class>
<expiration-cache>0</expiration-cache>
<supports>
<mime-type>text/html</mime-type>
<portlet-mode>edit</portlet-mode>
<portlet-mode>help</portlet-mode>
<portlet-mode>about</portlet-mode>
</supports>
<supported-locale>en</supported-locale>
<resource-bundle>jsrportlet.resource.MapPortletBundle</resource-bundle>
<portlet-info>
<title>Map Portlet</title>
<short-title>Map</short-title>
<keywords/>
<portlet-preferences>
<preference>
<name>portletTitle</name>
</preference>
</portlet-preferences>
<security-role-ref>
<role-name>viewer</role-name>
</security-role-ref>
</portlet>
JSR 286ポートレットの場合、portlet.xmlファイルには、ポートレットおよびそれらの設定関連の情報がすべて含まれています。前のサンプルでは、これらの設定がすべて使用されているわけではありません。
<description>: エンド・ユーザーに詳細情報を提供するポートレットについて説明します。
<portlet-name>: ポートレット・アプリケーション内でポートレット・プロデューサ・アプリケーションを一意に識別します。
<display-name>: ユーザーに使用可能なポートレットのリストを表示するときに使用します。
<portlet-class>: javax.portlet.Portletインタフェースを実装するクラス、またはポートレット・ロジックのエントリ・ポイントとなるGenericPortlet抽象クラスを拡張するクラスの完全修飾クラス名が入ります。ポートレット・コンテナは、ポートレット・ライフ・サイクル・メソッドを起動するときにこのクラスを使用します。Oracle JSF Portlet Bridgeを使用して作成されるJSFポートレットの場合、これはoracle.portlet.bridge.adf.application.ADFBridgePortletになります。
<expiration-cache>: 有効期限のキャッシュのデフォルトの期間です。
<init-param>: ポートレットの動作を構成する初期化パラメータを定義します。Oracle JSF Portlet Bridgeは、表示モードなど、ポートレットでサポートされる別のポートレット・モデルのエントリ・ポイントを識別するために初期化パラメータを使用します。
<init-param> <name>javax.portlet.faces.defaultViewId.view</name> <value>/myPage.jspx</value> </init-param>
他のWebCenter Portal対応モードの初期化パラメータは、次のとおりです。
編集モード: javax.portlet.faces.defaultViewId.edit
ヘルプ・モード: javax.portlet.faces.defaultViewId.help
情報モード: javax.portlet.faces.defaultViewId.about
構成モード: javax.portlet.faces.defaultViewId.config
デフォルト編集モード: javax.portlet.faces.defaultViewId.edit_defaults
プレビュー・モード: javax.portlet.faces.defaultViewId.preview
印刷モード: javax.portlet.faces.defaultViewId.print
|
注意:
|
<supports>: コンテンツ・タイプごとにサポートされているポートレット・モードについての情報を提供します。WebCenter Portalでサポートされているポートレット・モードには、edit、help、about、config、edit_defaults、previewおよびprintがあります。
<supported-locale>: ポートレットで実行時にサポートされるロケールをリストします。
<resource-bundle>: リソース・バンドルの完全修飾クラス名で、タイトルやキーワードなど、言語専用のポートレット情報提供するために使用されます。
<title>: ポートレットの静的タイトル。通常は、ポートレット・ウィンドウ上のポートレットの装飾内で表示されます。
<short-title>: 表示能力が限られているデバイス(携帯電話など)で使用されるタイトル。
<keywords>: ユーザーに検索能力を提供するアプリケーションで使用されます。
<portlet-preferences>: プリファレンス属性定義です。
<supported-processing-event>: ポートレットで受信可能なイベントです。
<supported-publishing-event>: ポートレットを呼び出すイベントです。
<supported-public-render-parameter>: ポートレットでサポートされるパブリック・レンダラ・パラメータです。
<container-runtime-option>: 追加の実行時の動作を定義するオプションです。
<security-role-ref>: web.xmlでセキュリティ・ロールにロール名をマップします。<security-role-ref>をマップする先のweb.xml内にあるロールのリストは、プロデューサのユーザー・カテゴリとしてコンシューマに公開されます。web.xmlでは、<security-role>は次のように表示されます。
<security-role> <description>Viewer role</description> <role-name>viewer</role-name> </security-role>
ポートレット用に作成するポート・モードの実装スタイルに応じて、対応するJSPファイルが、そのモードを定義するためにportlet_name\htmlディレクトリに作成されます。たとえば、ポートレットに表示モードと編集モードを使用する場合、portlet_name\htmlディレクトリにview.jspとedit.jspが必要になります。JSR 286ポートレットの場合、使用するポートレット・モードに対して次のJSPファイルが作成されます。
ポートレット・モードの詳細は、第57.4.1項「ポートレット・モード」を参照してください。
portlet_name.javaは、ポートレット・ロジックのエントリ・ポイントの役割を果すクラスです。このクラスは、javax.portlet.Portletインタフェースを実装するか、GenericPortlet抽象クラスを拡張する必要があります。ポートレット・コンテナは、ポートレット・ライフ・サイクル・メソッドを起動するときにこのクラスを使用します。
この項は、次の各項で構成されています。これらの項では、PDK-Javaポートレットを作成する際に作成されるファイルについて説明します。
producer_name.propertiesは、プロデューサについてのデプロイメント詳細(provider.xmlファイルの場所など)を指定します。たとえば、このファイルは、PDK-Javaサンプルの登録URLが次の形式の場合に使用されます。
http://host:port/jpdk/provider/samples
または
http://host:port/jpdk/provider
ここでは、サービスIDフィールドにsamplesが含まれています。第A.5.2項「_default.properties」も参照してください。
_default.propertiesは、プロデューサについてのデプロイメント詳細(provider.xmlファイルの場所など)を指定します。たとえば、このファイルは、PDK-Javaサンプルの登録URLが次の形式の場合に使用されます。
http://host:port/jpdk/provider
プロデューサ名はここでは指定されないので、デフォルトにする必要があります。第A.5.1項「producer_name.properties」も参照してください。
index.jspは、Oracle JDeveloperからPDK-Javaプロデューサをテストする際の便利な開始点として役立ちます。このファイルには、アプリケーションで使用可能なすべてのプロデューサのリストが含まれています。
ポートレット用に作成するポート・モードの実装スタイルに応じて、対応するJSPファイルが、そのモードを定義するために\htdocs\portlet_nameディレクトリに作成されます。たとえば、portletOneというポートレットに表示モードと編集モードを使用する場合、\htdocs\portletOneディレクトリにportletOneShowPage.jspとPortletOneEditPage.jspが必要です。PDK-Javaポートレットの場合、使用するポートレット・モードに次のJSPファイルが作成されます。
ポートレット・モードの詳細は、第57.4.1項「ポートレット・モード」を参照してください。
provider.xmlは、PDK-Javaプロデューサの定義ファイルです。
|
注意: PDK-Javaプロデューサは、以前はプロバイダと呼ばれていました。 |
この項には次のサブセクションが含まれます:
provider.xmlの要素および構文の詳細は、Oracle Technology Networkのプロバイダ定義XML (Extensible Markup Language)のタグ・リファレンスv2を参照してください。
http://www.oracle.com/technology/products/ias/portal/html/javadoc/xml_tag_reference_v2.html
例A-2は、provider.xmlファイルのサンプルを示しています。
例A-2 provider.xmlのサンプル
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<?providerDefinition version="3.1"?>
<provider class="oracle.portal.provider.v2.DefaultProviderDefinition">
<localePersonalizationLevel>none</localePersonalizationLevel>
<session>true</session>
<defaultLocale>en</defaultLocale>
<preferenceStore
class="oracle.portal.provider.v2.preference.FilePreferenceStore">
<name>prefStore1</name>
<useHashing>true</useHashing>
</preferenceStore>
<portlet class="oracle.portal.provider.v2.DefaultPortletDefinition">
<id>1</id>
<name>SampleRenderer</name>
<title>SampleRenderer example</title>
<shortTitle>SampleRenderer</shortTitle>
<description>Example portlet rendered using the SampleRenderer</description>
<timeout>40</timeout>
<timeoutMessage>SampleRenderer example timed out</timeoutMessage>
<acceptContentType>text/html</acceptContentType>
<showEdit>true</showEdit>
<showEditToPublic>false</showEditToPublic>
<showEditDefault>true</showEditDefault>
<showPreview>true</showPreview>
<showDetails>true</showDetails>
<hasHelp>true</hasHelp>
<hasAbout>true</hasAbout>
<renderer
class="oracle.portal.sample.v2.devguide.samplerenderer.SampleRenderer"/>
<personalizationManager
class="oracle.portal.provider.v2.personalize.PrefStorePersonalizationManager">
<dataClass>oracle.portal.provider.v2.personalize.
NameValuePersonalizationObject
</dataClass>
</personalizationManager>
</portlet>
</provider>
この項は、次の各項で構成されています。これらの項では、スキンの作成または変更、アプリケーションのデプロイまたはJSR 268ポートレットの消費の際に作成または変更されるファイルについて説明します。
ページ設計時に作成されるファイル
アプリケーションのデプロイ時に作成されるファイル
JSR 286ポートレットの消費時に作成されるファイル
adf-config.xmlファイルは、ADFコンポーネントにより使用される拡張可能な構成ファイルです。このファイルは、構成情報を設定するために、ページ、ポートレット、およびすべてのサービス(検索、ワークリスト、フォーラムなど)を含む様々なWebCenter Portalサービスにより使用されます。このファイルとconnections.xmlには、大部分のサービスが機能するために必要な構成情報が含まれています。
詳細は、次の項を参照してください。
第14.10.1「adf-config.xml」(スキン設定に関する情報)
第21.11.2.2項「adf-config.xmlファイルへの関連エントリの追加」(変更の永続性の構成に関する情報)
第22.2.1.1項「アプリケーションのadf-config.xmlファイルの更新」(サンドボックスの作成に関する情報)
第B.2.2項「adf-config.xml」(コンポーザ固有の設定に関する情報)
表A-1では、<adf-portlet-config>の子要素について説明しています。最初の列のinit-param名は、Webアダプタを介してポートレットにアクセスするときに使用されるサーブレットinit-paramsの名前に対応します。
表A-1 adf-portlet-configの子要素
| 要素(init-param) | 説明 | デフォルト値 |
|---|---|---|
parallelPoolSize (parallel.pool.size) |
タスクのパラレル実行のために使用するスレッド数。 |
10 |
parallelQueueSize (parallel.queue.size) |
パラレル実行を待つタスクのキューのサイズ。キュー・サイズを超過すると、タスクは拒否されます。 |
20 |
defaultTimeout (default.timeout) |
プロデューサに対して作成されたリクエストのデフォルトのタイムアウト期間(秒)。この値は、ポートレットまたはプロデューサ・レベルでタイムアウトが定義されていない場合に使用されます。 |
10 |
minimumTimeout (minimum.timeout) |
プロデューサに対して作成されたリクエストの最小タイムアウト期間(秒)。この値は、ポートレットまたはプロデューサにより指定されたタイムアウト期間に下限を設定する場合に使用されます。 |
0.1 |
maximumTimeout (maximum.timeout) |
プロデューサに対して作成されたリクエストの最大タイムアウト期間(秒)。この値は、ポートレットまたはプロデューサにより指定されたタイムアウト期間に上限を設定する場合に使用されます。 |
300 |
resourceProxyPath (resource.proxy.path) |
アプリケーションのコンテキスト・ルートを基準とした、リソース・プロキシ・サーブレットのベース・パス。ポートレット・マークアップ内のリソース・サーブレットへのリンクを作成するために使用されます。 |
/resourceproxy |
supportedLocales (supported.locales) |
次の形式の文字列を使用して定義される一連のサポート・ロケール。 language[_country[_variant]] |
デフォルトではコメント・アウトされています。複数のロケールがある場合は、非コメント化します。例A-3を参照してください。 |
portletTechnologies (portlet.technologies) |
クライアントでサポートされる、PortletTechnologyConfigインタフェースを実装するクラスの完全修飾名で定義された一連のポートレット・テクノロジ。 |
{o.p.c.ci.web.WebPortletTechnologyConfig, o.p.c.ci.wsrp.WSRPPortletTechnologyConfig} |
cacheSettings (cache.*) |
キャッシュ構成情報。キャッシュの有効化または無効化、キャッシュの最大サイズの定義、および様々なユーザーやサブスクライバに使用可能な領域の量に対する制限の設定に使用されます。 |
キャッシュは有効で、サイズ制限は設定されていません。 |
maximumResourceUrlLength (maximum.resource.url.length) |
最大長はリソースURLに適用されます。これは、ポートレットがリソース・リクエストで多数のコンテキスト情報を渡す場合に、URLが長くなるのを防ぎます。2048文字よりも長いリソースURLは、一部のブラウザで問題が発生する場合があります。 リソースURLとしてエンコードされた情報がこの値を超える場合、ポートレット・クライアントは、セッションでこの情報を格納し、かわりに、そのセッションの属性へのキーをURLとしてエンコードします。ブラウザのキャッシュに悪影響を及ぼすことを回避するために、このキーは決定論的方法で計算されます。 |
2048 |
<adf-portlet-config>要素のサンプル
例A-3は、<adf-portlet-config>要素の使用方法を示しています。
例A-3 <adf-portlet-config>要素のサンプル
<adf-portlet-config xmlns="http://xmlns.oracle.com/adf/portlet/config">
<supportedLocales>
<value>en</value>
<value>fr</value>
<value>de</value>
<value>es</value>
</supportedLocales>
<portletTechnologies>
<value>oracle.portlet.client.containerimpl.web.
WebPortletTechnologyConfig</value>
<value>oracle.portlet.client.containerimpl.wsrp.
WSRPPortletTechnologyConfig</value>
</portletTechnologies>
<defaultTimeout>20</defaultTimeout>
<minimumTimeout>1</minimumTimeout>
<maximumTimeout>300</maximumTimeout>
<resourceProxyPath>/portletresource</resourceProxyPath>
<cacheSettings>
<maxSize>10000000</maxSize>
<subscriber default="true">
<systemLevel>
<maxSize>5000000</maxSize>
</systemLevel>
<userLevel>
<maxSize>8000000</maxSize>
</userLevel>
</subscriber>
</cacheSettings>
</adf-portlet-config>
DataBindings.cpxは、Webアプリケーションに共通するファイルです。DataBindings.cpxの詳細は、『Oracle Fusion Middleware Oracle Application Development Framework Fusion開発者ガイド』を参照してください。
faces-config.xmlは、JSFアプリケーションに共通するファイルです。このファイルでは、アプリケーションのページ・フローを説明しています。faces-config.xmlの詳細は、『Oracle Fusion Middleware Oracle Application Development Framework Fusion開発者ガイド』を参照してください。
page_name.jspxは、ページのためのJSPファイルです。ページに対してポートレットやデータ・コントロールなどのコンポーネントを追加または削除すると、このファイルが更新されます。
PageDef.xmlは、Oracle ADFアプリケーションに共通するファイルです。このファイルには、ポートレット・バインディングについての情報が保持されています。また、このファイルでは、ポートレット・パラメータをページの変数に関連付けることができます。
PageDef.xmlの詳細は、『Oracle Fusion Middleware Oracle Application Development Framework Fusion開発者ガイド』を参照してください。
PageDef.xmlのサンプル
例A-4は、PageDef.xmlファイルのサンプルを示しています。
例A-4 PageDef.xmlのサンプル
<?xml version="1.0" encoding="UTF-8" ?>
<pageDefinition xmlns="http://xmlns.oracle.com/adfm/uimodel"
version="10.1.3.37.97" id="app_SRFeedbackPageDef"
Package="oracle.srdemo.view.pageDefs">
<parameters/>
<executables>
<methodIterator id="findAllServiceRequestIter"
Binds="findAllServiceRequest.result"
DataControl="SRPublicFacade" RangeSize="4"
BeanClass="oracle.srdemo.model.entities.ServiceRequest"/>
<variableIterator id="variables">
<variable Name="portlet1_Param1" Type="java.lang.Object"
DefaultValue="
${bindings.findAllServiceRequestIter.currentRow.dataProvider['svrId']}"/>
<variable Name="portlet1_Param2" Type="java.lang.Object"/>
<variable Name="portlet1_Param3" Type="java.lang.Object"/>
<variable Name="portlet1_Param4" Type="java.lang.Object"/>
<variable Name="portlet1_Param5" Type="java.lang.Object"/>
</variableIterator>
<methodIterator id="findServiceRequestByIdIter"
Binds="findServiceRequestById.result"
DataControl="SRPublicFacade" RangeSize="10"
BeanClass="oracle.srdemo.model.entities.ServiceRequest"/>
<portlet id="portlet1"
portletInstance="/oracle/adf/portlet/OmniProducer_1150310748178/
applicationPortlets/Portlet100_eebc7f18_010b_1000_8001_82235f640cea"
class="oracle.adf.model.portlet.binding.PortletBinding"
xmlns="http://xmlns.oracle.com/portlet/bindings">
<parameters>
<parameter name="Param1" pageVariable="portlet1_Param1"/>
<parameter name="Param2" pageVariable="portlet1_Param2"/>
<parameter name="Param3" pageVariable="portlet1_Param3"/>
<parameter name="Param4" pageVariable="portlet1_Param4"/>
<parameter name="Param5" pageVariable="portlet1_Param5"/>
</parameters>
</portlet>
</executables>
<bindings>
<methodAction id="findAllServiceRequest"
InstanceName="SRPublicFacade.dataProvider"
DataControl="SRPublicFacade"
MethodName="findAllServiceRequest" RequiresUpdateModel="true"
Action="999" IsViewObjectMethod="false"
ReturnName="SRPublicFacade.methodResults.
SRPublicFacade_dataProvider_findAllServiceRequest_result"/>
<table id="findAllServiceRequest1" IterBinding="findAllServiceRequestIter">
<AttrNames>
<Item Value="assignedDate"/>
<Item Value="problemDescription"/>
<Item Value="requestDate"/>
<Item Value="status"/>
<Item Value="svrId"/>
<Item Value="custComment"/>
<Item Value="custCommentDate"/>
<Item Value="custCommentContactBy"/>
<Item Value="mgrNotes"/>
<Item Value="mgrNotesDate"/>
</AttrNames>
</table>
<methodAction id="findServiceRequestById"
InstanceName="SRPublicFacade.dataProvider"
DataControl="SRPublicFacade"
MethodName="findServiceRequestById" RequiresUpdateModel="true"
Action="999" IsViewObjectMethod="false"
ReturnName="SRPublicFacade.methodResults.
SRPublicFacade_dataProvider_findServiceRequestById_result">
<NamedData NDName="svrIdParam"
NDValue=
"${bindings.findAllServiceRequestIter.currentRow.dataProvider['svrId']}"
NDType="java.lang.Integer"/>
</methodAction>
<attributeValues id="svrId" IterBinding="findServiceRequestByIdIter">
<AttrNames>
<Item Value="svrId"/>
</AttrNames>
</attributeValues>
<attributeValues id="custComment" IterBinding="findServiceRequestByIdIter">
<AttrNames>
<Item Value="custComment"/>
</AttrNames>
</attributeValues>
<attributeValues id="mgrNotes" IterBinding="findServiceRequestByIdIter">
<AttrNames>
<Item Value="mgrNotes"/>
</AttrNames>
</attributeValues>
<list id="ServiceRequestcustCommentContactBy"
IterBinding="findServiceRequestByIdIter" ListOperMode="0"
StaticList="true" NullValueFlag="1">
<AttrNames>
<Item Value="custCommentContactBy"/>
</AttrNames>
<ValueList>
<Item Value=" "/>
<Item Value="Phone"/>
<Item Value="Email"/>
<Item Value="SMS"/>
</ValueList>
</list>
<methodAction id="mergeEntity" InstanceName="SRPublicFacade.dataProvider"
DataControl="SRPublicFacade" MethodName="mergeEntity"
RequiresUpdateModel="true" Action="999"
IsViewObjectMethod="false"
ReturnName="SRPublicFacade.methodResults.
SRPublicFacade_dataProvider_mergeEntity_result">
<NamedData NDName="entity"
NDValue=
"${bindings.findServiceRequestByIdIter.currentRow.dataProvider}"
NDType="java.lang.Object"/>
</methodAction>
</bindings>
</pageDefinition>
trinidad-config.xmlには、アプリケーションのスキン・ファミリに関する情報が格納されます。さらに、これにはページ・アクセシビリティ・サポートのレベル、ページ・アニメーション、タイムゾーン、拡張デバッグ出力およびOracle Help for the Web (OHW)のURLに関する情報を含めることができます。詳細は、第1.10.3項「Frameworkアプリケーション・テンプレートのデフォルトのtrinidad-config.xmlファイル」を参照してください。
web.xmlファイルは、Webアプリケーションに関する詳細情報が含まれたJava EE標準ディスクリプタです。web.xmlの詳細は、『Oracle Fusion Middleware Oracle Application Development Framework Fusion開発者ガイド』を参照してください。
weblogic-application.xmlは、Oracle WebLogic Serverのデプロイメント用のデプロイメント・ディスクリプタです(アプリケーションの構成を定義するサーバー構成ファイル)。
WebCenter Portal: Frameworkアプリケーションをデプロイすると、プロジェクト・ディレクトリ内にmdsサブディレクトリが作成されます。このサブディレクトリには、ポートレットのカスタマイズやパーソナライズなど、他のサブディレクトリやメタデータ・ファイルが含まれています。
この項は、次の各項で構成されています。これらの項では、セキュリティを実装または変更する際に作成または変更されるファイルについて説明します。
connections.xmlファイルには、ポートレット・プロデューサ接続情報が含まれています。例A-5に、サンプルのconnections.xmlファイルを示します。
例A-5 connections.xml
<?xml version = '1.0' encoding = 'UTF-8'?>
<References xmlns="http://xmlns.oracle.com/adf/jndi">
<Reference name="SampleWSRPProducer-wsconn"
className="oracle.adf.model.connection.webservice.impl.WebServiceConnectionImpl" xmlns="">
<Factory className="oracle.adf.model.connection.webservice.api.WebServiceConnectionFactory"/>
<RefAddresses>
<XmlRefAddr addrType="WebServiceConnection">
<Contents>
<wsconnection description="http://portlet.example.com:9999/portletapp/portlets/wsrp2?WSDL">
<model name="{urn:oasis:names:tc:wsrp:v2:wsdl}WSRP_v2_Service" xmlns="http://oracle.com/ws/model">
<service name="{urn:oasis:names:tc:wsrp:v2:wsdl}WSRP_v2_Service">
<port name="WSRP_v2_PortletManagement_Service" binding="{urn:oasis:names:tc:wsrp:v2:bind}WSRP_v2_PortletManagement_Binding_SOAP">
<soap addressUrl="http://host:port/portletapp/portlets/WSRP_v2_PortletManagement_Service"
xmlns="http://schemas.xmlsoap.org/wsdl/soap/"/>
<operation name="setPortletProperties">
<soap soapAction="urn:oasis:names:tc:wsrp:v2:setPortletProperties"
xmlns="http://schemas.xmlsoap.org/wsdl/soap/"/>
<input name="setPortletProperties"/>
<output name="setPortletPropertiesResponse"/>
</operation>
<operation name="getPortletProperties">
<soap soapAction="urn:oasis:names:tc:wsrp:v2:getPortletProperties"
xmlns="http://schemas.xmlsoap.org/wsdl/soap/"/>
<input name="getPortletProperties"/>
<output name="getPortletPropertiesResponse"/>
</operation>
<operation name="importPortlets">
<soap soapAction="urn:oasis:names:tc:wsrp:v2:importPortlet"
xmlns="http://schemas.xmlsoap.org/wsdl/soap/"/>
<output name="importPortletsResponse"/>
<input name="importPortlets"/>
</operation>
<operation name="destroyPortlets">
<soap soapAction="urn:oasis:names:tc:wsrp:v2:destroyPortlets"
xmlns="http://schemas.xmlsoap.org/wsdl/soap/"/>
<input name="destroyPortlets"/>
<output name="destroyPortletsResponse"/>
</operation>
<operation name="exportPortlets">
<soap soapAction="urn:oasis:names:tc:wsrp:v2:exportPortlet"
xmlns="http://schemas.xmlsoap.org/wsdl/soap/"/>
<output name="exportPortletsResponse"/>
<input name="exportPortlets"/>
</operation>
<operation name="releaseExport">
<soap soapAction="urn:oasis:names:tc:wsrp:v2:importPortlet"
xmlns="http://schemas.xmlsoap.org/wsdl/soap/"/>
<input name="releaseExport"/>
<output name="releaseExportResponse"/>
</operation>
<operation name="getPortletsLifetime">
<soap soapAction="urn:oasis:names:tc:wsrp:v2:getPortletsLifetime"
xmlns="http://schemas.xmlsoap.org/wsdl/soap/"/>
<output name="getPortletsLifetimeResponse"/>
<input name="getPortletsLifetime"/>
</operation>
<operation name="copyPortlets">
<soap soapAction="urn:oasis:names:tc:wsrp:v2:copyPortlets"
xmlns="http://schemas.xmlsoap.org/wsdl/soap/"/>
<output name="copyPortletsResponse"/>
<input name="copyPortlets"/>
</operation>
<operation name="getPortletPropertyDescription">
<soap soapAction="urn:oasis:names:tc:wsrp:v2:getPortletPropertyDescription"
xmlns="http://schemas.xmlsoap.org/wsdl/soap/"/>
<input name="getPortletPropertyDescription"/>
<output name="getPortletPropertyDescriptionResponse"/>
</operation>
<operation name="clonePortlet">
<soap soapAction="urn:oasis:names:tc:wsrp:v2:clonePortlet"
xmlns="http://schemas.xmlsoap.org/wsdl/soap/"/>
<output name="clonePortletResponse"/>
<input name="clonePortlet"/>
</operation>
<operation name="setPortletsLifetime">
<soap soapAction="urn:oasis:names:tc:wsrp:v2:setPortletsLifetime"
xmlns="http://schemas.xmlsoap.org/wsdl/soap/"/>
<output name="setPortletsLifetimeResponse"/>
<input name="setPortletsLifetime"/>
</operation>
<operation name="getPortletDescription">
<soap soapAction="urn:oasis:names:tc:wsrp:v2:getPortletDescription"
xmlns="http://schemas.xmlsoap.org/wsdl/soap/"/>
<input name="getPortletDescription"/>
<output name="getPortletDescriptionResponse"/>
</operation>
<operation name="setExportLifetime">
<soap soapAction="urn:oasis:names:tc:wsrp:v2:setExportLifetime"
xmlns="http://schemas.xmlsoap.org/wsdl/soap/"/>
<input name="setExportLifetime"/>
<output name="setExportLifetimeResponse"/>
</operation>
</port>
<port name="WSRP_v2_Markup_Service" binding="{urn:oasis:names:tc:wsrp:v2:bind}WSRP_v2_Markup_Binding_SOAP">
<soap addressUrl="http://host:port/portletapp/portlets/WSRP_v2_Markup_Service"
xmlns="http://schemas.xmlsoap.org/wsdl/soap/"/>
<operation name="initCookie">
<soap soapAction="urn:oasis:names:tc:wsrp:v2:initCookie"
xmlns="http://schemas.xmlsoap.org/wsdl/soap/"/>
<output name="initCookieResponse"/>
<input name="initCookie"/>
</operation>
<operation name="getMarkup">
<soap soapAction="urn:oasis:names:tc:wsrp:v2:getMarkup"
xmlns="http://schemas.xmlsoap.org/wsdl/soap/"/>
<output name="getMarkupResponse"/>
<input name="getMarkup"/>
</operation>
<operation name="releaseSessions">
<soap soapAction="urn:oasis:names:tc:wsrp:v2:releaseSessions"
xmlns="http://schemas.xmlsoap.org/wsdl/soap/"/>
<input name="releaseSessions"/>
<output name="releaseSessionsResponse"/>
</operation>
<operation name="performBlockingInteraction">
<soap soapAction="urn:oasis:names:tc:wsrp:v2:performBlockingInteraction"
xmlns="http://schemas.xmlsoap.org/wsdl/soap/"/>
<input name="performBlockingInteraction"/>
<output name="performBlockingInteractionResponse"/>
</operation>
<operation name="getResource">
<soap soapAction="urn:oasis:names:tc:wsrp:v2:getResource"
xmlns="http://schemas.xmlsoap.org/wsdl/soap/"/>
<output name="getResourceResponse"/>
<input name="getResource"/>
</operation>
<operation name="handleEvents">
<soap soapAction="urn:oasis:names:tc:wsrp:v2:handleEvents"
xmlns="http://schemas.xmlsoap.org/wsdl/soap/"/>
<input name="handleEvents"/>
<output name="handleEventsResponse"/>
</operation>
</port>
<port name="WSRP_v2_Registration_Service"
binding="{urn:oasis:names:tc:wsrp:v2:bind}WSRP_v2_Registration_Binding_SOAP">
<soap addressUrl="http://host:port/portletapp/portlets/WSRP_v2_Registration_Service"
xmlns="http://schemas.xmlsoap.org/wsdl/soap/"/>
<operation name="register">
<soap soapAction="urn:oasis:names:tc:wsrp:v2:register"
xmlns="http://schemas.xmlsoap.org/wsdl/soap/"/>
<input name="register"/>
<output name="registerResponse"/>
</operation>
<operation name="getRegistrationLifetime">
<soap soapAction="urn:oasis:names:tc:wsrp:v2:getRegistrationLifetime"
xmlns="http://schemas.xmlsoap.org/wsdl/soap/"/>
<output name="getRegistrationLifetimeResponse"/>
<input name="getRegistrationLifetime"/>
</operation>
<operation name="setRegistrationLifetime">
<soap soapAction="urn:oasis:names:tc:wsrp:v2:setRegistrationLifetime"
xmlns="http://schemas.xmlsoap.org/wsdl/soap/"/>
<input name="setRegistrationLifetime"/>
<output name="setRegistrationLifetimeResponse"/>
</operation>
<operation name="deregister">
<soap soapAction="urn:oasis:names:tc:wsrp:v2:deregister"
xmlns="http://schemas.xmlsoap.org/wsdl/soap/"/>
<input name="deregister"/>
<output name="deregisterResponse"/>
</operation>
<operation name="modifyRegistration">
<soap soapAction="urn:oasis:names:tc:wsrp:v2:modifyRegistration"
xmlns="http://schemas.xmlsoap.org/wsdl/soap/"/>
<input name="modifyRegistration"/>
<output name="modifyRegistrationResponse"/>
</operation>
</port>
<port name="WSRP_v2_ServiceDescription_Service" binding="{urn:oasis:names:tc:wsrp:v2:bind}WSRP_v2_ServiceDescription_Binding_SOAP">
<soap addressUrl="http://host:port/portletapp/portlets/WSRP_v2_ServiceDescription_Service"
xmlns="http://schemas.xmlsoap.org/wsdl/soap/"/>
<operation name="getServiceDescription">
<soap soapAction="urn:oasis:names:tc:wsrp:v2:getServiceDescription"
xmlns="http://schemas.xmlsoap.org/wsdl/soap/"/>
<input name="getServiceDescription"/>
<output name="getServiceDescriptionResponse"/>
</operation>
</port>
</service>
</model>
</wsconnection>
</Contents>
</XmlRefAddr>
</RefAddresses>
</Reference>
<Reference name="SampleWSRPProducer" className="oracle.portlet.client.connection.wsrp.WSRPProducerConnection" xmlns="">
<Factory className="oracle.portlet.client.connection.wsrp.WSRPProducerConnectionFactory"/>
<RefAddresses>
<XmlRefAddr addrType="connectionDesc">
<Contents>
<wsrpproducerconnection wsConnection="SampleWSRPProducer-wsconn" timeout="30"/>
</Contents>
</XmlRefAddr>
</RefAddresses>
</Reference>
</References>
アプリケーション用のセキュリティを実装または変更すると、jazn-data.xmlファイルが作成または変更されます。
jazn-data.xmlファイルは、アプリケーションのレルムおよびポリシー情報のデプロイを容易にするために使用されます。使用する開発環境(Oracle JDeveloper)で、jazn-data.xmlは、アプリケーションのworkspacedir/src/META-INFディレクトリにあります。デプロイメント後、このファイルの内容は、ドメイン・レベルのアイデンティティ・ストアまたはポリシー・ストアでマージされます。このファイルには、設計時に作成されたポリシーが含まれ、JpsApplicationLifecycleListenerにより、デプロイメント・ターゲットのsystem-jazn-data.xmlファイル(または適切に構成されたポリシー・ストア)へのデプロイ時にマージされます。
JpsApplicationLifecycleListenerを使用してセキュリティ情報を移行する際、jazn-data.xmlファイルは、移行用のソース・ファイルとして使用できます。移行ロールの詳細は、『Oracle Fusion Middleware Oracle Application Development Framework Fusion開発者ガイド』を参照してください。
jazn-data.xmlのサンプル
例A-6は、jazn-data.xmlファイルのサンプルを示しています。
A-6 jazn-data.xmlのサンプル
<?xml version = '1.0' encoding = 'UTF-8'?>
<jazn-data>
<jazn-realm>
<realm>
<name>jazn.com</name>
</realm>
</jazn-realm>
<policy-store>
<applications>
<application>
<name>mdsapp-secure</name> <app-roles>
<app-role>
<name>unauthenticated-role</name>
<display-name>anonymous-role</display-name>
<class>oracle.security.jps.service.policystore.ApplicationRole</class>
</app-role>
<app-role>
<name>authenticated-role</name>
<display-name>authenticated-users</display-name>
<class>oracle.security.jps.service.policystore.ApplicationRole</class>
</app-role>
<app-role>
<name>approle</name>
<display-name>approle</display-name>
<description>approle</description>
<guid/>
<class>oracle.security.jps.service.policystore.ApplicationRole</class>
<members>
<member>
<class>oracle.security.jps.internal.core.principals.JpsXmlUserImpl</class>
<name>orcladmin</name>
</member>
</members>
</app-role>
</app-roles>
<jazn-policy>
<grant>
<grantee>
<principals>
<principal>
<class>oracle.security.jps.internal.core.principals.JpsAuthenticatedRoleImpl</class>
<name>authenticated-role</name>
</principal>
</principals>
</grantee>
<permissions>
<permission>
<class>oracle.adf.share.security.authorization.RegionPermission</class>
<name>project1.pageDefs.securePageDef</name>
<actions>view</actions>
</permission>
</permissions>
</grant>
<grant>
<grantee>
<principals>
<principal>
<class>oracle.security.jps.internal.core.principals.JpsAnonymousRoleImpl</class>
<name>anonymous-role</name>
</principal>
</principals>
</grantee>
<permissions>
<permission>
<class>oracle.adf.share.security.authorization.RegionPermission</class>
<name>project1.pageDefs.publicPageDef</name>
<actions>view</actions>
</permission>
</permissions>
</grant>
</jazn-policy>
</application>
</applications>
</policy-store>
<jazn-policy/>
</jazn-data>
cwallet.ssoは、外部アプリケーションの資格証明(存在する場合)と、データベース・パスワードなど、接続の保護されたデータを含みます。cwallet.ssoファイルは、workspaceroot/src/META-INFディレクトリに格納されています。
jps-config.xmlは、workspaceroot/src/META-INFに格納されています。アプリケーションとともにパッケージ化されているjps-config.xmlファイルは、設計時にのみ使用されます。実行時は、ドメイン・レベルで格納されている構成のjps-config.xmlファイルが機能します。
jps-config.xmlはOPSSサービスを構成します。要素の階層とjps-config.xmlの属性の詳細は、『Oracle Containers for J2EEセキュリティ・ガイド』の付録にあるOPSS構成ファイルのリファレンスに関する項を参照してください。
推奨される移行は、移行コマンドの要求として定義された移行元および移行先のコンテキストで新しいjps-config.xmlファイルを作成することです。アイデンティティの移行の詳細は、『Oracle Containers for J2EEセキュリティ・ガイド』の手動によるアイデンティティの移行に関する項を参照してください。
ポリシー・ストアを移行する方法には、ポリシー・ストア全体、アプリケーション固有のポリシーおよびグローバル・ポリシーを移行する方法があります。詳細は、『Oracle Containers for J2EEセキュリティ・ガイド』の手動によるポリシーの移行に関する項を参照してください。
資格証明ストアは、2つの方法(資格証明ストア全体またはアプリケーションに固有の資格証明)で移行できます。アプリケーション固有の資格証明を移行するときは、srcFolderおよびtargetFolderが同じであることを確認します。srcFolderおよびtargetFolderは、adf-config.xmlファイルのappUIDから決定されます。例A-7を参照してください。詳細は、『Oracle Containers for J2EEセキュリティ・ガイド』の手動での資格証明の移行に関する項を参照してください。
セキュリティ構成は、adf-config.xmlに格納されています。このファイルは、workspaceroot/.adf/META-INF/adf-config.xmlに格納されています。例A-8を参照してください。
例A-8 adf-config.xml
<adf-security-child xmlns="http://xmlns.oracle.com/adf/security/config">
<JaasSecurityContext initialContextFactoryClass="oracle.adf.share.security.JAASInitialContextFactory"
jaasProviderClass="oracle.adf.share.security.providers.jps.JpsSecurityContext"
authorizationEnforce="true"
authenticationRequire="true"/>
<CredentialStoreContext credentialStoreClass="oracle.adf.share.security.providers.jps.CSFCredentialStore"
credentialStoreLocation="../../src/META-INF/jps-config.xml"/>
</adf-security-child>
|
注意: サンプルの |
この項は、次の各項で構成されています。これらの項では、ページ・テンプレートを作成する際に作成または変更されるファイルについて説明します。
pagetemplate-metadata.xmlには、プロジェクトで作成したすべてのページ・テンプレートが記録されます。
この項では、いくつかのWebCenter Portalサービスのconnections.xmlおよびadf-config.xmlファイルのサンプルを示します。
例A-9は、SES Webサービス接続に最低限必要な構成を示しています。
例A-9 SES Web Service接続のサンプル
<Reference name="GenericSesConnection" className="oracle.adf.mbean.share.connection.webcenter.search.SesConnectionReferenceable"
credentialStoreKey="GenericSesConnection" xmlns="">
<Factory className="oracle.adf.mbean.share.connection.webcenter.search.SesConnectionFactory"/>
<RefAddresses>
<XmlRefAddr addrType="SesConfig">
<Contents>
<SesConfig>
<AttributeMap>
<Attribute name="date">
<SesAttribute>LastModifiedDate</SesAttribute>
</Attribute>
<Attribute name="person">
<SesAttribute>Author</SesAttribute>
</Attribute>
</AttributeMap>
<SoapUrl>http://host:port/search/query/OracleSearch</SoapUrl>
</SesConfig>
</Contents>
</XmlRefAddr>
<StringRefAddr addrType="appUsername">
<Contents>wpadmin</Contents>
</StringRefAddr>
<SecureRefAddr addrType="appPassword"/>
</RefAddresses>
</Reference>
例A-10では、ドキュメント・サービスのadf-config.xmlのサンプルを示します。
例A-10 ドキュメント・サービスのADF構成
<doclibC:adf-doclib-config xmlns="http://xmlns.oracle.com/webcenter/doclib/config"
primaryConnectionName="Oracle_Content_Server">
<doclibC:spaces-repository
spacesRoot="/repositoryPath"
adminUserName="sysadmin"
applicationName="application_name" />
</doclibC:adf-doclib-config>
例A-11では、ワークリスト・サービスのadf-config.xmlのサンプルを示しています。