JES: Creating multi-lingual Portal Desktop on Java ES Portal Server

社内向けの部署のホームページをリニューアルしようという話があり、せっかくだから Sun Java System Portal Server を使ってみることにしました。以前に紹介したメールアーカイブのシステムInstant Messaging Server もカレンダーももともとは部署のホームページを提供しているサーバーにインストールしてあって部署の人には使ってもらっていたのですが、Java ES の 2005Q1 にアップグレードするときに Portal Server も一緒にインストールしてみました。これを部署のホームページのかわりにならないかといろいろ考えていたのですが…

コンテンツ
URL スクレーパーチャネルXML チャネル を使えばいろいろなコンテンツが集約できますし、ページ全体のデザインは気にせずコンテンツだけに集中できますよね。 ホームページの枠組みを提供する Portal Server と、コンテンツは切り離して考えられますから更新する人が見えるところにファイルを置いてあげてればよいですよね。単にファイルを変更するだけの作業になります。面倒なファイル転送なんてしなくてすみます。

英語と日本語の切り替え
このホームページのもうひとつ重要な点として同じページを日本語と英語で提供するということでした。日本語のページは日本の社内向け、日本以外の社内向け には英語のページを提供する必要がありました。これも Portal Server では簡単に実現できそうです。Portal Server では以前紹介したように ConditionalProperties というのがあり言語ごとにリソースを切り替えることができます。

次のディスプレイプロファイルを見てください。TripInfoChannel と名付けました。このチャネルではユーザーのブラウザの設定言語が日本語の時には http://contents:8080/docs/ja/trip_info.html のコンテンツを、英語の時は http://contents:8080/docs/en/trip_info.html のコンテンツを取得して表示します。チャネルのタイトルも英語の時は「Trip Info」、日本語の時は「出張情報」になります。

        <Channel name="TripInfoChannel" provider="URLScraperProvider" merge="replace">
            <Properties>
                <ConditionalProperties condition="client" value="HTML">
                    <ConditionalProperties condition="locale" value="en">
                        <String name="url" value="http://contents:8080/docs/en/trip_info.html"/>
                    </ConditionalProperties>
                    <ConditionalProperties condition="locale" value="ja">
                        <String name="url" value="http://contents:8080/docs/ja/trip_info.html"/>
                    </ConditionalProperties>
               </ConditionalProperties>
               <ConditionalProperties condition="locale" value="ja">
                    <String name="title" value="出張情報"/>
                </ConditionalProperties>
                <ConditionalProperties condition="locale" value="en">
                    <String name="title" value="Trip Info"/>
                </ConditionalProperties>
            </Properties>
        </Channel>

これらのチャネルやタブコンテナを authlessanonymous ユーザー (portal/dt にアクセスしたときに表示されるまだログインしていない状態のページ)に対して作ってあげればうまくいきそうです。authlessanonymous ユーザーは自身では言語の設定を持たないように設定しておけばアクセスした人のブラウザの言語設定で表示が自動的に切り替わるはずです!

(なぜか続く…)
Comments:

Will be great if you can blog in english, I have seen very few blogs about JES and sun software (I think you are the only one), will be interesting to know what Sun is doing internally. Hope you can do it.

Posted by guest on October 20, 2005 at 12:42 AM JST #

Thank you very much for the suggestion. Sure, I'll try if the topic is not specific to Japanese.

Posted by Masaki Katakai on October 20, 2005 at 06:54 AM JST #

Post a Comment:
Comments are closed for this entry.
About

NetBeans Globalization

Search

Archives
« April 2014
SunMonTueWedThuFriSat
  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
Today