getResource returns 在一台服务器上为空,但在另一台服务器上没有
getResource returns null on one server but not on the other
I 运行 2 tomcat 个实例在两个不同的服务器上。我在两者上部署了相同的 war 文件,但它的工作方式不同。
在实例一上一切正常,而在实例二上我得到一个 NullPointerException,因为 "listAllConfigIds" 方法中的变量 "resource" 为 NULL。
public List<String> listAllConfigIds() {
URL resource = SomeClass.class.getResource("./");
LOG.debug("Loading from resource " + resource);
return Arrays.asList(new File(resource.getPath()).list()).stream().filter(s -> !s.toLowerCase().contains("."))
.collect(Collectors.toList());
}
我在 AIX 上使用相同的虚拟机参数启动 tomcat。知道问题出在哪里吗?
我现在构建的是绝对路径,而不是相对路径:
SomeClass.class.getName().substring(0, SomeClass.class.getName().lastIndexOf(".")).replace(".", "/");
删除最后一部分并替换“.”用“/”
I 运行 2 tomcat 个实例在两个不同的服务器上。我在两者上部署了相同的 war 文件,但它的工作方式不同。
在实例一上一切正常,而在实例二上我得到一个 NullPointerException,因为 "listAllConfigIds" 方法中的变量 "resource" 为 NULL。
public List<String> listAllConfigIds() {
URL resource = SomeClass.class.getResource("./");
LOG.debug("Loading from resource " + resource);
return Arrays.asList(new File(resource.getPath()).list()).stream().filter(s -> !s.toLowerCase().contains("."))
.collect(Collectors.toList());
}
我在 AIX 上使用相同的虚拟机参数启动 tomcat。知道问题出在哪里吗?
我现在构建的是绝对路径,而不是相对路径:
SomeClass.class.getName().substring(0, SomeClass.class.getName().lastIndexOf(".")).replace(".", "/");
删除最后一部分并替换“.”用“/”