我需要使用 Java 使用 PHP (SOAP) 创建的 Web 服务。它是否与发布带有 XML 内容的 Web 服务 URL 相同,还是我需要使用类似下面的代码?
String wsdlURL = "http://cxrus020:8080/HelloWebService/" + "HelloWS?wsdl";
String namespace = "urn:HelloWS/wsdl";
String serviceName = "HelloWS";
QName serviceQN = new QName(namespace, serviceName);
ServiceFactory serviceFactory = ServiceFactory.newInstance();
Service service = serviceFactory.createService(new
URL(wsdlURL), serviceQN);
Call call = service.createCall();
call.setPortTypeName(serviceQN);
call.setOperationName(new QName(namespace, "greet"));
call.setProperty(Call.ENCODINGSTYLE_URI_PROPERTY, "");
call.addParameter("string_1",serviceQN,javax.xml.rpc.ParameterMode.IN);
call.setReturnType(serviceQN);
Object[] inParams = new Object[]{"weetat is testing"};
String ret = (String) call.invoke(inParams);
System.out.println("ret:" + ret);
最佳答案
使用 Web 服务不依赖于 WS 的实现技术(根据互操作性的定义)。
您可以使用 JAX-WS wsimport 实用程序生成 stub 并像使用 Java(或任何其他语言)的 Web 服务一样使用它们。
请记住,关于 WS,您需要了解的只是它的 WSDL。
关于java - 如何在 java 中使用 php web 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4449930/