范围注释是否覆盖了faces-config中的托管bean范围定义?

时间:2017-05-15 08:11:46

标签: jsf-2 annotations managed-bean faces-config

我将旧的JSF Web应用程序从MyFaces 1.1升级到MyFaces 2.2.12,主要使用Migrating from JSF 1.2 to JSF 2.0作为指南。

使用Migrating JSF 1.1 with Ajax4jsf 1.x to JSF 2作为另一个指南,我还尝试将a4j:keepAlive次出现替换为相应的bean添加@ViewScope注释。到目前为止,我们的应用程序中的bean通过faces-config.xml进行管理,其条目如下:

<managed-bean>
    <managed-bean-name>SomeBean</managed-bean-name>
    <managed-bean-class>org.some.package.SomeBean</managed-bean-class>
    <managed-bean-scope>session</managed-bean-scope>
</managed-bean>

我也尝试按照this这样的建议来尽可能多地替换faces-config.xml。但是当我添加像这样的bean和范围注释时

@ManagedBean
@ViewScoped
public class SomeBean () {
    ...

到我的bean类,然后在Web应用程序中遇到一个无关的错误,MyFaces错误调试页面向我显示SomeBean仍然是会话作用域,而不是视图作用域。

我还没有从managed-bean文件中删除相应的faces-config条目,所以我想知道该配置文件中的设置是否覆盖了Java文件中的任何相应注释。是这样的吗?

0 个答案:

没有答案