[What are Subsites?] サブサイトとは何か?

Subsites are a feature for sub-dividing your portal site map into independent "portal site" trees. This enables use-case scenarios such as hosting two or more Jetspeed portals on the same portal instance (application server). With subsites, subsets of users can be configured to only view a sub-tree, or subsite, of the overall portal site. These users will never see content outside of their subsite. The creation of subsites is based upon profiling rules. You apply profiling rules to navigate users to their subsite root. In this example,

サブサイトは、あなたのポータルサイトのサイトマップを、独立した「ポータルサイト」に更に分割するための機能です。このことは、2 つ以上の Jetspeed ポータルを、同じポータルのインスタンス (アプリケーションサーバ) 上にホスティングするようなシナリオを可能にします。サブサイト機能を使って、ユーザの一部の部分集団がポータルサイト全体のサブツリーやサブサイトだけを見るように設定を行うことが可能になります。これらのユーザは、自身の属するサブサイトの外のコンテンツを見ることは決してありません。サブサイトの作成は、プロファイリングルールに基づきます。プロファイリングルールを追加することにより、ユーザをサブサイトのルートに導きます。この例では (訳注: 原文もここで終わっています)

[A Subsite Scenario: Subsite By Hostname] サブサイトのシナリオ: ホスト名によるサブサイト

In order to direct users to different subsites, you will need to define a set of rules, known as profiling rules. These rules determine which subsite users and guests will visit. Rules are based on runtime parameters, such as username, roles of the current user, request parameters, session state, or more. In this example we will look at directing users to subsites based on the hostname portion of the URL. Use case scenario we are going to look at are:

ユーザを異なるサブサイトに導くため、プロファイリングルールというルールセットを定義する必要があります。これらのルールは、サブサイトのユーザやゲストの訪問を定義します。ルールは、ユーザ名、現在のユーザのロール、リクエストパラメータ、セッションの状態などの実行時のパラメータに基づきます。この例では、URL のホスト名に基づいて、ユーザをサブサイトに導く方法を考えます。

  • A virtual hosting scenario where you are hosting different sites.
  • A single organization with two or more sites, which may also some content in common amongst those subsites.
  • バーチャルホスティングのシナリオ。異なる複数サイトをホスティングします。
  • 2 つ以上のサイトを持つ単一の組織。サブサイト間で共通のコンテンツもいくつか持つちます。

[Virtual Hosting]バーチャルホスティング

In our Virtual Hosting example, we are hosting three different portal subsites:

ここでのバーチャルホスティングの例では、3 つの異なるポータルのサブサイトをホスティングします。

Here we have three subsites (four including localhost) defined for three different companies:

ここに、3 つの異なる会社のための 3 つのサブサイトがあります (localhost を合わせて 4 つ)。

  • www.company-1.com - the subsite for "Company 1"
  • www.company-2.com - the subsite for "Company 2"
  • www.company-3.com - the subsite for "Company 3"
  • www.company-1.com - 「会社1」のためのサブサイト
  • www.company-2.com - 「会社2」のためのサブサイト
  • www.company-3.com - 「会社3」のためのサブサイト

[Single Organization] 単一組織

In our Single Organization example, we are hosting three different portal subsites within the organization:

ここで示す単一組織の例では、組織内に 3 つの違うポータルサブサイトをホスティングしています。

Here we have three subsites (four including localhost) defined for three different companies:

ここに、3 つの異なる会社のための 3 つのサブサイトがあります (localhost を合わせて 4 つ)。(訳注:ここは間違いと思われます。おそらく「同じ組織のための 3 つのサブサイトがあります。」だと思われます。)

  • employees.my-company.com - subsite for employees
  • partners.my-company.com - subsite for partners
  • www.my-company.com - subsite for the public
  • employees.my-company.com - 従業員のためのサブサイト。
  • partners.my-company.com - パートナーのためのサブサイト。
  • www.my-company.com - 一般公開用のサブサイト。

[Site Manager]サイトマネージャ

The screenshots above show using the Site Manager to configure your subsites. The Site Manager is useful for configuring a live site. When you configure a site initially, subsites are configured on the file system as folders, subfolders and pages. Optionally, these folders can be imported in the database. See the Database Page Manager for details on storing subsites in the database.

前に示したスクリーンショットは、サイトマネージャを使ってサブサイトを設定している所です。サイトマネージャは、その場でサイトを設定するのに役に立ちます。サイトの初期設定の際、サブサイトはファイルシステム上のフォルダやサブフォルダやページで設定されます。これらのフォルダをデータベースにインポートすることも可能です。データベースにサブサイトを保存するには、データベースページマネージャを参照してください。

The Site Manager mirrors your file system (or database structure) in a tree view. Looking at the Site View screenshots above, there are several directories we need to take note of:

サイトマネージャは、ファイルシステムをツリービュー形式で表します。前のサイトビューのスクリーンショットを見てください。ここには、説明が必要なディレクトリがいくつかあります。

  • __subsite-root - this is a reserved directory, containing all subsite control roots
  • _hostname - this is a control directory (prefixed with underscore) containing all hostname-based subsites
  • __subsite-root - これは予約ディレクトリです。全てのサブサイト制御のルートを収容します。
  • _hostname - これは全てのホストベースのサブサイトを含む コントロール ディレクトリです (アンダースコアが最初に付きます)。

Control directories must always begin with an underscore. Profiling rules navigate through control directories based on runtime parameters. In this example, we are creating subsites based on the hostname runtime parameter

制御ディレクトリは常にアンダースコアから始めなければなりません。プロファイリングルールは、実行時パラメータを元に制御ディレクトリを検索します。この例では、実行時のホスト名ベースのサブサイトを作成しています。

[/etc/hosts] /etc/hosts

Note that the localhost site is there only for developers. Even developers can simulate a virtual hosting environment by editing their /etc/hosts file on their local machines (on Windows under \windows\system32\drivers\etc\hosts) and making fake entries such as:

localhost サイトは開発の時のみ存在することに注意してください。開発者でも、自身のローカルマシンの /etc/hosts ファイル (Windows では \windows\system32\drivers\etc\hosts) を編集して、以下のようなエントリを加えることにより、バーチャルホスティング環境をシミュレートすることが可能です。

       
        127.0.0.1 www.company-1.com
        127.0.0.1 www.company-2.com
        127.0.0.1 www.company-3.com

        127.0.0.1 employees.my-company.com
        127.0.0.1 partners.my-company.com
        127.0.0.1 www.my-company.com

       
        127.0.0.1 www.company-1.com
        127.0.0.1 www.company-2.com
        127.0.0.1 www.company-3.com

        127.0.0.1 employees.my-company.com
        127.0.0.1 partners.my-company.com
        127.0.0.1 www.my-company.com

[XML Seed Configuration] XML Seed 設定

When initially setting up your Jetspeed portal, you will need to provide initial seed data for your portal. Here we demonstrate how to configure your XML seed data for a subsite. We will be initializing:

Jetspeed ポータルを初期設定する際、あなたのポータルの初期データを準備する必要があります。ここで、どのようにサブサイト構築のための XML 初期データを設定するのかをデモしてみます。

  • Profiling Rules
  • Users
  • プロファイリングルール
  • ユーザ

[Profiling Rules] プロファイリングルール

                
<ProfilingRule id="subsite-by-hostname" standardRule="false">
	<description value="A rule based on role fallback algorithm with specified subsite and home page"/>
	<Criteria>
		<Criterion name="navigation">
			<type value="navigation"/>
			<value value="subsite-root"/>
			<fallBackOrder value="0"/>
			<fallBackType value="2"/>
		</Criterion>
		<Criterion name="hostname">
			<type value="hostname"/>
			<fallBackOrder value="1"/>
			<fallBackType value="2"/>
		</Criterion>
		<Criterion name="user">
			<type value="user"/>
			<fallBackOrder value="2"/>
			<fallBackType value="2"/>
		</Criterion>
		<Criterion name="navigation-2">
			<type value="navigation"/>
			<value value="subsite-root"/>
			<fallBackOrder value="3"/>
			<fallBackType value="2"/>
		</Criterion>
		<Criterion name="hostname">
			<type value="hostname"/>
			<fallBackOrder value="4"/>
			<fallBackType value="2"/>
		</Criterion>
		<Criterion name="role">
			<type value="role"/>
			<fallBackOrder value="5"/>
			<fallBackType value="2"/>
		</Criterion>				
		<Criterion name="path">
			<type value="path"/>
			<value value="home"/>
			<fallBackOrder value="6"/>
			<fallBackType value="2"/>
		</Criterion>
	</Criteria>
</ProfilingRule>                               

                
<ProfilingRule id="subsite-by-hostname" standardRule="false">
	<description value="サブサイトとホームページを特定する、ロールベースのフォールバックアルゴリズム"/>
	<Criteria>
		<Criterion name="navigation">
			<type value="navigation"/>
			<value value="subsite-root"/>
			<fallBackOrder value="0"/>
			<fallBackType value="2"/>
		</Criterion>
		<Criterion name="hostname">
			<type value="hostname"/>
			<fallBackOrder value="1"/>
			<fallBackType value="2"/>
		</Criterion>
		<Criterion name="user">
			<type value="user"/>
			<fallBackOrder value="2"/>
			<fallBackType value="2"/>
		</Criterion>
		<Criterion name="navigation-2">
			<type value="navigation"/>
			<value value="subsite-root"/>
			<fallBackOrder value="3"/>
			<fallBackType value="2"/>
		</Criterion>
		<Criterion name="hostname">
			<type value="hostname"/>
			<fallBackOrder value="4"/>
			<fallBackType value="2"/>
		</Criterion>
		<Criterion name="role">
			<type value="role"/>
			<fallBackOrder value="5"/>
			<fallBackType value="2"/>
		</Criterion>				
		<Criterion name="path">
			<type value="path"/>
			<value value="home"/>
			<fallBackOrder value="6"/>
			<fallBackType value="2"/>
		</Criterion>
	</Criteria>
</ProfilingRule>                               

A profiling rule contains one or more criterion. Each criterion defines an instruction on how to locate a page in the physical portal site map. Criterion of the type navigation are used to navigate down the portal site tree. The fallBackOrder tag should normally just be listed sequential. You can almost always get by with a fallBackType of 2. All of the available criterion types are documented in the online Profiler Guide. The table below describes each criterion in our subsite rule and how it is used in a subsite location algorithm. This rule is a subsite location rule that uses a user-role-fallback algorithm. User-role-fallback algorithms first look for a page in the users home directory. If not found there, they then look for a page in each of the users corresponding role directories. There are other algorithms provided by out of the box such as role-fallback, group-fallback, mediatype/language fallback. Or you can create your own algorithms by creating new profiling rules in the XML seed data or with the Profiler Admininistrative portlet.

プロファイリングルールは 1 つ以上の判断基準を含んでいます。それぞれの判断基準は、物理的なポータルサイトマップ内でページをどのように位置付けるかの指示を定義します。navigation タイプの判断基準は、ポータルサイトツリーをどのようにたどっていくかを指示するのに使われます。通常は、fallBackOrder タグの順番通りにリストに並ぶ必要があります。ほとんどの場合常に fallBackType は 2 になります。判断基準の type として利用可能なものは、プロファイラ利用のガイド で述べられています。以下の表は、サブサイトのそれぞれの判断基準について述べており、それがどのようにサブサイトの位置を決定するのに使われるかを説明しています。このルールは、user-role-fallback アルゴリズムを使うサブサイトの位置決めルールです。user-role-fallback アルゴリズムは、まず最初にユーザのホームディレクトリを探します。もし見つからなければ、ユーザのロールに合致するロールのディレクトリを探します。role-fallback、group-fallback、mediatype/language fallback と言ったような、すぐに使える他のアルゴリズムも準備されています。また、新しいプロファイリングルールを XML データで作るか、プロファイラ管理ポートレットで作る事によって、自分のアルゴリズムを作成することも可能です。

