6. コンフィグレーション

本章では、WebOTX Portalに関する設定項目について説明します。

属性値の取得・設定を行なうには次の方法があります。

運用管理ツール、運用管理コマンドの操作方法については、[ 運用ツールガイド ] または [ リファレンス集 運用管理・設定編 > 4. 運用管理コマンドリファレンス > 4.2. 運用管理コマンド(otxadmin) ] を参照してください。

設定項目に関する詳細は、[ 7. 付録 > 7.1. MO定義リファレンス ] を参照してください。

6.1. 各種設定

ここでは、WebOTX Portalの各種設定項目について説明します。

6.1.1. ポータルに関する設定

運用管理ツール/運用管理コマンド(otxadmin)から変更可能な設定項目

Dotted-name:server.portal

表6.1.1-1

属性名(attribute-name)

説明

既定値

モニタレベル[ON|OFF]
(monitoringLevel)

ポータルのモニタレベルを設定します。

OFF

ポータルサイト一括登録時のコミットモード[ALL|EACH]
(createPortalSiteCommitMode)

ポータルサイト一括作成時のコミットモードを設定します。ALLの場合は一括登録、EACHの場合は一件ずつ登録します。

ALL

ユーザ整合性確認実行時に一回に検索する件数[1-2147483647]
(maxDirectoryMatching)

ユーザ整合性確認実行時に一回に検索する件数を設定します。

1000

6.1.2. ストレージに関する設定

運用管理ツール/運用管理コマンド(otxadmin)から変更可能な設定項目

Dotted-name:server.portal.portal-storage

表6.1.2-1

属性名(attribute-name)

説明

既定値

基本設定 (basicConfiguration)

ストレージに対する基本的な設定を行います。 設定可能なプロパティは、表 6.1.2-2 を参照してください。

各プロパティに対する既定値は、表 6.1.2-2 を参照してください。

分散キャッシュ利用可否 (enableDistributedCache)

分散キャッシュを利用するかどうかを指定します。分散キャッシュを利用する場合は、更新通知に利用するJMS関連のリソースの登録が必要になります。詳細は「6.3. 分散キャッシュの利用」を参照してください。

false

分散キャッシュ (distributedCache)

分散キャッシュに関する設定を行います。 分散キャッシュ利用可否(enableDistributedCache)にtrueが設定されている場合に有効になります。 設定可能なプロパティは、表 6.1.2-3 を参照してください。

各プロパティに対する既定値は、表 6.1.2-3 を参照してください。

振り分けキーと永続ユニット名のマッピング (keyUnitMap)

振り分けキーと永続ユニットのマッピングを定義します。 V9.1では、負荷分散を目的として、複数の永続ユニットを利用する場合に定義します。ここで指定する永続ユニット名は、otxadmin add-persistence-unitコマンドにより、あらかじめ定義しておく必要があります。 詳細は「6.6. 複数永続ユニットの利用」を参照してください。

なし

永続ユニット名とキャッシュ名のマッピング (unitCacheMap)

分散キャッシュ利用時に、永続ユニット名と、更新通知用のキャッシュ名のマッピングを定義します。 V9.1では、分散環境において、複数永続ユニットを利用する場合に定義します。なお、ここで指定する永続ユニット名は、otxadmin add-persistence-unit コマンドにより、あらかじめ定義しておく必要があります。 詳細は「6.6. 複数永続ユニットの利用」を参照してください。

unit_001,cache1

ストレージに対する基本的な設定のプロパティ

表6.1.2-2

プロパティ名

説明

既定値

com.nec.webotx.portal.storage.default.persistence.unit.name

既定の永続ユニット名を指定します。

unit_001

com.nec.webotx.portal.storage.user.transaction.jndi.name

UserTransactionのJNDI名を指定します。

UserTransaction

com.nec.webotx.portal.storage.cache.enabled

永続ユニット内でキャッシュ機能を使用するかどうかを指定します。

true

com.nec.webotx.portal.storage.cache.definition.name

既定のキャッシュ名を指定します。

cache1

com.nec.webotx.portal.storage.error.action.not.found.cache.definition

キャッシュ定義ファイルの読み込みでエラーが発生した場合の動作を指定します。
default : 既定値のキャッシュを利用する
exception : 例外をスローする

default

com.nec.webotx.portal.storage.error.action.not.found.cache

指定した名前のキャッシュが取得できなかった場合の動作を指定します。
default : 既定値のキャッシュを利用する
exception : 例外をスローする

default

com.nec.webotx.portal.storage.error.action.failed.cache.initialize

キャッシュ初期化時にエラーが発生した場合の動作を指定します。
continue : キャッシュ利用なしで動作する
exception : 例外をスローする

continue

com.nec.webotx.portal.storage.distributed.cache.enabled

分散キャッシュを利用するかどうかを指定します。
true : 利用する
false : 利用しない

false

com.nec.webotx.portal.storage.factory.cache.init.numbers

EntityManagerFactoryのキャッシュ生成時に生成するEntityManagerFactoryの初期数を指定します。
指定可能な値の範囲は、0-2147483647です。不正な値が指定された場合は、既定値になります。

0

com.nec.webotx.portal.storage.factory.cache.min.numbers

EntityManagerFactoryのキャッシュに保持するEntityManagerFactoryの最小数を指定します。
指定可能な値の範囲は、0-2147483647です。不正な値が指定された場合は、既定値になります。 キャッシュの最小数と最大数を0に指定した場合は、EntityManagerFactoryのキャッシュは行いません。

0

com.nec.webotx.portal.storage.factory.cache.max.numbers

EntityManagerFactoryのキャッシュに保持するEntityManagerFactoryの最大数を指定します。
指定可能な値の範囲は、0-2147483647です。不正な値が指定された場合は、既定値になります。 キャッシュの最小数と最大数を0に指定した場合は、EntityManagerFactoryのキャッシュは行いません。

100

com.nec.webotx.portal.storage.factory.cache.expire.time

EntityManagerFactoryキャッシュへのアクセスアイドル時間(秒)を指定します。
EntityManagerFactoryの破棄処理を行うタイマータスクが動作したタイミングで、 このアイドル時間を超えている場合に、キャッシュ内のEntityManagerFactoryの破棄を行います。
指定可能な値の範囲は、120-2147483647です。不正な値が指定された場合は、既定値になります。

1800

com.nec.webotx.portal.storage.factory.close.task.delay.time

EntityManagerFactoryの破棄処理を行うタイマータスクを開始するまでの遅延時間(秒)を指定します。
指定可能な値の範囲は、60-2147483647です。不正な値が指定された場合は、既定値になります。

180

com.nec.webotx.portal.storage.factory.close.task.interval.time

EntityManagerFactoryの破棄処理を行うタイマータスクの実行間隔(秒)を指定します。
指定可能な値の範囲は、60-2147483647です。不正な値が指定された場合は、既定値になります。

600

com.nec.webotx.portal.storage.factory.close.lot.number

EntityManagerFactoryの破棄処理を行うタイマータスクにおいて、 各永続ユニットに対する1回の処理で破棄するEntityManagerFactoryの数を指定します。
指定可能な値の範囲は、1-2147483647です。不正な値が指定された場合は、既定値になります。

10

com.nec.webotx.portal.storage.ehcache.enable.init.delay.time

ドメイン起動時における、キャッシュ機能有効化処理の開始遅延時間(秒)を指定します。
指定可能な値の範囲は、0-2147483647です。不正な値が指定された場合は、既定値になります。 0の場合は遅延なしで有効化処理を開始します。

0

com.nec.webotx.portal.storage.ehcache.enable.retry.max

キャッシュ機能有効化リトライ回数を指定します。
指定可能な値の範囲は、-1-2147483647です。不正な値が指定された場合は、既定値になります。 0の場合はリトライしません。-1の場合は無制限です。

10

com.nec.webotx.portal.storage.ehcache.enable.retry.interval

キャッシュ機能有効化リトライ間隔(秒)を指定します。
指定可能な値の範囲は、1-2147483647です。不正な値が指定された場合は、既定値になります。

5

com.nec.webotx.portal.storage.persistence.unit.balancing.type

複数永続ユニット利用時に、永続ユニットの振り分けタイプを指定します。
V9.1で指定可能な値は、"roundrobin"のみです。詳細は「6.6. 複数永続ユニットの利用」を参照してください。

なし

com.nec.webotx.portal.storage.addon.munit.FactoryCacheClearImpl.unit.list

複数永続ユニット利用時に、利用するすべての永続ユニット名を指定します。
詳細は「6.6. 複数永続ユニットの利用」を参照してください。

なし

com.nec.webotx.portal.storage.addon.munit.StepRoundRobinRuleImpl.key.list

複数永続ユニット利用時に、永続ユニットの振り分けタイプとしてroundrobinを指定した場合に、振り分けキーのリストを指定します。
このリストは、振り分け先の重み付けを行うために利用します。roundrobinの場合は、ここで指定されたリストの振り分けキーを順番に利用するため、同一の振り分けキーを連続して書くと、同じ永続ユニットを利用することになります。また、ここで指定した振り分けキーに対してどの永続ユニットを割り当てるかは、振り分けキーと永続ユニット名のマッピング (keyUnitMap)で指定します。詳細は「6.6. 複数永続ユニットの利用」を参照してください。

なし

分散キャッシュに関するプロパティ

表6.1.2-3

プロパティ名

説明

既定値

initialContextFactoryName

JNDIコンテキストの完全修飾名を指定します。

jp.co.nec.WebOTX.jndi.SerialInitContextFactory

providerURL

JNDIのURLを指定します。

rmiiiop://localhost

replicationTopicConnectionFactoryBindingName

更新通知を送受信するJMSクライアント用のTopicコネクションファクトリリソース名を指定します。

jms/portalTCF

replicationTopicBindingName

更新通知を受けるTopicに対する送信先リソース名を指定します。

jms/portalTopic

getQueueConnectionFactoryBindingName

更新通知を送受信するJMSクライアント用のQueueコネクションファクトリリソース名を指定します。

jms/portalQCF

getQueueBindingName

更新通知を受けるQueueに対する送信先リソース名を指定します。

jms/portalQueue

6.1.3. 永続ユニットに関する設定

運用管理ツール/運用管理コマンド(otxadmin)から変更可能な設定項目

Dotted-name:server.portal.portal-storage.persistence-unit.<永続ユニット名>

表6.1.3-1

属性名(attribute-name)

説明

既定値

永続ユニットのプロパティ (unitProperties)

永続ユニットに関する設定を行います。 設定可能なプロパティは、表 6.1.3-2 を参照してください。

各プロパティに対する既定値は、表 6.1.3-2 を参照してください。

永続ユニットに関するプロパティ

表6.1.3-2

プロパティ名

説明

既定値

javax.persistence.transactionType

トランザクションのタイプを指定します。
JTA : JTAトランザクション
RESOURCE_LOCAL : リソースローカルトランザクション

RESOURCE_LOCAL

javax.persistence.jtaDataSource

トランザクションタイプにJTAを指定した場合、JTA連携ありのJDBCデータソース名を指定します。

なし

javax.persistence.nonJtaDataSource

トランザクションタイプにRESOURCE_LOCALを指定した場合、JTA連携なしのJDBCデータソース名を指定します。

jdbc/portalDataSource

toplink.cache.size.default

永続ユニット内のキャッシュサイズを指定します。

1000

toplink.cache.shared.default

永続ユニット内のセッション・キャッシュを複数のクライアント・セッションで共有するかどうかを指定します。 特別な理由がない限り、この設定は変更しないでください。

true

toplink.cache.type.default

永続ユニット内のセッション・キャッシュのデフォルトタイプを指定します。 特別な理由がない限り、設定は変更しないでください。

SoftWeak

6.1.4. ディレクトリサーバに関する設定

運用管理ツール/運用管理コマンド(otxadmin)から変更可能な設定項目

Dotted-name:server.portal.directory-server

表6.1.4-1

属性名(attribute-name)

説明

既定値

WebOTX PortalユーザID
(id)

ディレクトリサーバ上のWebOTX PortalユーザのIDを指定します。

portaluser

WebOTX Portalユーザパスワード
(password)

ディレクトリサーバ上のWebOTX Portalユーザのパスワードを指定します。

adminadmin(※1)

ディレクトリサーバのホスト名またはIPアドレス
(servername)

ディレクトリサーバのホスト名またはIPアドレスを指定します。

localhost

ディレクトリサーバのポート番号[1-65535]
(serverport)

ディレクトリサーバのポート番号を指定します。

389

ディレクトサーバへの接続のタイムアウト時間(msec)[1-2147483647]
(servertimeout)

ディレクトサーバへの接続のタイムアウト時間を指定します。

10000

マスタのディレクトリサーバのホスト名またはIPアドレス
(masterservername)

マスタのディレクトリサーバのホスト名またはIPアドレスを指定します。

なし

マスタのディレクトリサーバのポート番号[1-65535]
(masterserverport)

マスタのディレクトリサーバのポート番号を指定します。

なし

LDAP通信インスタンスクラスのクラス名[none|ssl|tls]
(connectionclassname)

LDAP通信インスタンスクラスのクラス名を指定します。

none

LDAP通信でSSLを利用する際に使用する証明書キーストアのパスワード
(ssltruststorepassword)

LDAP通信でSSLを利用する際に使用する証明書キーストアのパスワードを指定します。

changeit(※1)

コネクション確立待ち時間(msec)[0-2147483647]
(connectTimeout)

ディレクトリサーバとの間のLDAPコネクションの確立待ち時間を指定します。

10000

ディレクトリサーバのキャッシュ登録数
(cacheCount)

ディレクトリサーバのキャッシュ登録の上限数を指定します。

15000

ディレクトリサーバのキャッシュ有効期限(sec)
(cacheExpiryTime)

ディレクトリサーバのキャッシュの有効期限を指定します。0を指定した場合は有効期限なしです。

0

ディレクトリサーバのキャッシュ有効期限(sec)
(cacheExpiryTime)

ディレクトリサーバのキャッシュの有効期限を指定します。0を指定した場合は有効期限なしです。

0

ディレクトリサーバのキャッシュ有効期限(sec)
(cacheExpiryTime)

ディレクトリサーバのキャッシュの有効期限を指定します。0を指定した場合は有効期限なしです。

0

認証用コンテキストキャッシュサイズ
(contextBindMinimumCacheSize)

キャッシュに保持しておくコンテキストの数を指定します。この数以上にキャッシュされる場合があります。
設定可能な値は0以上100000以下です。値が不正の場合は規定値で動作します。

5

操作用コンテキストキャッシュサイズ
(contextOperationBindMinimumCacheSize)

キャッシュに保持しておくコンテキストの数を指定します。この数以上にキャッシュされる場合があります。
設定可能な値は0以上100000以下です。不正値の場合は規定値で動作します。

5

キャッシュ無アクセス時間(ミリ秒)
(contextNoAccessTime)

指定した時間以上コンテキストキャッシュの利用がない場合に、コンテキストキャッシュの余剰を削除する処理が動作します。
設定可能な値は0以上60480000以下です。不正値の場合は規定値で動作。

300000

キャッシュチェック間隔(ミリ秒)
(contextSuppressThreadInterval)

キャッシュチェック間隔%<キャッシュ無アクセス時間となるように設定します。おおよそコンテキストキャッシュ無アクセス時間の1/2以下を指定してください。
設定可能な値は20000以上60480000以下です。不正値の場合は規定値で動作します。

150000

キャッシュチェック開始遅延時間(ミリ秒)
(contextSuppressThreadStartDelay)

コンテキストキャッシのチェック開始を遅延させる時間を指定する。 設定可能な値は20000以上60480000 (1WEEK)以下です。不正値の場合は規定値で動作します。

3600000

接続確認間隔(ミリ秒)
(contextAlivecheckThreadInterval)

ディレクトリサーバ側の無応答タイムアウト時間の40%以内に設定します。
設定可能な値は20000以上60480000 (1WEEK)以下です。不正値の場合は規定値で動作します。

70000

接続確認開始遅延時間(ミリ秒)
(contextAlivecheckThreadStartDelay)

チェック処理開始を、初期化時からどれだけ遅延させて開始するかを指定します。ディレクトリサーバ側の無応答タイムアウト時間の40%以内にしてください。
設定可能な値は20000以上60480000 (1WEEK)以下です。不正値の場合は規定値で動作します。

60000

認証方式
(authenticationMethod)

ディレクトリサーバとの認証方式を指定します。BIND認証(bind), BINDなし認証(nobind)の何れか指定してください。不正値の場合は規定値で動作します。
BIND認証:ディレクトリサーバ側での認証処理(従来方式)。
BINDなし認証:Portalサーバ側での認証処理。

bind

接続確認
(contextAlivecheckEnabled)

コンテキストが利用可能かの確認処理を有効にします。不正値の場合は規定値で動作します。

true

接続確認用属性名
(contextAlivecheckAttributeName)

指定した属性名を取得することで、動作確認を行います。

uid

使い捨てコンテキスト
(allDisposableContextEnabled)

ディレクトリサーバへのアクセス時に常にコンテキストを作成します。不正値の場合は規定値で動作します。

false

(※1)設定ファイル上には暗号化された文字列が格納されます。
チューニング方法については、 [セットアップガイド > 3. インストール > 3.3. インストール後の作業 > 3.3.1.3. EDS への接続設定]を参照してください。

Caution
"password"が空の状態では通信できませんので、必ず設定してください。また、"password"を既定値から変更した場合、EDS上の次のDNのエントリのuserPassword属性値も変更する必要があります。
DN : uid="portaluser" ,ou="config" ,o="webotxportal" , c="JP"

6.1.5. アクセス権に関する設定

運用管理ツール/運用管理コマンド(otxadmin)から変更可能な設定項目

Dotted-name:server.portal.access-control

表6.1.5-1

属性名(attribute-name)

説明

既定値

アクセス権判定の有効化[true|false]
(enabled)

アクセス権判定機能の有効/無効を指定します。

true

パーミッションキャッシュの有効化[true|false]
(permissioncache-enabled)

パーミッションキャッシュ機能の有効/無効を指定します。

true

パーソナライズの利用可否判定[true|false]
(personalize)

パーソナライズの可否をユーザリソース上の設定で制御するかを指定します。

false

6.2. 設定ファイル情報

ここでは、運用管理コマンド、統合運用管理ツールから設定できない項目にについて説明します。

6.2.1. 認証連携ポートレットの設定

以前のバージョンでは認証連携ポートレットで使用する認証連携サービスをファイルで設定する必要がありましたが、WebOTX Portal V9.1ではコマンドで設定します。
詳細は[ コマンドリファレンスガイド > 1. ポータル > 1.1. 運用ツール > 1.1.15. ポートレットで利用可能な認証連携サービスの登録 ]を参照してください。

6.2.2. メニューポートレットの設定

MenuPortlet.properties

ファイルパス:${INSTANCE_ROOT}/config/portal/portlet/webotx-portal-portlet/MenuPortlet/MenuPortlet.properties

メニューポートレットに関する設定を行うファイルです。

設定の変更を有効にするためにはWebOTXドメインの再起動(Advancedモードの場合はプロセスグループの再起動)が必要となります。

表6.2.2-1
プロパティ名 説明 既定値
com.nec.webotx.portal.portlet.list.num

リンク・仕切りの最大数を、1〜999 の半角数字で指定します。

※表示するリンク・仕切りが多いほど表示するまでの時間が長くなります。快適に利用する場合は 1〜100 の範囲内で設定することを推奨します。

25
com.nec.webotx.portal.portlet.icon.num

アイコンの登録数を、0〜2,147,483,647 の半角数字で指定します。

100
com.nec.webotx.portal.portlet.set.enable.window.option

リンククリック時に表示するウィンドウオプションの設定可否を指定します。

false

6.2.3. RSSリーダーポートレットの設定

RssPortlet.properties

ファイルパス:${WEBOTX_INSTANCE_ROOT}/config/portal/portlet/webotx-portal-rssportlet/RssPortlet.properties

RSSリーダーポートレット特有の設定を行います。

表6.2.3-1
プロパティ名 説明 既定値
com.necwebotx.portal.portlet.rss.maximized.windowstate.height 最大化ウィンドウ状態のポートレットの高さを指定します。ピクセルで指定します。 600
com.necwebotx.portal.portlet.rss cache.usememory.limitratio キャッシュ可能な最大ヒープサイズに対する使用メモリの割合を指定します。パーセンテージを指定します。 60
portlet.properties

ファイルパス:${WEBOTX_INSTANCE_ROOT}/config/portal/portlet/portlet.properties

ポートレットで共通の設定を行うファイルです。HTTP通信やプロキシサーバに関する設定を行います。

表6.2.3-2
プロパティ名 説明 既定値
com.nec.webotx.portal.portlet.net.connection.timeout ポートレットから対象Webサーバへの接続を確立する際のタイムアウト時間を1〜600秒で指定します。0以下または600より大きい値が指定されている場合、既定値の3秒となります。 3(単位:秒)
com.nec.webotx.portal.portlet.net.read.timeout 対象Web アプリケーションからHTTPレスポンスを読み込む際のタイムアウト時間を1〜600秒で指定します。HTTPレスポンスが分割されている場合は、1つのパケットを読み込むタイムアウト時間となります。0以下または600より大きい値が指定されている場合、既定値の10秒となります。 10(単位:秒)
com.nec.webotx.portal.portlet.http.proxy.host HTTP通信で利用するプロキシサーバのホスト名を指定します。 なし
com.nec.webotx.portal.portlet.http.proxy.port HTTP通信で利用するプロキシサーバのポート番号を指定します。 なし
com.nec.webotx.portal.portlet.https.proxy.host HTTPS通信で利用するプロキシサーバのホスト名を指定します。 なし
com.nec.webotx.portal.portlet.https.proxy.port HTTPS通信で利用するプロキシサーバのポート番号を指定します。 なし

6.2.4. ポートレット基盤の設定

container.properties

ファイルパス:${WEBOTX_INSTANCE_ROOT}/config/portal/portletbase/container.properties

ポートレット基盤の設定を行うファイルです。

設定の変更を有効にするためにはWebOTXドメインの再起動(Advancedモードの場合はプロセスグループの再起動)が必要となります。

表6.2.4-1
プロパティ名 説明 既定値
com.nec.webotx.portal.container.refresh.interval ポータルページに配置したポートレットのコンテンツを自動的に一定間隔で更新する機能を利用する場合に指定する更新間隔の初期値を指定します。この設定はポートレットの全般プロパティで設定する自動更新(間隔)の初期値として表示されます。

設定可能な値は、1 〜 1,440 (分)です。設定の省略、不正な値が指定された場合は既定値となります。

自動更新間隔に小さな値を設定して機能を有効にするとサーバに負荷が掛かるため注意してください。
60 (分)
com.nec.webotx.portal.container.page-area.hidden ポータルページエリア表示の初期状態を指定します。この設定は全てのポータルサイトに反映されます。

設定可能な値は、以下のとおりです。設定の省略、不正な値が指定された場合は既定値で動作します。

true : ポータルページエリアを非表示
false : ポータルページエリアを表示
false

インストール直後は、true が設定されています。
com.nec.webotx.portal.container.page-area.visibility ポータルページエリア表示/非表示の切替可否を指定します。この設定は全てのポータルサイトに反映されます。

設定可能な値は、以下のとおりです。設定の省略、不正な値が指定された場合は既定値で動作します。

enabled : 切替可能
enabledOnlyEditMode : 編集モード時のみ切替可能
disabled : 切替不可
enabled
com.nec.webotx.portal.ui.noRenderOtherPortlet ポートレットウィンドウのメニューからポートレットモード、ウィンドウ状態変更する際に、ターゲットのポートレットのみ再描画するかどうかを指定します。この設定は全てのポータルサイトに反映されます。

設定可能な値は、以下のとおりです。設定の省略、不正な値が指定された場合は既定値で動作します。

true : ターゲットのポートレットのみ再描画
false : 全てのポートレットを再描画
false
com.nec.webotx.portal.ui.window.height.default リサイズ可能なポートレットウィンドウのデフォルトサイズを指定します。この設定は全てのポータルサイトに反映されます。

設定可能な値は、1以上の数字です。設定の省略、不正な値が指定された場合は既定値で動作します。
-1 (デフォルトサイズ未設定)

6.2.5. 認証連携サービスの設定

AuthenticationLinkConfiguration.properties

ファイルパス:${WEBOTX_INSTANCE_ROOT}/config/portal/authentication/AuthenticationLinkConfiguration.properties

認証連携サービスに関する設定を行うファイルです。通常は、変更不要です。

設定の変更を有効にするためにはWebOTXドメインの再起動(Advancedモードの場合はプロセスグループの再起動)が必要となります。

表6.2.5-1
プロパティ名 説明 既定値
com.nec.webotx.portal.invocation.parameter.obfuscate 認証連携サービス利用時に、HTML formのパラメータ値の難読化エンコード を行うかどうかを指定します。以下のいずれかを指定可能です。

true : 難読化エンコードを行う
false : 難読化エンコードを行わない

難読化エンコードの詳細は6.4.5. 難読化エンコード機能を参照してください。
true
AuthenticationLinkWebConfiguration.properties

ファイルパス:${WEBOTX_INSTANCE_ROOT}/config/portal/authentication/AuthenticationLinkWebConfiguration.properties

認証連携サービスのHTTP(S)通信に関する設定を行うファイルです。通常は、変更不要です。

設定の変更を有効にするためにはWebOTXドメインの再起動(Advancedモードの場合はプロセスグループの再起動)が必要となります。

表6.2.5-2
プロパティ名 説明 既定値
com.nec.webotx.portal.invocation.web.httpget.convert 認証連携サービスに対してHTTP GETでアクセス可能にするかどうかを指定できます。以下のいずれかを指定可能です。

true : HTTP GET / POSTでアクセス可能にする
false : HTTP POSTでのみアクセス可能にする
false

6.2.6. 認証の設定

PortalConfiguration.properties

ファイルパス:${WEBOTX_INSTANCE_ROOT}/config/portal/authentication/PortalConfiguration.properties

WebOTX Portalの認証に関する設定を行うファイルです。

設定の変更を有効にするためにはWebOTXドメインの再起動(Advancedモードの場合はプロセスグループの再起動)、もしくはPortalConfiguration.properties の再読み込みコマンドの実行が必要となります。

表6.2.6-1
プロパティ名 説明 設定可能な値 既定値
com.nec.webotx.portal.authentication.page.login.uri WebOTX Portalログイン前画面のURIです。 URI ログイン前サイトが存在する場合はログイン前サイトのURL。
存在しない場合は、/webotxportal/login
com.nec.webotx.portal.authentication.XXX.page.login.uri WebOTX Portalログイン前画面のURIです(マルチテナント用)。
XXXの箇所は会社IDになります。
URI ログイン前サイトが存在する場合はログイン前サイトのURL。
存在しない場合は、(page.login.uriの設定値)
com.nec.webotx.portal.authentication.post.logout.uri ログアウト後の遷移先URIです。 URI (page.login.uriの設定値)
com.nec.webotx.portal.authentication.XXX.post.logout.uri ログアウト後の遷移先URIです(マルチテナント用)。
XXXの箇所は会社IDになります。
URI (XXX.page.login.uriの設定値)
com.nec.webotx.portal.authentication.page.changepassword.uri パスワード変更画面のURIです。 URI /webotxportal/session/ pages/changepassword
com.nec.webotx.portal.authentication.XXX.page.changepassword.uri パスワード変更画面のURIです(マルチテナント用)。
XXXの箇所は会社IDになります。
URI (page.changepassword.uriの設定値
com.nec.webotx.portal.authentication.filter.ignore.suffixes Subject/Principal付与、およびタイムアウト処理の対象外とするリソース(拡張子) ‘.’(0x2e)で始まる拡張子を‘,’(0x2c)で区切ったリスト ""(なし)
com.nec.webotx.portal.authentication.logoutOnAnonymousSite ログイン後のユーザの状態でログイン前サイトにアクセスしたときにログアウトするかどうか 論理値(true: ログアウト後にログイン前サイトを表示します, false: ログアウトせずに現在ログイン中のユーザのトップ画面に遷移します) false
com.nec.webotx.portal.authentication.XXX.logoutOnAnonymousSite ログイン後のユーザの状態でログイン前サイトにアクセスしたときにログアウトするかどうか(マルチテナント用)。
XXXの箇所は会社IDになります。
論理値(true: ログアウト後にログイン前サイトを表示します, false: ログアウトせずに現在ログイン中のユーザのトップ画面に遷移します) false
com.nec.webotx.portal.authentication.page.maintenance.uri ログイン抑止時に表示するメンテナンス中を表す画面の URI です。 URI /pages/maintenance.jsp
common-session.properties

ファイルパス:${WEBOTX_INSTANCE_ROOT}/config/portal/common/common-session.properties

WebOTX Portalの認証に関する設定を行うファイルです。

設定の変更を有効にするためにはWebOTXドメインの再起動(Advancedモードの場合はプロセスグループの再起動)が必要となります。

表6.2.6-2
プロパティ名 説明 設定可能な値 既定値
session.timeout WebOTX Portalのセッションタイムアウト時間です。 WebOTX Portalのセッション有効期間(分) 60
cookie.name WebOTX Portalの認証成功時にクライアントに払いだされるHTTPクッキーの名前です。 文字列(HTTPクッキー名) webotx.portal.common.session.token
authentication.feature.delegated WebOTX Portalの認証を外部の認証サーバに委譲するかどうかを指定します。以下のいずれかを指定可能です。
true : 認証委譲する
false : 認証委譲しない
true、もしくは false false
multiple.login.enabled 多重ログインを許可するかどうかを指定します。以下のいずれかを指定可能です。
true : 多重ログインを許可する
false : 多重ログインを許可しない
true、もしくは false true
client-config.xml

ファイルパス:${WEBOTX_INSTANCE_ROOT}/config/portal/common/client-config.xml

WebOTX Portalの認証に関する設定を行うファイルです。

設定の変更を有効にするためにはWebOTXドメインの再起動(Advancedモードの場合はプロセスグループの再起動)が必要となります。

表 6.2.6-3
プロパティ名 説明 設定可能な値 既定値
<config>
<application>
 <pages>
  <password>
   <before>
WebOTX Portalの個人設定メニューから起動するパスワード変更画面のURLです。 URL(コンテキストパスからのURL) /webotxportal/session/pages/changepassword

6.2.7. 認証委譲機能の設定

SSOConfiguration.properties

ファイルパス:${WEBOTX_INSTANCE_ROOT}/config/portal/authentication/SSOConfiguration.properties

WebOTX Portalの認証委譲機能に関する設定を行うファイルです。

設定の変更を有効にするためにはWebOTXドメインの再起動(Advancedモードの場合はプロセスグループの再起動)が必要となります。

表6.2.7-1
プロパティ名 説明 設定可能な値 既定値
sso.uid.key SECUREMASTERからユーザIDを受け取るためのパラメータ名。
設定ファイル(sm_acpi_conf.xml)のATTR 項目の値と同じ値を指定します。
Active Directory連携時は、本パラメータは無視されます。
設定ファイルsm_acpi_conf.xmlのATTR 項目に指定した値 X-UID
sso.logout.url SECUREMASTERのログアウトURL。
指定がある場合、WebOTX Portalログアウト時に指定されたURLに対して リダイレクトすることでSECUREMASTERからもログアウトします。
URI ""(なし)
sso.filter.class 認証委譲先の認証サーバに対応したSSOLoginFilter実装クラス。 以下のいずれかを指定可能です。

SECUREMASTERに委譲する場合)
com.nec.webotx.
portal.login.
sso.filter.
SecureMasterLoginFilter
Active Directoryに委譲にする場合)
com.nec.webotx.
portal.login.
sso.filter.
ActiveDirectoryLoginFilter
""(なし)

6.2.8. 画像の設定

6.2.8.1. ロゴの設定

ここでは、ログイン後のロゴ画像の設定について説明します。 画像は言語毎に用意することができ、画像ファイルを上書きすることで好きなロゴ画像に変更することが出来ます。 ロゴ画像は以下に配置されています。 ファイルパス:${WEBOTX_INSTANCE_ROOT}/config/portal/resources/webotxportal/images/logo/{ISO言語コード}/LogoS.png 変更したい言語のISO言語コードに従い、フォルダがない場合はフォルダを作成し、ロゴ画像を配置してください。

6.2.8.2. faviconの設定

ここでは、favicon画像の設定について説明します。 faviconファイルを上書きすることで好きなfaviconに変更することができます。 faviconは以下に配置されています。 ファイルパス:${WEBOTX_INSTANCE_ROOT}/config/portal/resources/webotxportal/images/favicon.ico

6.2.9. 表示文字列の設定

displaystrings.properties

ファイルパス:${WEBOTX_INSTANCE_ROOT}/config/portal/resources/words/displaystrings.properties

WebOTX Portalに表示される一部の文字列を変更するための設定ファイルです。

設定の変更を有効にするためにはWebOTXドメインの再起動(Advancedモードの場合はプロセスグループの再起動)が必要となります。

表6.2.9-1
プロパティ名 説明 既定値
com.nec.webotx.portal.allcompany.string.<ロケールコード> ブラウザ上に表示される「全社」の文字列を任意の文字列に変更することができます。ここで指定する文字列は以下の箇所で表示されます。
  • パンくずリストの先頭箇所
  • 組織のトップの親組織を表示する箇所
  • 組織ツリーのルートノードの直下
省略または空文字列を設定した場合は、既定値が表示されます。

<ロケールコード> の箇所は日本語リソースを指定する場合は「ja」、英語リソースを指定する場合は「en」を指定してください。
日本語:「全社」
英語:「Company」
com.nec.webotx.portal.rootnode.single-company.string.<ロケールコード> ブラウザ表示に表示される文字列「会社」を任意の文字列に変更することができます。ここで指定する文字列は組織ツリーのルートノード部分に表示されます。

省略または空文字列を設定した場合は、既定値が表示されます。

<ロケールコード> の箇所は日本語リソースを指定する場合は「ja」、英語リソースを指定する場合は「en」を指定してください。
日本語:「会社」
英語:「Company」
以下に記述例を記載します。
com.nec.webotx.portal.allcompany.string.ja=<「全社」の代わりに表示する文字列(日本語)>
com.nec.webotx.portal.allcompany.string.en=<「Company」の代わりに表示する文字列(英語)>
com.nec.webotx.portal.rootnode.single-company.string.ja=<「会社」の代わりに表示する文字列(日本語)>
com.nec.webotx.portal.rootnode.single-company.string.en=<「Company」の代わりに表示する文字列(英語)>

Memo
WebOTX Portal V8.3 からアップグレードした場合は、組織ツリーのトップノードに表示される文字列「組織」(日本語)/「Organization」(英語)が、前述の既定値に変更されます。本製品バージョンでも旧バージョンと同様の表示を行う場合は、以下の設定を行ってください。
com.nec.webotx.portal.rootnode.single-company.string.ja=組織
com.nec.webotx.portal.rootnode.single-company.string.en=Organization

