Java 在JSF2.2.1中,支持bean不能绑定到xhtml页面
我正在尝试开发一个简单的JSF2.2.1应用程序。我浏览了一些页面,找到了一些示例应用程序。我想试试那些样品中的一个。我设置每个依赖项和注释;但是,支持bean不起作用。我想做的是在Jsf页面上通过bean显示一些文本字段,并呈现一些输入文本。Jsf标记工作正常,但是bean值没有显示在页面上。在页面中,我有一个输入文本区域和一个命令按钮。这些组件显示在页面上,但我输入了一些文本并按下命令按钮,我遇到了以下问题。我正在使用“mvn clean package”构建应用程序,然后将其部署到Tomcat 7.x上 错误:Java 在JSF2.2.1中,支持bean不能绑定到xhtml页面,java,maven-2,jsf-2.2,Java,Maven 2,Jsf 2.2,我正在尝试开发一个简单的JSF2.2.1应用程序。我浏览了一些页面,找到了一些示例应用程序。我想试试那些样品中的一个。我设置每个依赖项和注释;但是,支持bean不起作用。我想做的是在Jsf页面上通过bean显示一些文本字段,并呈现一些输入文本。Jsf标记工作正常,但是bean值没有显示在页面上。在页面中,我有一个输入文本区域和一个命令按钮。这些组件显示在页面上,但我输入了一些文本并按下命令按钮,我遇到了以下问题。我正在使用“mvn clean package”构建应用程序,然后将其部署到Tomc
serverError: class javax.el.PropertyNotFoundException Target Unreachable, identifier 'helloWorld' resolved to null
在下面我分享我的所有文件
web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_ID" version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<display-name>helloworld</display-name>
<welcome-file-list>
<welcome-file>home.xhtml</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.xhtml</url-pattern>
</servlet-mapping>
<context-param>
<param-name>javax.faces.PROJECT_STAGE</param-name>
<param-value>Development</param-value>
</context-param>
Service.java:
import javax.faces.bean.ApplicationScoped;
import javax.faces.bean.ManagedBean;
@ManagedBean(name="demoService")
@ApplicationScoped
public class Service {
public String reverse(String name) {
return new StringBuffer(name).reverse().toString().toLowerCase();
}
}
我的文件中到底缺少了什么?
PropertyNotFoundException
意味着支持bean中没有getter/setter
属性方法
HelloWorldBean.java
@ManagedBean(name="HelloWorldBean")
public calss HelloWorldBean {
private String getHelloWorld() {
return "Hello World!";
}
}
我的网页
<h:outputText value="#{HelloWorldBean.helloWorld}"/>
实际上,我已经为bean设置了getter/setter。然而,问题是我没有创建Java常规类,而是创建了一些不同的bean。非常感谢。我正在通过Maven命令构建我的应用程序,然后将其部署到Tomcat服务器上。这是一个复制和粘贴项目的负担。我是否可以在Eclipse中启用Tomcat7.x,以便在Eclipse IDE中运行应用程序?
@ManagedBean(name="HelloWorldBean")
public calss HelloWorldBean {
private String getHelloWorld() {
return "Hello World!";
}
}
<h:outputText value="#{HelloWorldBean.helloWorld}"/>