簡體   English   中英

JSF-訪問SessionScoped托管bean

[英]JSF - Accessing a SessionScoped managed bean

我是JSF的新手,並且正在做一些基本的事情來了解如何使用它。 在我的一個項目中,我有一個ManagedBean,SessionScoped,如下所示

@ManagedBean(name="user")
@SessionScoped
public class User implements Serializable
// Having a couple of String properties (with setters and getters).

現在,在表單的一頁中,我有一個<h:inputText id="firstName" value="#{user.firstName}" ... /> ,我希望可以從用戶那里得到一個值並將其放入我的豆的財產。 第二頁僅顯示輸入數據,可以從Bean訪問它。 <h:outputText value="${user.firstName}"/> )。

問題是,如果之后我進入第三頁(僅通過輸入URL),而我試圖使用同一行再次顯示Bean中的數據,則不會顯示任何數據。 我期望當bean在會話范圍內時,它應該在當前會話中仍然可用。

確保使用的是import javax.faces.bean.SessionScoped,而不是javax.enterprise ...;

也許有人對此仍然感興趣:我遇到了與上述相同的行為。 解決方案最終是通過@Named替換@ManagedBean。 到目前為止,我還沒有弄清楚@ManagedBean批注的語義。 因此,我無法解釋造成差異的原因。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM