【问题标题】:JSF 2.1 Annotated ManagedBean not getting created未创建 JSF 2.1 带注释的 ManagedBean
【发布时间】:2013-06-03 07:13:42
【问题描述】:

我有一个简单的 JSF 项目,它有一个 xhtml 页面,该页面使用一个配置了 Annotation 的托管 bean。

@ManagedBean
@SessionScoped
public class Authorization implements Serializable {
    private String greetings = "Hello World!";
    public String getGreetings() { return greetings; }
}

我正在尝试使用以下 EL 从 xhtml 访问此 bean:

<p:outputText value="#{authorization.greetings}" />

我还在使用 java 日志 API 登录 Authorization 类,只是为了查看是否发生了任何事情。即使登录 Authorization 构造函数,也不会生成任何消息,abd outputText 什么也没有显示。这就像豆子甚至不存在一样。我没有例外,但也没有输出。但是,如果我配置 bean frm faces-config 它正在工作。我的问题是,为什么不用注释?

P.S.:我使用的是 Apache Tomcat。

【问题讨论】:

    标签: jsf-2


    【解决方案1】:

    你的 bean 没有正确命名:

    Authoriztaion
    

    应该换成

    Authorization
    

    编辑:

    正如评论,问题与错误的ManagedBean 导入有关。应该使用这个:

    import javax.faces.bean.ManagedBean;
    

    【讨论】:

    • 啊这只是在这里打错了,而不是在项目中。 :-/
    • 你重新编译重新部署了吗?
    • 是的,我重新编译并重新部署了数十次代码。我已经更正了原帖中的错字。
    • 你是否导入了正确的ManagedBean类即:import javax.faces.bean.ManagedBean;
    • 是的,这就是问题所在......我有一些注释导入而不是这个。我试图在别处寻找问题。非常感谢您的帮助!
    猜你喜欢
    • 1970-01-01
    • 2012-05-23
    • 2011-04-12
    • 1970-01-01
    • 1970-01-01
    • 2011-10-03
    • 2012-12-18
    • 2015-11-12
    相关资源
    最近更新 更多