从jsp文件读取xml

问题描述:

所以我想从jsp页面读取xml。它的工作原理,但它看起来像我正在阅读的.xml文件的路径真的挑剔。从jsp文件读取xml

<% 
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); 
DocumentBuilder db = dbf.newDocumentBuilder(); 
Document doc = db.parse("new.xml"); 

doc.getDocumentElement().normalize(); 

%>

它重定向到我的硬盘驱动器上的XML文件中工作正常,但每当我试图把它重定向到应用程序的.xml文件,我不断收到文件的路径没有找到,畸形url异常等等,我甚至试图把它放在WEB-INF中,看它是否可以从那里读取,但它不能。

有没有办法做到这一点,或者这是不可能的?

+0

不是不可能的,请将jsp和xml放入webinf中,并使用“new.xml”或“。\ new.xml” –

+0

“我尝试将其重定向到应用程序中的.xml文件”是什么意思? –

+0

xml文件在应用程序中,所以我试图访问与jsp文件位于相同位置的xml。 – user1704756

必须必须创建Java类(Servlet或模型类)来解析XML文档。在你的代码片段中,你必须必须必须指定XML文档的真实路径,并且将使用方法ServletContext.getRealPath(virtualPath)从虚拟路径获得实际路径。

你在的servelt代码应和,

String realPath=getServletContext().getRealPath("/WEB-INF/new.xml"); or "/new.xml" 

,并在JSP中你可以使用隐式对象 - application.getRealPath(string)