Memo
マルチテナント環境で本設定を行う場合は、表示文字列を変更したい会社ごとに設定ファイルを作成してください。
ファイル名は以下の形式で作成する必要があります。
displaystrings.<会社ID>.properties
<会社ID> 部分にはディレクトリサーバ(EDS)で設定した会社IDを設定してください。

6.2.10. ログインポートレットの設定

LoginConfiguration.properties

ファイルパス:${WEBOTX_INSTANCE_ROOT}/config/portal/authentication/LoginConfiguration.properties

設定の変更を有効にするためにはWebOTXドメインの再起動(Advancedモードの場合はプロセスグループの再起動)が必要となります。

表 6.2.10-1
プロパティ名 説明 既定値
ldap.url SECUREMASTER認証APIが接続するEDSのURLをldap://${hostname}:${port} の形式で指定します。
URLのホスト名は、SECUREMASTER認証APIの設定ファイル sm_api_conf.xml の UDBNAME 設定値を参照してください。
URLのポート番号は、sm_api_conf.xml の UDBPORT 設定値を参照してください。
なし(指定必須)
ldap.principal SECUREMASTER認証APIが接続するEDSの管理者IDを指定します。
管理者IDは、sm_api_conf.xml の UDBID 設定値を参照してください。
なし(指定必須)
ldap.credential SECUREMASTER認証APIが接続するEDSの管理者パスワードを指定します。
パスワードは、sm_api_conf.xml の UDBPW 設定値を参照してください。
なし(指定必須)
ldap.user.dn SECUREMASTER認証APIが接続するEDSのユーザエントリが格納されるDNを指定します。 ou=user,ou=tenant0,ou=edseidm,c=jp
ldap.role.dn SECUREMASTER認証APIが接続するEDSのロールエントリが格納されるDNを指定します。 ou=role,ou=tenant0,ou=edseidm,c=jp
ldap.login_policy.dn SECUREMASTER認証APIが接続するEDSのログインポリシエントリが格納されるDNを指定します。 ou=loginPolicy,ou=data,ou=tenant0,ou=edseidm,c=jp
ldap.unique_member.attrname ロールエントリのスタティックメンバが格納される属性名を指定します。 uniqueMember
ldap.authtype.attrname ユーザエントリの認証種別が格納される属性名を指定します。 eidmSpareString61
ldap.password_expired_control.attrname ログインポリシエントリのパスワード有効期限切時制御が格納される属性名を指定します。 eidmSpareString01
ldap.password_expired_control.default EDSでログインポリシエントリのパスワード有効期限切時制御が定義されていない場合の、デフォルトのパスワード有効期限切時制御コードを指定します。指定可能なコードは次のとおりです。

1: アカウントロック
2: パスワード変更
1
ldap.retiree.role_id 退職ロールのロールID(CN)を指定します。 retiree
ldap.absentee.role_id 休職ロールのロールID(CN)を指定します。 absentee
ldap.authtype.attrvalue.password パスワード認証の認証種別コードを指定します。 001
filepath.sm_api_conf SECUREMASTER認証APIの設定ファイル(sm_api_conf.xml)を絶対パスで指定します。 なし(指定必須)

6.2.11. ゲストユーザの設定

ゲストユーザとは、ログイン前画面を使用するための仮想ユーザです。認証前にログイン前画面にアクセスした場合、ゲストユーザとして扱われます。
ゲストユーザのアカウントは、EDSとは別に下記のファイルで管理されます。

AnonymousUserDefault.properties

ファイルパス:${WEBOTX_INSTANCE_ROOT}/config/portal/directoryserver/AnonymousUserDefault.properties

設定の変更を有効にするためにはWebOTXドメインの再起動(Advancedモードの場合はプロセスグループの再起動)が必要となります。

表 6.2.11-1
プロパティ名 説明 設定可能な値 既定値
userID ゲストユーザのユーザIDの設定値です。
大文字小文字は区別されません。
EDSに登録されているユーザのユーザIDと重複しないような値を設定してください。
ASCIIコード 0x21〜0x7e の範囲の半角英数字 #Anonymous

6.2.12. お知らせポートレットの設定

AnnouncePortlet.properties

ファイルパス:${INSTANCE_ROOT}/config/portal/portlet/webotx-portal-announceportlet/AnnouncePortlet.properties

お知らせポートレットの基本動作に関する設定を行うファイルです。

設定の変更を有効にするためにはWebOTXドメインの再起動(Advancedモードの場合はプロセルグループの再起動)が必要となります。

表 6.2.12-1
プロパティ名 説明 既定値
com.nec.webotx.portal.portlet. announce.row.max

お知らせ一覧の一ページに表示可能なお知らせの行数を、1〜100 の半角数字で指定します。(省略可能)

10
com.nec.webotx.portal.portlet.announce.new.displayperiod

お知らせ一覧のNEWアイコンの表示期間を、1〜365 の半角数字で指定します。(省略可能)

7(日)
com.nec.webotx.portal.portlet. announce.delete.announce.interval

お知らせの掲載終了日から、指定した日数(1〜365)を経過すると自動的に削除します。(省略可能)

30(日)
com.nec.webotx.portal.portlet.announce.enable.upload.filesize

アップロード可能なファイルサイズを、0〜2,147,483,648 の半角数字で指定します。(省略可能)

10,485,760(Byte)
com.nec.webotx.portal.portlet.announce.system.admin.role

管理者のロールIDを指定します。ここで指定したロールを持つ利用者は編集ロールの指定に関係なく、すべてのお知らせを編集することが可能です。(省略可能)

※複数指定する場合はカンマ区切りで指定します。

なし(ロール未指定)
com.nec.webotx.portal.portlet.announce.delete.tempfile.interval

ダウンロード時に生成する一時ファイルを削除するファイルの経過日数を1〜7の範囲で指定します。(省略可能)

3(日)
com.nec.webotx.portal.portlet.announce.enable.set.other.role

お知らせに設定する編集ロール、参照ロールに自分のロール以外を設定可能とするかを指定します。(省略可能)

true
com.nec.webotx.portal.portlet.announce.forced.post

true を設定すると、未読の重要情報通知機能が有効になります。(省略可能)

false
Priority.properties

ファイルパス:${INSTANCE_ROOT}/config/portal/portlet/webotx-portal-announceportlet/Priority.properties

お知らせポートレットの重要度に関する設定を行うファイルです。

設定の変更を有効にするためにはWebOTXドメインの再起動(Advancedモードの場合はプロセルグループの再起動)が必要となります。

表 6.2.12-2
プロパティ名 説明 既定値
com.nec.webotx.portal.portlet. announce.priority.<ロケールコード>

重要度の名称と優先順位を、言語毎に優先順位の高い項目からカンマ区切りで設定します。

※重要度の名称にカンマを使用することはできません。

重要度に設定できる数は 1〜10で、重要度には最大512文字まで指定することができます。

<ロケールコード> の箇所は日本語リソースを指定する場合は「ja」、英語リソースを指定する場合は「en」を指定してください。

※インストール時には、以下の値を設定しています。 com.nec.webotx.portal.portlet.announce.priority.ja=高,通常,低 com.nec.webotx.portal.portlet.announce.priority.en=high,normal,low com.nec.webotx.portal.portlet.announce.priority.zh=高,通常,低

なし(指定必須)

6.2.13. 任意スキーマの設定

config.properties

ファイルパス:${INSTANCE_ROOT}/config/portal/directoryserver/config.properties

ユーザリソース全般の設定を行うファイルです。ここでは任意スキーマ機能に関係する設定項目について説明します。

設定の変更を有効にするためにはWebOTXドメインの再起動(Advancedモードの場合はプロセルグループの再起動)が必要となります。

表 6.2.13-1
プロパティ名 説明 既定値
com.nec.webotx.portal.directory.customSchema

任意スキーマ機能の有効/無効を指定します。

false
com.nec.webotx.portal.directory.authentication

ディレクトリサーバに接続する際の認証方式を指定します。指定可能な値は以下のとおりです。
・DIGEST-MD5
・simple

DIGEST-MD5
CustomSchemaConfiguration.properties

ファイルパス:${INSTANCE_ROOT}/config/portal/directoryserver/CustomSchemaConfiguration.properties

ユーザリソース 任意スキーマ機能のスキーマ定義に関する設定を行うファイルです。
(※標準のスキーマ構成に従うディレクトリサーバを用いて WebOTX Portal を運用する場合、本設定ファイルは必要ありません)

接続先ディレクトリサーバのスキーマ構成が WebOTX Portal の定める標準の構成と異なっている場合は、 上記ファイルパスと同じフォルダにある CustomSchemaConfiguration.properties.sample というファイルを雛形として、 接続先ディレクトリサーバのスキーマ構成に合わせて本設定ファイルを作成してください。

設定の変更を有効にするためにはWebOTXドメインの再起動(Advancedモードの場合はプロセルグループの再起動)が必要となります。

表 6.2.13-2
プロパティ名 説明 既定値
system.locale

ユーザリソースのロケールを指定します。

なし
context.classname

使用する LdapContext クラスの名前を指定します。
(※サンプルファイルに記載されている値から変更しないでください)

なし
user.baseDN

個人エントリに対する検索ベースDNを指定します。

なし
user.scope

個人エントリに対する検索スコープを指定します。

なし
user.filter

個人エントリに対する検索フィルタを指定します。

なし
user.objectclass

個人エントリのオブジェクトクラス名を指定します。

なし
user.id

個人エントリの "ユーザID" に相当する属性名を指定します。

なし
user.password

個人エントリの "ユーザパスワード" に相当する属性名を指定します。

なし
user.familyname

個人エントリの "姓(Family Name)" に相当する属性名を指定します。

なし
user.givenname

個人エントリの "名(Given Name)" に相当する属性名を指定します。

なし
user.middlename

個人エントリの "ミドルネーム" に相当する属性名を指定します。

なし
user.mail

個人エントリの "メールアドレス" に相当する属性名を指定します。

なし
user.positionid

個人エントリの "職位コード" に相当する属性名を指定します。

なし
user.aplogincontext

個人エントリの "利用サービスLogin情報" に相当する属性名を指定します。

なし
user.apserviceid

個人エントリの "サービスID" に相当する属性名を指定します。

なし
user.mainBelongGroup

個人エントリの "本務所属部門のグループID" に相当する属性名を指定します。

なし
user.manageGroup

個人エントリの "管理している部門のグループID" に相当する属性名を指定します。

なし
user.assignedRole

個人エントリの "所有ロールID" に相当する属性名を指定します。

なし
user.manageCompany

個人エントリの "管理している会社のID" に相当する属性名を指定します。

なし
user.gender

個人エントリの "性別" に相当する属性名を指定します。

なし
user.portalPersonalization

個人エントリの "パーソナライズ" に相当する属性名を指定します。

なし
user.ext.assignedAdditionalPost

個人エントリに割り当てられた兼務情報エントリを参照するための属性名を指定します。

なし
user.ext.belongCompany

個人エントリを所有している会社エントリを参照するための属性名を指定します。

なし
user.additional.objectclass

兼務情報エントリのオブジェクトクラス名を指定します。

なし
user.additional.belongGroup

兼務情報エントリの "兼務所属部門" に相当する属性名を指定します。

なし
user.additional.extJobNumber

兼務情報エントリの "兼務番号" に相当する属性名を指定します。

なし
user.additional.positionid

兼務情報エントリの "職位コード" に相当する属性名を指定します。

なし
office.baseDN

グループ/組織エントリに対する検索ベースDNを指定します。

なし
office.scope

グループ/組織エントリに対する検索スコープを指定します。

なし
office.filter

グループ/組織エントリに対する検索フィルタを指定します。

なし
office.objectclass

グループ/組織エントリのオブジェクトクラス名を指定します。

なし
office.id

グループ/組織エントリの "グループID" に相当する属性名を指定します。

なし
office.name

グループ/組織エントリの "グループ名" に相当する属性名を指定します。

なし
office.assignedRole

グループ/組織エントリの "所有ロールID" に相当する属性名を指定します。

なし
office.portalPersonalization

グループ/組織エントリの "パーソナライズ" に相当する属性名を指定します。

なし
office.ext.memberUser

グループ/組織エントリに所属している個人エントリを参照するための属性名を指定します。

なし
office.ext.maintainer

グループ/組織エントリを管理している個人エントリを参照するための属性名を指定します。

なし
office.ext.belongCompany

グループ/組織エントリを所有している会社エントリを参照するための属性名を指定します。

なし
office.ext.subGroup

グループ/組織エントリから見て下位のグループ/組織エントリを参照するための属性名を指定します。

なし
office.ext.superGroup

グループ/組織エントリから見て上位のグループ/組織エントリを参照するための属性名を指定します。

なし
role.baseDN

ロールエントリに対する検索ベースDNを指定します。

なし
role.scope

ロールエントリに対する検索スコープを指定します。

なし
role.filter

ロールエントリに対する検索フィルタを指定します。

なし
role.objectclass

ロールエントリのオブジェクトクラス名を指定します。

なし
role.id

ロールエントリの "ロールID" に相当する属性名を指定します。

なし
role.name

ロールエントリの "ロール名" に相当する属性名を指定します。

なし
role.extAttribute

ロールエントリの追加属性の属性名を指定します。

なし
role.ext.assignedUser

ロールエントリが割り当てられた個人エントリを参照するための属性名を指定します。

なし
role.ext.assignedGroup

ロールエントリが割り当てられたグループ/組織エントリを参照するための属性名を指定します。

なし
role.ext.belongCompany

ロールエントリを所有する会社エントリを参照するための属性名を指定します。

なし
positiontable.baseDN

職位テーブルエントリに対する検索ベースDNを指定します。

なし
positiontable.scope

職位テーブルエントリに対する検索スコープを指定します。

なし
positiontable.filter

職位テーブルエントリに対する検索フィルタを指定します。

なし
positiontable.objectclass

職位テーブルエントリのオブジェクトクラス名を指定します。

なし
positiontable.positionitem

職位テーブルエントリの "職位コード・ラベル対応データ" に相当する属性名を指定します。

なし
positiontable.ext.belongCompany

職位テーブルエントリを所有する会社エントリを参照するための属性名を指定します。

なし
company.baseDN

会社エントリに対する検索ベースDNを指定します。

なし
company.scope

会社エントリに対する検索スコープを指定します。

なし
company.filter

会社エントリに対する検索フィルタを指定します。

なし
company.objectclass

会社エントリのオブジェクトクラス名を指定します。

なし
company.id

会社エントリの "会社ID" に相当する属性名を指定します。

なし
company.name

会社エントリの "会社名" に相当する属性名を指定します。

なし
company.portalPersonalization

会社エントリの "パーソナライズ" に相当する属性名を指定します。

なし
company.ext.ownUser

会社エントリが所有する個人エントリを参照するための属性名を指定します。

なし
company.ext.ownGroup

会社エントリが所有するグループ/組織エントリを参照するための属性名を指定します。

なし
company.ext.ownRole

会社エントリが所有するロールエントリを参照するための属性名を指定します。

なし
company.ext.ownPositionTable

会社エントリが所有する職位テーブルエントリを参照するための属性名を指定します。

なし
User.searching.dn.fromRole

ロールエントリが割り当てられた個人エントリを検索するための検索ベースDNを指定します。

なし
User.searching.scope.fromRole

ロールエントリが割り当てられた個人エントリを検索するための検索スコープを指定します。

なし
User.searching.filter.fromRole

ロールエントリが割り当てられた個人エントリを検索するための検索フィルタを指定します。

なし
User.searching.dn.fromGroup

グループ/組織エントリに所属する個人エントリを検索するための検索ベースDNを指定します。

なし
User.searching.scope.fromGroup

グループ/組織エントリに所属する個人エントリを検索するための検索スコープを指定します。

なし
User.searching.filter.fromGroup

グループ/組織エントリに所属する個人エントリを検索するための検索フィルタを指定します。

なし
User.searching.dn.fromManagementGroup

グループ/組織エントリを管理する個人エントリを検索するための検索ベースDNを指定します。

なし
User.searching.scope.fromManagementGroup

グループ/組織エントリを管理する個人エントリを検索するための検索スコープを指定します。

なし
User.searching.filter.fromManagementGroup

グループ/組織エントリを管理する個人エントリを検索するための検索フィルタを指定します。

なし
Group.searching.dn.fromUser

個人エントリが所属するグループ/組織エントリを検索するための検索ベースDNを指定します。

なし
Group.searching.scope.fromUser

個人エントリが所属するグループ/組織エントリを検索するための検索スコープを指定します。

なし
Group.searching.filter.fromUser

個人エントリが所属するグループ/組織エントリを検索するための検索フィルタを指定します。

なし
Group.searching.dn.fromRole

ロールエントリが割り当てられたグループ/組織エントリを検索するための検索ベースDNを指定します。

なし
Group.searching.scope.fromRole

ロールエントリが割り当てられたグループ/組織エントリを検索するための検索スコープを指定します。

なし
Group.searching.filter.fromRole

ロールエントリが割り当てられたグループ/組織エントリを検索するための検索フィルタを指定します。

なし
ManagementGroup.searching.dn.fromUser

個人エントリが管理するグループ/組織エントリを検索するための検索ベースDNを指定します。

なし
ManagementGroup.searching.scope.fromUser

個人エントリが管理するグループ/組織エントリを検索するための検索スコープを指定します。

なし
ManagementGroup.searching.filter.fromUser

個人エントリが管理するグループ/組織エントリを検索するための検索フィルタを指定します。

なし
SuperGroup.searching.dn.fromGroup

グループ/組織エントリから見て上位のグループ/組織エントリを検索するための検索ベースDNを指定します。

なし
SuperGroup.searching.scope.fromGroup

グループ/組織エントリから見て上位のグループ/組織エントリを検索するための検索スコープを指定します。

