我目前正在將項目從JBoss 4.2.2遷移到JBoss 6.0.0,並且我還添加了CDI的依賴注入以及從JSF 1.2遷移到JSF 2.0。我添加了一個beans.xml文件到ejb-package以及war-package。@Named的行爲不同於@ManagedBean
現在我有一個使用託管bean LoginBean.java
的xhtml頁面。豆已在faces-config.xml中已配置是這樣的:
<managed-bean>
<description>Sample description</description>
<managed-bean-name>loginBean</managed-bean-name>
<managed-bean-class>com.sample.managedbeans.LoginBean</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
</managed-bean>
因此,在第一予除去上述結構,並加入到@ManagedBean @SessionScoped
類本身。因爲我想將CDI添加到項目中,所以我將@ManagedBean
更改爲@Named
(與question 2930889相關)。
現在,當我提交的相應的XHTML的形式,字段用戶名和密碼(在JSP用作#{loginBean.username}
)都爲空。當我改回@ManagedBean
時,它工作正常。
我失去了一些東西在這裏?
親切的問候, 塞巴斯蒂安
聖牛。這很討厭。還沒有嘗試過,但你是對的。使用錯誤的名稱空間。 –