使用Eclipse自带的Axis1插件生成WSDL文件
2016-03-05 11:08
549 查看
首先创建一个web工程,创建过程如下:
![](http://img.blog.csdn.net/20140428103520531?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYTE5ODgxMDI5/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
如果选择Apache Tomcat v5.5,Dynamic web module version最高只能选择2.4,填写完成后点击“下一步”:
![](http://img.blog.csdn.net/20140428103821140?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYTE5ODgxMDI5/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
填写默认输出文件夹,填写完成后点击“下一步”:
![](http://img.blog.csdn.net/20140428104505796?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYTE5ODgxMDI5/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
填写根目录,填写完成后点击“完成”:
![](http://img.blog.csdn.net/20140428104522031?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYTE5ODgxMDI5/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
工程创建完成后,编写服务接口:
[java] view plain copy
![](https://oscdn.geek-share.com/Uploads/Images/Content/201611/a7c8e286f463007e2a900848b93dd72c.png)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201611/9e12f1d3e499fc949c886e7c9e0484f9)
package com.sean.ws;
public interface MathIntf {
public int plus(int a, int b);
}
然后编写服务接口实现类:
[java] view plain copy
![](https://oscdn.geek-share.com/Uploads/Images/Content/201611/a7c8e286f463007e2a900848b93dd72c.png)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201611/9e12f1d3e499fc949c886e7c9e0484f9)
package com.sean.ws;
public class MathImpl implements MathIntf {
public int plus(int a, int b) {
return a + b;
}
}
然后在服务接口实现类的基础上自动生成服务接口WSDL文件:
![](http://img.blog.csdn.net/20140428105650703?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYTE5ODgxMDI5/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
服务器选择Tomcat 6.0,Web Service环境选择Apache Axis(可选项还包含Axis2和CXF,不过这两项在使用前要预先设置),服务工程选择前面创建的ws_create工程,选择完成后点击“下一步”:
![](http://img.blog.csdn.net/20140428105941453?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYTE5ODgxMDI5/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
这里可以修改生成的WSDL文件文件名、接口方法以及WSDL文件类型,选择完成后点击“下一步”:
![](http://img.blog.csdn.net/20140428110611406?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYTE5ODgxMDI5/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
只生成Web Service WSDL文件的话,不需要发布接口(此时也不能发布接口),这里直接点击“完成”即可
![](http://img.blog.csdn.net/20140428110847109?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYTE5ODgxMDI5/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
Web Service环境Apache Axis所需的jar包会自动放入WebRoot\WEB-INF\lib路径下
并且在WebRoot\wsdl路径下生成Web Service接口描述文件MathImpl.wsdl
接口部署文件将会生成在WebRoot\WEB-INF\MathImplService\com\sean\ws路径下
![](http://img.blog.csdn.net/20140428111649406?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYTE5ODgxMDI5/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
Web Service WSDL文件内容如下(MathImpl.wsdl):
[java] view plain copy
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions targetNamespace="http://ws.sean.com"
xmlns:apachesoap="http://xml.apache.org/xml-soap"
xmlns:impl="http://ws.sean.com" xmlns:intf="http://ws.sean.com"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<!--WSDL created by Apache Axis version: 1.4
Built on Apr 22, 2006 (06:55:48 PDT)-->
<wsdl:types>
<schema elementFormDefault="qualified"
targetNamespace="http://ws.sean.com"
xmlns="http://www.w3.org/2001/XMLSchema">
<element name="plus">
<complexType>
<sequence>
<element name="a" type="xsd:int"/>
<element name="b" type="xsd:int"/>
</sequence>
</complexType>
</element>
<element name="plusResponse">
<complexType>
<sequence>
<element name="plusReturn" type="xsd:int"/>
</sequence>
</complexType>
</element>
</schema>
</wsdl:types>
<wsdl:message name="plusResponse">
<wsdl:part element="impl:plusResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="plusRequest">
<wsdl:part element="impl:plus" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:portType name="MathImpl">
<wsdl:operation name="plus">
<wsdl:input message="impl:plusRequest" name="plusRequest">
</wsdl:input>
<wsdl:output message="impl:plusResponse" name="plusResponse">
</wsdl:output>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="MathImplSoapBinding" type="impl:MathImpl">
<wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="plus">
<wsdlsoap:operation soapAction=""/>
<wsdl:input name="plusRequest">
<wsdlsoap:body use="literal"/>
</wsdl:input>
<wsdl:output name="plusResponse">
<wsdlsoap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="MathImplService">
<wsdl:port binding="impl:MathImplSoapBinding" name="MathImpl">
<wsdlsoap:address location="http://localhost:8080/ws_create/services/MathImpl"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
如果选择Apache Tomcat v5.5,Dynamic web module version最高只能选择2.4,填写完成后点击“下一步”:
填写默认输出文件夹,填写完成后点击“下一步”:
填写根目录,填写完成后点击“完成”:
工程创建完成后,编写服务接口:
[java] view plain copy
![](https://oscdn.geek-share.com/Uploads/Images/Content/201611/a7c8e286f463007e2a900848b93dd72c.png)
package com.sean.ws;
public interface MathIntf {
public int plus(int a, int b);
}
然后编写服务接口实现类:
[java] view plain copy
![](https://oscdn.geek-share.com/Uploads/Images/Content/201611/a7c8e286f463007e2a900848b93dd72c.png)
package com.sean.ws;
public class MathImpl implements MathIntf {
public int plus(int a, int b) {
return a + b;
}
}
然后在服务接口实现类的基础上自动生成服务接口WSDL文件:
服务器选择Tomcat 6.0,Web Service环境选择Apache Axis(可选项还包含Axis2和CXF,不过这两项在使用前要预先设置),服务工程选择前面创建的ws_create工程,选择完成后点击“下一步”:
这里可以修改生成的WSDL文件文件名、接口方法以及WSDL文件类型,选择完成后点击“下一步”:
只生成Web Service WSDL文件的话,不需要发布接口(此时也不能发布接口),这里直接点击“完成”即可
Web Service环境Apache Axis所需的jar包会自动放入WebRoot\WEB-INF\lib路径下
并且在WebRoot\wsdl路径下生成Web Service接口描述文件MathImpl.wsdl
接口部署文件将会生成在WebRoot\WEB-INF\MathImplService\com\sean\ws路径下
Web Service WSDL文件内容如下(MathImpl.wsdl):
[java] view plain copy
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions targetNamespace="http://ws.sean.com"
xmlns:apachesoap="http://xml.apache.org/xml-soap"
xmlns:impl="http://ws.sean.com" xmlns:intf="http://ws.sean.com"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<!--WSDL created by Apache Axis version: 1.4
Built on Apr 22, 2006 (06:55:48 PDT)-->
<wsdl:types>
<schema elementFormDefault="qualified"
targetNamespace="http://ws.sean.com"
xmlns="http://www.w3.org/2001/XMLSchema">
<element name="plus">
<complexType>
<sequence>
<element name="a" type="xsd:int"/>
<element name="b" type="xsd:int"/>
</sequence>
</complexType>
</element>
<element name="plusResponse">
<complexType>
<sequence>
<element name="plusReturn" type="xsd:int"/>
</sequence>
</complexType>
</element>
</schema>
</wsdl:types>
<wsdl:message name="plusResponse">
<wsdl:part element="impl:plusResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="plusRequest">
<wsdl:part element="impl:plus" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:portType name="MathImpl">
<wsdl:operation name="plus">
<wsdl:input message="impl:plusRequest" name="plusRequest">
</wsdl:input>
<wsdl:output message="impl:plusResponse" name="plusResponse">
</wsdl:output>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="MathImplSoapBinding" type="impl:MathImpl">
<wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="plus">
<wsdlsoap:operation soapAction=""/>
<wsdl:input name="plusRequest">
<wsdlsoap:body use="literal"/>
</wsdl:input>
<wsdl:output name="plusResponse">
<wsdlsoap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="MathImplService">
<wsdl:port binding="impl:MathImplSoapBinding" name="MathImpl">
<wsdlsoap:address location="http://localhost:8080/ws_create/services/MathImpl"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
相关文章推荐
- IDEA15使用maven编译scala和java
- Java中生成随机数
- IDEA15使用maven编译scala和java
- Java复习笔记(二)——环境变量Path和CLASSPATH的作用
- 快速搭建J2EE开发环境主要配置参数
- SpringMVC+Mybatis+Activiti5+Quartz动态配置+Solr4+Extjs5.1自主研发平台
- LeetCode : Longest Substring Without Repeating Characters [java]
- Java基本数据类型
- SpringIOC 实例化Bean的流程
- [Android]Eclipse连不上模拟器的问题[emulator-5554 disconnected]
- Spring MVC测试
- JDK7与JDK8的新特性
- Java遍历二维数组,求和
- eclipse反编译jar
- 快速排序的一个Java实现
- IT十八掌作业_java基础第三天_数组
- 跟着开涛学SpringMVC
- thinking in java 21_03
- java web中如何处理表单中的中文
- Spring Data JPA教程:审计(二)