JSF简单实例及无法正常访问的解决方法(404和The markup in the document preceding the root element must be well-formed. )

原创 2013年12月05日 11:01:49

一、HTTP Status 404 - /JSFLoginDemo/userLogin.faces

去除如下红色配置即可正常访问:

<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.5" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <!--

此处所有代码都是在使用MyEclipse的Guide过程中产生的配置,所以要根据实际情况进行配置的设置。

<context-param> <param-name>javax.faces.DEFAULT_SUFFIX</param-name> <param-value>.jspx</param-value> </context-param>

--> <servlet> <servlet-name>Faces Servlet</servlet-name> <servlet-class>javax.faces.webapp.FacesServlet</servlet-class> <load-on-startup>0</load-on-startup> </servlet> <servlet-mapping> <servlet-name>Faces Servlet</servlet-name>

<!-- 所有的servlet的name为"FacesServlet"的页面都以*.faces访问 --> <url-pattern>*.faces</url-pattern> </servlet-mapping> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> </web-app>

这样通过“http://localhost:8080/JSFLoginDemo/userLogin.faces”访问到登录页面了。
注意,这里配置“Faces Servlet”的“url-pattern”为“*.faces”,所以访问包含JSF的JSP页面时,应该是“页面名称.faces”。
也就是说,直接访问/userLogin.jsp,若/userLogin.jsp中没有JSF代码一切正常,否则会报 Cannot find FacesContext 错误.。

二、error Traced[line: 1] The markup in the document preceding the root element must be well-formed.

因为所写的jsp文件不符合xhtml规则,命名空间不要在使用@包含:
<%@taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
<%@taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
<%@page contentType="text/html;charset=GB2312"%>
需要将对应的内容转换成Xhtml格式:

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://java.sun.com/jsf/html" xmlns:f="http://java.sun.com/jsf/core" xml:lang="en" lang="en"> <head> <title>Index</title> </head> <body> <f:view> .......//此处省略 </f:view> </body> </html>

三、org.apache.jasper.JasperException: /index.jsp(15,33) #{...} is not allowed in template text.

这样,页面就能正常运行了。

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

web页面报404的错误(HTTP Status 404 )

web页面报404的错误: 说明这个页面不存在。     导致的原因有:                 ...

org.xml.sax.SAXParseException: The markup in the document following the root element must be well-fo

部署项目报错:org.xml.sax.SAXParseException: The markup in the document following the root element must be ...
  • tjcyjd
  • tjcyjd
  • 2012-04-24 14:56
  • 61087

编写xml文件时,The markup in the document preceding the root element must be well-formed.等bug

今天写dtd,xml文件时,连续报bug。 The markup in the document preceding the root element must be well-formed. 错...

spring配置文件报错:the markup in the document preceding the root element must be well-formed

问题:spring the markup in the document preceding the root element must be well-formed

The content of elements must consist of well-formed character data or markup

java 中使用dom4j解析含有特殊字符的xml文件出现了如题的错误 这个时候需要在特殊字符外面加上 [html] view plaincopy x...

【Android】Android开发之XML文件Element XXXX must be declared的解决方法

作者:程序员小冰 (转载请说明出处)博客地址:http://blog.csdn.net/qq_21376985长期维护的Android项目,里面包括常用功能实现,以及知识点详解, 当然还有Java中的...

Ubuntu使用sudo命令出现must be setuid root错误的解决方法

Ubuntu使用sudo命令出现must be setuid root错误的解决方法今天不小心使用命令sudo chmod -R 777 /usr结果悲剧了,sudo命令失去了作用,报错:must b...

Error: This attribute must be localized. 解决方法

转自VC错误:http://www.vcerror.com/?p=1619 问题描述: 在使用mmm单独编译android应用程序时出现如下错误: mmm packages/apps/Boa...

which must be escaped when used within the value 问题解决方法

访问JSP时,报错:Attribute value is quoted with " which must be escaped when used within the value 。相信很多人都遇...

Python BeautifulSoup [解决方法] TypeError: list indices must be integers or slices, not str

在python的Beautiful Soup 4 扩展库的使用过程中出现了TypeError: list indices must be integers or slices, not str这个错误...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)