webservice发布与调用

首先建立webService的service端,新建一个接口,代码如下:

@WebService(name = "User",// 定义Port名称
        serviceName = "Aservice", // 修改WebService服务名称
        targetNamespace = "http://com.example.ws/my" // 定义命名空间,默认为倒置的包名
)
public interface Aservice {

    public String getUser();

    String addUser(@WebParam(name = "username") String username, @WebParam(name = "desc") String desc, @WebParam(name = "content") String content);

}

然后对接口方法进行扩展

@WebService(endpointInterface = "com.example.webservicedemo.Aservice",
        name = "User",// 定义Port名称
        serviceName = "Aservice", // 修改WebService服务名称
        targetNamespace = "http://com.example.ws/my" // 定义命名空间,默认为倒置的包名
)
public class AserviceImpl implements Aservice {
          ....
}

然后在SpringBootApplication中发布

 String address = "http://" + ip + ":12345/aservice";
 Endpoint.publish(address, new AserviceImpl());
 System.out.println("publish finish !");

启动应用,当出现如下提示时,说明启动成功!

image.png

然后打开地址http://127.0.0.1:12345/aservice?wsdl,当出现页面说明发布成功
image.png

到这里为止,server端准备完成。
-------------------------------------分割线--------------------------------------
client主要是通过javax.xml.ws.Service进行操作;
第一步Service.create

 Service service = Service.create(url, qName);

第二步service.getPort获取指定端口

Aservice myServer = service.getPort(new QName("http://com.example.ws/my", "UserPort"), Aservice.class);
image.png

第三步调用接口里面的方法

myServer.addUser()

详细代码地址:https://github.com/lunacai/webServiceTest

你可能感兴趣的:(webservice发布与调用)