idea : 2020
jdk:1.8


目录

  • 1.搭建webservice服务端
  • 1.1 新建一个java空项目
  • 1.2 项目建好后,右键项目,选择“Add Framework Support...”
  • 1.3 生成wsdl,右键类的时候可能没有WebServices这个选项了,可以在Tools中找到这个功能
  • 1.4 启动服务,右键HelloWorld启动项目
  • 1.5 访问web服务
  • 1.6 增加一个方法看看效果
  • 2.搭建webservice客户端
  • 2.1 新建一个java空项目
  • 2.2 项目生成好后会弹框出来,把wsdl地址放进去点击ok就可以了
  • 2.3 生成完成后,写个测试类,main方法,启动调试下。


1.搭建webservice服务端

1.1 新建一个java空项目

java 服务端生成html java生成webservice客户端_xml


直接下一步,建一个空项目先。

java 服务端生成html java生成webservice客户端_java_02

1.2 项目建好后,右键项目,选择“Add Framework Support…”

java 服务端生成html java生成webservice客户端_java 服务端生成html_03


勾上 WebServices,这里选择JAX-WS,然后确认即可

1.3 生成wsdl,右键类的时候可能没有WebServices这个选项了,可以在Tools中找到这个功能

java 服务端生成html java生成webservice客户端_webservice_04


java 服务端生成html java生成webservice客户端_webservice_05

1.4 启动服务,右键HelloWorld启动项目

java 服务端生成html java生成webservice客户端_xml_06

1.5 访问web服务

java 服务端生成html java生成webservice客户端_webservice_07


java 服务端生成html java生成webservice客户端_webservice_08


点击页面上的wsdl或者访问http://localhost:9000/HelloWorld?wsdl,可以看到webservice的信息

1.6 增加一个方法看看效果

java 服务端生成html java生成webservice客户端_右键_09


新增一个testWebservice方法,并且重新生成wsdl,需要重新编译后才能生成wsdl,启动后在看下服务

java 服务端生成html java生成webservice客户端_java_10

2.搭建webservice客户端

2.1 新建一个java空项目

java 服务端生成html java生成webservice客户端_右键_11

2.2 项目生成好后会弹框出来,把wsdl地址放进去点击ok就可以了

java 服务端生成html java生成webservice客户端_右键_12


如果不小心把框关闭了,也可以点击Tools->WebServices->Generate Java Code From Wsdl

java 服务端生成html java生成webservice客户端_java_13


点击ok之后,可能会出现这个异常,

java 服务端生成html java生成webservice客户端_java 服务端生成html_14

Exception in thread "main" java.lang.AssertionError: org.xml.sax.SAXParseException; systemId: jar:file:/F:/....../lib/jaxb-xjc.jar!/com/sun/tools/xjc/reader/xmlschema/bindinfo/binding.xsd; lineNumber: 52; columnNumber: 88; schema_reference: ���� accessExternalSchema �������õ����ƶ������� 'file' ����, ����޷���ȡ�����ĵ� 'xjc.xsd'��

解决方法,在jdk安装地址增加一个 jaxp.properties文件

java 服务端生成html java生成webservice客户端_xml_15


内容为,javax.xml.accessExternalSchema=all,然后再试试生成看看

java 服务端生成html java生成webservice客户端_xml_16

2.3 生成完成后,写个测试类,main方法,启动调试下。

java 服务端生成html java生成webservice客户端_webservice_17


java 服务端生成html java生成webservice客户端_webservice_18