"不在实体开头的XML或文本声明" jsp中的错误

时间:2014-08-01 13:14:58

标签: xml-parsing

我正在尝试使我的Web应用程序与多浏览器兼容。现有的IE在IE中完美运行。但是当我尝试在Mozilla Firefox中运行它时,我面临下面的问题。

XML Parsing Error: XML or text declaration not at start of entity
Location: localhost:8080/cdwweb/EC.do?_xsl=pages/ic_module.xsl
Line Number 3, Column 1:
<?xml version="1.0" encoding="UTF-8"?>
^

下面是我认为可能导致问题的代码,因为错误是从代码文件下面引发的,而不是上面提到的错误。

<%@ page language="java" import="java.util.*,org.apache.commons.lang.StringEscapeUtils" %>

<%
    response.setHeader("Pragma", "No-cache");

    response.setDateHeader("Expires", 0);

    response.setContentType("text/xml");

    String xslFileName = (String)request.getAttribute("_xsl");

    xslFileName = StringEscapeUtils.escapeHtml(xslFileName);

%>

<?xml version="1.0" encoding="UTF-8"?>

<?xml-stylesheet type="text/xsl" href="<%=xslFileName %>"?>

<root>

<dummy></dummy>

</root>

标记之前或之后没有空格。

伙计们,提前感谢你。

1 个答案:

答案 0 :(得分:0)

在XML声明之前不应该有空格

<?xml version="1.0" encoding="UTF-8"?>

因此,请将文件修改为

<?xml version="1.0" encoding="UTF-8"?>
<%@ page language="java" import="java.util.*,org.apache.commons.lang.StringEscapeUtils" %>
...

一切都应该正常运作。