1.安装Axis
1.到 http://ws.apache.org/网站下载Axis安装包
2.解压缩安装包,将webapps下的axis包拷贝到TOMCAT_HOME\webapps\下,以下约定axis_HOME为该TOMCAT_HOME\webapps\axis目录;
3.启动tomcat,访问http://localhost:8080/axis 检查安装是否成功;
3.添加jar包
axis.jar
axis-ant.jar
commons-discovery-0.2.jar
commons-logging-1.0.4.jar
jaxrpc.jar
log4j-1.2.8.jar
saaj.jar
wsdl4j-1.5.1.jar
client需要的Jar包:
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
saaj.jar
wsdl4j-1.5.1.jar
mail.jar
1.到 http://ws.apache.org/网站下载Axis安装包
2.解压缩安装包,将webapps下的axis包拷贝到TOMCAT_HOME\webapps\下,以下约定axis_HOME为该TOMCAT_HOME\webapps\axis目录;
3.启动tomcat,访问http://localhost:8080/axis 检查安装是否成功;
4.参考备用lib目录下的jar包。
2.配置Axis
1.添加server-config.wsdd文件,放到WEB-INF目录下(和web.xml一起)
<?xml version="1.0" encoding="gb2312"?>
<deployment xmlns="http://xml.apache.org/axis/wsdd/" xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
<globalConfiguration>
<parameter name="sendMultiRefs" value="true"/>
<parameter name="disablePrettyXML" value="true"/>
<parameter name="dotNetSoapEncFix" value="true"/>
<parameter name="enableNamespacePrefixOptimization" value="false"/>
<parameter name="sendXMLDeclaration" value="true"/>
<parameter name="sendXsiTypes" value="true"/>
<parameter name="attachments.implementation" value="org.apache.axis.attachments.AttachmentsImpl"/>
</globalConfiguration>
<handler type="java:org.apache.axis.handlers.http.URLMapper" name="URLMapper"/>
<service name="web service 名称" provider="java:RPC">
<parameter name="className" value="类路径"/>
<parameter name="scope" value="request"/>
<parameter name="allowedMethods" value="*"/>
<messageReceiver class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>
</service>
<transport name="http">
<requestFlow>
<handler type="URLMapper"/>
</requestFlow>
</transport>
</deployment>
2.修改web.xml文件,添加如下代码
<!-- Web Service -->
<servlet>
<servlet-name>AxisServlet</servlet-name>
<servlet-class>org.apache.axis.transport.http.AxisServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>
3.添加jar包
axis.jar
axis-ant.jar
commons-discovery-0.2.jar
commons-logging-1.0.4.jar
jaxrpc.jar
log4j-1.2.8.jar
saaj.jar
wsdl4j-1.5.1.jar
3.调用Axis实例(客户调用端)
String url = "http://localhost/web service 名称";
Service service = new Service();
Call call;
try {
call = (Call) service.createCall(); // 创建call对象
call.setTargetEndpointAddress(new java.net.URL(url)); // 建立连接
call.setOperationName("类方法名"); // 调用的方法
call.addParameter("inList", XMLType.SOAP_ARRAY, ParameterMode.IN); // 设置传入参数
call.setReturnType(new QName("ArrayList"), ArrayList.class); // 设置返回值
// 传入参数对象
List inList = new ArrayList();
Map inMap = new HashMap();
inMap.put("id", "1");
inMap.put("name", "test");
inList.add(inMap);
// 获得返回参数对象
ArrayList outList = (ArrayList) call.invoke(new Object[] {inList});
} catch (ServiceException e) {
e.printStackTrace();
}
client需要的Jar包:
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
saaj.jar
wsdl4j-1.5.1.jar
mail.jar