XML +写入相对路径

时间:2009-12-29 15:48:59

标签: java xml jsp filestreamresult

我有以下文件夹结构

TempProj
!-js
!-jsp
!-WEB-INF
  !-classes
  !-lib

在我的lib文件夹中,我有一个创建XML文件的java文件,我实际上需要在jsp文件夹中生成该文件。

我正在使用StreamResult创建result = new StreamResult(“test.xml”);

我尝试过以下路径“../../jsp/text.xml”。自从我部署它以来,路径必须是相对的。

任何帮助!!

1 个答案:

答案 0 :(得分:0)

您使用的App Server是什么?如果您正在使用Websphere(可能是其他人,但我不知道),您可能必须设置“文件URL”并使用JNDI将查找目录的工作委派给App Server本身。

作为一个能够更好地解决这个问题的实验,您可以尝试以下方法:

File nopath = new File("text.xml");
System.out.println(nopath.getCanonicalPath());

File relpath = new File("../../jsp/text.xml");
System.out.println(relpath.getCanonicalPath());

我想知道你是否能够做到这一点......我有一种感觉(就是这样,请检查!)App Server的安全管理员可能不喜欢你试图遍历和离开目录....

您可能想重新考虑不创建磁盘上的文件 - 而是创建一个动态提供XML的新servlet ...(假设您需要客户端浏览器最终看到一些XML ...)。