我已经在 Eclipse 中使用Apache CXF在 Java 中创建了一个 Webservice ,现在我必须创建一个 WebService 客户端应用程序来使用和调用它。我一直在寻找一种方法,我发现客户端总是依赖于服务器的 Java 类。
问题是我必须在其他 Java 环境中开发一个客户端类。我的问题是:有没有办法开发一个独立于 web 服务服务器包的客户端类,只使用WSDL文件?
谢谢 :)
我已经在 Eclipse 中使用Apache CXF在 Java 中创建了一个 Webservice ,现在我必须创建一个 WebService 客户端应用程序来使用和调用它。我一直在寻找一种方法,我发现客户端总是依赖于服务器的 Java 类。
问题是我必须在其他 Java 环境中开发一个客户端类。我的问题是:有没有办法开发一个独立于 web 服务服务器包的客户端类,只使用WSDL文件?
谢谢 :)
您可以将请求作为 XML 请求发送到 Web 服务 API。只有您需要使用正确的标题和正文来构造 SOAP 投诉请求。通过使用 SoapUI,您可以生成 XML 请求结构,然后在您的应用程序中重用它。
如果你使用 Jax-RS(REST APIs),即使是 http 方法也可以
[更新]
如果您对如何创建客户端类感到困惑,那么您将遵循此
使用 wsimport
> http : //hostname :port/wsdl.url on command line to create proxy classes
创建jar文件生成代理类
下面给出了示例测试客户端。
try {
URL wsdlURL = new URL("http://localhost:8082/cxf/services/yourservice?wsdl");
QName SERVICE_NAME = new QName("http://package.name/","PORTNAme");
Service service = Service.create(wsdlURL, SERVICE_NAME);
client = service.getPort(PORTInterface.class);
client.executeYourMethod()
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
干杯萨西什
您可以借助Apache CXF
Link wsdl to java 工具。wsdl2java
- 获取 WSDL 文档并生成完全注释的 Java 代码,从中实现服务。
您也可以借助 eclipse 插件。