我正在编写一个厚客户端,其中使用了SOAP服务来实现一些功能(例如缺陷报告等)。
我已经成功使用JAX-WS,但默认情况下(至少在netbeans中),它每次初始化服务时都会从远程服务器获取WSDL。 我认为这有助于提供某些版本支持等,但这不是我想要的。
我已经添加了wsdllocation
参数到wsimport中,以指向本地资源生成的类。 下面的代码段是从ApplicationService.java加载WSDL资源的URL。
baseUrl = net.example.ApplicationService.class.getResource(".");
url = new URL(baseUrl, "service.wsdl");
我相信这应该不会有问题,可以指向存储在 net/example/resources 包中的 jar 资源,而且 jar 文件本身也按预期构建了。但是服务将无法加载...具体来说,在调用 ApplicationService.getPort() 时,我会得到 NullPointerException 异常。
这是否可能?还是只是一场徒劳的追逐?