温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

JSF文件在web.xml中启动异常如何解决

发布时间:2021-07-14 11:53:07 阅读:197 作者:chen 栏目:编程语言
前端开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

这篇文章主要介绍“JSF文件在web.xml中启动异常如何解决”,在日常操作中,相信很多人在JSF文件在web.xml中启动异常如何解决问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”JSF文件在web.xml中启动异常如何解决”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

首先讲解web.xml

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

<listener> <listener-class>com.sun.faces.config.ConfigureListener</listener-class> </listener>

就会出现 如下异常:
严重: 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文件里加入或者修改成这样:

<welcome-file-list>    <welcome-file>index.faces</welcome-file>  </welcome-file-list>

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

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

<html> <head></head><body> <jsp:forward page="home.faces" /></body></html>


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

web.xml配置文件:

<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee   http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <display-name>JSF Demo</display-name> <description>JSF Demo</description> <context-param>    <param-name>javax.faces.CONFIG_FILES</param-name>    <param-value>/WEB-INF/faces-config.xml</param-value> </context-param> <servlet>    <servlet-name>FacesServlet</servlet-name>    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>    <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping>    <servlet-name>FacesServlet</servlet-name>    <url-pattern>*.faces</url-pattern> </servlet-mapping> <listener>    <listener-class>com.sun.faces.config.ConfigureListener</listener-class> </listener> <welcome-file-list>    <welcome-file>index.jsp</welcome-file> </welcome-file-list> </web-app> faces-config.xml配置文件  <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN" "http://java.sun.com/dtd/web-facesconfig_1_1.dtd"> <faces-config> <!-- 流程控制 --> <navigation-rule>    <from-view-id>/home.jsp</from-view-id>    <navigation-case>     <from-outcome>login</from-outcome>     <to-view-id>/welcome.jsp</to-view-id>    </navigation-case>    <navigation-case>     <from-outcome>fial</from-outcome>     <to-view-id>/home.jsp</to-view-id>    </navigation-case> </navigation-rule> <!-- 页面管理 --> <managed-bean>    <managed-bean-name>user</managed-bean-name>    <managed-bean-class>com.UserBean</managed-bean-class>    <managed-bean-scope>session</managed-bean-scope> </managed-bean> </faces-config> 

到此,关于“JSF文件在web.xml中启动异常如何解决”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI

开发者交流群×