不使用tomcat如何发布webservice

 时间:2026-02-12 01:40:02

1、新建测试代码示例

/** * jdk发布webservice服务 */@WebServicepublic class TestJdkWebService {    @WebMethod    public String sayHello()    {        return "Hello World!";    }    public static void main(String[] args)    {        //可以做到不借助web容器(如Tomcat)发布Web Service应        Endpoint.publish("访问地址", new TestJdkWebService());        System.out.println("发布webservice成功!");    }}

不使用tomcat如何发布webservice

2、类名上需要添加@WebService注解,提供服务的方法需要添加@WebMethod注解,添加main方法来启动发布webservice服务,看到打印的发布webservice成功!信息没有报错,则表示发布成功

不使用tomcat如何发布webservice

3、这个时候可以开发浏览器访问发布地址+?wsdl来查看服务描述协议

不使用tomcat如何发布webservice

4、服务端发布完成之后,现在可以开发客户端了,下面介绍下客户端代码的生成,jdk的bin目录下自带了wsimport.exe工具

wsimport命令参数说明:

  -d:生成客户端执行类的class文件的存放目录

  -s:生成客户端执行类的源文件的存放目录

  -p:定义生成类的包名

       -encoding:指定生成文件的字符集

打开cmd窗口,输入wsimport -s E:\work\datai\code_study\study-master\study-common-test\src\main\java -encoding utf-8 -p cn.sw.study.common.test.webservice.client url?wsdl

不使用tomcat如何发布webservice

5、生成完成之后,去源文件目录查看生成的文件,我们这里是直接指定到idea项目的src目录下,所以直接在idea就可以看到

不使用tomcat如何发布webservice

6、添加客户端测试类

/** * 测试webservice服务客户端 * Created by shaowei on 2017/8/19. */public class Client {    public static void main(String[] args) {        TestJdkWebServiceService service = new TestJdkWebServiceService();        TestJdkWebService testService = service.getTestJdkWebServicePort();        System.out.println(testService.sayHello());    }}

testService.sayHello()就是调用了服务器远程的service方法

运行客户端程序,查看打印结果

不使用tomcat如何发布webservice

7、打印结果显示Hello World!,这个信息就是服务端sayHello方法的返回的内容信息,说明客户端成功调用了服务端的方法。在正常的项目中,如果我们提供了webservice服务端,则把生成的客户端代码提供给调用方,就可以正常的实现远程服务调用了

  • 苹果电脑怎么安装网络打印机
  • 如何在系统应用中设置密码保护 Win 计算机
  • 如何用U盘安装CentOS7系统?U盘安装Centos
  • 北京后花园风景区攻略
  • Word2010文档中键入时标记语法错误
  • 热门搜索
    大同旅游地图 深圳附近的旅游景点 山西旅游路线 苏州东山旅游 旅游团网 张家界旅游必去景点 珠海东澳岛旅游攻略 丰宁坝上草原旅游攻略 青岛有什么旅游景点 文化旅游产业