S2Portlet..

今週あたりには、1.0.3 をリリースしておこうかな。S2JCR も作業しようと思いつつ、時間がとれていない・・・。JCR に興味があれば、ぜひ、これを検討してみてくださいませ♪

Hotdeployをポートレットで

S2PortletにHotdeployPortletFilterを加えておきました。これでポートレットで使えるようにあると思うのだけど、いまいち、動きが怪しいところがある。Teeda で、

<h:outputText value="#{action_sayHelloPage.name}"
styleClass="portlet-font" />

と言った感じでSayHelloPageビーンのnameを取得しようとしているのだけど、Hotdeployのときには読みに行かない(つまり、何も表示されない)。しかし、COOLに切り替えると期待通りの動きになる。Hotdeploy的には、

<h:commandLink action="#{action_sayHelloAction.doBack}"
value="#{msgs['sayhello.Back']}" styleClass="portlet-form-button" />

っで、SayHelloActionビーンのdoBackとかは普通にHotdeployとCoolも期待通りに動いているので、そこら辺は動いているような気はする。S2PortletのHotdeployPortletFilterは特殊なことはしていないから、Teedaのところを見る必要があるのかね・・・。

document.write問題の解決策はないのか

今のところ、解決策が思いつかないので、とりあえず、Steveにもふっておく。まぁ、引き続き調査は必要だけど、何か解決策を持っているかもしれないしね。出した内容は以下のような感じ。

I encountered JavaScript issue(I think that Tomahawk
components have this issue..).
If portlet returns the following content, J2Desktop
extracts <script>...</script> and then performs it
by eval().
--- BEGIN CONTENT ---
Text 1
<script>
document.write("Text 2");
</script>
Text 3
--- END CONTENT ---
But, in this case, the result will be:
--- BEGIN CONTENT ---
Text 1
Text 3
--- END CONTENT ---
Hmm, I wonder if we can put "Text 2" between "Text 1"
and "Text 3".. Do you have any solutions?

問題をまとめておくと、AjaxでHTMLコンテンツを取得して、それを表示するときにscriptタグでdocument.writeとかされているときには、どう処理すればよいのだろう、と言った感じ。どうすんだろ?dojoもこれに対応しているようには見えない気がするし・・・。アイディア募集中(^^;