サーブレット フィルターから Facelets ページにメッセージを返しています。メッセージをサーブレット フィルターから Facelets ページに転送するために、セッション変数を使用しています。メッセージが表示された後、セッション変数を削除したいと思います。これはどのように達成できますか?また、サーブレットから Facelets にデータを渡す別の方法はありますか?
質問する
2524 次
1 に答える
5
のアフターフェーズ中に取り外しRENDER_RESPONSE
ます。これに使用できます<f:view afterPhase>
。
<f:view afterPhase="#{bean.removeSessionAttributeAfterRender}">
と
public void removeSessionAttributeAfterRender(PhaseEvent event) {
if (event.getPhaseId() == PhaseId.RENDER_RESPONSE) {
FacesContext.getCurrentInstance().getExternalContext()
.getSessionMap().remove("sessionAttributeName");
}
}
于 2012-07-06T12:43:48.600 に答える