【发布时间】:2011-07-23 06:29:54
【问题描述】:
我正在尝试编写一个简单的 JSP,它返回静态 xml 文件的内容。我需要在tomcat中运行它。最终,这将更加动态,但一开始,我只想返回一个 xml 文件。任何人都可以向我指出这样一个微不足道的野兽的演示,我正在尝试了解创建 Web 应用程序并安装在 tomcat 中所需的最小块是什么。
非常欣赏,
爪爪17
【问题讨论】:
标签: java xml jsp tomcat servlets
我正在尝试编写一个简单的 JSP,它返回静态 xml 文件的内容。我需要在tomcat中运行它。最终,这将更加动态,但一开始,我只想返回一个 xml 文件。任何人都可以向我指出这样一个微不足道的野兽的演示,我正在尝试了解创建 Web 应用程序并安装在 tomcat 中所需的最小块是什么。
非常欣赏,
爪爪17
【问题讨论】:
标签: java xml jsp tomcat servlets
关注这个document 总是一个好的开始。
但你可能有问题。
首先,做这样的事情基本上是微不足道的:
http://example.com/app/mydynamicxml.jsp
返回一个 XML blob。只需将 XML 粘贴到该文件中即可。
但它没有 XML 内容类型。您可以通过向 JSP 添加指令来解决此问题:
<%@page contentType="application/xml" %>
但是,这会带来更多问题。
具体来说,XML 文件不能以空格开头。它必须以 .
开头该指令很可能会在您的 XML 文件中插入一个空行。
所以,你真正想要的是:
<%@page contentType="application/xml" %><?xml version...
最后,有一个 JSPX 版本的 JSP,它使用 XML 语法,并避免了所有这些空白问题。还有一个 Tomcat 指令可以消除空白问题。但是,走出大门,这是最快的,“明显”的机智。
【讨论】:
主要是将内容类型指定为<%@ page contentType="text/xml" %>
<%-- Set the content type
--%><%@ page contentType="text/xml" %><%--
--%><?xml version="1.0" encoding="UTF-8"?>
<root><entry key="key1" value="value1" /><entry key="key2" /></root>
查看Sun site上的文章
【讨论】:
尝试添加 trimDirectiveWhitespaces="true" 页面指令,但我的服务器不支持。
解决方案是简单地删除任何页面指令之后的所有换行符。
【讨论】: