getResource在一个服务器上返回null,但在另一台服务器上不返回

问题描述 投票:0回答:1

我在两个不同的服务器上运行2个tomcat实例。我在两个服务器上都部署了相同的战争文件,但工作方式不同。

在实例一上,一切都很好,而在实例二上,我得到了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上使用相同的vm args启动了tomcat。任何想法问题可能是什么?

java tomcat servlets aix
1个回答
0
投票

我现在建立绝对路径,而不是相对路径:

SomeClass.class.getName().substring(0, SomeClass.class.getName().lastIndexOf(".")).replace(".", "/");

剥离最后一部分并替换为“。”用“ /”

© www.soinside.com 2019 - 2024. All rights reserved.