1. 下载Axis1.4 release包,解压缩
2. 打开命令行窗口,cd到axis.jar所在的目录
3. 编写一个批处理generate.bat
@echo off
set cDate=%date:~2,2%%date:~5,2%%date:~8,2%
set cTime=%time:~0,2%%time:~3,2%%time:~6,2%
java -cp activation.jar;axis.jar;axis-ant.jar;commons-discovery-0.2.jar;commons-logging-1.0.4.jar;jaxrpc.jar;log4j-1.2.8.jar;mail.jar;saaj.jar;wsdl4j-1.5.1.jar; org.apache.axis.wsdl.WSDL2Java -p axisclient -o src -u "D:/calc.wsdl"
可能会报错,找不到activation.jar和mail.jar
下载两个jar包到当前目录即可以解决
贴一下wsdl文件,大家可以试一试
<?xml version="1.0" encoding="UTF-8"?>
<definitions name="calc"
targetNamespace="http://192.168.20.240:8888/calc.wsdl"
xmlns:tns="http://192.168.20.240:8888/calc.wsdl"
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:ns="urn:calc"
xmlns:SOAP="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:HTTP="http://schemas.xmlsoap.org/wsdl/http/"
xmlns:MIME="http://schemas.xmlsoap.org/wsdl/mime/"
xmlns:DIME="http://schemas.xmlsoap.org/ws/2002/04/dime/wsdl/"
xmlns:WSDL="http://schemas.xmlsoap.org/wsdl/"
xmlns="http://schemas.xmlsoap.org/wsdl/">
<types>
<schema targetNamespace="urn:calc"
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:ns="urn:calc"
xmlns="http://www.w3.org/2001/XMLSchema"
elementFormDefault="unqualified"
attributeFormDefault="unqualified">
<import namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
</schema>
</types>
<message name="addRequest">
<part name="a" type="xsd:double"/><!-- ns__add::a -->
<part name="b" type="xsd:double"/><!-- ns__add::b -->
</message>
<message name="addResponse">
<part name="result" type="xsd:double"/><!-- ns__add::result -->
</message>
<message name="subRequest">
<part name="a" type="xsd:double"/><!-- ns__sub::a -->
<part name="b" type="xsd:double"/><!-- ns__sub::b -->
</message>
<message name="subResponse">
<part name="result" type="xsd:double"/><!-- ns__sub::result -->
</message>
<message name="mulRequest">
<part name="a" type="xsd:double"/><!-- ns__mul::a -->
<part name="b" type="xsd:double"/><!-- ns__mul::b -->
</message>
<message name="mulResponse">
<part name="result" type="xsd:double"/><!-- ns__mul::result -->
</message>
<message name="divRequest">
<part name="a" type="xsd:double"/><!-- ns__div::a -->
<part name="b" type="xsd:double"/><!-- ns__div::b -->
</message>
<message name="divResponse">
<part name="result" type="xsd:double"/><!-- ns__div::result -->
</message>
<message name="powRequest">
<part name="a" type="xsd:double"/><!-- ns__pow::a -->
<part name="b" type="xsd:double"/><!-- ns__pow::b -->
</message>
<message name="powResponse">
<part name="result" type="xsd:double"/><!-- ns__pow::result -->
</message>
<portType name="calcPortType">
<operation name="add">
<documentation>Sums two values</documentation>
<input message="tns:addRequest"/>
<output message="tns:addResponse"/>
</operation>
<operation name="sub">
<documentation>Subtracts two values</documentation>
<input message="tns:subRequest"/>
<output message="tns:subResponse"/>
</operation>
<operation name="mul">
<documentation>Multiplies two values</documentation>
<input message="tns:mulRequest"/>
<output message="tns:mulResponse"/>
</operation>
<operation name="div">
<documentation>Divides two values</documentation>
<input message="tns:divRequest"/>
<output message="tns:divResponse"/>
</operation>
<operation name="pow">
<documentation>Raises a to b</documentation>
<input message="tns:powRequest"/>
<output message="tns:powResponse"/>
</operation>
</portType>
<binding name="calc" type="tns:calcPortType">
<SOAP:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="add">
<SOAP:operation style="rpc" soapAction=""/>
<input>
<SOAP:body use="encoded" namespace="urn:calc" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
</input>
<output>
<SOAP:body use="encoded" namespace="urn:calc" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
</output>
</operation>
<operation name="sub">
<SOAP:operation style="rpc" soapAction=""/>
<input>
<SOAP:body use="encoded" namespace="urn:calc" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
</input>
<output>
<SOAP:body use="encoded" namespace="urn:calc" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
</output>
</operation>
<operation name="mul">
<SOAP:operation style="rpc" soapAction=""/>
<input>
<SOAP:body use="encoded" namespace="urn:calc" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
</input>
<output>
<SOAP:body use="encoded" namespace="urn:calc" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
</output>
</operation>
<operation name="div">
<SOAP:operation style="rpc" soapAction=""/>
<input>
<SOAP:body use="encoded" namespace="urn:calc" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
</input>
<output>
<SOAP:body use="encoded" namespace="urn:calc" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
</output>
</operation>
<operation name="pow">
<SOAP:operation style="rpc" soapAction=""/>
<input>
<SOAP:body use="encoded" namespace="urn:calc" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
</input>
<output>
<SOAP:body use="encoded" namespace="urn:calc" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
</output>
</operation>
</binding>
<service name="calc">
<documentation>Simple calculator service</documentation>
<port name="calc" binding="tns:calc">
<SOAP:address location="http://192.168.20.240:8888/calcserver++"/>
</port>
</service>
</definitions>