gpt4 book ai didi

java - getResource ("xmlfile.xml")抛出 java.lang.NullPointerException

转载 作者:太空宇宙 更新时间:2023-11-04 07:29:27 24 4
gpt4 key购买 nike

我的 Web 项目的 /WebContent/WEB-INF 文件夹中有 xmlfile.xml

我正在尝试使用以下方式获取此文件的路径:

 URL url = this.getClass().getClassLoader().getResource("xmlfile.xml");
String filePath = url.getFile();

但它在第二行代码中抛出java.lang.NullPointerException

这是什么原因呢?该文件以 WebContent/WEB-INF/xmlfile.xml

形式提供

最佳答案

您应该使用ServletContext为此:

ServletContext context = .... // get the context here
InputStream resourceContent = context.getResourceAsStream("/WEB-INF/xmlfile.xml");

或者获取真实路径:

String realPath = context.getRealPath("/WEB-INF/xmlfile.xml");

请记住,Java EE Web 应用程序是单个 (WAR) 文件,因此不保证文件系统对 WAR 内组件的访问。您可以使用标准 Java 类加载器机制访问对象,但这不会授予对 WAR 类路径之外的任何 WAR 路径的访问权限(WEB-INF/classes 和 WEB-INF/lib jar)。因此它在你的情况下失败了。

关于java - getResource ("xmlfile.xml")抛出 java.lang.NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17968657/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com