なし
SuperGroup.searching.filter.fromGroup

グループ/組織エントリから見て上位のグループ/組織エントリを検索するための検索フィルタを指定します。

なし
SubGroup.searching.dn.fromGroup

グループ/組織エントリから見て下位のグループ/組織エントリを検索するための検索ベースDNを指定します。

なし
SubGroup.searching.scope.fromGroup

グループ/組織エントリから見て下位のグループ/組織エントリを検索するための検索スコープを指定します。

なし
SubGroup.searching.filter.fromGroup

グループ/組織エントリから見て下位のグループ/組織エントリを検索するための検索フィルタを指定します。

なし
Role.searching.dn.fromUser

個人エントリに割り当てられたロールエントリを検索するための検索ベースDNを指定します。

なし
Role.searching.scope.fromUser

個人エントリに割り当てられたロールエントリを検索するための検索スコープを指定します。

なし
Role.searching.filter.fromUser

個人エントリに割り当てられたロールエントリを検索するための検索フィルタを指定します。

なし
Role.searching.dn.fromGroup

グループ/組織エントリに割り当てられたロールエントリを検索するための検索ベースDNを指定します。

なし
Role.searching.scope.fromGroup

グループ/組織エントリに割り当てられたロールエントリを検索するための検索スコープを指定します。

なし
Role.searching.filter.fromGroup

グループ/組織エントリに割り当てられたロールエントリを検索するための検索フィルタを指定します。

なし
AdditionalPost.searching.dn.fromUser

個人エントリに割り当てられた兼務情報エントリを検索するための検索ベースDNを指定します。

なし
AdditionalPost.searching.scope.fromUser

個人エントリに割り当てられた兼務情報エントリを検索するための検索スコープを指定します。

なし
AdditionalPost.searching.filter.fromUser

個人エントリに割り当てられた兼務情報エントリを検索するための検索フィルタを指定します。

なし
Company.searching.dn.fromUser

個人エントリが所属する会社エントリを検索するための検索ベースDNを指定します。

なし
Company.searching.scope.fromUser

個人エントリが所属する会社エントリを検索するための検索スコープを指定します。

なし
Company.searching.filter.fromUser

個人エントリが所属する会社エントリを検索するための検索フィルタを指定します。

なし
Company.searching.dn.fromGroup

グループ/組織エントリが所属する会社エントリを検索するための検索ベースDNを指定します。

なし
Company.searching.scope.fromGroup

グループ/組織エントリが所属する会社エントリを検索するための検索スコープを指定します。

なし
Company.searching.filter.fromGroup

グループ/組織エントリが所属する会社エントリを検索するための検索フィルタを指定します。

なし
User.searching.dn.fromCompany

会社エントリが所有する個人エントリを検索するための検索ベースDNを指定します。

なし
User.searching.scope.fromCompany

会社エントリが所有する個人エントリを検索するための検索スコープを指定します。

なし
User.searching.filter.fromCompany

会社エントリが所有する個人エントリを検索するための検索フィルタを指定します。

なし
Group.searching.dn.fromCompany

会社エントリが所有するグループ/組織エントリを検索するための検索ベースDNを指定します。

なし
Group.searching.scope.fromCompany

会社エントリが所有するグループ/組織エントリを検索するための検索スコープを指定します。

なし
Group.searching.filter.fromCompany

会社エントリが所有するグループ/組織エントリを検索するための検索フィルタを指定します。

なし
Role.searching.dn.fromCompany

会社エントリが所有するロールエントリを検索するための検索ベースDNを指定します。

なし
Role.searching.scope.fromCompany

会社エントリが所有するロールエントリを検索するための検索スコープを指定します。

なし
Role.searching.filter.fromCompany

会社エントリが所有するロールエントリを検索するための検索フィルタを指定します。

なし
PositionTable.searching.dn.fromCompany

会社エントリが所有する職位テーブルエントリを検索するための検索ベースDNを指定します。

なし
PositionTable.searching.scope.fromCompany

会社エントリが所有する職位テーブルエントリを検索するための検索スコープを指定します。

なし
PositionTable.searching.filter.fromCompany

会社エントリが所有する職位テーブルエントリを検索するための検索フィルタを指定します。

なし
AdditionalPost.searching.dn.fromGroup

グループ/組織エントリへの所属を表す兼務情報エントリを検索するための検索ベースDNを指定します。

なし
AdditionalPost.searching.scope.fromGroup

グループ/組織エントリへの所属を表す兼務情報エントリを検索するための検索スコープを指定します。

なし
AdditionalPost.searching.filter.fromGroup

グループ/組織エントリへの所属を表す兼務情報エントリを検索するための検索フィルタを指定します。

なし
User.searching.dn.fromAdditionalPost

兼務情報エントリが割り当てられた個人エントリを検索するための検索ベースDNを指定します。

なし
User.searching.scope.fromAdditionalPost

兼務情報エントリが割り当てられた個人エントリを検索するための検索スコープを指定します。

なし
User.searching.filter.fromAdditionalPost

兼務情報エントリが割り当てられた個人エントリを検索するための検索フィルタを指定します。

なし
i18n.ja.option.name

日本語の属性オプション名を指定します。
(例: ;lang-ja)

なし
i18n.en.option.name

英語の属性オプション名を指定します。
(例: ;lang-en)

なし
i18n.zh.option.name

中国語の属性オプション名を指定します。
(例: ;lang-zh)

なし
otxportal.admin.roleid

ポータルシステム管理者ロールのロールIDを指定します。
(例: OTXPORTAL_ADMIN)

なし
otxportal.company.admin.roleid

会社管理者ロールのロールIDを指定します。
(例: OTXPORTAL_COMPANY_ADMIN)

なし
otxportal.shared.site.admin.roleid

テナント間共通サイト管理者ロールのロールIDを指定します。
(例: OTXPORTAL_SHARED_SITE_ADMIN)

なし

6.2.14. グラフ表示ポートレット/地図表示ポートレットの設定

DataviewPortlet.properties

ファイルパス:${INSTANCE_ROOT}/config/portal/portlet/webotx-portal-dataviewportlet/DataviewPortlet.properties

グラフ表示ポートレット/地図表示ポートレットに関する設定を行うファイルです。

設定の変更を有効にするには WebOTX ドメインを再起動(Advanced モードの場合はプロセスグループを再起動)してください。

表6.2.14-1
プロパティ名 説明 既定値
com.nec.webotx.portal.portlet.dataview.circle.color

円グラフの要素の色の初期値を、"" で囲んでカンマ区切りで指定します。

例:"#8080c0","red"
色の指定は、W3C標準で定義されているカラー名かRGB値で指定してください。

"#ff0000", "#ee7800", "#ffff00", "#008000", "#0000ff", "#165e83", "#884898"
com.nec.webotx.portal.portlet.dataview.enable.data.max.size

データ種別として「ファイル」を選択した場合に読込可能なファイルのサイズ(バイト)を、1 〜 2,147,483,648 の半角数字(カンマは利用不可)で指定します。

1,048,576
com.nec.webotx.portal.portlet.dataview.cache.max.count

データ表示ポートレットが利用するキャッシュに登録可能なデータの最大個数を、1 〜 10,000 の半角数字(カンマは利用不可)で指定します。

100
File.properties

ファイルパス:${INSTANCE_ROOT}/config/portal/portlet/webotx-portal-dataviewportlet/File.properties

グラフ表示ポートレット/地図表示ポートレットが利用する CSV ファイルに関する設定を行うファイルです。

設定の変更を有効にするためには WebOTX ドメインの再起動(Advanced モードの場合はプロセスグループの再起動)が必要となります。

表6.2.14-2
プロパティ名 説明 既定値
com.nec.webotx.portal.portlet.dataview.file.server

シングルテナントの場合に使用する CSV ファイルを格納するディレクトリのルートパスを指定します。

ディレクトリの区切りの \ は \\ と記載してください。
例:C:\portal\file の場合 C:\\portal\\file

なし
com.nec.webotx.portal.portlet.dataview.file.server.xxx

マルチテナントの場合に使用する CSV ファイルを格納するディレクトリのルートパスを指定します。

xxxの箇所は、会社IDになります。
ディレクトリの区切りの \ は \\ と記載してください。
例:\\server1\portal\file の場合 \\\\server1\\portal\\file

なし
MapData.properties

ファイルパス:${INSTANCE_ROOT}/config/portal/portlet/webotx-portal-dataviewportlet/MapData.properties

地図表示ポートレットが利用する地図データファイルに関する設定を行うファイルです。

設定の変更を有効にするためには WebOTX ドメインの再起動(Advanced モードの場合はプロセスグループの再起動)が必要となります。

表6.2.14-3
プロパティ名 説明 既定値
com.nec.webotx.portal.portlet.dataview.map.file

地図データのファイル名を、カンマ区切りで指定します。

例:japan.geojson,yokohama.geojson

なし
com.nec.webotx.portal.portlet.dataview.map.name.ja

地図データの名前(日本語)を、カンマ区切りで指定します。

例:日本,横浜

なし
com.nec.webotx.portal.portlet.dataview.map.name.en

地図データの名前(英語)を、カンマ区切りで指定します。

例:japan,yokohama

なし

6.3. 分散キャッシュの利用

ここでは、分散キャッシュに関する設定について説明します。

WebOTX Portalの分散キャッシュでは、キャッシュの更新通知を分散システム内でブロードキャストするためにEhcacheを利用し、通知手段としてJMSを採用しています。 分散キャッシュを利用する場合は、JMS関連の設定も必要となります。

6.3.1. 分散キャッシュ利用設定

ここでは、分散キャッシュ利用時に必要となる設定について説明します。 更新通知に利用するJMSサーバは、JMSサーバクラスタ構成とすることも可能です。分散システム内の全ドメインのJMSサーバをJMSサーバクラスタ構成とし、各ドメインの分散キャッシュからはローカルのJMSサーバに接続することによって、WebOTXドメインの起動順序を意識する必要がなくなります。

Memo
JMSサーバクラスタを利用しない場合、WebOTXドメインの起動順序は、次のようにする必要があります。停止は、起動とは逆に3→2→1の順序で停止します。
1) データベース
2) 分散キャッシュの更新通知で利用するJMSサーバが動作するWebOTXドメイン
3) それ以外の(分散キャッシュの更新通知で利用しないJMSサーバが動作する)WebOTXドメイン

以下では、JMSサーバクラスタを利用しない場合と、利用する場合に分けて設定手順を説明します。JMSサーバクラスタを利用していない環境から、JMSサーバクラスタを利用するように変更するための手順は、「6.3.3.1. JMSサーバクラスタの設定追加」を参照してください。

6.3.1.1. JMSサーバクラスタ利用なし

JMSサーバクラスタを利用しない場合は、更新通知に利用するJMSサーバを1つ決定し、次の手順に従ってJMS関連の設定を行ってください。

  1. JMSサーバ上にTopicと、Queueの物理的な送信先を作成します。先に決定した、更新通知に利用するJMSサーバ(分散システム内で一つ)に対して作成します。送信先名は任意です。

    Topic:

    otxadmin> create-jmsdest --desttype topic <送信先名>
    
    Queue:
    otxadmin> create-jmsdest --desttype queue <送信先名>
    

    例) 物理的な送信先名を、portalTopic(Topic)、portalQueue(Queue)として作成する場合

    otxadmin> create-jmsdest --desttype topic portalTopic
    otxadmin> create-jmsdest --desttype queue portalQueue
    

  2. Topicコネクションファクトリリソースと、Queueコネクションファクトリリソースを作成します。複数のドメインが存在する場合は、すべてのドメインで作成してください。

    Topicコネクションファクトリリソース:

    otxadmin> create-jms-resource --restype javax.jms.TopicConnectionFactory --wojmsBrokerHostName <接続先のJMSサーバのホスト名> --wojmsBrokerHostPort <接続先のJMSサーバのポート番号> --wojmsAckOnAcknowledge=false --wojmsAckOnProduce=false --wojmsPortMapperSoTimeout=10000 --wojmsSocketConnectTimeout=10000 <JNDI名>
    
    Queueコネクションファクトリリソース:
    otxadmin> create-jms-resource --restype javax.jms.QueueConnectionFactory --wojmsBrokerHostName <接続先のJMSサーバのホスト名> --wojmsBrokerHostPort <接続先のJMSサーバのポート番号> --wojmsPortMapperSoTimeout=10000 --wojmsSocketConnectTimeout=10000 <JNDI名>
    

    接続先のJMSサーバのホスト名、ポート番号は、先に決定した更新通知で利用するJMSサーバが動作しているホスト名と、ポート番号を指定します。JNDI名は、それぞれ、分散キャッシュ (server.portal.portal-storage.distributedCache) の replicationTopicConnectionFactoryBindingName プロパティと、getQueueConnectionFactoryBindingName プロパティで設定した名前を指定してください。

    例) コネクションファクトリリソース名を、jms/portalTCF(TopicConnectionFactory)、jms/portalQCF(QueueConnectionFactory)とし、接続先となるJMSサーバのホスト名をhost1、ポート番号を9700として作成する場合

    otxadmin> create-jms-resource --restype javax.jms.TopicConnectionFactory --wojmsBrokerHostName host1 --wojmsBrokerHostPort 9700 --wojmsAckOnAcknowledge=false --wojmsAckOnProduce=false --wojmsPortMapperSoTimeout=10000 --wojmsSocketConnectTimeout=10000 jms/portalTCF
    otxadmin> create-jms-resource --restype javax.jms.QueueConnectionFactory --wojmsBrokerHostName host1 --wojmsBrokerHostPort 9700 --wojmsPortMapperSoTimeout=10000 --wojmsSocketConnectTimeout=10000 jms/portalQCF
    

  3. WebOTX AS Standard/Enterpriseのアドバンスドモード環境の場合は、すべてのコネクションファクトリリソースに対して次の設定を行います。
    otxadmin> set server.resources.connector-resource.<JNDI名>.use-jmx-agent=true
    

    例) 上の手順で作成したコネクションファクトリリソースjms/portalTCF、jms/portalQCFに対して設定する場合

    otxadmin> set server.resources.connector-resource.jms/portalTCF.use-jmx-agent=true
    otxadmin> set server.resources.connector-resource.jms/portalQCF.use-jmx-agent=true
    

  4. TopicとQueueの送信先リソースを作成します。複数のドメインが存在する場合は、すべてのドメインで作成してください。

    送信先リソース(Topic):

    otxadmin> create-jms-resource --restype javax.jms.Topic --wojmsDestinationName <物理的な送信先名> <JNDI名>
    
    送信先リソース(Queue):
    otxadmin> create-jms-resource --restype javax.jms.Queue --wojmsDestinationName <物理的な送信先名> <JNDI名>
    

    物理的な送信先名は、1 で作成した送信先名を指定してください。 また、JNDI名は、それぞれ、分散キャッシュ (server.portal.portal-storage.distributedCache) の replicationTopicBindingName プロパティと、getQueueBindingName プロパティで設定した名前を指定してください。

    例) 送信先リソース名を、jms/portalTopic(Topic、物理的な送信先名:portalTopic)、jms/portalQueue(Queue、物理的な送信先名:portalQueue)として作成する場合

    otxadmin> create-jms-resource --restype javax.jms.Topic --wojmsDestinationName portalTopic jms/portalTopic
    otxadmin> create-jms-resource --restype javax.jms.Queue --wojmsDestinationName portalQueue jms/portalQueue
    

  5. JMSサーバ対するプロパティと、分散キャッシュ利用の設定を行います。複数のドメインが存在する場合は、すべてのドメインに対して設定後、ドメインを再起動してください。
    otxadmin> set server.jms-service.property.wojmsConnectionPooling=false
    otxadmin> set server.portal.portal-storage.enableDistributedCache=true
    otxadmin> set server.portal.portal-storage.basicConfiguration={{com.nec.webotx.portal.storage.error.action.undefined.rule,default},{com.nec.webotx.portal.storage.error.action.not.found.key,default},{com.nec.webotx.portal.storage.cache.definition.name,cache1},{com.nec.webotx.portal.storage.default.persistence.unit.name,unit_001},{com.nec.webotx.portal.storage.cache.enabled,true},{com.nec.webotx.portal.storage.error.action.not.found.rule,default},{com.nec.webotx.portal.storage.initialize.cache,true},{com.nec.webotx.portal.storage.distributed.cache.enabled,true}}
    
    上記コマンドでは、基本設定 (basicConfiguration) に対する値は、「com.nec.webotx.portal.storage.distributed.cache.enabled」プロパティ以外、すべて既定値で設定しています。既定値を変更している場合は、それぞれ適切な値に変更して設定してください。

6.3.1.2. JMSサーバクラスタ利用あり

分散システム内の全ドメインのJMSサーバをJMSサーバクラスタ構成とし、各ドメインの分散キャッシュからはローカルのJMSサーバに接続することによって、WebOTXドメインの起動順序を意識する必要がなくなります。

Memo
JMSサーバクラスタでは、JMSサーバが相互に接続して情報を伝播することになり、通信量が増加するという影響がありますので、WebOTX Portalでは、JMSサーバクラスタを構成するJMSサーバは3台程度、マスターブローカなしとすることを推奨します。
マスターブローカを設定した場合、クラスタを構成する各JMSサーバは、マスターブローカが起動するまで待ち合わせを行います。 そのため、マスターブローカが起動するまで、分散キャッシュは利用できません。 また、マスターブローカが障害などにより停止した場合、その後に起動するドメインの分散キャッシュはマスターブローカが復旧するまで利用できません。

Memo
JMSサーバクラスタについては、[ アプリケーションサーバ > 製品構成と提供機能 > 3. 提供機能 > 3.6. 提供サービス > 3.6.4. JMS > 3.6.4.12. JMSサーバクラスタ ]を参照してください。

