概述
使用JDK6开发webservice简单方便,步骤说明如下:
1 安装JDK6,设置eclipse的编译环境为jdk1.6
2 在eclipse中创建一个动态WEB工程:本例中为webservice
3 创建webservice服务端接口类
3.1 创建一个普通类,不需要继承和实现任何类和接口:本例中为com.neusoft.mid.server.ServerTest
1 安装JDK6,设置eclipse的编译环境为jdk1.6
2 在eclipse中创建一个动态WEB工程:本例中为webservice
3 创建webservice服务端接口类
3.1 创建一个普通类,不需要继承和实现任何类和接口:本例中为com.neusoft.mid.server.ServerTest
在这个类中添加一个public方法,要有返回值
注意:类必须有@WebService注释,方法必须有@WebMethod注释
3.2 执行wsgen命令生成服务端程序
cmd 进入JDK6的bin目录(若你的环境变量默认使用JDK6,则可以在任意目录中执行)
wsgen -cp ./WebContent/WEB-INF/classes -r ./wsdl -s ./src -d ./WebContent/WEB-INF/classes -wsdl com.neusoft.mid.server.ServerTest
执行结果:本例中生成了com.neusoft.mid.server.jaxws包及其中的两个java文件(同时生成了class文件)。
注意:类必须有@WebService注释,方法必须有@WebMethod注释
3.2 执行wsgen命令生成服务端程序
cmd 进入JDK6的bin目录(若你的环境变量默认使用JDK6,则可以在任意目录中执行)
wsgen -cp ./WebContent/WEB-INF/classes -r ./wsdl -s ./src -d ./WebContent/WEB-INF/classes -wsdl com.neusoft.mid.server.ServerTest
执行结果:本例中生成了com.neusoft.mid.server.jaxws包及其中的两个java文件(同时生成了class文件)。
4 使用tomcat发布服务端
4.1 引入下列四个JAX-WS的jar包:
webservices-api.jar
webservices-extra-api.jar
webservices-extra.jar
webservices-rt.jar
4.2 在WEB-INF下添加一个配置文件:sun-jaxws.xml
4.1 引入下列四个JAX-WS的jar包:
webservices-api.jar
webservices-extra-api.jar
webservices-extra.jar
webservices-rt.jar
4.2 在WEB-INF下添加一个配置文件:sun-jaxws.xml
<?xml version="1.0" encoding="UTF-8"?>
<endpoints version="2.0" xmlns="http://java.sun.com/xml/ns/jax-ws/ri/runtime"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/jax-ws/ri/runtime http://java.sun.com/xml/ns/jax-ws/ri/runtime/sun-jaxws.xsd ">
<endpoint implementation="com.neusoft.mid.server.ServerTest"
url-pattern="/webservice/wstest/*" name="ServerTest">
</endpoint>
</endpoints>
4.2 修改WEB-INF/web.xml,添加如下内容:
<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_ID" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<display-name>webservice</display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<listener>
<listener-class>
com.sun.xml.ws.transport.http.servlet.WSServletContextListener
</listener-class>
</listener>
<servlet>
<description>JAX-WS endpoint - service</description>
<display-name>WebService</display-name>
<servlet-name>WebService</servlet-name>
<servlet-class>
com.sun.xml.ws.transport.http.servlet.WSServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>WebService</servlet-name>
<url-pattern>/webservice/wstest/*</url-pattern>
</servlet-mapping>
</web-app>
注:/wstest/* —— 这里的wstest可改。可使用若干层,如/test1/wstest/*; 若只有一个接口,亦可以直接写/wstest/WsTestPort
推荐写成/test1/wstest/*
5 检查是否发布成功
5.1 将工程发布到tomcat,启动tomcat服务
5.2 在浏览器中访问如下地址:
http://localhost:19107/wstest/WsTestPort 可查看接口描述
http://localhost:19107/wstest/WsTestPort?wsdl 可查看wsdl文件
http://localhost:19107/wstest/WsTestPort?xsd=1 可查看接口参数描述
注:.xsd文件内容可以整合到.wsdl中,例如本例中所附带的/test1/src/com/neusoft/test/WsTestPort.wsdl
6 测试服务端接口, 可以使用eclipse所带的webservice插件(如axis1插件)来测试:
6.1 在wsdl文件上右键-->Web Services-->Test with Web Services Explore打开测试工具
进入Navigator树中的叶子节点(即“方法”节点)
在右侧Actions窗口添加参数值,点击【go】按钮(别忘先启动服务端)
6.2 右侧Status窗口得到了webservice服务端return的内容,测试结束。
<endpoints version="2.0" xmlns="http://java.sun.com/xml/ns/jax-ws/ri/runtime"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/jax-ws/ri/runtime http://java.sun.com/xml/ns/jax-ws/ri/runtime/sun-jaxws.xsd ">
<endpoint implementation="com.neusoft.mid.server.ServerTest"
url-pattern="/webservice/wstest/*" name="ServerTest">
</endpoint>
</endpoints>
4.2 修改WEB-INF/web.xml,添加如下内容:
<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_ID" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<display-name>webservice</display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<listener>
<listener-class>
com.sun.xml.ws.transport.http.servlet.WSServletContextListener
</listener-class>
</listener>
<servlet>
<description>JAX-WS endpoint - service</description>
<display-name>WebService</display-name>
<servlet-name>WebService</servlet-name>
<servlet-class>
com.sun.xml.ws.transport.http.servlet.WSServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>WebService</servlet-name>
<url-pattern>/webservice/wstest/*</url-pattern>
</servlet-mapping>
</web-app>
注:/wstest/* —— 这里的wstest可改。可使用若干层,如/test1/wstest/*; 若只有一个接口,亦可以直接写/wstest/WsTestPort
推荐写成/test1/wstest/*
5 检查是否发布成功
5.1 将工程发布到tomcat,启动tomcat服务
5.2 在浏览器中访问如下地址:
http://localhost:19107/wstest/WsTestPort 可查看接口描述
http://localhost:19107/wstest/WsTestPort?wsdl 可查看wsdl文件
http://localhost:19107/wstest/WsTestPort?xsd=1 可查看接口参数描述
注:.xsd文件内容可以整合到.wsdl中,例如本例中所附带的/test1/src/com/neusoft/test/WsTestPort.wsdl
6 测试服务端接口, 可以使用eclipse所带的webservice插件(如axis1插件)来测试:
6.1 在wsdl文件上右键-->Web Services-->Test with Web Services Explore打开测试工具
进入Navigator树中的叶子节点(即“方法”节点)
在右侧Actions窗口添加参数值,点击【go】按钮(别忘先启动服务端)
6.2 右侧Status窗口得到了webservice服务端return的内容,测试结束。
最后
以上就是文静发夹为你收集整理的使用JDK6开发webservice的全部内容,希望文章能够帮你解决使用JDK6开发webservice所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复