文档构建器在java web start中使用dtd解析xml的最佳方法

时间:2013-01-01 22:31:19

标签: java xml xml-parsing dtd java-web-start

不想将文件I / O用于webstart。所以我使用builder.parse(xmlurl, base)并且工作了。但我试图通过将dtd和xml放在jar文件中来减少流量。这也适用于本地测试和静态Web服务器。但是,我想使用动态Web服务器,它使用http://www.myserver.com/?file=start.jar

分发文件

现在问题是当jar文件运行时,它试图检索jar:http://www.myserver.com/?file=start.jar!/Resource/xxx.xml并且javaw抱怨!/不符合规范(抱怨来自documentbuilder)。我觉得它只是混淆了?和&在动态文件访问的URL中。

让documentbuilder检索动态服务jar的内部(在同一个jar中)xml(以及xml中描述的相应dtd)的最佳方法是什么?请注意,如果我对xml使用this.class.getResourceAsStream(),那么我仍然找不到dtd文件。

更新

我有一个临时解决方案,但还有另一个问题。此jar存储在数据存储区中,因此我需要http://www.myserver.com/?file=start.jar才能访问它。一旦我使用http://www.myserver.com/start.jar,它就会起作用。我只需要我的servlet来解析路径,这仍然很容易。

我发布的另一个问题与此问题有关:

Use GAE servlet to serve dynamic JNLP and jar for JavaWS

0 个答案:

没有答案