NameTypeValueDescription
navigationnavigationsubsite-rootNavigates to the physical /__subsite-root directory.
hostnamehostname(provided at runtime)Navigates to the control directory /__subsite-root/_hostname, and then to the subdirectory matching the runtime _hostname parameter. If the runtime _hostname parameter equals "localhost", then the physical location is /__subsite-root/_hostname/localhost.
useruser(provided at runtime)Navigates to the control directory /__subsite-root/_hostname/user, and then to the subdirectory matching the runtime _user parameter. If the runtime _user parameter equals "dean", then the physical location is /__subsite-root/_hostname/localhost/_user/dean.
navigation-2navigationsubsite-rootWhen a page is not found under the user directory, we start over and navigate back to the subsite root.
hostnamehostname(provided at runtime)Then again navigate to the _hostname directory
rolerole(provided at runtime)Navigate to each role directory of the given user until we find the page. For example, for a role named "role1", navigate to the control directory /__subsite-root/_hostname/role, and then to the subdirectory matching each runtime _role parameters. If the runtime _role parameter is only "role1", then the physical location is /__subsite-root/_hostname/localhost/_role/role1.
pathpathhomeThis is a constant used in all calculations, the path portion of the URL, such as home.psml, or /accounting/worksheet.psml. It is always appended to the calculated path to give the complete physical address of the page. In the case where there is no page specified, the default value provided in the rule "home" is used, and that actually maps to "home.psml" as the default page extensions.
名前タイプ説明
navigationnavigationsubsite-rootコントロールディレクトリである /__subsite-root の物理的な場所を指し示します。
hostnamehostname(実行時に動的に与えられる)コントロールディレクトリである /__subsite-root/_hostname の場所を指し示します。それからそのサブディレクトリを、実行時パラメータである _hostname とマッチングさせます。もし、実行時パラメータ _hostname が "localhost" である場合、物理的な場所は /__subsite-root/_hostname/_localhost となります。
useruser(実行時に動的に与えられる)コントロールディレクトリである /__subsite-root/_hostname/user の場所を指し示します。それから、そのサブディレクトリを、実行時パラメータの _user とマッチングさせます。もし実行時パラメータ _user が "dean" であれば、物理的な場所は /__subsite-root/_hostname/_user/dean となります。
navigation-2navigationsubsite-rootページがユーザディレクトリ以下に見つからないとき、サブサイトのルートに戻ってやり直します。
hostnamehostname(実行時に動的に与えられる)それから再度 _hostname ディレクトリを指し示します。
rolerole(実行時に動的に与えられる)ページが見つかるまで、与えられたユーザのロールのそれぞれのディレクトリを探索します。例えば、まず /__subsite-root/_hostname/role というディレクトリを指し示します。それからそのサブディレクトリを、実行時パラメータの _role とマッチングさせます。もし実行時パラメータ _role が "role1" だけであれば、物理的な場所は /__subsite-root/_hostname/localhost/_role/role1 となります。
pathpathhome全ての計算で使われる定数。URL のパス部分。例えば home.psml や /accounting/worksheet.psml のような。ページの完全な物理位置を与えるパスを計算するときに常に追加されます。ページが特定されない場合、ルールで与えられるデフォルト値である "home" が使われます。そして実際にはデフォルトのページ拡張子を追加して "home.psml" へマップされます。

The screenshot below shows the directory tree for a localhost subsite.

