Teeda Extension for Portlet

ポートレット対応が一段落したので、次に開発環境をどうしようかなっと言う感じだけど、どうしようかな・・・。簡単に作れるなら、作りたいところだけど、PortletConfig#getInitParameterやPortletPreferences を呼び出さないようにポートレットを作るなら、わざわざポートレット用の開発環境を作る必要はないのだよね・・・。サーブレット同様に普通に開発してもらって、それをポータルに配備すれば、ポートレットとして動いてしまうわけで(そのくらい高いレベルのポートレット対応のはず。動かなければバグかと)。というわけで、現在の選択肢は、

  • Plutoなどのポータルサーバーとうまく連携するような開発環境をつくる。(作業量はかなり多い気が)
  • サーブレットフィルターみたいのを作って、ServletRequestをServletRequest+PortletRequestになるようにラップして、PortletPreferencesなどをエミュレートするような開発環境用のフィルタを作る。ポートレットして実運用するときにはそのフィルタをはずす。(作業量は現実的かも)
  • 開発スタイルをPortletConfig#getInitParameterやPortletPreferencesを使わないように変える。(作業量なし)

という感じで、まずは、Pluto を簡単に組み込んだりできるのかを見てみようかとは思うけど(でも、できるなら既にいろいろと存在しててもいい気がするな・・・)、2番目の案が一番現実的な気もするな・・・。

Teeda Extention for Portlet

コミット完了。作業は一段落したと思う。細かい問題があれば、その都度、修正していこう。あとで、teeda-html-example に portlet.xml を追加して、web.xml にコメントを追加しておけば、ポートレットとして、試せるものになるかな。まぁ、ポートレットとしてteeda-html-exampleを試すには、各デモで一覧に戻るリンクが欲しいところだけど。現在ないのでポートレットで表示しているとAdd2とか行って戻ってこれないのが難。まぁ、結構、動いて見るみたい(newwindowの扱いはどうしたらいいのか迷うところなのだが。現在は無視している)。

お、重要なことを言い忘れるところだった。今回の修正で、FacesPortletも一段と磨き上げました。つまり、ライバルたち(MyFaces、java.netのjsfbridge、Apache Portalsのjsf bridge)と比べて、一歩進んでいる感じかと。というわけで、ポートレットの対応としては、かなりハイレベルなものになっていると思っています。今後もNo1の地位をキープしていくためにも、ポートレット的なところで問題や提案など大歓迎ですので、何かありましたら、お知らせくださいませ。

さて、今日はもう寝よ・・・。