1. 生成客户端代码
2.调用接口
import javax.xml.ws.Service;
public static NotificationServiceDevImplPortType mokaAlarmServer(Authorization authorization) throws Exception{ //创建WSDL的URL,注意不是服务地址 String wsdlUrl = "http://"+IP地址+":"+端口+"/pureportal/webservices/notification?wsdl"; //创建服务视图 Service service = WebServiceUtil.getService(wsdlUrl, "http://impl.notification.dev.bsm.mocha.com/", "NotificationServiceDevImpl"); //获取服务实现类 //参数解释:serviceEndpointInterface - 服务端口(wsdl文档中服务端口的name属性,例如<wsdl:port name="MobileCodeWSSoap" binding="tns:MobileCodeWSSoap">) return service.getPort(NotificationServiceDevImplPortType.class); }
web service工具类
package com.kinth.util;
import java.net.MalformedURLException;
import java.net.URL;
import javax.xml.namespace.QName;
import javax.xml.ws.Service;
/**
* web service工具类
* @author huangshanghua
* @date 2018-01-14
*/
public class WebServiceUtil {
/**
* 获取web service服务
*
* @param wsdlUrl
* @param namespaceURI
* @param localPart
* @return
* @throws MalformedURLException
*/
public static Service getService(String wsdlUrl,String namespaceURI, String localPart) throws MalformedURLException{
//创建WSDL的URL,注意不是服务地址
URL url = new URL(wsdlUrl);
//创建服务名称
//1.namespaceURI - 命名空间地址 (wsdl文档中的targetNamespace)
//2.localPart - 服务视图名 (wsdl文档中服务名称,例如<wsdl:service name="MobileCodeWS">)
QName qname = new QName(namespaceURI, localPart);
//创建服务视图
//参数解释:
//1.wsdlDocumentLocation - wsdl地址
//2.serviceName - 服务名称
Service service = Service.create(url, qname);
return service;
}
}

