2011-04-01から1ヶ月間の記事一覧

JSFで会話スコープを終わらせつつ自画面に遷移

若干はまったのでメモ。あるBeanの会話スコープを終わらせるにはConversation#end()を呼ぶわけですが、このメソッドを呼んだからと言ってプロパティが初期化されたりはしません。当たり前と言えば当たり前ですが。このことが若干問題になることがあります。 …

プリミティブ型は抽象型?

System.out.println(Modifier.isAbstract(int.class.getModifiers())); の結果は"true"。知らんかった。他にも System.out.println(Modifier.isAbstract(String[].class.getModifiers())) System.out.println(Modifier.isAbstract(Serializable.class.getMod…

会話スコープとAjax

Converasationオブジェクトによる手動スコープ制御を実現する会話スコープ(@ConversationScoped)。 タブブラウザにも対処できる優れものなんですが、制約があります。それは、URLに特定のクエリパラメータを含めないと会話スコープが有効にならないという…

JSFを拡張子htmlで動くようにする

これまでJSFの動作対象URLを「拡張子xhtml」にしていたのですが「html」で動くようにしたい。 ついでに、xhtmlへの直接アクセスを禁止したい。というわけでちょっと手を加えました。 web.xml FacesServletが動作対象とするservlet-mappingを書き換えます。旧…

JSFのAjaxで外のh:formを再描画する

JSFのf:ajaxで、f:ajaxが囲まれているh:formを再描画するときは <f:ajax render="@form"/> のように書けます。 のように書けます。もちろん、h:formのidを書いても構わないけど、こっちの方が変更に強いです。さてf:ajaxを囲んでいないh:formを再描画するときは? このときは <f:ajax render=":form1"/> のよう</f:ajax></f:ajax>…