ここでは、分散キャッシュの設定とJMSサーバクラスタの設定を同時に行う場合の手順について説明します。JMSサーバクラスタを利用していない環境から、 JMSサーバクラスタを利用するように変更するため手順は、「6.3.3.1. JMSサーバクラスタの設定追加」を参照してください。

ここで説明する手順は図6.3.1-1に示すとおり、分散システムを構成するドメインが3台で、そのドメイン上で動作するJMSサーバ3台をJMSサーバクラスタ構成とする場合を想定したものです。


図6.3.1.2-1 JMSサーバクラスタを利用した分散キャッシュ設定

  1. JMSサーバクラスタを構成するすべてのJMSサーバに対して、JMSサーバクラスタ利用のための設定を行います。設定内容は、すべてのJMSサーバで同一にしてください。
    otxadmin> set server.jms-service.enableCluster=true
    otxadmin> set set server.jms-service.clusterBrokerList=<ホスト1>:<ホスト1のJMSサーバのポート番号>[,<ホストn>:<ホストnのJMSサーバのポート番号>]
    
    例) host1のdomain1で起動するJMSサーバ(ポート番号:9700[デフォルト])と、host2のdomain1で起動するJMSサーバ(ポート番号:9700[デフォルト])、host3のdomain1で起動するJMSサーバ(ポート番号:9700[デフォルト])でJMSサーバクラスタを構成する場合
    otxadmin> set server.jms-service.enableCluster=true
    otxadmin> set server.jms-service.clusterBrokerList=host1:9700,host2:9700,host3:9700
    
  2. 1 で対象としたすべてのJMSサーバに対して、TopicとQueueの物理的な送信先を作成します。

    Topic:

    otxadmin> create-jmsdest --desttype topic <送信先名>
    
    Queue:
    otxadmin> create-jmsdest --desttype queue <送信先名>
    

    例) 物理的な送信先名を、portalTopic(Topic)、portalQueue(Queue)として作成する場合

    otxadmin> create-jmsdest --desttype topic portalTopic
    otxadmin> create-jmsdest --desttype queue portalQueue
    

  3. Topicコネクションファクトリリソースと、Queueコネクションファクトリリソースを作成します。複数のドメインが存在する場合は、すべてのドメインで作成してください。 コネクションファクトリリソースの接続先はJMSホストのMOで設定されているものとなり、デフォルトはローカルドメインのJMSサーバとなります。通常はデフォルトのままで問題ありません。

    Topicコネクションファクトリリソース:

    otxadmin> create-jms-resource --restype javax.jms.TopicConnectionFactory --wojmsAckOnAcknowledge=false --wojmsAckOnProduce=false --wojmsPortMapperSoTimeout=10000 --wojmsSocketConnectTimeout=10000 <JNDI名>
    
    Queueコネクションファクトリリソース:
    otxadmin> create-jms-resource --restype javax.jms.QueueConnectionFactory --wojmsPortMapperSoTimeout=10000 --wojmsSocketConnectTimeout=10000 <JNDI名>
    

    JNDI名は、それぞれ、分散キャッシュ (server.portal.portal-storage.distributedCache) の replicationTopicConnectionFactoryBindingName プロパティと、getQueueConnectionFactoryBindingName プロパティで設定した名前を指定してください。

    例) コネクションファクトリリソース名を、jms/portalTCF(TopicConnectionFactory)、jms/portalQCF(QueueConnectionFactory)として作成する場合

    otxadmin> create-jms-resource --restype javax.jms.TopicConnectionFactory --wojmsAckOnAcknowledge=false --wojmsAckOnProduce=false --wojmsPortMapperSoTimeout=10000 --wojmsSocketConnectTimeout=10000 jms/portalTCF
    otxadmin> create-jms-resource --restype javax.jms.QueueConnectionFactory --wojmsPortMapperSoTimeout=10000 --wojmsSocketConnectTimeout=10000 jms/portalQCF
    

    Memo
    JMSホストのMOに設定されているホスト名は、次のコマンドで確認できます。
    otxadmin> get server.jms-service.jms-host.default_JMS_host.host
    

  4. WebOTX AS Standard/Enterpriseのアドバンスドモード環境の場合は、すべてのコネクションファクトリリソースに対して次の設定を行います。
    otxadmin> set server.resources.connector-resource.<JNDI名>.use-jmx-agent=true
    

    例) 上の手順で作成したコネクションファクトリリソースjms/portalTCF、jms/portalQCFに対して設定する場合

    otxadmin> set server.resources.connector-resource.jms/portalTCF.use-jmx-agent=true
    otxadmin> set server.resources.connector-resource.jms/portalQCF.use-jmx-agent=true
    

  5. TopicとQueueの送信先リソースを作成します。複数のドメインが存在する場合は、すべてのドメインで作成してください。

    送信先リソース(Topic):

    otxadmin> create-jms-resource --restype javax.jms.Topic --wojmsDestinationName <物理的な送信先名> <JNDI名>
    
    送信先リソース(Queue):
    otxadmin> create-jms-resource --restype javax.jms.Queue --wojmsDestinationName <物理的な送信先名> <JNDI名>
    

    物理的な送信先名は、1 で作成した送信先名を指定してください。 また、JNDI名は、それぞれ、分散キャッシュ (server.portal.portal-storage.distributedCache) の replicationTopicBindingName プロパティと、getQueueBindingName プロパティで設定した名前を指定してください。

    例) 送信先リソース名を、jms/portalTopic(Topic、物理的な送信先名:portalTopic)、jms/portalQueue(Queue、物理的な送信先名:portalQueue)として作成する場合

    otxadmin> create-jms-resource --restype javax.jms.Topic --wojmsDestinationName portalTopic jms/portalTopic
    otxadmin> create-jms-resource --restype javax.jms.Queue --wojmsDestinationName portalQueue jms/portalQueue
    

  6. JMSサーバ対するプロパティと、分散キャッシュ利用の設定を行います。複数のドメインが存在する場合は、すべてのドメインに対して設定後、ドメインを再起動してください。
    otxadmin> set server.jms-service.property.wojmsConnectionPooling=false
    otxadmin> set server.portal.portal-storage.enableDistributedCache=true
    otxadmin> set server.portal.portal-storage.basicConfiguration={{com.nec.webotx.portal.storage.error.action.undefined.rule,default},{com.nec.webotx.portal.storage.error.action.not.found.key,default},{com.nec.webotx.portal.storage.cache.definition.name,cache1},{com.nec.webotx.portal.storage.default.persistence.unit.name,unit_001},{com.nec.webotx.portal.storage.cache.enabled,true},{com.nec.webotx.portal.storage.error.action.not.found.rule,default},{com.nec.webotx.portal.storage.initialize.cache,true},{com.nec.webotx.portal.storage.distributed.cache.enabled,true}}
    
    上記コマンドでは、基本設定 (basicConfiguration) に対する値は、「com.nec.webotx.portal.storage.distributed.cache.enabled」プロパティ以外、すべて既定値で設定しています。既定値を変更している場合は、それぞれ適切な値に変更して設定してください。

Memo
ドメイン再起動後、JMSサーバクラスタが正しく構成できているかどうかは、JMSサーバが動作するドメインに対して次のコマンドを実行することで確認できます。Stateがすべて「OPERATING」となっていれば正しく動作しています。
otxadmin> list-jms-services
------------------------------------------------------------
Broker ID Address                               State
------------------------------------------------------------
          host1:9700                            OPERATING
          host2:9700                            OPERATING
          host3:9700                            OPERATING
コマンド list-jms-services は正常に実行されました。

6.3.2. 分散キャッシュ設定解除

ここでは、分散キャッシュの設定を解除する方法について説明します。

6.3.2.1. JMSサーバクラスタ利用なし

ここでは、JMSサーバクラスタを利用していないときに、分散キャッシュの設定を解除する方法について説明します。

  1. 分散キャッシュ機能を無効化します。
    otxadmin> invoke server.portal.portal-storage.disableCache
    
  2. JMSサーバ対するプロパティを削除し、分散キャッシュの設定を解除します。複数のドメインが存在する場合は、すべてのドメインに対して設定後、ドメインを再起動してください。

    otxadmin> set server.jms-service.property.wojmsConnectionPooling=
    otxadmin> set server.portal.portal-storage.enableDistributedCache=false
    otxadmin> set server.portal.portal-storage.basicConfiguration={{com.nec.webotx.portal.storage.error.action.undefined.rule,default},{com.nec.webotx.portal.storage.error.action.not.found.key,default},{com.nec.webotx.portal.storage.cache.definition.name,cache1},{com.nec.webotx.portal.storage.default.persistence.unit.name,unit_001},{com.nec.webotx.portal.storage.cache.enabled,true},{com.nec.webotx.portal.storage.error.action.not.found.rule,default},{com.nec.webotx.portal.storage.initialize.cache,true},{com.nec.webotx.portal.storage.distributed.cache.enabled,false}}
    
    上記コマンドでは、基本設定 (basicConfiguration) に対する値は、「com.nec.webotx.portal.storage.distributed.cache.enabled」プロパティ以外、すべて既定値で設定しています。既定値を変更している場合は、それぞれ適切な値に変更して設定してください。

  3. 更新通知で利用するJMSサーバ上に存在するTopicと、Queueの物理的な送信先を削除します。

    otxadmin> delete-jmsdest <送信先名>
    
    削除の場合、Topic、Queueともに同じコマンドです。

    例) 送信先名が、portalTopic(Topic)、portalQueue(Queue)である物理的な送信先を削除する場合

    otxadmin> delete-jmsdest portalTopic
    otxadmin> delete-jmsdest portalQueue
    

  4. Topicコネクションファクトリリソースと、Queueコネクションファクトリリソースを削除します。複数のドメインが存在する場合は、すべてのドメインで削除してください。

    otxadmin> delete-jms-resource <JNDI名>
    
    削除の場合、Topicコネクションファクトリリソース、Queueコネクションファクトリリソースともに同じコマンドです。

    例) コネクションファクトリリソース名が、jms/portalTCF(TopicConnectionFactory)、jms/portalQCF(QueueConnectionFactory)であるコネクションファクトリリソースを削除する場合

    otxadmin> delete-jms-resource jms/portalTCF
    otxadmin> delete-jms-resource jms/portalQCF
    

  5. TopicとQueueの送信先リソースを削除します。複数のドメインが存在する場合は、すべてのドメインで削除してください。

    otxadmin> delete-jms-resource <JNDI名>
    
    削除の場合、Topic、Queueの送信先リソースともに同じコマンドです。

    例) 送信先リソース名が、jms/portalTopic(Topic)、jms/portalQueue(Queue)である送信先リソースを削除する場合

    otxadmin> delete-jms-resource jms/portalTopic
    otxadmin> delete-jms-resource jms/portalQueue
    

6.3.2.2. JMSサーバクラスタ利用あり

ここでは、分散キャッシュとJMSサーバクラスタの設定解除を同時に行う場合の手順について説明します。なお、分散キャッシュの設定は残したまま、JMSサーバクラスタ設定のみを解除する手順については、「6.3.3.2. JMSサーバクラスタの設定解除」を参照してください。

  1. 分散キャッシュ機能を無効化します。
    otxadmin> invoke server.portal.portal-storage.disableCache
    
  2. JMSサーバ対するプロパティを削除し、分散キャッシュの設定を解除します。

    otxadmin> set server.jms-service.property.wojmsConnectionPooling=
    otxadmin> set server.portal.portal-storage.enableDistributedCache=false
    otxadmin> set server.portal.portal-storage.basicConfiguration={{com.nec.webotx.portal.storage.error.action.undefined.rule,default},{com.nec.webotx.portal.storage.error.action.not.found.key,default},{com.nec.webotx.portal.storage.cache.definition.name,cache1},{com.nec.webotx.portal.storage.default.persistence.unit.name,unit_001},{com.nec.webotx.portal.storage.cache.enabled,true},{com.nec.webotx.portal.storage.error.action.not.found.rule,default},{com.nec.webotx.portal.storage.initialize.cache,true},{com.nec.webotx.portal.storage.distributed.cache.enabled,false}}
    
    上記コマンドでは、基本設定 (basicConfiguration) に対する値は、「com.nec.webotx.portal.storage.distributed.cache.enabled」プロパティ以外、すべて既定値で設定しています。既定値を変更している場合は、それぞれ適切な値に変更して設定してください。

  3. Topicコネクションファクトリリソースと、Queueコネクションファクトリリソースを削除します。複数のドメインが存在する場合は、すべてのドメインで削除してください。

    otxadmin> delete-jms-resource <JNDI名>
    
    削除の場合、Topicコネクションファクトリリソース、Queueコネクションファクトリリソースともに同じコマンドです。

    例) コネクションファクトリリソース名が、jms/portalTCF(TopicConnectionFactory)、jms/portalQCF(QueueConnectionFactory)であるコネクションファクトリリソースを削除する場合

    otxadmin> delete-jms-resource jms/portalTCF
    otxadmin> delete-jms-resource jms/portalQCF
    

  4. TopicとQueueの送信先リソースを削除します。複数のドメインが存在する場合は、すべてのドメインで削除してください。

    otxadmin> delete-jms-resource <JNDI名>
    
    削除の場合、Topic、Queueの送信先リソースともに同じコマンドです。

    例) 送信先リソース名が、jms/portalTopic(Topic)、jms/portalQueue(Queue)である送信先リソースを削除する場合

    otxadmin> delete-jms-resource jms/portalTopic
    otxadmin> delete-jms-resource jms/portalQueue
    

  5. JMSサーバクラスタ設定を解除します。すべてのJMSサーバに対して設定後、ドメインを再起動してください。

    otxadmin> set server.jms-service.enableCluster=false
    otxadmin> set server.jms-service.clusterBrokerList=
    

  6. 更新通知で利用するJMSサーバ上に存在するTopicと、Queueの物理的な送信先を削除します。

    otxadmin> delete-jmsdest <送信先名>
    
    削除の場合、Topic、Queueともに同じコマンドです。

    例) 送信先名が、portalTopic(Topic)、portalQueue(Queue)である物理的な送信先を削除する場合

    otxadmin> delete-jmsdest portalTopic
    otxadmin> delete-jmsdest portalQueue
    

6.3.3. JMSサーバクラスタの設定と解除

6.3.3.1. JMSサーバクラスタの設定追加

既に分散キャッシュの設定を行っている場合に、更新通知に利用するJMSサーバをJMSサーバクラスタ構成に変更するための手順について説明します。


図6.3.3.1-1 JMSサーバクラスタの設定追加

  1. JMSサーバが起動していることを確認します。jms-pingコマンドを実行して「RUNNING」と表示されれば起動しています。起動していない場合は、start-jmsコマンドにより起動してください。
    otxadmin> jms-ping
    JMS Ping Status = RUNNING
    コマンド jms-ping は正常に実行されました。
    
  2. コネクションファクトリリソースのJMSサービスの接続先をローカルホストに変更します。分散構成のすべてのコネクションファクトリリソースを変更してください。
    otxadmin> set server.resources.jms-resource.jms-connection-factory.<JNDI名>.wojmsBrokerHostName=localhost
    
    例) コネクションファクトリリソース名が、jms/portalTCF(TopicConnectionFactory)、jms/portalQCF(QueueConnectionFactory)であるコネクションファクトリリソースの接続先をlocalhostにする場合
    otxadmin> set server.resources.jms-resource.jms-connection-factory.jms/portalTCF.wojmsBrokerHostName=localhost
    otxadmin> set server.resources.jms-resource.jms-connection-factory.jms/portalQCF.wojmsBrokerHostName=localhost
    
  3. JMSサーバクラスタを構成するすべてのJMSサーバに対して、JMSサーバクラスタ利用のための設定を行います。設定内容は、すべてのJMSサーバで同一にしてください。
    otxadmin> set server.jms-service.enableCluster=true
    otxadmin> set set server.jms-service.clusterBrokerList=<ホスト1>:<ホスト1のJMSサーバのポート番号>[,<ホストn>:<ホストnのJMSサーバのポート番号>]
    
    例) host1のdomain1で起動するJMSサーバ(ポート番号:9700[デフォルト])と、host2のdomain1で起動するJMSサーバ(ポート番号:9700[デフォルト])、host3のdomain1で起動するJMSサーバ(ポート番号:9700[デフォルト])でJMSサーバクラスタを構成する場合
    otxadmin> set server.jms-service.enableCluster=true
    otxadmin> set server.jms-service.clusterBrokerList=host1:9700,host2:9700,host3:9700
    
  4. 3 で対象としたすべてのJMSサーバに対して、TopicとQueueの物理的な送信先を作成します。ただし、既に作成済みのJMSサーバでは、再作成する必要はありません。

    Topic:

    otxadmin> create-jmsdest --desttype topic <送信先名>
    
    Queue:
    otxadmin> create-jmsdest --desttype queue <送信先名>
    

    例) 物理的な送信先名を、portalTopic(Topic)、portalQueue(Queue)として作成する場合

    otxadmin> create-jmsdest --desttype topic portalTopic
    otxadmin> create-jmsdest --desttype queue portalQueue
    

  5. ドメインを再起動します。

6.3.3.2. JMSサーバクラスタの設定解除

ここでは、分散キャッシュの更新通知で利用していたJMSサーバクラスタ設定を解除し、1つのドメインのJMSサーバを利用する設定に変更するための手順について説明します。


