セッションスコープバッキングビーンを持つxhtmlページがあります。今、新しいタブでこのページを開くには、新しいタブで右クリックしてリンクを開く必要があります。 このページを開くと、バッキングBeanのモデルクラスをクリアする必要があります。プライムフェイスの新しいタブにメニュー項目のページを開く
<p:menuitem value="Details" action="#{beanMB.clearDetailModel()}"/>
バッキングBeanコード: 私は、次のコードを使用している
public void clearDetailModel()
{
memberModel=null;
......
return "/pages/member/MemberDetails.xhtml?faces-redirect=true";
}
上記のコードは、セッションスコープのモデルをクリアするが、それは新しいタブでページを開きません。
上記のコードで新しいタブでページを開く方法はありますか?または上記の問題の代替方法はありますか。すべてのヘルプは高く評価されます。 ありがとうございます。
これはうまくいきませんでした。新しいタブで右クリック - オープンリンクでページを開く必要があります。関数clearDetailModel()は、直接的な左クリックでのみ呼び出されますが、右クリック - 新しいタブでのリンクを開くことでは呼び出されません。 – Kiran
ユースケースとは何ですか?新しいタブでページを開くときに、** sessioscope **モデルをクリアする必要がある場合は、設計上の欠陥があります。ビュースコープのビーン、または(cdiエクステンションベースの)ウィンドウスコープを導入する – Kukeltje
イメージをフォームに表示する必要があるため、セッションスコープを使用しました。セッションスコープがなければ、イメージは表示されません。 – Kiran