gpt4 book ai didi

java - 使用线程上下文ClassLoader从类路径读取WSDL

转载 作者:行者123 更新时间:2023-12-03 13:08:23 25 4
gpt4 key购买 nike

我正在使用Web服务,并将WSDL放在WEB-INF/classes目录内的类路径中。我在tomcat服务器中运行以下代码。

第一种方法

static {
URL WSDL_LOC=WSClient.class.getClass().getClassLoader().getResource("Data.wsdl");
System.out.println("Location here is : " + WSDL_LOC);
}

第二种方法
static {
URL WSDL_LOC = Thread.currentThread().getContextClassLoader().getResource("Data.wsdl");
System.out.println("Location here is : " + WSDL_LOC);
}

当我在Tomcat中进行 war 时,第一种方法在控制台上打印 null,而第二个控制台实际上在正确地打印它。我只是想知道为什么会这样,以及这样做的正确方法是什么。

最佳答案

好吧,我的期望是,使用静态引用WSClient的第一个引用使用系统类加载器,而使用当前线程的第二个引用使用tomcat的Web应用程序类加载器。

阅读此链接Difference between thread's context class loader and normal classloader

关于java - 使用线程上下文ClassLoader从类路径读取WSDL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49093816/

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