JSF文件在web.xml中启动异常

首先讲解web.xml

(1)其他地方没有什么要说的重要的是这里,如果你在xml中不加下面这一个监听

 
 
 
  1. com.sun.faces.config.ConfigureListener

就会出现 如下异常:
严重: StandardWrapper.Throwablejava.lang.NullPointerException at javax.faces.webapp.FacesServlet

(2)JSF运行时出现javax.servlet.jsp.JspException: Cannot find FacesContext

出现这种情况时,有三种解决方案:

1.当你的首页文件是命名为index.jsp,在这个文件里用到JSF.即该文件属于JSF文件.在J2EE里默认的启动文件是:index.jsp文件.因此,当启动程序时,会对该文件进行一些操作,可是JSF文件已在faces-config.xml时已映射为*.faces或*.jsf了.那么程序就会抛出javax.servlet.jsp.JspException: Cannot find FacesContext错误.但程序仍然可以运行的.

解决方法:在web.xml文件里加入或者修改成这样:

 
 
 
  1.    index.faces
  2.  

这该项的welcome-file内容改成index.faces就没事了.

2.将index.jsp这个JSF文件改成home.jsp,然后,新建一个index.jsp文件,内容如下:

 
 
 
  1.  
  2.  page="home.faces" />

3.将index.jsp这个JSF文件直接改成home.jsp,即不为welcome-file文件.启动时不会有任何错误的.当然你的 index.jsp不能为JSF文件.因为直接调用JSF页面而不是使用Faces Servlet映射.就会出错.

web.xml配置文件:

 
 
 
  1.  version="1.0" encoding="UTF-8"?>
  2.  xmlns="http://java.sun.com/xml/ns/j2ee"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4"
  4. xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee   
    http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
  5. JSF Demo
  6. JSF Demo
  7.    javax.faces.CONFIG_FILES
  8.    /WEB-INF/faces-config.xml
  9.    FacesServlet
  10.    javax.faces.webapp.FacesServlet
  11.    1
  12.    FacesServlet
  13.    *.faces
  14.    com.sun.faces.config.ConfigureListener
  15.    index.jsp
  16. faces-config.xml配置文件
  17.  version="1.0" encoding="UTF-8"?>
  18. //DTD JavaServer Faces Config 1.1//EN" 
    "http://java.sun.com/dtd/web-facesconfig_1_1.dtd">
  19.    /home.jsp
  20.    
  21.     login
  22.     /welcome.jsp
  23.    
  24.    
  25.     fial
  26.     /home.jsp
  27.    
  28.    user
  29.    com.UserBean
  30.    session

本文题目:JSF文件在web.xml中启动异常
转载来源:http://www.shufengxianlan.com/qtweb/news17/337217.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联