以下のスクリーンショットは localhost サブサイトのディレクトリツリーを表しています。

Notice the _user and _role directories. These are control directories based on the runtime parameters user and role. The user parameter represents the username of the currently logged on user. The role parameter can represent one or more roles of the current user. The subsite algorithm will navigate down to a user directory first, and look in the directory for the current user by name. It will look there for name of the current page requested on the URL. Given the following example runtime parameters, the tables below demonstrates the fallback search path algorthm used by the profiler in locating a page given our subsite profiling rule. Once it finds the page, the page is immediately returned and the algorithm is terminated. For each of the examples below, consider the following runtime parameters:

Usernamedean
Rolesrole1, role2, role3
Hostnamelocalhost

_user と _role ディレクトリに注意してください。これらは実行時パラメータ userrole に基づいたコントロールディレクトリです。この user パラメータは現在ログオンしているユーザのユーザ名を表します。サブサイトのアルゴリズムは、最初にユーザディレクトリへ降りていくのを指し示します。そして名前によって決まる現在のユーザのディレクトリの中を見ます。そして、URL で要求された現在のページの名前に対応するファイルをそこで見つけるでしょう。以下に実行時パラメータの例を示します。以下の表は、サブサイトのプロファイリングルールによって与えられるページを探す、プロファイラを使ったフォールバック検索パスアルゴリズムの実例です。一度ページが見つかると、ページがすぐに返され、アルゴリズムは終了します。以下のそれぞれ例は、以下の実行時パラメータを前提にして示しています。

Usernamedean
Rolesrole1, role2, role3
Hostnamelocalhost

http://localhost:8080/jetspeed/portal/calendar.psml

URLSite Physical Location
http://localhost:8080/jetspeed/portal/calendar.psml/__subsite-root/_hostname/localhost/_user/dean/calendar.psml
/__subsite-root/_hostname/localhost/_role/role1/calendar.psml
/__subsite-root/_hostname/localhost/_role/role2/calendar.psml
/__subsite-root/_hostname/localhost/_role/role3/calendar.psml
/__subsite-root/_hostname/localhost/calendar.psml
/__subsite-root/calendar.psml

http://localhost:8080/jetspeed/portal/calendar.psml

URLサイト内の物理的場所
http://localhost:8080/jetspeed/portal/calendar.psml/__subsite-root/_hostname/localhost/_user/dean/calendar.psml
/__subsite-root/_hostname/localhost/_role/role1/calendar.psml
/__subsite-root/_hostname/localhost/_role/role2/calendar.psml
/__subsite-root/_hostname/localhost/_role/role3/calendar.psml
/__subsite-root/_hostname/localhost/calendar.psml
/__subsite-root/calendar.psml

http://localhost:8080/jetspeed/portal/accounting/worksheet.psml

URLSite Physical Location
http://localhost:8080/jetspeed/portal/accounting/worksheets.psml/__subsite-root/_hostname/localhost/_user/dean/accounting/worksheet.psml
/__subsite-root/_hostname/localhost/_role/role1/accounting/worksheet.psml
/__subsite-root/_hostname/localhost/_role/role2/accounting/worksheet.psml
/__subsite-root/_hostname/localhost/_role/role3/accounting/worksheet.psml
/__subsite-root/_hostname/localhost/accounting/worksheet.psml
/__subsite-root/accounting/worksheet.psml

http://localhost:8080/jetspeed/portal/accounting/worksheet.psml

URLサイト内の物理的場所
http://localhost:8080/jetspeed/portal/accounting/worksheets.psml/__subsite-root/_hostname/localhost/_user/dean/accounting/worksheet.psml
/__subsite-root/_hostname/localhost/_role/role1/accounting/worksheet.psml
/__subsite-root/_hostname/localhost/_role/role2/accounting/worksheet.psml
/__subsite-root/_hostname/localhost/_role/role3/accounting/worksheet.psml
/__subsite-root/_hostname/localhost/accounting/worksheet.psml
/__subsite-root/accounting/worksheet.psml

