I18n

<I18n>Jetspeedのドキュメント書き作業をちょっとはじめたところで、Randy から breadcrumb に関して、質問が来た。パスの先頭部分には、”You are here:” を置くけどどう?みたいな感じだった。devのメーリングリストでコメントしたから、また、いろいろとコメントされると面倒だから、直接聞いてきたのかも(^_^;) というわけで、また、いろいろとコメントを返す・・・。別に私も日本語だけのことを考えているわけではないから、各言語で各言語なりの問題があるから、それを英語圏の人に認識してもらうのも大切なことだと思う。”You are here:” も日本語に「あなたはここにいます」などとそのまま訳して、表示するのも不自然だしね。そんな感じでコメントを返していたら、ドキュメントを書く時間がなくなった・・・。

<MyFaces>また、実装に不満があるので、コメント・・・。MyFacesGenericPortlet だけで、これもどうしたものかといった感じだ。DefaultViewSelector でモード変更に対応できると思ったけど、持っているパラメータがなぜか PortletContext・・・。これをつかってどうするのだろうか・・・。PortletContextだと、portlet.xml から初期値がとれなくないかね・・・。web.xml から取ってくるのだと思う。とすると、1つのwarポートレットアプリケーションに1つのポートレットで共有して使うものしか、定義できないんじゃないか?単純なものなら、それでいいのかもしれないけど、普通は違うのではないかね。という感じで、なぜ、PortletConfig を渡さずに PortletContextを渡しているのかがいまいち不明・・・。こういう問題があるので、仕方がなく、このクラスをextendしてやろうかと思ったら、今度は、private でバシバシ制限されていて、拡張できん。というわけで、そのクラスをコピーして、別のクラスパスに新たなMyFacesGenericPortletを作成。DefaultViewSelector には、PortletConfig を渡すようにも変更した。うーん、MyFaces は、一歩先をあまり考えて作られていないような気が・・・。

Jetspeed

<Jetspeed>現在、MyFaces を利用して、ポートレット内に表示するコンテンツを表示・編集できるポートレットを作成中。一応、JSF でのポートレットの学習も兼ねる。保存する場所は、ファイルに出すのもいいかと思ったけど、ポートレットなので、PortletPreferenceに出してみることにする。基本的に部分は動いているように思う。でも、昨日調べたDefaultViewSelectorでモードの切り替えがうまく動いていないように見える。はて、なぜだろうか・・・。

<スパム>最近は、スパムが増えている・・・。一日に100通くらいは来ている気がする。まぁ、Thunderbird がほとんどスパムとして判断して、振り分けるのでちらっと件名を見てすてるだけだけど。

<テレビ>テレビ放送がインターネット配信もするそうな。でも、地域によって、制限するとある。どうやってするのだろうか。でも、これって無料なのだろうか。現在、住んでいるところが電波が悪い地域で、ケーブルテレビ経由で、受信している。というわけで、月500円くらい払っている。インターネット経由で無料で見れるなら、それを利用するんだけどね。

MyFaces

<MyFaces>あいかわらず、MyFacesを使うポートレットを考える。とりあえず、Jetspeed2側の準備は(たぶん)完璧なので、残るは、MyFacesGenericPortlet を拡張する作業。っで、ポートレットモードで見に行くJSPファイルを変えたいので、http://wiki.apache.org/myfaces/UsingPortletModes を参考にしてみる。がしかし、この情報はどうも古いっぽい・・・。nonFacesRequest(request, response, “/MainEditPage.jsp”);を処理するメソッドはないし・・・。というわけで、ソースコードも見てみる。すると、どうやら、JSPのですパッチ作業は、別途クラスを作って、それでやるみたい。つまり、DefaultViewSelectorインターフェースを実装するべしということだ。うーん、面倒・・・。普通に、init で指定すれば、portlet.xmlで持ってこれるから、それでいいじゃん・・・。何で、別途クラスを作ってまでして、こんなことをするのだろうか・・・。いまいち、どういうことを期待しているのかがわからん。

ついでに、この前思ったのだが、AddResource についても不満を・・・。個人的には、このクラスの作りは、いけていないと思う。だって、このクラスを拡張しようがないんだよね。つまり、フィルタ以外でのソリューションを作るときに全く考えていない。しかも、スタイルシートやJavaScriptを追加するときに各コンポーネントは、こいつを呼ぶし。インターフェースとかになっていて、差し替え可能とかならわかるが、何ともしようがない・・・。という感じで、個人的なこの作りに対する評価は「がんばりましょう」という感じだろうか。っていうか、このだめな作りのせいで、MyFaces コンポーネントを Jetspeed2 で使うときには、RequestとResponse をラップして、AddResource に渡してやるという、面倒なことをせにゃならん。そうしないと、<head> に入れるタグが得られん。普通のアプリケーションのようにweb.xmlでフィルタにしても良いけど、Jetspeed はポータルサーバーだから、全く、MyFaces コンポーネントを使っていないときにも、このフィルタに処理がわたるのも気持ち悪いし。なんだかね・・・。バグとしてあげた方がよいのかもしれないな・・・。時間があるときにでも考えよ・・・。