第一步,当然是要将JSF的jar档放对位置...
然后,修改web.xml,请注意,如果web.xml的格式为 version="2.4" 的话,是不需要显示指定taglib使用的tld文件的...我们只需要增加与JSF Servlet相关的定义:
然后,在/WEB-INF下面新增faces-config.xml,内容如下:
完成上面的步骤后,JSF并不会自动启动起来,我们需要一个jsp来启动JSF...index.jsp代码如下:
开始运行...发现遇到一个很晕的错误...就是:
原来,JSF还依赖于JSTL啊~~~也不见JSF文档中有提啊...郁闷,加入JSTL的jstl.jar和standard.jar后就一切OK了!
目录/文件 | 说明 |
---|---|
Tutorial | 工程目录 |
/ant | ANT 脚本目录,默认为 build.xml |
/src | Java 源文件, .properties 文件所在目录。 |
/public_html | JSP/JSF 等动态网页所在目录。 |
/WEB-INF | WEB应用运行时的配置文件、类库等,相对浏览器来说不可见。 |
/classes | Java源文件编译后的输出目录。 |
/lib | 项目所依赖的类库。 |
jsf-impl.jar jsf-api.jar | JSF 1.1 的类库,当然还有一些Jakarta Common类库的jar档! |
web.xml | WEB应用部署的配置文件 |
faces-config.xml | JSF配置文件 |
pages | JSP、JSF和HTML |
然后,修改web.xml,请注意,如果web.xml的格式为 version="2.4" 的话,是不需要显示指定taglib使用的tld文件的...我们只需要增加与JSF Servlet相关的定义:
J2EE Tutorial Project Tutorial 30 Faces Servlet javax.faces.webapp.FacesServlet 1 Faces Servlet *.faces index.jsp |
然后,在/WEB-INF下面新增faces-config.xml,内容如下:
userBean tutorial.beans.UserBean request username java.lang.String Shark Wang /pages/login.jsp greeting /pages/greeting.jsp |
完成上面的步骤后,JSF并不会自动启动起来,我们需要一个jsp来启动JSF...index.jsp代码如下:
<%@page pageEncoding="UTF-8"%> /pages/login.faces" /> |
开始运行...发现遇到一个很晕的错误...就是:
ApplicationDispatcher[/Tutorial]: Servlet.service() for servlet Faces Servlet threw exception java.lang.NoClassDefFoundError: javax/servlet/jsp/jstl/core/Config at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:140) at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:87) at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:200) at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:117) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:198) |
原来,JSF还依赖于JSTL啊~~~也不见JSF文档中有提啊...郁闷,加入JSTL的jstl.jar和standard.jar后就一切OK了!