http://localhost:8080/jetspeed/portal/

URLSite Physical Location
http://localhost:8080/jetspeed/portal//__subsite-root/_hostname/localhost/_user/dean/home.psml
/__subsite-root/_hostname/localhost/_role/role1/home.psml
/__subsite-root/_hostname/localhost/_role/role2/home.psml
/__subsite-root/_hostname/localhost/_role/role3/home.psml
/__subsite-root/_hostname/localhost/home.psml
/__subsite-root/home.psml

http://localhost:8080/jetspeed/portal/

URLサイト内の物理的場所
http://localhost:8080/jetspeed/portal//__subsite-root/_hostname/localhost/_user/dean/home.psml
/__subsite-root/_hostname/localhost/_role/role1/home.psml
/__subsite-root/_hostname/localhost/_role/role2/home.psml
/__subsite-root/_hostname/localhost/_role/role3/home.psml
/__subsite-root/_hostname/localhost/home.psml
/__subsite-root/home.psml

[Associated Rules with Users] ユーザに関連付いたルール

All users are either explicity or implicity associated with a profiling rule. The User Administration utility has a tab to setup the profiling rule associated with a user:

ユーザは全員、明確にもしくは暗黙のうちに、プロファイリングルールに関連付きます。ユーザを管理するユーティリティには、ユーザに関連付くプロファイリングルールを設定するためのタブがあります。

Additionally, you can associate users with profiling rules in the XML seed data configuration:

更に、XML 初期データを使った設定で、ユーザをプロファイリングルールに関連付けることもできます。

                
<Users>
...                
<User name="jetspeed">
	<credentials password="jetspeed" enabled="TRUE" requiresUpdate="FALSE"/>
	<roles>manager</roles>
	<groups>engineering</groups>
	<preferences/>
	<userinfo/>
	<Rules>
		<Rule locator="menu" rule="role-group"/>
		<Rule locator="page" rule="role-fallback"/>
	</Rules>
</User>
</Users>                

                
<Users>
...                
<User name="jetspeed">
	<credentials password="jetspeed" enabled="TRUE" requiresUpdate="FALSE"/>
	<roles>manager</roles>
	<groups>engineering</groups>
	<preferences/>
	<userinfo/>
	<Rules>
		<Rule locator="menu" rule="role-group"/>
		<Rule locator="page" rule="role-fallback"/>
	</Rules>
</User>
</Users>                

Looking at the Rule element of a User, the locator can be either:

ユーザの Rule 要素を見てください。locator は以下の二つの値を取れます。

  • page - use associated profiling rule to locate pages
  • menu - use the associated profiling rule to locate menus (if not specified, use the page locator)
  • page - ページを探すためのプロファイリングルールと関連付けるために使う。
  • menu - メニューを探すためのプロファイリングルールと関連付けるために使う。(もし指定されない場合は、ページロケータを使います。)

The rule attribute on the Rule element of a User defines which profiling rule is associated to either a page or menu locator. If a user is not associated with a locator, then there is a system wide locator configured in the Spring configuration file profiler.xml. See the contructor-arg of index = 1. This locator is the default locator, system-wide, for when there is no-associated profiling rule. Normally, profiling rules are associated with user during activities such as the creation of new users with the User Administration portlet, or during new user registration.

ユーザの Rule 要素の rule 属性は、プロファイリングルールに対するページもしくはメニューロケータの関連付けを定義します。もし、ユーザがロケータと関連付けられなかった場合、システム全体のロケータが存在し、その Spring 設定ファイルである profiler.xml により設定されます。index = 1 のコンストラクタ引数を見てください。このロケータはシステム全体のデフォルトロケータであり、どのプロファイリングルールにも関連付けられなかった時のためのものです。通常プロファイリングルールは、ユーザ管理ポートレットで新しいユーザを作成するような時や新しいユーザの登録を行うときに、ユーザに関連付けられます。