図6.3.3.2-1 JMSサーバクラスタの設定解除

  1. Topicコネクションファクトリリソースと、Queueコネクションファクトリリソースの接続先を、更新通知で利用するJMSサーバが動作するホスト、ポート番号に変更します。分散構成のすべてのコネクションファクトリリソースを変更してください。
    otxadmin> set server.resources.jms-resource.jms-connection-factory.<JNDI名>.wojmsBrokerHostName=<接続先のJMSサーバのホスト名>
    otxadmin> set server.resources.jms-resource.jms-connection-factory.<JNDI名>.wojmsBrokerHostPort=<接続先のJMSサーバのポート番号>
    

    例) コネクションファクトリリソース名が、jms/portalTCF(TopicConnectionFactory)、jms/portalQCF(QueueConnectionFactory)であるコネクションファクトリリソースの接続先をhost2にする場合(ポート番号変更なし)

    otxadmin> set server.resources.jms-resource.jms-connection-factory.jms/portalTCF.wojmsBrokerHostName=host2
    otxadmin> set server.resources.jms-resource.jms-connection-factory.jms/portalQCF.wojmsBrokerHostName=host2
    

  2. JMSサーバクラスタ設定を解除します。すべてのJMSサーバに対して設定後、ドメインを再起動してください。起動順序は、更新通知で利用するJMSサーバが動作するドメインを最初に起動する必要があります。

    otxadmin> set server.jms-service.enableCluster=false
    otxadmin> set server.jms-service.clusterBrokerList=
    

  3. 更新通知で利用しないJMSサーバ上に存在するTopicと、Queueの物理的な送信先を削除します。

    otxadmin> delete-jmsdest <送信先名>
    
    削除の場合、Topic、Queueともに同じコマンドです。

    例) 送信先名が、portalTopic(Topic)、portalQueue(Queue)である物理的な送信先を削除する場合

    otxadmin> delete-jmsdest portalTopic
    otxadmin> delete-jmsdest portalQueue
    

6.4. 認証連携サービス

本章では、WebOTX Portal の機能の1つである認証連携サービスについて説明します。

6.4.1. はじめに

認証連携サービスとは、WebOTX Portalの画面から他のアプリケーションへの 簡易的なシングルサインオン環境を構築するためのサービスです。

認証連携サービスを利用すると、WebOTX Portalの画面上に表示されているリンクから、 ID・パスワードを再入力することなく、様々なWebアプリケーションの認証後の 画面を直接表示することができます。

なお、認証連携サービスを利用してWebOTX Portalの画面から起動できる "他のアプリケーション" とは、 "認証画面がHTML formで作られたWebアプリケーション" のことを指します。

認証連携サービスを利用しない場合の画面遷移


図6.4.1-1 認証連携サービスを利用しない場合の画面遷移

認証連携サービスを利用した場合の画面遷移


図6.4.1-2 認証連携サービスを利用した場合の画面遷移

6.4.2. 認証連携サービスの流れ

認証連携サービスは、まず指定されたサービスIDに基づいて、 連携対象のアプリケーションと連携するための情報を ディレクトリサーバ、およびデータベースサーバから取得します。

次に、ディレクトリサーバ、およびデータベースサーバから取得した情報とCGIパラメータに基づいて 連携方法と連携データを決定/生成します。

連携データはHTML formの形でWebOTX Portalユーザのブラウザに渡され、 ブラウザは連携対象アプリケーションに自動認証する処理を実行します。 自動認証する処理とは、 例えば連携対象のアプリケーションがWebアプリケーションの場合は、 そのアプリケーションの認証用ページに ユーザIDやパスワードなどの連携データのパラメータ名・値を POST(GET)する処理になります。


図6.4.2-1 認証連携サービスの流れ

6.4.3. 連携データの生成

認証連携サービスは、連携対象アプリケーションに渡す ユーザID・パスワード・その他の連携データを、 運用コマンドでデータベースに登録したエントリの情報、 ディレクトリサーバに登録されたエントリの情報、 認証連携サービス呼び出し時のCGIパラメータに基づいて生成します。 ここでは、連携データがどのように作られるかを説明します。

6.4.3.1. 連携データの定義の所在

認証連携サービスは、以下の情報を使って連携データを生成します。

(1) サービスエントリ

サービスエントリは、連携するアプリケーションの定義情報を 格納するためのエントリです。エントリを特定するキーとしてサービスIDが 使われます。アプリケーションに引き渡す連携データのうち、 システム全体で共通なものは、サービスエントリの属性に定義します。

サービスエントリの操作に関しては、コマンドリファレンス1. ポータル > 1.1. 運用ツール > 1.1.12. 認証連携Webアプリケーション登録 を参照してください。

認証連携サービスでは、起動する各アプリケーションに対して 以下の属性が必要となります。

表6.4.3.1-1 認証連携サービスが使用するサービスエントリの属性一覧
属性名 説明
serviceId

サービスID

起動する連携対象アプリケーションの識別子を指定します。 アプリケーション毎に重複しない名前を指定してください。

serviceName

サービス名

起動する連携対象アプリケーションの名前を指定します。

記述方法は言語名=サービス名になります。複数設定する場合はコロン(:)区切りで指定します。 (例:--serviceName en=Name:ja=名前)

authenticationItems

認証用パラメータ

アプリケーションが認証時に必要とするパラメータ名とパラメータ値を、 名前=値 の形式で指定します。パラメータがない場合は指定不要です。

パラメータ名・パラメータ値には1バイト文字のみを指定してください。 パラメータ名・パラメータ値に英数字以外の文字や日本語・特殊文字が含まれる場合は、 パラメータ名・パラメータ値をURLエンコードしてください。 たとえば、パラメータ名が name1 で、 パラメータ値として abc:xyz という文字列を指定したい場合、パラメータ値のカンマ ':' (0x3a) をURLエンコードして、name1=abc%3Axyz と書く必要があります。

パラメータが複数ある場合には、1バイト文字のカンマ ':' (0x3a) で区切ります。同一名称のパラメータを複数設定することはできません。

パラメータ値として以下の文字列を指定した場合は、 現在ポータルにログインしているユーザ情報に置換されます。

<USERID>: ポータルにログインしているユーザのユーザIDに置換
<PASSWORD>: ポータルにログインしているユーザのパスワードに置換 (*1)
<USERNAME>: ポータルにログインしているユーザの氏名に置換
<GROUPID>: ポータルにログインしているユーザの所属番号に置換
<GROUPNAME>: ポータルにログインしているユーザの所属名に置換
<POSITIONID>: ポータルにログインしているユーザの役職番号に置換
<POSITIONNAME>: ポータルにログインしているユーザの役職に置換
authenticationType

認証タイプ

連携対象Webアプリケーションが認証情報を受け取る際に、HTTP POST / GET のどちらの形式で受け取るかを指定します。
POST: HTTP POSTによる認証を行う。
GET: HTTP GETによる認証を行う。

authenticationURL

認証用URL

連携対象Webアプリケーションが認証を行うページのURLを指定します。

注意
(*1) 認証サーバ連携機能を利用してWebOTX Portalの認証を行っている場合、 <PASSWORD> はポータルにログインしているユーザのパスワード情報に置換されません。

(2) apLoginContext属性

認証連携サービスでは、 ユーザ毎に異なるパラメータを利用して連携対象Webアプリケーションと 認証連携することもできます。例えば、次のような場合が該当します。

このような場合には、 ディレクトリサーバ上のユーザエントリのapLoginContext属性に、 連携対象アプリケーションの単位で 認証連携時に必要な個人に依存するデータを格納することによって、 ユーザ毎に異なるパラメータを利用した認証連携を実現することができます。

ユーザエントリの操作に関しては、 2. ユーザ管理 > 2.1. ユーザリソース > 2.1.4. ユーザリソース操作 > 2.1.4.1. 個人の登録、追加、削除 を参照してください。

注意
apLoginContext属性の設定は、 ポータルログイン時に用いるユーザID/パスワードと異なるユーザID/パスワードを 使って連携対象アプリケーションの認証を行う必要がある場合のみ設定を行います。

apLoginContext属性の形式は以下の通りです。

サービスID;名前=値,名前=値, ...

サービスIDとセミコロン ';' (0x3b) に続けて、連携対象Webアプリケーションが 認証時に必要とするパラメータ名とパラメータ値を、 名前=値 の形式で指定します。

パラメータ名・パラメータ値に指定できる文字の種類や パラメータを複数指定する方法については、 サービスエントリのauthenticationItems属性と同様ですが、各パラメータの区切り文字には ',' (0x2c) を使用して下さい。

また、パラメータ値として <USERID>、<PASSWORD> が指定された場合は、サービスエントリのauthenticationItems属性と同様に、 現在ポータルにログインしているユーザ情報に置換されます。

注意
認証サーバ連携機能を利用してWebOTX Portalの認証を行っている場合、 apLoginContext属性の設定値は利用されません。

(3) CGIパラメータ

CGIパラメータは認証連携サービス呼び出し時に指定できるパラメータで、 認証連携ポートレットやメニューポートレットで設定することができます。

これらのポートレットにおけるCGIパラメータ設定方法については、 各ポートレットの説明を参照してください。

注意
CGIパラメータのパラメータ値に <USERID>、<PASSWORD> を指定しても、 authenticationItems属性やapLoginContext属性のように ポータルにログインしているユーザ情報に置換されません。

6.4.3.2. 連携データの優先順位

6.4.3.1. 連携データの定義の所在 で説明したとおり、 認証連携サービスは以下の情報を使って 連携対象アプリケーションに渡すパラメータ名・値を決定します。

(1)〜(3)のそれぞれに同じパラメータ名が定義されている場合には (3)→(2)→(1)の優先順位で使用されるパラメータが決定されます。 また、(1)には定義されていて(2)、(3)には定義されていない項目に関しては、 (1)に定義されているパラメータが有効になります。

6.4.3.3. 連携データの生成例

ここでは、連携対象Webアプリケーション「WebKeiri」を例にとり、 連携データがどのように決定/生成されるのかを説明します。

Webアプリケーション「WebKeiri」がユーザを認証するときに必要とする データとして、以下の3つを想定します。

表6.4.3.3-1 「WebKeiri」が認証時に必要とするデータ
パラメータ名 説明
uid ユーザID
pwd パスワード
db 利用するデータベース名

また、WebOTX PortalにログインしているユーザのユーザIDとパスワードが 以下のようになっていると仮定します。

表6.4.3.3-2 WebOTX PortalでのユーザIDとパスワード
パラメータ名
ユーザID JOHN-DOE
パスワード abc12345
(1) apLoginContextを利用しない場合

連携対象アプリケーションのユーザID・パスワードが ポータルのユーザID・パスワードと同じ場合で、かつ ユーザID・パスワード以外に個人に依存する連携データが無い場合には、 サービスエントリを定義するだけで認証連携することができます。

表6.4.3.3-3 連携データの定義
連携データを定義する場所
authenticationItems属性 uid=<USERID>,pwd=<PASSWORD>,db=database03
apLoginContext属性 (指定しない)
CGIパラメータ (指定しない)

上記のように連携データを定義した場合、 以下のパラメータ名・値が連携対象アプリケーションに渡されます。

表6.4.3.3-4 連携対象アプリケーションに渡されるパラメータ
パラメータ名
uid JOHN-DOE
pwd abc12345
db database03
(2) apLoginContextを利用する場合

連携対象アプリケーションのユーザID・パスワードが ポータルのユーザID・パスワードと異なっている場合や、 ユーザID・パスワード以外に個人に依存する連携データがある場合には、 個人に依存する連携データをapLoginContext属性に定義する必要があります。

表6.4.3.3-5 連携データの定義
連携データを定義する場所
authenticationItems属性 uid=<USERID>,pwd=<PASSWORD>,db=database03
apLoginContext属性 WebKeiri;uid=JD_00005963,pwd=qwertydvorak
CGIパラメータ (指定しない)

authenticationItems属性とapLoginContext属性の両方に uidとpwdが定義されているため、これらのパラメータ値については apLoginContext属性の定義が使われます。 従って、上記のように連携データを定義した場合、 以下のパラメータ名・値が連携対象アプリケーションに渡されます。

表6.4.3.3-6 連携対象アプリケーションに渡されるパラメータ
パラメータ名
uid JD_00005963
pwd qwertydvorak
db database03

6.4.4. 認証連携サービスの呼び出し方

認証連携サービスは、認証連携ポートレットやメニューポートレットから 呼び出すことができます。 これらのポートレットの使い方については、各ポートレットの説明を参照してください。

6.4.5. 難読化エンコード機能

認証連携サービスは、 ユーザのWebブラウザに返却するHTML formのパラメータ値(本来のパラメータ値)を 特定の方法で異なるパラメータ値に変換し、 HTMLソースに記述されたパラメータ値が露出した場合でも、 "本来のパラメータ値" が何であるのかを分かりづらくします。 この機能を、難読化エンコード機能といいます。

難読化エンコードされたパラメータ値は、 ユーザのWebブラウザがHTML formを連携対象Webアプリケーションに POST(GET)する直前にデコード("本来のパラメータ値" に復元)されます。 そのため、連携対象Webアプリケーションには "本来のパラメータ値" が送信されます。

認証連携サービスの設定ファイルを編集することによって、 難読化エンコード機能の有効/無効を設定することができます。 設定変更の詳細は、6.2.5. 認証連携サービスの設定を参照してください。

6.5. ホスト名(IPアドレス)の変更

ここでは、WebOTX Portal インストール後にマシンのホスト名やIPアドレスを変更するための手順について説明します。

6.5.1. WebOTX AS の設定

まず最初に WebOTX AS 側の設定を変更します。詳細については、「ドメイン構築・基本設定ガイド」−「2. 環境設定」−「2.4. ホスト名の変更」を参照してください。

6.5.2. ポータルサーバの設定

分散キャッシュ機能有効時の設定

分散キャッシュ機能を有効にしている場合、運用管理コマンドで Topic/Queue コネクションファクトリを再作成します。

otxadmin> delete-jms-resource jms/portalTCF
otxadmin> delete-jms-resource jms/portalQCF
otxadmin> create-jms-resource --restype javax.jms.TopicConnectionFactory --wojmsBrokerHostName <IPアドレス> --wojmsBrokerHostPort <ポート番号> --wojmsAckOnAcknowledge=false --wojmsAckOnProduce=false --wojmsPortMapperSoTimeout=10000 --wojmsSocketConnectTimeout=10000 jms/portalTCF
otxadmin> create-jms-resource --restype javax.jms.QueueConnectionFactory --wojmsBrokerHostName <IPアドレス> --wojmsBrokerHostPort <ポート番号> --wojmsPortMapperSoTimeout=10000 --wojmsSocketConnectTimeout=10000 jms/portalQCF

WebOTX AS Standard/Enterprise のアドバンスドモードを利用している場合、次のコマンドも実行します。

otxadmin> set server.resources.connector-resource.jms/portalTCF.use-jmx-agent=true
otxadmin> set server.resources.connector-resource.jms/portalQCF.use-jmx-agent=true
ユーザ個別設定の変更

その他、配備済みポートレットの設定でポータルサーバのIPアドレスやURLを指定している場合や、ユーザリソースのサービスエントリのURL設定(authenticationURL, serviceURL, listenerURL)でポータルサーバのURLを指定している場合のように、利用者が個別に設定した情報においてIPアドレスやURLを設定している場合、それを変更します。

設定変更を行った場合、ドメインを再起動します。

6.5.3. データベースサーバの設定

データベースサーバが動作するマシンのホスト名、IPアドレスを変更した場合、次の設定変更が必要です。

otxadmin> set server.resources.jdbc-datasource.jdbc/portalDataSource.serverName=<データベースサーバが動作するマシンのホスト名またはIPアドレス>

さらに、データベースサーバに Oracle を利用している場合は、次の設定変更も必要です。

otxadmin> set server.resources.jdbc-datasource.jdbc/portalDataSource.dataSourceName=jdbc:oracle:thin:@<データベースサーバが動作するマシンのホスト名またはIPアドレス>:1521:orcl

ポート番号、SIDも変更する場合は、それぞれ 1521、orcl の部分も変更して下さい。

データベースサーバ側のホスト名、IPアドレス設定変更方法については、各データベースサーバのマニュアルを参照してください。

6.5.4. EDS の設定

EDS が動作するマシンのホスト名、IPアドレスを変更した場合、運用管理コマンドにより、次の設定変更が必要です。

otxadmin> set server.portal.directory-server.servername=<EDSが動作するマシンのホスト名またはIPアドレス>
otxadmin> set server.portal.directory-server.serverport=<EDSが動作するマシンのポート番号>

さらに、EDSをマスタ−スレーブ構成とした場合、マスタサーバのIPアドレスとポート番号の設定変更も必要です。

otxadmin> set server.portal.directory-server.masterservername=<EDSマスタサーバのIPアドレス>
otxadmin> set server.portal.directory-server.masterserverport=<EDSマスタサーバのポート番号>

EDS 側のホスト名、IPアドレス設定変更方法については、EDS のマニュアルを参照してください。

6.6. 複数永続ユニットの利用

ここでは、負荷分散を目的とした、複数永続ユニットを利用する場合の設定について説明します。

同時接続クライアント数が多いときに、利用する永続ユニットが1つだと、永続ユニットで保持するエンティティのキャッシュへのアクセスがボトルネックとなる場合があります。 このようなときに、複数の永続ユニットを利用して永続ユニットの負荷分散を行うことで、性能向上が期待できます。


図6.6-1 複数永続ユニットの利用

Caution
ここで定義する永続ユニットの接続先となるデータベースは、すべて同一でなければなりません。 また、V9.1で利用可能な永続ユニットは、unit_001からunit_010までの10個です。

ここでは、設定手順とともに、永続ユニットを3つ(unit_001、unit_002、unit_003)利用することを前提としたコマンド例を記載します。


