Java 从Eclipse中的WEB-INF文件夹读取文件

Java 从Eclipse中的WEB-INF文件夹读取文件,java,struts2,Java,Struts2,我正在使用Struts2和ideeclipse。我有一个chart.xml文件,它放在WEB-INF文件夹中,我试图将此文件读取为: String path=ServletActionContext.getServletContext().getRealPath("/WEB_INF/chart.xml"); File XMLfile = new File(path); 但是我看不懂。我得到以下错误: javax.xml.bind.UnmarshalException - with link

我正在使用Struts2和ideeclipse。我有一个
chart.xml
文件,它放在WEB-INF文件夹中,我试图将此文件读取为:

String path=ServletActionContext.getServletContext().getRealPath("/WEB_INF/chart.xml");
  File XMLfile = new File(path);
但是我看不懂。我得到以下错误:

javax.xml.bind.UnmarshalException
- with linked exception:
[java.io.FileNotFoundException: F:\doc\Mavenex\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\EFW11\WEB-INF\chart1.xm (The system cannot find the file specified)]

我该怎么做?

WEB-INF是项目结构的私有目录,只能由WEB服务器访问。无法从WEB-INF目录读取文件。将文件放在其他文件夹中并尝试读取

有两个API可用于操作资源。不要使用
File
类来获取文件,而是使用那些API,它们对于您想要做的事情非常有用。它们是
getResourceAsStream(java.lang.String path)
返回
java.io.InputStream和
getResource(java.lang.String path)
返回
java.net.URL`.

您可以将文件放在F:\doc\Mavenex\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\EFW11\WEB-INF\这个目录中。谢谢回复,我需要找到WEB-INF folderLalit的确切位置感谢您的回复,我将我的文件放在WebContent中仍然会遇到相同的错误您必须尝试“file xmlfile=new file(ServletActionContext.getServletContext().getRealPath(“/filename.xml”);”我创建了一个属性文件,将文件路径放在属性文件中,并从属性文件中读取该文件路径