<beans>
    <!-- Profiler -->
    <bean id="profilerImpl" class="org.apache.jetspeed.profiler.impl.JetspeedProfilerImpl" init-method="init">
        <constructor-arg index="0">
            <value>JETSPEED-INF/ojb/profiler_repository.xml</value>
        </constructor-arg>
        <constructor-arg index="1">
            <value>j2</value>
        </constructor-arg>                
        ....


<beans>
    <!-- Profiler -->
    <bean id="profilerImpl" class="org.apache.jetspeed.profiler.impl.JetspeedProfilerImpl" init-method="init">
        <constructor-arg index="0">
            <value>JETSPEED-INF/ojb/profiler_repository.xml</value>
        </constructor-arg>
        <constructor-arg index="1">
            <value>j2</value>
        </constructor-arg>                
        ....

[Hostname Profiling Rule Configuration] ホスト名を使ったプロファイリングルールの設定

There is an option for hostnames to use the entire hostname or a prefix. This is configured in the Spring configuration file profiler.xml.

ホスト名全体か先頭の一部を使ったホスト名のオプションが存在します。これは Spring の設定ファイルである profiler.xml で設定されます。

                                
    <bean id='HostnameCriterionResolver' class='org.apache.jetspeed.profiler.rules.impl.HostnameCriterionResolver'>
      <!--  use the dot prefix, for ex: "accounting.xyz.com" returns "accounting" -->
      <constructor-arg type="boolean" index="0">
            <value>false</value> 
        </constructor-arg>    	
    </bean>                    

            
                                
    <bean id='HostnameCriterionResolver' class='org.apache.jetspeed.profiler.rules.impl.HostnameCriterionResolver'>
      <!--  ドットの前の部分を使う。例えば、"accounting.xyz.com" を与えると "accounting" を返す。 -->
      <constructor-arg type="boolean" index="0">
            <value>false</value> 
        </constructor-arg>    	
    </bean>                    

            

By settting the prefix boolean argument to true, the hostname resolve will only look at the prefix of the hostname. For example, with the dot prefix flag set to true, a hostname of "accounting.xyz.com" returns "accounting".

prefix の真偽値設定を true に設定することにより、ホスト名の先頭部分だけを返します。例えば、prefix フラグを true に設定すると、"accounting.xyz.com" というホスト名を与えると "accounting" を返します。

[Administering Subsites with the User Manager] ユーザマネージャを使ったサブサイトの管理

When creating a new user from User Manager Administration, you can specify two fields to enable and configure subsite behavior for that new user:

ユーザ管理から新しいユーザを作成するとき、その新しいユーザに対してサブサイトを設定し、有功にするように、2 項目を指定することが出来ます。

  • Profiling Rule: choose a profiling rule to assign to the new user that has built in subsite support such as the example used in this document: subsite-by-hostname.
  • Subsites: from the dropdown select the subsite to assign as the home subsite to the new user, or leave blank to use default /_user home.
  • プロファイリングルール: 新しいユーザに、この文書の ホストネームによるサブサイト で使われた例のような、サブサイトのサポートを組み込んだプロファイリングルールの割り当てを選択する。
  • Subsites: ドロップダウンリストから、新しいユーザに割り当てるサブサイトを選択する。もしくはブランクにして、デフォルトの /_user ホームを使う。

When using the subsite-by-hostname profiling rule, make sure to select a subsite from the subsites drop-down, as these two attributes work together. The rule is the instructions on where to look for home pages, and the subsite selection tells the profiling rule which subsite will hold this user directory

subsite-by-hostname プロファイリングルールを使うとき、これらの二つの属性が連携するように、subsite ドロップダウンリストからサブサイトを選んでください。ルールはホームページを探す時どこを探すのかの指示であり、サブサイトの選択はプロファイリングルールに、このユーザのディレクトリとなるサブサイトを指示します。

