【发布时间】:2014-12-18 15:42:42
【问题描述】:
我一直在寻找解决这个问题的方法
我有一个 java 项目(我继承了它)。它本质上是 SOAP Web 服务的 RESTful 包装器。我不完全确定为什么除了 PHP 连接到他们的 Web 服务时遇到问题,所以创建了一个作为客户端连接到 WS 的 Restful 服务。
问题是 jax-ws 自动生成的 Web 服务工件/类作为编译项目的机器被硬编码到本地路径。这是在项目编译时由 jax-ws 自动生成的 java 文件中创建的注释示例。
/**
* This class was generated by the JAX-WS RI.
* JAX-WS RI 2.2.10-b140803.1500
* Generated source version: 2.2
*
*/
@WebServiceClient(
name = "flahImplService",
targetNamespace = "http://flah.com/",
wsdlLocation = "file:/C:/Users/WindowsUser/PathToNetBeansProjectFolder/flah.wsdl")
public class flahImplService
}
它似乎链接到在线 WSDL 并基于它构建文件。
我能找到的唯一其他重要的事情是,在 /nbproject/jax-ws.xml 中有一个这样的 xml:
<?xml version="1.0" encoding="UTF-8"?>
<jax-ws xmlns="http://www.netbeans.org/ns/jax-ws/1">
<services>
<service name="flahImplService">
<implementation-class>com.service.management.flahImplService</implementation-class>
<wsdl-url>https://blah.com/flah.wsdl</wsdl-url>
<wsdl-url>blah.com/flah.wsdl</wsdl-url>
我应该在哪里指定一个路径来替换这个自动生成和硬编码的本地 WSDL 位置?
编辑:顺便说一句,当我在本地运行这个项目时,它当然可以工作,因为 wsdl 文件的路径是可以的,但是当部署到应用程序服务器时它会失败。
【问题讨论】:
标签: java web-services rest jax-ws