図6.6-2 複数永続ユニット利用のための設定イメージ

  1. 利用する永続ユニットを登録します。
    otxadmin> add-persistence-unit <永続ユニット名>
    
    Memo
    永続ユニット名は、unit_<3桁の数字>で指定します。unit_001はインストール時に登録されます。

    例) 永続ユニットunit_002、unit_003を登録する場合
    otxadmin> add-persistence-unit unit_002
    otxadmin> add-persistence-unit unit_003
    
  2. 永続ユニットの定義を変更します。JDBCデータソース名などを既定値から変更している場合には、変更を行います。既定値から変更を行っていない場合は、この手順は不要です。
    otxadmin> set server.portal.portal-storage.persistence-unit.<永続ユニット名>.unitProperties={{<プロパティ名>,<設定値>}[,{<プロパティ名>,<設定値>}]}
    

    永続ユニットのプロパティについては、表 6.1.3-2を参照してください。

    例) 永続ユニットunit_002のJDBCデータソース名を「jdbc/MyDataSource」に変更する場合
    otxadmin> set server.portal.portal-storage.persistence-unit.unit_002.unitProperties={{toplink.cache.shared.default,true},{toplink.cache.type.default,SoftWeak},{javax.persistence.transactionType,RESOURCE_LOCAL},{toplink.cache.size.default,1000},{javax.persistence.nonJtaDataSource,jdbc/MyDataSource}}
    

    上記コマンドでは、javax.persistence.nonJtaDataSourceプロパティ以外、すべて既定値を指定しています。既定値を変更している場合は、それぞれ適切な値に変更して設定する必要があります。

  3. 負荷分散ルールのタイプと、利用する永続ユニット名のリスト、振り分けキーのリストを指定します。
    otxadmin> set server.portal.portal-storage.basicConfiguration={ ... ,{com.nec.webotx.portal.storage.persistence.unit.balancing.type,<負荷分散ルールのタイプ>},{com.nec.webotx.portal.storage.addon.munit.FactoryCacheClearImpl.unit.list,<永続ユニット名のリスト>}{com.nec.webotx.portal.storage.addon.munit.StepRoundRobinRuleImpl.key.list,<任意キーのリスト>}}
    
    Memo
    V9.1において設定可能な負荷分散ルールのタイプは、roudrobin のみです。

    例) 永続ユニットとしてunit_001、unit_002、unit_003を利用し、振り分けキーとして、key1、key2、key3を順に利用する場合
    otxadmin> set server.portal.portal-storage.basicConfiguration={{com.nec.webotx.portal.storage.error.action.undefined.rule,default},{com.nec.webotx.portal.storage.error.action.not.found.key,default},{com.nec.webotx.portal.storage.cache.definition.name,cache1},{com.nec.webotx.portal.storage.default.persistence.unit.name,unit_001},{com.nec.webotx.portal.storage.cache.enabled,true},{com.nec.webotx.portal.storage.error.action.not.found.rule,default},{com.nec.webotx.portal.storage.initialize.cache,true},{com.nec.webotx.portal.storage.distributed.cache.enabled,false},{com.nec.webotx.portal.storage.persistence.unit.balancing.type,roundrobin},{com.nec.webotx.portal.storage.addon.munit.FactoryCacheClearImpl.unit.list,"unit_001\,unit_002\,unit_003"},{com.nec.webotx.portal.storage.addon.munit.StepRoundRobinRuleImpl.key.list,"key1\,key2\,key3"}}
    

    上記コマンドでは、com.nec.webotx.portal.storage.persistence.unit.balancing.type以外は、すべて既定値を指定しています。既定値を変更している場合は、それぞれ適切な値に変更して設定する必要があります。

    Memo
    この例では、key1、key2、key3の順で振り分けられるように指定していますが、例えば、key1 に重み付けを行う場合は、「key1,key1,key2,key1,key3」などのように指定します。

  4. 振り分けキーと永続ユニットのマッピングを定義します。
    otxadmin> set server.portal.portal-storage.keyUnitMap={{<;振り分けキー>,<永続ユニット名>}[,{<振り分けキー>,<永続ユニット名>}]}
    
    例) 振り分けキーとして、key1、key2、key3を使い、それぞれに、unit_001、unit_002、unit_003の永続ユニットを割り当てる場合
    otxadmin> set server.portal.portal-storage.keyUnitMap={{key1,unit_001},{key2,unit_002},{key3,unit_003}}
    
  5. (分散キャッシュ利用時のみ) 永続ユニットと、更新通知で利用するキャッシュのマッピングを定義します。分散キャッシュを利用していない場合は、この手順は不要です。
    otxadmin> set server.portal.portal-storage.unitCacheMap={{<永続ユニット名>,<キャッシュ名>}[,{<永続ユニット名>,<キャッシュ名>}]}
    
    例) 永続ユニットunit_001、unit_002、unit_003に、更新通知用キャッシュ cache1 を割り当てる場合
    otxadmin> set server.portal.portal-storage.unitCacheMap={{unit_001,cache1},{unit_002,cache1},{unit_003,cache1}}
    
  6. ドメインを再起動します。

6.7. UIカスタマイズ

6.7.1. はじめに

ここでは、UIカスタマイズについて説明します。 UIカスタマイズとは、ポータル製品が提供するポータルスキン、ポートレットスキン、テーマ、レイアウトパターンを新たに定義し、ポータルサイトに適用できるようにする機能です。

ポータルスキンとは、ポータル画面全体の構成を決めるテンプレートです。エリアの構成やエリア内のボタン、メニューの構成を決定できます。ベースとなるスタイルの定義もできます。

ポートレットスキンとは、ポータルのウィンドウの構成、およびデザインを決めるテンプレートです。タイトルバー内のボタンの配置、ポートレットのコンテンツのベースとなるスタイルを定義します。

テーマとは、ポータル全体の色やフォントなどのスタイルを決めます。ポータルスキン、ポートレットスキンで決定したスタイルを上書きすることができます。

レイアウトパターンとは、ページのレイアウトを決めるためのテンプレートです。ポートレットが配置な領域を設定します。

6.7.2. リソースの作成

ここでは、ポータルスキン、ポートレットスキン、テーマ、レイアウトパターンの各種リソースの作成方法について説明します。

リソースにはCSS(カスケードスタイルシート)を含むものがあります。複数のCSSに同一のスタイル定義がある場合、CSSの読み込み順序やセレクタの記述方法によって優先順位が決定され、適用されるスタイルが決まります。

各リソースのCSSはポータルのベースのスタイルを上書きする形で定義します。そのため、ポータルのベースのスタイルより優先順位が高くなるように、body要素のid属性を用いてセレクタを定義してください。

例) #otx .archPortalServiceArea {}

ポータルのベースのスタイルについては、以下のファイルを参照ください。
${INSTANCE_ROOT}/portal/webapps/webotx-portal/javascript/resources/portal.css

また、ポータルではポータルスキン、ポートレットスキン、テーマのCSSの優先順位を優先度が低い順に以下のように定義しています。

  1. ポータルスキン
  2. ポートレットスキン
  3. テーマ

各CSSはこの優先順位にそった順序で読み込む仕組みになっていますが、セレクタが各CSSで異なる場合は優先順位を保つことができません。

優先順位を保つため、ポータルスキン、ポートレットスキン、テーマ間で同じ対象に対するセレクタを同一にすることを推奨します。

CSSが正しく適用されない場合は、他に優先されているスタイルがないかを確認してください。

6.7.2.1. ポータルスキン

ここでは、ポータルスキンの作成方法について説明します。

ポータルスキンを構成するファイル

ポータルスキンは、テンプレートファイル(*.ftl)とテンプレートファイルから参照する各種ファイル(*.js、*.css、*.jpgなど)で構成されています。

テンプレートファイルはポータル画面のHTMLの一部です。ポータル画面を表示する際に、ポータル画面に統合されます。各テンプレートファイルは、ポータル画面に統合される位置が決まっています。

表6.7.2.1-1 テンプレートファイル一覧
テンプレートファイル名 統合される場所
preInitialize.ftl head要素に統合されます。head要素内での位置はポータルの画面処理スクリプトを実行するscript要素の前になります。
postInitialize.ftl head要素に統合されます。head要素内での位置はポータルの画面処理スクリプトを実行するscript要素の後になります。
BodyContent.ftl body要素に統合されます。

上記のテンプレートファイルのファイル名は変更できません。

ポータルスキンによっては上記テンプレートファイルから参照するテンプレートファイルが登録されています。ポータルが用意しているポータルスキンには、以下のテンプレートファイルがあります。

表6.7.2.1-2 ポータルが用意しているポータルスキンで使用しているテンプレートファイル
テンプレートファイル名 統合される場所
PortalServiceArea.ftl 画面上のサービスエリアを表します。BodyContent.ftlから参照されます。
PortalSiteArea.ftl 画面上のサイトエリアを表します。BodyContent.ftlから参照されます。
PortalPageArea.ftl 画面上のページエリア、ポートレットエリアを表します。BodyContent.ftlから参照されます。
PortalFooter.ftl 画面の一番下にあるフッター部分を表します。BodyContent.ftlから参照されます。

これらのテンプレートファイルでは、以下の文字列を記載することで該当ポータルスキンを使って画面を表示する際に動的に表示内容を変更することができます。

表6.7.2.1-3 ポータルスキンで利用可能な置換文字列
置換文字列 意味
${userInfo} ポータルサイトエリアに表示するユーザ名
${contextPath} WebOTX Portalのコンテキストパス
${portalSiteName} ポータルサイト名

記述例

<link rel="stylesheet" type="text/css" href="${contextPath}/portaldesign/portalSkins/myportalskin/portal.css">

テンプレートファイルから参照する各種ファイルは、以下のフォルダに配置することになっています。詳細は、6.7.3.1. ポータルスキンを参照ください。
<INSTANCE_ROOT>/portal/design/portaldesign/portalSkins/<ID>/<targetID>/

このフォルダは以下のURLに対応しています。テンプレートファイルからはこのURLを用いて参照してください。${contextPath}は上記の表にあるように実行時にポータルのコンテキストパスに変換されます。
${contextPath}/portaldesign/portalSkins/<ID>/<targetID>/

作成手順

ポータルスキンを作成する場合、作成したいポータルスキンにもっとも近いポータルスキンの各種ファイルをコピーして編集します。

  1. 作成したいポータルスキンにもっとも近いポータルスキンをコピーします。
  2. 編集したい場所に対応したテンプレートファイルの内容を書き換えます。

テンプレートファイルにはid属性を持つ要素がいくつかあります。各要素のid属性は、ポータルの画面処理スクリプトで使用しています。id属性の値を変更するとその要素に対して処理が行われませんので、変更しないでください。

書き方によってはポータル画面が正しく動かなくなる場合がありますので、ポータルスキンを作成したあとには必ず動作確認を行ってください。

編集内容別の説明と注意事項
ボタンやアイコンを削除したい

どの要素も削除することができます。id属性を持つ要素を削除することも可能です。

ボタンやアイコンを別の位置に移動したい

BodyContent.ftlか、そこから参照するテンプレートファイル内であれば移動することができます。

移動した場所によってボタンやアイコンの見た目が変わることがあります。

ボタンやアイコンを追加したい

BodyContent.ftlか、そこから参照するテンプレートファイル内であれば追加することができます。

指定したスクリプトを実行したい

preInitialize.ftlかpostInitialize.ftlに、script要素を追加することで実行できます。実行したいタイミングに応じて記述する場所や方法を判断します。

表6.7.2.1-4 スクリプトを実行したいタイミングと実装方法、場所
処理の流れ 実装方法、場所
ポータル画面のHTMLをブラウザが受信
このタイミングで処理を実行したい場合は、preInitialize.ftlに処理を記述します。
ポータル画面処理スクリプト実行
このタイミングで処理を実行したい場合は、postInitialize.ftlに処理を記述します。
onloadイベント発生
このタイミングで処理を実行したい場合は、preInitialize.ftlに処理を記述します。このタイミングで実行させたい場合は、JavaScriptライブラリであるdojoのready関数を使用して処理を実行します。
ポータル画面処理スクリプト実行
このタイミングで処理を実行したい場合は、postInitialize.ftlに処理を記述します。このタイミングで実行させたい場合は、JavaScriptライブラリであるdojoのready関数を使用して処理を実行します。
ポータル画面構築完了

dojoのready関数を使用したスクリプトの例は以下のようになります。

require(["dojo/ready"], function(ready) {
    ready(function() { /*実行したい処理*/ });
});
指定したCSSを適用させたい

preInitialize.ftlかpostInitialize.ftlに、link要素かstyle要素を追加することで適用できます。どちらのテンプレートに記述しても問題ありません。

ポータルの画面はポータルの画面処理スクリプトによってテンプレートファイルの内容を元に作られます。CSSはスクリプト実行後のHTMLの構成にしたがって記述してください。スクリプト実行後のHTMLのサンプルはこちらを参照ください。

※class属性にarchPortletWindowWidgetが設定されている要素の配下はポータルスキンではなくポートレットスキンの範囲になります。
※クラス名が<任意の文字列>+PortalEditModeとなっているものは、ポータル編集モード特有のクラス名です。ポータル通常モードでは設定されていません。

CSS作成時の注意点については6.7.2. リソースの作成を参照ください。

6.7.2.2. ポートレットスキン

ここでは、ポートレットスキンの作成方法について説明します。

ポートレットスキンを構成するファイル

ポートレットスキンは、ポートレットウィンドウの構造を定義するHTMLファイルとポートレットウィンドウに適用するスクリプトやCSS、そこから参照する各種ファイル(画像ファイルなど)、スクリプトとCSSのリストを定義するプロパティファイルで構成されています。

ポートレットスキンのHTMLファイルは、ポータルの画面処理スクリプトにより実際のポートレットウィンドウのHTMLに変換されます。そのため、内部にscript要素やlink要素、style要素を記述することができません。ポートレットスキンにスクリプトやCSSを適用するための別の仕組みとして、プロパティファイルを用意しています。

プロパティファイルでは、適用したいスクリプトファイルやCSSを複数指定することができます。実行順や読み込み順も指定できます。

HTMLファイルとプロパティファイルのファイル名は変更できません。それぞれPortletWindowWidget.htmlとskin.propertiesになります。

作成手順

ポートレットスキンを作成する場合、作成したいポートレットスキンにもっとも近いポートレットスキンをコピーして編集します。

  1. 作成したいポートレットスキンにもっとも近いポートレットスキンの各種ファイルをコピーします。
  2. 編集したい内容に応じて各ファイルを書き換えます。

HTMLファイルにはdata-dojo-attach-point属性、data-dojo-attach-event属性を持つ要素がいくつかあります。各要素のdata-dojo-attach-point属性、data-dojo-attach-event属性は、ポータルの画面処理スクリプトで使用しています。これらの属性の値を変更するとその要素に対する処理が失敗する場合がありますので、変更しないでください。

書き方によってはポータル画面が正しく動かなくなる場合がありますので、ポートレットスキンを作成したあとには必ず動作確認を行ってください。

編集内容別の説明と注意事項
ボタンやアイコンを削除したい

特定の要素以外は削除することができます。特定の要素以外のdata-dojo-attach-point属性を持つ要素を削除することも可能です。

削除できない要素は以下になります。

表6.7.2.2-1 削除できない要素一覧
対象要素のdata-dojo-attach-point属性の値
titleBarNode
focusNode
arrowNode
arrowNodeInner
titleNode
hideNode
wipeNode
containerNode
ボタンやアイコンを別の位置に移動したい

特定の要素以外は移動することができます。

移動できない要素は以下になります。

表6.7.2.2-2 移動できない要素一覧
対象要素のdata-dojo-attach-point属性の値
titleBarNode
focusNode
arrowNode
arrowNodeInner
titleNode
hideNode
wipeNode
containerNode

移動した場所によってボタンやアイコンの見た目が変わることがあります。

ボタンやアイコンを追加したい

特定の場所以外には追加することができます。

ボタンやアイコンを追加できない要素は以下になります。

表6.7.2.2-3 追加できない要素一覧
対象要素のdata-dojo-attach-point属性の値
wipeNode
指定したスクリプトを実行したい

プロパティファイルのskin.propertiesで実行したいスクリプトを指定します。

表6.7.2.2-4 スクリプトを指定するプロパティ
プロパティ名 説明 既定値
javascriptFiles 実行したいスクリプトのファイル名を指定します。HTMLファイルからの相対パスになります。複数指定する場合はカンマ(,)で区切ります。その場合は指定した順序で実行されます。 なし

スクリプトは、ポータルの画面処理スクリプトの先頭で実行されますが、このときポートレットウィンドウはまだ画面上に配置されていません。そのため、ポートレットウィンドウが画面上に配置されたタイミングで処理を実行できる仕組みを用意しています。

ポートレットウィンドウが画面に配置されたタイミングで処理を行いたい場合は、スクリプト内でポータルの提供するJavaScriptAPIを利用して処理を登録します。

以下に、使用例を記載します。

require(["webotx/portal/design/portletSkin"], function(portletSkin) {
    // ポートレットウィンドウが画面上に配置されたときに呼び出す初期化関数を登録します。
    // 引数は、配置されたポートレットウィンドウのDOM要素です。
    portletSkin.addSkinInitializer(function(node) { /* 画面に配置されたタイミングで実行したい処理 */ });
});

ここで登録した関数の具体的な実行タイミングは以下になります。ポートレットウィンドウ一つ一つに対して実行されます。

  1. ポートレットウィンドウを画面に配置
  2. ポートレットスキンのスクリプトを実行
  3. ポートレットコンテンツを画面に反映
指定したCSSをポータル画面に適用させたい