Subsite management can also be delegated to managers of particular subsites. For example, you may want to setup User Manager Administration pages for each subsite. By modifying the deployment descriptor for the j2-admin application, each User Manager details portlet can be configured with a different default subsite:

サブサイトの管理は、特定のサブサイトのマネージャに権限を移譲することも出来ます。例えば、それぞれのサブサイトごとにユーザ管理ページをセットアップしたいことがあるかもしれません。j2-admin アプリケーションの配備記述子を変更することにより、それぞれのユーザ管理ポートレットで設定を行い、異なるデフォルトサブサイトを設定することが可能です。

[Administering Subsites with User Registration] ユーザ登録時のサブサイトの管理

When creating a new user from the User Registration portlet, you can specify two fields to enable and configure subsite behavior for that new user:

ユーザ登録ポートレットから新しいユーザを登録する時、この新しいユーザに対するサブサイトを有効にし、ふるまいを設定するために 2 つの項目を指定出来ます。

  • rulesValues: choose a profiling rule to assign to the new user that has built in subsite support such as the example used in this document: subsite-by-hostname.
  • subsiteRootFolder: the full path to one unique subsite root folder.
  • rulesValues: 新しいユーザに、この文書の ホストネームによるサブサイト で使われた例のような、サブサイトのサポートを組み込んだプロファイリングルールの割り当てを選択する。
  • subsiteRootFolder: 特定のサブサイトのルートフォルダのフルパス。

NOTE: the User Registration portlet will store these preference values on a per user basis. Usually this means the preferences are stored for the administrative user only. If you will have administrators registering users, then this approach works fine. However, with self-registration portal, you will need to set these values in the defaults for the portlet. The defaults are usually set in the portlet.xml, for example:

注意: ユーザ登録ポートレットは、これらの設定値をユーザごとに保存します。通常、この設定は管理ユーザのみ保存されます。もし、管理者がユーザを登録する場合、このアプローチは適切に働きます。しかし、自己登録 ポータルでは、これらの値はポートレットに対するデフォルト値を設定する必要があるでしょう。例えば、デフォルト値は通常、portlet.xml ファイル内で設定されます。

                
...
        <preference>
     		<name>subsiteRootFolder</name>
            <value>/__subsite-root/_hostname/localhost</value>   
        </preference>        
        <preference>
     		<name>rulesNames</name>
            <value>page</value>   
        </preference>        
        <preference>
     		<name>rulesValues</name>
            <value>subsite-by-hostname</value>   
        </preference>        
...

                
...
        <preference>
     		<name>subsiteRootFolder</name>
            <value>/__subsite-root/_hostname/localhost</value>   
        </preference>        
        <preference>
     		<name>rulesNames</name>
            <value>page</value>   
        </preference>        
        <preference>
     		<name>rulesValues</name>
            <value>subsite-by-hostname</value>   
        </preference>        
...

You can also set defaults on a per page (PSML) intermediate level:

ページ (PSML) ごとにデフォルト値を設定することも可能です。

                
    <fragment id="example-subsite-1" type="portlet" name="j2-admin::UserRegistrationPortlet">
      <preference name="subsiteRootFolder">
        <value>/__subsite-root/_hostname/localhost</value>
      </preference>
      <preference name="rulesNames">
        <value>page</value>
      </preference>
      <preference name="rulesValues">
        <value>subsite-by-hostname</value>
      </preference>      
    </fragment>

                
    <fragment id="example-subsite-1" type="portlet" name="j2-admin::UserRegistrationPortlet">
      <preference name="subsiteRootFolder">
        <value>/__subsite-root/_hostname/localhost</value>
      </preference>
      <preference name="rulesNames">
        <value>page</value>
      </preference>
      <preference name="rulesValues">
        <value>subsite-by-hostname</value>
      </preference>      
    </fragment>