Administration Console の拡張
|
|
Administration Console では、すべてのコンテンツがポートレット内に格納されるため、拡張を最低限にする場合でもポートレット (およびポートレットのコンテンツ) を定義しなければならない場合がほとんどです。ポートレットをデスクトップに直接追加することもできますが、ポートレットを ContentBook 内のタブやサブタブとして表示する場合は、それを格納するブックまたはページを定義する必要があります。拡張で NavTreePortlet にノードを追加することもできます。そうすることで、追加したポートレットに、ユーザがデスクトップから直接移動できるようになります。
この節では、単純な静的コンテンツを含むポートレットを Administration Console に追加する方法について説明します。動的なコンテンツを含むポートレット (Apache Struts アクションを起動するポートレットなど) の追加については、「Administration Console と調和するポートレットの作成」を参照してください。
図 4-1 にこのプロセスを示します。プロセスの手順、および各手順の結果については、表 4-1 を参照してください。プロセスの各手順の詳細については、それ以降の節を参照してください。
図 4-1 ポートレットとナビゲーション コントロールを追加する開発の概要
|
|
|
|
|
|
||
|
|
||
|
|
||
|
|
ポートレットを定義する .portlet XML ファイルを作成するには、次の手順に従います。
dev-dir/PortalConfig を作成します。dev-dir は開発用のディレクトリです。以降の節では、この開発用のディレクトリに、他のファイルやディレクトリを追加していきます。詳細については、「拡張のアーカイブとデプロイメント」を参照してください。
dev-dir/portlets または dev-dir 内の他のディレクトリに新しいテキスト ファイルを作成し、コード リスト 4-1 のコードをコピーして貼り付けます。次の命名規約を使用することをお勧めします。content-name.portlet
content-name は、ポートレットに格納する JSP または HTML ファイルの名前です。たとえば、ポートレットに monitorEJB.jsp という名前の JSP ファイルを格納する場合は、ポートレット XML ファイルの名前を monitorEJB.portlet にします。
Label。ポータル フレームワークでこのポートレットを特定するためのユニークな識別子に変更します。Title。ルック アンド フィールでタイトル バーが表示されることになっている場合に、このポートレットのタイトル バーに表示するデフォルトのタイトルに変更します。このデフォルトは、このポートレットのインスタンスごとにオーバーライドできます (「NetUI 拡張 XML ファイルの作成」を参照してください)。URI。ポートレットに格納する JSP の絶対パスとファイル名に変更します。絶対パスは、拡張のルートから始めます。 ポートレット XML ファイルの詳細については、『Portal Support Schema Reference』を参照してください。
コード リスト 4-1 単純な .portlet XML ファイルのテンプレート
<?xml version="1.0" encoding="UTF-8"?>
<portal:root xmlns:html="http://www.w3.org/1999/xhtml-netuix-modified/1.0.0"
xmlns:portal="http://www.bea.com/servers/netuix/xsd/portal/support/1.0.0"
xmlns:netuix="http://www.bea.com/servers/netuix/xsd/controls/netuix/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.bea.com/servers/netuix/xsd/portal/
support/1.0.0 portal-support-1_0_0.xsd">
<netuix:portlet definitionLabel="Label" title="Title" >
<netuix:content>
<netuix:jspContent contentUri="URI"/>
</netuix:content>
</netuix:portlet>
</portal:root>
ContentBook は、ブックとページの階層構造で構成します。ContentBook 内のすべてのポートレットはブックまたはページ内に表示されるため、ContentBook にポートレットを追加する場合は既存の階層構造に準拠したブックまたはページを作成する必要があります。
ブックおよびページの定義を、1 つまたは複数のポータル インクルード (.pinc) ファイルに保存します。コントロールの階層グループごとに 1 つの .pinc ファイルを作成します。たとえば、最上位のタブとそのサブタブを作成するブック用に 1 つの .pinc ファイルを作成します。また、既存の WebLogic Server タブにサブタブを追加するページ用にも別の .pinc ファイルを作成します。.pinc ファイルのルート要素 (portal:root) には、直接の子要素を 1 つのみ持たせることができます。その子要素には、複数の子を持たせることができます。
最上位タブと 1 つのサブタブを定義するポータル インクルード (.pinc) XML ファイルを作成するには、次の手順に従います。
dev-dir の下にあるディレクトリに保存します。たとえば、dev-dir/PortalConfig/MyApp.pinc というファイルを作成します。dev-dir は開発用のディレクトリです。詳細については、「拡張のアーカイブとデプロイメント」を参照してください。
Book-Label。ポータル フレームワークおよび WebLogic Server JSP タグがブックへのリクエストの転送に使用する、ユニークな識別子に変更します。これは、WebLogic Server の UI コントロールの多くに使用されているのと同じ種類のラベルです。「Administration Console の UI コントロール」を参照してください。Book-Title。ユーザに対して表示するタブの名前、または作成したメッセージ バンドルのキーに変更します。Administration Console はこの値をキーであると想定しますが、指定されたバンドル内にそのキーが見つからない場合には値を表示します。Bundle。作成したメッセージ バンドルの名前に変更します。「メッセージ バンドルの作成と使い方」を参照してください。Page-Label。ポータル フレームワークおよび WebLogic Server JSP タグが、ページへのリクエストの転送に使用するユニークな識別子に変更します。 Page-Title。ユーザに対して表示するサブタブの名前、または作成したメッセージ バンドルのキーに変更します。Metadata-Type および Metadata-ID。Administration Console の <wl:column-dispatch> JSP タグを使用してこのページへのハイパーテキスト リンクを作成する場合は、<netuix:meta> 要素を含めて Metadata-Type および Metadata-ID の値を指定します。『WebLogic Server 9.0 JSP タグ リファレンス』の「column-dispatch」を参照してください。Portlet-Instance-Title。この値は、ポータル サポート スキーマで必要になりますが、このコンテキストでは使用しません。ポータル フレームワークはこの値をポートレットのタイトル バーに表示しますが、Administration Console のルック アンド フィールでは、階層のこのレベルのポートレットはタイトル バーを表示しないように指定されています。 Portlet-Instance-Label。ポータル フレームワークおよび WebLogic Server JSP タグが、ポートレット インスタンスへのリクエストの転送に使用するユニークな識別子に変更します。 Portlet-URI。作成したポートレット ファイルのパスとファイル名に変更します (「ポートレットの定義」を参照してください)。パスは、ポータル Web アプリケーションのルートに対する相対パスでなければなりません。netuix:page 要素の兄弟として別の netuix:page 要素を追加します。ポータル インクルード XML ファイルの詳細については、『Portal Support Schema Reference』を参照してください。
この .pinc ファイルでは、以下の要素も使用しています。
netuix:singleLevelMenu は、ブック内の各ページに 1 つのサブタブを表示します。コード リスト 4-2 では、ブックの親 UI コントロールが WebLogic Server によって提供されることが前提になっていますが、これがブックの最上位のタブを生成する役割を果たします。netuix:meta name="breadcrumb-context" content="handle" は、ユーザがページを訪問した後に、訪問したページの履歴 (階層リンク) にそのページのタイトルを追加します。階層リンクは、ContentBook の上位のデスクトップに表示されます。コード リスト 4-2 サブタブを含む最上位タブを定義する .pinc ファイルのテンプレート
<?xml version="1.0" encoding="UTF-8"?>
<portal:root
xmlns:netuix="http://www.bea.com/servers/netuix/xsd/controls/netuix/1.0.0"
xmlns:html="http://www.w3.org/1999/xhtml-netuix-modified/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:portal="http://www.bea.com/servers/netuix/xsd/portal/support/1.0.0"
xsi:schemaLocation="http://www.bea.com/servers/netuix/xsd/portal/support
/1.0.0 portal-support-1_0_0.xsd">
<netuix:book markupName="book" markupType="Book"
definitionLabel="Book-Label" title="Book-Title">
<netuix:singleLevelMenu markupType="Menu" markupName="singleLevelMenu"
skeletonUri="singlelevelmenu_children.jsp"/>
<netuix:meta name="skeleton-resource-bundle" content="Bundle"/>
<netuix:content>
<netuix:page markupName="page" markupType="Page"
definitionLabel="Page-Label" title="Page-Title"
skeletonUri="/framework/skeletons/default/wlsworkspace/
page_content.jsp">
<netuix:meta name="Metadata-Type" content="Metadata-ID"/>
<netuix:meta name="breadcrumb-context" content="handle"/>
<netuix:meta name="skeleton-resource-bundle" content="Bundle"/>
<netuix:content>
<netuix:gridLayout columns="1" markupType="Layout"
markupName="singleColumnLayout">
<netuix:placeholder flow="vertical" markupType="Placeholder"
markupName="singleColumn_columnOne">
<netuix:portletInstance markupType="Portlet"
title="Portlet-Instance-Title"
instanceLabel="Portlet-Instance-Label"
contentUri="Portlet-URI"/>
</netuix:placeholder>
</netuix:gridLayout>
</netuix:content>
</netuix:page>
<!-- Add additional netuix:page elements here -->
</netuix:content>
</netuix:book>
</portal:root>
サブタブのない最上位タブ (たとえば [ドメイン : メモ]) を定義するポータル インクルード (.pinc) XML ファイルを作成するには、次の手順に従います。
たとえば、dev-dir/PortalConfig/MyApp.pinc というファイルを作成します。dev-dir は開発用のディレクトリです。詳細については、「拡張のアーカイブとデプロイメント」を参照してください。
Page-Label。ポータル フレームワークおよび WebLogic Server JSP タグが、ページへのリクエストの転送に使用するユニークな識別子に変更します。 Page-Title。ユーザに対して表示するサブタブの名前、または作成したメッセージ バンドルのキーに変更します。Bundle。作成したメッセージ バンドルの名前に変更します。「メッセージ バンドルの作成と使い方」を参照してください。Portlet-Instance-Title。この値は、ポータル サポート スキーマで必要になりますが、このコンテキストでは使用しません。ポータル フレームワークはこの値をポートレットのタイトル バーに表示しますが、Administration Console のルック アンド フィールでは、階層のこのレベルのポートレットはタイトル バーを表示しないように指定されています。 Portlet-Instance-Label。ポータル フレームワークおよび WebLogic Server JSP タグが、ポートレット インスタンスへのリクエストの転送に使用するユニークな識別子に変更します。 Portlet-URI。作成したポートレット ファイルのパスとファイル名に変更します (「ポートレットの定義」を参照してください)。パスは、ポータル Web アプリケーションのルートに対する相対パスでなければなりません。コード リスト 4-3 では、ブックではなくページを定義している点に留意します。こうすることで、Administration Console のルック アンド フィールによって、ページがサブタブのないタブとして表示されます。
コード リスト 4-3 サブタブのない最上位タブを作成する .pinc ファイルのテンプレート
<?xml version="1.0" encoding="UTF-8"?>
<portal:root
xmlns:netuix="http://www.bea.com/servers/netuix/xsd/controls/netuix/1.0.0"
xmlns:html="http://www.w3.org/1999/xhtml-netuix-modified/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:portal="http://www.bea.com/servers/netuix/xsd/portal/support/1.0.0"
xsi:schemaLocation="http://www.bea.com/servers/netuix/xsd/portal/support
/1.0.0 portal-support-1_0_0.xsd">
<netuix:page markupName="page" markupType="Page"
definitionLabel="Page-Label" title="Page-Title"
skeletonUri="/framework/skeletons/default/wlsworkspace/
page_content.jsp">
<netuix:meta name="skeleton-resource-bundle" content="Bundle"/>
<netuix:content>
<netuix:gridLayout columns="1" markupType="Layout"
markupName="singleColumnLayout">
<netuix:placeholder flow="vertical" markupType="Placeholder"
markupName="singleColumn_columnOne">
<netuix:portletInstance markupType="Portlet"
title="Portlet-Instance-Title"
instanceLabel="Portlet-Instance-Label"
contentUri="Portlet-URI"/>
</netuix:placeholder>
</netuix:gridLayout>
</netuix:content>
</netuix:page>
</portal:root>
既存の WebLogic Server タブにサブタブを追加する場合も コード リスト 4-3 のコードを使用します。
コントロールを指定する場所によって、最上位タブとして表示されるか、サブタブとして表示されるかが決まります。たとえば、コントロールが DomainConfigGeneralPage ブックの子になるように指定すると、そのコントロールは [ドメイン : コンフィグレーション] タブのサブタブとして表示されます。コントロールが CoreDomainConfigGeneralBook ブックの子になるように指定すると、そのコントロールは [ドメイン : コンフィグレーション] タブの兄弟の最上位タブとして表示されます。
「ポートレットや UI コントロールの表示位置の指定」を参照してください。
ContentBook 内のブックやページは、必ずしもタブやサブタブでアクセスできるようにする必要はありません。要約テーブルを表示する多くの WebLogic Server ページは、NavTreePortlet からアクセスすることはできますが、タブ付きインタフェースからはアクセスできません (図 2-4 を参照してください)。
これまでの節のすべてのコード リストは、子にアクセスするためのタブやサブタブを表示しない親コントロール内にも挿入できます。「ポートレットや UI コントロールの表示位置の指定」を参照してください。
カスタム セキュリティ プロバイダを作成し、プロバイダを管理する MBean を WebLogic MBeanMaker を使用して作成した場合、Administration Console ではそのプロバイダのコンフィグレーション データを表示するページが自動的に生成されます。また、[セキュリティ : プロバイダ] テーブルからそのプロバイダ ページへのリンクも生成されます。
しかし、独自のページを作成してこの表示をカスタマイズすることもできます。独自のページを作成した場合は、[セキュリティ : プロバイダ] テーブルからのリンク先を、Administration Console によって自動生成されたページからカスタム ページに変更する必要があります。
リンク先を変更するには、作成したページの <netuix:page> 要素の子として次の要素を含めます。
<netuix:meta type="configuration" content="MBean-class-name"/>
MBean-class-name は、作成したプロバイダの MBean クラスの完全修飾名です。
<netuix:page markupName="page" markupType="Page"
definitionLabel="SimpleSampleAuthorizerAuthorizerConfigCommonTabPage"
title="tab.common.label"
skeletonUri="/framework/skeletons/default/wlsworkspace
/page_content.jsp">
<netuix:meta name="configuration"
content="examples.security.providers.authorization.simple.
SimpleSampleAuthorizerMBean"/> <netuix:content>
...
[ドメイン構造] というタイトルのポートレット (NavTreePortlet) から、拡張内のブックやページへのリンクを作成できます。以下の節では、NavTreePortlet へのノードの追加について説明します。
作成したブック コントロールやページ コントロールにリンクするノードを追加するには、<netuix:book> または <netuix:page> 要素に次の属性および属性値を追加します。backingFile="com.bea.console.utils.NavTreeExtensionBacking"
<netuix:book definitionLabel="MyAppTableBook" title="MyApp.title"
markupName="book"
markupType="Book"
backingFile="com.bea.console.utils.NavTreeExtensionBacking"
>
NavTreePortlet により、そのブックまたはページ要素の title 属性の値がリンク テキストとして表示されます。title 属性の値をメッセージ バンドルのキーにした場合は、そのキーにマッピングされたローカライズ済みの値が表示されます。
この backingFile 属性と属性値を拡張内の複数のコントロールに対して指定した場合は、それらのコントロールが NetUI 拡張ファイルで宣言されている順番に従って各ノード エントリが追加されます。
NavTreePortlet に追加するノードの位置を制御する場合や、他のノードを含むノード (ノード ツリー) を追加する場合は、次の手順に従います。
このクラスは、1 つまたは複数のノードを定義して、ノードの位置を指定します。「NavTreeBacking クラスの作成」を参照してください。
ノードを定義する Java クラスを作成する場合は、com.bea.console.utils.NavTreeExtensionBacking を拡張する必要があります。このクラスは、あらかじめ WebLogic Server 実行時環境で利用できる状態になっています。ただし、開発とコンパイルの環境をサポートするためには、以下の JAR を環境のクラスパスに追加する必要があります。WL_HOME/server/lib/consoleapp/webapp/WEB-INF/lib/console.jar WL_HOME/server/lib/consoleapp/webapp/WEB-INF/lib/netuix_servlet.jar
WL_HOME は、WebLogic Server のインストール先ディレクトリです。
NavTreeBacking クラスを作成するには、次の手順に従います (コード リスト 4-4 を参照してください)。
NavTreeExtensionBacking.getTreeExtension(
PageBackingContext ppCtx, String extensionUrl) メソッドをオーバーライドします。ポータル フレームワークは、backingFile="your-NavTreeBacking-class" 属性を含むコントロールをロードする際に、ppCtx および extensionUrl パラメータの値を NavTreeBacking クラスに渡します。
PageBackingContext は、ポータル フレームワーク内のクラスで、ポータル コントロールに関するデータと、データを取得するためのメソッドを保持します。たとえば、コントロールの definitionLabel の値を保持できます。渡された ppCtx インスタンスは、getTreeExtension() メソッドを呼び出したコントロールを記述します。『WebLogic Portal 8.1.4 API Reference』の com.bea.netuix.servlets.controls.page.PageBackingContext を参照してください。
extensionUrl の値は、getTreeExtension() メソッドを呼び出したコントロールの URL です。
親ノード (または子を含まないノード) では、次のコンストラクタを使用します。TreeNode(String nodeId, String nodeName, String nodeUrl)
nodeId は、コントロールの definitionLabel の値です。メソッドにパラメータとして渡された PageBackingContext インスタンスのこの値は、PageBackingContext.getDefinitionLabel() を使用して取得できます。代わりに、コントロールの .pinc ファイル内の definitionLabel の値を入力することもできます。
nodeName は、NavTreePortlet に表示するテキストです。
nodeURL は、そのコントロールの URL です。このパラメータの値として extensionUrl を指定します。
各子ノードで、次のコンストラクタを使用します。TreeNode(String nodeId, String nodeName,
String nodeUrl, TreeNode parent)
nodeId は、コントロールの definitionLabel の値です。PageBackingContext.getDefinitionLabel() を使用してこの値を取得することはできません。これは、このメソッドで使用できる PageBackingContext が親ノード用であるためです。代わりに、コントロールの .pinc ファイル内の definitionLabel の値を入力する必要があります。
nodeName は、NavTreePortlet に表示するテキストです。
nodeURL は、そのコントロールの URL です。次の値を指定します。?_nfpb=true&_pageLabel=definitionLabel definitionLabel は、リンク先となるページまたはブックの definitionLabel です。
parent には、作成した TreeNode のいずれかを指定します。ノード ツリーに複数のレベルを作成するには、階層内でより上位にあるノードの子を親として指定します。
このイベントは、NavTreePortlet 内のリスナにブロードキャストされます。
次のコンストラクタを使用します。NavTreeExtensionEvent(String pageLabel, String url,
String parentPath, TreeNode node, int ACTION)
pageLabel は、親ノードの TreeNode オブジェクトを作成したときに使用した nodeID と同じ値です。
url は、親ノードの TreeNode オブジェクトを作成したときに使用した nodeURL と同じ値です。
parentPath は、ノードに表示するノードの名前です。NavTreePortlet のナビゲーション ツリーのルートを表すには / (スラッシュ) を使用します。
たとえば、ノードまたはノード ツリーを最上位に表示する場合は / を指定します。ノードを [環境] の子として表示する場合は、/Environments を指定します。
node は、手順 1 で作成した親 TreeNode です。
ACTION は、NavTreeExtensionEvent.APPEND_ACTION です。使用できるその他のアクションについては、『WebLogic Portal 8.1.4 API Reference』の「NavTreeExtensionEvent」を参照してください。
コード リスト 4-4 NavTreeExtensionBacking クラスのサンプル
package com.mycompany.consoleext;
import com.bea.netuix.servlets.controls.page.PageBackingContext;
import com.bea.jsptools.tree.TreeNode;
import com.bea.console.utils.NavTreeExtensionBacking;
import com.bea.console.utils.NavTreeExtensionEvent;
public class CustomNavTreeExtension extends NavTreeExtensionBacking {
public NavTreeExtensionEvent getTreeExtension(PageBackingContext ppCtx,
String extensionUrl){
/*
* このメソッドを呼び出したコントロールの TreeNode を作成する
*/
TreeNode node = new TreeNode(ppCtx.getDefinitionLabel(),
ppCtx.getDefinitionLabel(),extensionUrl);
/*
* 子 TreeNode を作成する
*/
TreeNode node1 = new TreeNode("MyAppGeneralTabPage",
"MyApp General",
"?_nfpb=true&_pageLabel=MyAppGeneralTabPage",node);
/*
* 親ノード (その子ノードを含む) を NavTreePortlet の
* Environment ノードの下に追加する
*/
NavTreeExtensionEvent evt =
new NavTreeExtensionEvent(ppCtx.getDefinitionLabel(),extensionUrl,
"/Environment",node, NavTreeExtensionEvent.APPEND_ACTION);
return evt;
}
}
ポートレットや UI コントロールを表示するすべての位置は、Administration Console 内の既存のコントロールに対する相対パスで指定する必要があります。たとえば、作成したポートレットが [システム状態] ポートレットの下のデスクトップに表示されるように指定できます。
以下の節では、ポートレットや UI コントロールの位置を指定する方法について説明します。
Administration Console のほとんどの UI コントロールは definitionLabel で特定でき、この値を使用して UI コントロールの相対位置を指定します。WebLogic Server には、Administration Console のユーザ インタフェースにこのラベルを表示するためのルック アンド フィールが用意されています。
注意 : ポートレットをデスクトップ上にしか追加しない場合は、この開発ルック アンド フィールをデプロイする必要はありません。
このルック アンド フィールを使用するには、次の手順に従います。
各ラベル付きコントロールのタイトルの横に、definitionLabel の値が角括弧 ([ ]) に囲まれて表示されます。別の角括弧の中には、そのコントロールがブックであるかページであるかが表示されます。図 4-2 を参照してください。
図 4-2 Administration Console のユーザ インタフェースに表示されるコントロール ラベル
NetUI 拡張 XML ファイル (netuix-extension.xml) は、拡張のデプロイメント記述子です。このファイルで、拡張内の各親 UI コントロールと、それを表示する位置を宣言します。詳細については、『NetUI Extensions Schema Reference』を参照してください。
NetUI 拡張 XML ファイルを作成するには、次の手順に従います (コード リスト 4-5 を参照してください)。
netuix-extension.xml という名前の XML ファイルを作成し、次のディレクトリに保存します。dev-dir/WEB-INF dev-dir は開発用のディレクトリです。詳細については、「拡張のアーカイブとデプロイメント」を参照してください。<page-extension>portlet-URI
<page-location>
<parent-label-location label="page"/>
<page-insertion-point layout-location="0"
placeholder-position="0"/>
</page-location>
<portlet-content
content-uri="" title="title"portlet-instance-label
orientation="top" default-minimized="false"
instance-label=""/>
</page-extension>
.portlet ファイルのパスとファイル名。パスは、ポータル Web アプリケーションのルートに対する相対パスでなければなりません。.portlet ファイルに定義したタイトルが使用されます。layout-location および placeholder-position 属性の値を変更すると、ポートレットの位置を変更できます。詳細については、『NetUI Extensions Schema Reference』を参照してください。
<book-extension> Admin-Console-Book-Label
<book-location>
<parent-label-location label=""/>pinc-URI
<book-insertion-point action="append"/>
</book-location>
<book-content content-uri=""/>
</book-extension>
コード リスト 4-5 netuix-extension.xml ファイルのサンプル
<?xml version="1.0" encoding="UTF-8"?>
<weblogic-portal-extension
xmlns="http://www.bea.com/servers/portal/weblogic-portal/8.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.bea.com/servers/portal/weblogic-portal/
8.0 netuix-extension-1_0_0.xsd">
<provider-info>
<title>My Extension</title>
<version>1.0</version>
<description>Inserts a portlet on the desktop, a tab next to
Domains:Configuration, and a subtab under Domains: Configuration.
</description>
<author>Me</author>
<last-modified>02/03/2005</last-modified>
<support-url>http://www.mycompany/support/index.jsp</support-url>
</provider-info>
<portal-file>/console.portal</portal-file>
<!--コンソールのデスクトップにポートレットを追加する -->
<page-extension>
<page-location>
<parent-label-location label="page"/>
<page-insertion-point layout-location="0" placeholder-position="0"/>
</page-location>
<portlet-content content-uri="/portlets/desktop/desktop_view.portlet"
title="My App Status" orientation="top" default-minimized="false"
instance-label="PortletExtensionInstanceLabel"
/>
</page-extension>
<!--[ドメイン] タブにタブを追加する -->
<book-extension>
<book-location>
<parent-label-location label="CoreDomainConfigGeneralBook"/>
<book-insertion-point action="append"/>
</book-location>
<book-content content-uri="/page/page.pinc"/>
</book-extension>
<!-- [ドメイン : コンフィグレーション] タブにサブタブを追加する-->
<book-extension>
<book-location>
<parent-label-location label="DomainconfigTabPage"/>
<book-insertion-point action="append"/>
</book-location>
<page-content content-uri="/page/notespage.pinc"/>
</book-extension>
</weblogic-portal-extension>
たとえば、拡張のデプロイメント記述子 netuix-extension.xml ファイルは、次のディレクトリに格納する必要があります。root-dir/WEB-INF
NavTreePortlet にノードを追加する Java クラスを使用している場合は、そのパッケージ構造を次のディレクトリから始める必要があります。root-dir/WEB-INF/classes
メッセージ バンドルを使用している場合は、そのプロパティ ファイルを次のディレクトリに格納する必要があります。root-dir/WEB-INF/classes
その他のすべてのリソースはどのようなディレクトリ構造にしても構いませんが、拡張のルート ディレクトリの下に格納し、netuix-extension.xml ファイルおよびその他の XML ファイルからの相対リンクを正しく指定する必要があります。
Administration Console でデプロイメント エラーが発生すると、標準出力と管理サーバのサーバ ログ ファイルにエラーおよび警告メッセージが出力されます。
エラーまたは警告メッセージが出力されていないのに拡張が Administration Console に表示されない場合は、netuix-extension.xml ファイルで間違った親 UI コントロールを指定した可能性があります。たとえば、子にアクセスするためのタブを表示しない親 UI コントロールを指定した場合、拡張はデプロイされますが、それにアクセスするためのメニュー コントロールが存在しないことになります。
|
|
|