マネージド Bean JSF 2.0 でのプロパティの使用について問題があります。
display.xhtml
<p:commandButton value="Show" actionListener="#{ABean.ajaxShow}" update="info" /> <p:commandButton value="Hide" actionListener="#{ABean.ajaxHide}" update="info" /> <p:outputPanel id="info"> <p:fieldset rendered="#{ABean.show}"> Info </p:fieldset> </p:outputPanel>
ABean.java
@Named("ABean")
public class ABean {プライベートブールショー;
public void ajaxShow() { show = true; } public void ajaxHide() { show = false; } //getter setter
}
このプロジェクトは、春のセキュリティ 3.1.2 をセットアップし、ユーザー システムを管理します。
2人のユーザーがログインしてこのページを開くと、1人のユーザーが表示ボタンをクリックすると、「情報」が表示されます。したがって、ユーザー 2 がこのページにアクセスすると、情報が表示されます。ユーザー 2 が [非表示] ボタンをクリックすると、情報が非表示になります。ユーザー 1 がアクセスしたこのページを更新します。情報は非表示です。
それは奇妙だ。ユーザー2のページでユーザー2が原因ではなく、ユーザー1がボタンをクリックしたときに、ページユーザー1が情報状態を変更する(表示/非表示)だけが必要です。
2 人のユーザーの 2 つのセッションが 1 つのマネージド Bean インスタンスしか使用しないために発生すると思います。この場合どうすればいいですか?解決するのを手伝ってください、ありがとう!
PS: ABean に @SessionScoped、@ViewScoped、@RequestScoped を追加しようとしましたが、何も変わりません。