sessionScopedマネージド Bean を別のマネージド Bean から開く際に問題があります。オブジェクトのリストを含むテーブルを持つページがあります。行をクリックすると、別のページに移動してその内容を表示しています。sessionMapクリックした行をobject または byで送信していますFlash。オブジェクトが送信され、別のページで読み込まれ、データが表示されます。他のページでは、メソッドでsessionMaporを受け取っています。Flash@PostConstruct
戻って別のオブジェクトを開くと、最初のオブジェクトが開きます。問題は、それがsessionScopedBean であるため、2 番目に開いたオブジェクトでは@PostConstruct. sessionScopedでは、新しい値を読み取って別のセッションを開くように強制するための解決策は何ですか? または、リスナーではなくオブジェクトをどのように読み取ることができます@PostConstructか?
page1.java
@ManagedBean
@SessionScoped
class pageBean{
MyObject myObj;
public String save(){FacesContext.getCurrentInstance().getExternalContext().getSessionMap().put(myObj,"obj");
}
}
@ManagedBean
@SessionScoped
class pageBean{
@PostConstruct
public void init()
MyObject = (MyObject)FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("obj");
}