【发布时间】:2012-02-22 04:16:13
【问题描述】:
我正在 Netbeans 7.0 上使用 JSF 开发一个 Web 应用程序。我创建了 2 个页面:一个用于输入人员姓名,另一个用于显示该姓名。我正在使用带有 get 和 set 方法的 java bean。
当我在代码的第一页提交表单时出现错误。
这是我第一页index.xhtml接受姓名:
<h:form>
Enter your Name : <h:inputText value="#{demoBean.name}" required="true"/>
<br/> <h:commandButton value="Submit" action="welcome.xhtml"/>
</h:form>
这是显示名称的另一个页面welcome.xhtml:
<h:body>
Hello #{demoBean.name}
</h:body>
这是托管 bean demoBean.java:
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
@ManagedBean()
@SessionScoped
public class demoBean {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
这是我提交第一页时遇到的错误:
/index.xhtml @10,86 value="#{demoBean.name}": 目标不可达,标识符'demoBean'
解决为空
【问题讨论】:
-
请添加您的 faces-config.xml
-
@Kushan 我该怎么做?
-
opps,你必须在 faces-config.xml 中定义你的 bean,否则你可以使用 bean 注释
-
我使用了。@ManagedBean() 和@SessionScoped 注释。我还需要添加什么吗?
-
请添加完整的 jsf 页面和 bean 编码