プロパティファイルのskin.propertiesで適用させたいスクリプトを指定します。

表6.7.2.2-5 CSSを指定するプロパティ
プロパティ名 説明 既定値
stylesheetFiles 適用させたいCSSファイル名を指定します。HTMLファイルからの相対パスになります。複数指定する場合はカンマ(,)で区切ります。その場合は指定した順序で適用されます なし

ポータルの画面はポータルの画面処理スクリプトによってテンプレートファイルの内容を元に作られます。CSSはスクリプト実行後のHTMLの構成にしたがって記述してください。スクリプト実行後のHTMLのサンプルはこちらを参照ください。

※ポータルスキンの範囲はclass属性にarchPortletWindowWidgetが設定されている要素の配下のみになります。
※クラス名が<任意の文字列>+PortalEditModeとなっているものは、ポータル編集モード特有のクラス名です。ポータル通常モードでは設定されていません。

CSS作成時の注意点については6.7.2. リソースの作成を参照ください。

6.7.2.3. テーマ

ここでは、テーマの作成方法について説明します。

テーマを構成するファイル

テーマは、テーマのスタイルを定義するCSSとそこから参照する各種ファイル(画像ファイルなど)で構成されています。

CSSのファイル名は変更できません。theme.cssになります。

作成手順

テーマを作成する場合、作成したいテーマにもっとも近いテーマをコピーして編集します。

  1. 作成したいテーマにもっとも近いテーマの各種ファイルをコピーします。
  2. 編集したい内容に応じて各ファイルを書き換えます。

CSS作成時の注意点については6.7.2. リソースの作成を参照ください。

6.7.2.4. レイアウトパターン

新規にレイアウトパターンを作成したい場合には、レイアウトパターンを定義したレイアウトパターン定義ファイルとページプロパティに表示する画像ファイルを作成します。画像ファイルは省略することも可能です。

画像ファイルの縦横サイズは横270x縦45で固定です。使用可能状態、ホバー状態、選択状態、使用不可状態の四種類の状態を表す絵を横に並べた画像ファイルを作成してください。その際、画像ファイルにおける各状態を表す絵の位置が、ポータルの使用しているレイアウトパターンの画像ファイルと同じになるようにしてください。

レイアウトパターン定義ファイルのファイル名は pattern.html 固定です。レイアウトパターンをtable/tr/tdタグを使って定義します。規則は以下の通りです。規則は以下の通りです。

定義例

area1 area2
area3

このレイアウトを定義するには、以下のように定義してください。定義したレイアウトイメージを確認しやすいようにborder属性やarea1, area2, area3のデータを記入しているが、実際には不要です。

<table border="1">
    <tr>
        <td width="30%">area1 </td>
        <td width="70%">
            <table border="1" width="100%">
                <tr>
                    <td width="100%" >area2</td>
                </tr>
                <tr>
                    <td width="100%" >area3</td>
                </tr>
            </table>
        </td>
    </tr>
</table>

6.7.3. リソースの登録・削除手順

定義したそれぞれのリソースの登録方法、削除方法について説明します。

6.7.3.1. ポータルスキン

作成したポータルスキンは、以下の手順で登録します。

  1. ポータルスキンを識別するためのポータルスキンIDを決めてください。
    以下IDが「portalSkin1」の場合を例に説明します。
  2. 有効にするポータルスキンを識別するためのターゲットIDを決めてください。
    ターゲットIDはポータルスキン更新時に更新毎のポータルスキンを管理するためのIDです。
    例えば、A面/B面のように「a」や「b」というIDを利用したり、世代管理をする場合に数字を使用したりすることを想定しています。
    以下ターゲットIDが「a」の場合を例に説明します。
  3. 以下のディレクトリを作成し、作成したポータルスキンのファイルを一式格納してください。

    ${INSTANCE_ROOT}/portal/design/info/portalSkins/<ポータルスキンID>/<ターゲットID>

    WebOTXのドメインのパスが「c:\WebOTX\domains\domain1」で、ポータルスキンIDが「portalSkin1」でターゲットIDが「a」の場合は以下のディレクトリになります。

    c:\WebOTX\domains\domain1\portal\design\info\portalSkins\portalSkin1\a

  4. コマンドを実行して登録操作を行ってください。マルチサーバ構成で利用する場合にはすべてのサーバにポータルスキンのファイルを格納した後で、サーバのうちの1台でコマンドを実行してください。

    例) ポータルサイトのプロパティに表示するポータルスキンの名前が「skin1」の場合

    otxadmin> enable-portal-skin --id portalSkin1 --defaultName skin1 --targetId a

登録したポータルスキンは、以下の手順で削除します。

  1. コマンドを実行して削除操作を行ってください。

    例) ポータルスキンIDが「portalSkin1」のポータルスキンを削除する場合

    otxadmin> disable-portal-skin --id portalSkin1

  2. 不要になったポータルスキンのファイルは各サーバから削除してください。

登録したポータルスキンを変更したい場合は、削除後登録してください。登録する際にターゲットIDを変更することによって、登録したファイルに問題があった場合に容易に変更前の状態に戻すことができます。

6.7.3.2. ポートレットスキン

作成したポートレットスキンは、以下の手順で登録します。

  1. ポートレットスキンを識別するためのポートレットスキンIDを決めてください。
    以下IDが「portletSkin1」の場合を例に説明します。
  2. 有効にするポートレットスキンを識別するためのターゲットIDを決めてください。ターゲットIDはポートレットスキン更新時に更新毎のポートレットスキンを管理するためのIDです。
    例えば、A面/B面のように「a」や「b」というIDを利用したり、世代管理をする場合に数字を使用したりすることを想定しています。
    以下ターゲットIDが「a」の場合を例に説明します。
  3. 以下のディレクトリを作成し、作成したポートレットスキンのファイルを一式(skin.properties以外)格納してください。

    ${INSTANCE_ROOT}/portal/design/portaldesign/portletSkins/<ポートレットスキンID>/<ターゲットID>

    WebOTXのドメインのパスが「c:\WebOTX\domains\domain1」で、ポートレットスキンIDが「portletSkin1」でターゲットIDが「a」の場合は以下のディレクトリになります。

    c:\WebOTX\domains\domain1\portal\design\portaldesign\portletSkins\portletSkin1\a

  4. skin.propertiesを作成している場合には以下のディレクトリを作成し、作成したskin.propertiesを格納してください。

    ${INSTANCE_ROOT}/portal/design/info/portletSkins/<ポートレットスキンID>/<ターゲットID>

    WebOTXのドメインのパスが「c:\WebOTX\domains\domain1」で、ポートレットスキンIDが「portletSkin1」でターゲットIDが「a」の場合は以下のディレクトリになります。

    c:\WebOTX\domains\domain1\portal\design\info\portletSkins\portletSkin1\a

  5. コマンドを実行して登録操作を行ってください。マルチサーバ構成で利用する場合にはすべてのサーバにポートレットスキンのファイルを格納した後で、サーバのうちの1台でコマンドを実行してください。

    例) ポータルサイトのプロパティに表示するポートレットスキンの名前が「skin1」の場合

    otxadmin> enable-portlet-skin --id portletSkin1 --defaultName skin1 --targetId a

登録したポートレットスキンは、以下の手順で削除します。

  1. コマンドを実行して削除操作を行ってください。

    例) ポートレットスキンIDが「portletSkin1」のポートレットスキンを削除する場合

    otxadmin> disable-portlet-skin --id portletSkin1

  2. 不要になったポートレットスキンのファイルは各サーバから削除してください。

登録したポートレットスキンを変更したい場合は、削除後登録してください。登録する際にターゲットIDを変更することによって、登録したファイルに問題があった場合に容易に変更前の状態に戻すことができます。

6.7.3.3. テーマ

作成したテーマは、以下の手順で登録します。

  1. テーマを識別するためのテーマIDを決めてください。
    以下IDが「theme1」の場合を例に説明します。
  2. 有効にするテーマを識別するためのターゲットIDを決めてください。ターゲットIDはテーマ更新時に更新毎のテーマを管理するためのIDです。
    例えば、A面/B面のように「a」や「b」というIDを利用したり、世代管理をする場合に数字を使用したりすることを想定しています。
    以下ターゲットIDが「a」の場合を例に説明します。
  3. 以下のディレクトリを作成し、作成したテーマのファイルを一式格納してください。

    ${INSTANCE_ROOT}/portal/design/portaldesign/themes/<テーマID>/<ターゲットID>

    WebOTXのドメインのパスが「c:\WebOTX\domains\domain1」で、テーマIDが「theme1」でターゲットIDが「a」の場合は以下のディレクトリになります。

    c:\WebOTX\domains\domain1\portal\design\portaldesign\themes\theme1\a

  4. コマンドを実行して登録操作を行ってください。マルチサーバ構成で利用する場合にはすべてのサーバにテーマのファイルを格納した後で、サーバのうちの1台でコマンドを実行してください。

    例) ポータルサイトのプロパティに表示するテーマの名前が「theme1」の場合

    otxadmin> enable-theme --id theme1 --defaultName theme1 --targetId a

登録したテーマは、以下の手順で削除します。

  1. コマンドを実行して削除操作を行ってください。

    例) テーマIDが「theme1」のテーマを削除する場合

    otxadmin> disable-theme --id theme1

  2. 不要になったテーマのファイルは各サーバから削除してください。

登録したテーマを変更したい場合は、削除後登録してください。登録する際にターゲットIDを変更することによって、登録したファイルに問題があった場合に容易に変更前の状態に戻すことができます。

6.7.3.4. レイアウトパターン

作成したレイアウトパターンは、以下の手順で登録します。

  1. レイアウトパターンを識別するためのレイアウトパターンIDを決めてください。
    以下IDが「layout1」の場合を例に説明します。
  2. 以下のディレクトリを作成し、作成したレイアウトパターンのファイルを格納してください。

    ${INSTANCE_ROOT}/portal/design/info/patterns/<レイアウトパターンID>

    WebOTXのドメインのパスが「c:\WebOTX\domains\domain1」で、レイアウトパターンIDが「layout1」の場合は以下のディレクトリになります。

    c:\WebOTX\domains\domain1\portal\design\info\patterns\layout1

  3. レイアウトパターンを表す画像ファイルを作成した場合は以下のディレクトリを作成し、作成した画像ファイルを格納してください。

    ${INSTANCE_ROOT}/portal/design/portaldesign/patterns/<レイアウトパターンID>/images

    WebOTXのドメインのパスが「c:\WebOTX\domains\domain1」で、レイアウトパターンIDが「layout1」の場合は以下のディレクトリになります。

    c:\WebOTX\domains\domain1\portal\design\portaldesign\patterns\layout1\images

  4. コマンドを実行して登録操作を行ってください。マルチサーバ構成で利用する場合にはすべてのサーバにレイアウトパターンのファイルを格納した後で、サーバのうちの1台でコマンドを実行してください。

    例) ポータルページのプロパティに表示するレイアウトパターンの名前が「layout1」の場合

    otxadmin> add-page-layout --id layout1 --defaultName layout1

登録したレイアウトパターンは、以下の手順で削除します。

  1. コマンドを実行して削除操作を行ってください。

    例) レイアウトパターンIDが「layout1」のレイアウトパターンを削除する場合

    otxadmin> delete-page-layout --id layout1

  2. 不要になったレイアウトパターンのファイルは各サーバから削除してください。

6.7.4. 画面項目の非表示設定

ポータルスキン、ポートレットスキン単位で画面上の画面項目を非表示にすることができます。
マルチテナント構成の場合には、会社毎に設定を行うことができます。

6.7.4.1. 非表示設定手順

非表示項目の設定はWebAPIを使って行います。
WebAPIは会社管理者ユーザでログインしている状態で実行してください。

WebAPIの一覧は以下の通りです。

表6.7.4.1-1 非表示設定のWebAPIの一覧
API名 説明
setHiddenItems 画面項目を非表示に設定する
getHiddenItemList 非表示項目の一覧を取得する
getPortalSkinList ポータルスキンの一覧を取得する
getPortletSkinList ポートレットスキンの一覧を取得する
表6.7.4.1-2 setHiddenItems
リクエストURL /webotxportal/services/design/setHiddenItems
リクエストメソッド POST
リクエストパラメータ
パラメータ名 説明
targetCustomInfo 対象となる表示項目が存在するポータルスキンやポートレットスキンのIDを指定する
targetType targetCustomInfoで指定したIDがポータルスキンなのかポートレットスキンなのかを指定する
ポータルスキン     : portal
ポートレットスキン  : portlet
hiddenItems 非表示にする項目の識別子をカンマ(,)区切りで連結した文字列を指定する
showItems 非表示を解除する項目の識別子をカンマ(,)区切りで連結した文字列を指定する
レスポンスデータ
正常終了時 {
    "result": true
}
異常終了時 {
    "result": false,
    "message": "エラーメッセージ"
}
表6.7.4.1-3 getHiddenItemList
リクエストURL /webotxportal/services/design/getHiddenItemList
リクエストメソッド GET
リクエストパラメータ
パラメータ名 説明
targetCustomInfo 対象となる表示項目が存在するポータルスキンやポートレットスキンのIDを指定する
targetType targetCustomInfoで指定したIDがポータルスキンなのかポートレットスキンなのかを指定する
ポータルスキン     : portal
ポートレットスキン  : portlet
レスポンスデータ
正常終了時 {
    "result": true
    "resultData": [
        {
            "value": "識別子"
        },
        {
            "value": "識別子"
        },
        ・・・
    ]
}
異常終了時 {
    "result": false,
    "message": "エラーメッセージ"
}
表6.7.4.1-4 getPortalSkinList
リクエストURL /webotxportal/services/design/getPortalSkinList
リクエストメソッド GET
リクエストパラメータ
なし
レスポンスデータ
正常終了時 {
    "result": true
    "resultData": [
        {
            "portalSkinId": "ID",
            "displayNames":[
                {
                    "language": "言語名",
                    "displayName": "表示名"
                },
                {
                    "language": "言語名",
                    "displayName": "表示名"
                },
                ・・・
            ]
        },
        {
            "portalSkinId": "ID",
            "displayNames":[
                {
                    "language": "言語名",
                    "displayName": "表示名"
                },
                {
                    "language": "言語名",
                    "displayName": "表示名"
                },
                ・・・
            ]
        },
        ・・・
    ]
}
異常終了時 {
    "result": false,
    "message": "エラーメッセージ"
}
表6.7.4.1-5 getPortletSkinList
リクエストURL /webotxportal/services/design/getPortletSkinList
リクエストメソッド GET
リクエストパラメータ
なし
レスポンスデータ
正常終了時 {
    "result": true
    "resultData": [
        {
            "portalSkinId": "ID",
            "displayNames":[
                {
                    "language": "言語名",
                    "displayName": "表示名"
                },
                {
                    "language": "言語名",
                    "displayName": "表示名"
                },
                ・・・
            ]
        },
        {
            "portalSkinId": "ID",
            "displayNames":[
                {
                    "language": "言語名",
                    "displayName": "表示名"
                },
                {
                    "language": "言語名",
                    "displayName": "表示名"
                },
                ・・・
            ]
        },
        ・・・
    ]
}
異常終了時 {
    "result": false,
    "message": "エラーメッセージ"
}

6.7.4.2. 設定可能な項目と設定値

表6.7.4.2-1 ポータルスキン内の要素
非表示項目名 設定値
ポータルサービスエリア portalServiceArea
ロゴ logo
更新ボタン reloadButton
個人設定 userPreferenceMenu
パスワード変更メニュー changePasswordMenuItem
ポートレットライブラリ openLibraryButton
ユーザ名表示 loginUserLabel
権限昇格 elevatePrivilegeButton
昇格解除 lowerPrivilegeButton
ログアウト logoutButton
ポータルサイトエリア portalSiteArea
ポータルサイトナビゲーション portalSiteNavigation
移動ボタン moveMenu
本務組織移動メニュー moveByMainWorkMenuItem
兼務組織移動メニュー moveByAdditionalPostsMenuItem
テナント間共通サイト移動メニュー moveBySharedSiteMenuItem
ルートサイト移動メニュー moveByRootSiteMenuItem
ユーザサイト移動メニュー moveByUserSiteMenuItem
組織一覧から選択メニュー moveByOrganizationMenuItem
管理権限のあるポータルサイト一覧から選択メニュー moveByManagedSiteMenuItem
パンくずリスト breadCrumb
サイトプロパティ sitePropertyButton
編集 editButton
ポータルページエリア portalPageArea
ポータルページエリア表示切替UI portalPageAreaToggleButton
ポータルページ名 pageNameLabel
ポータルページメニューアイコン pageMenu
ページプロパティメニュー pagePropertyMenuItem
ページ移動メニュー pageMoveMenuItem
ポータルページ削除アイコン pageCloseButton
ポータルページ追加 pageAddMenu
新規ページを追加メニュー addNewPageMenuItem
既存のページを追加メニュー addExistedPageMenuItem
フッター portalFooter
表6.7.4.2-1 ポートレットスキン内の要素
非表示項目名 設定値
タイトルバー titleBar
ポートレット名 portletNameLabel
手動更新ボタン reloadButton
ポートレットウィンドウメニューアイコン portletMenu
表示 portletModeViewMenuItem
全般 generalPropertyMenuItem
アクセス権 securityPropertyMenuItem
ウィンドウデザイン designPropertyMenuItem
個人設定 portletModeEditMenuItem
共用設定 portletModeEditDefaultsMenuItem
ヘルプ portletModeHelpMenuItem
説明 portletModeAboutMenuItem
最小化アイコン minimizeButton
通常化アイコン normalizeButton
最大化アイコン maximizeButton
削除ボタン closeButton
リサイズバー resizeBar