首先搭建axis服务
1.解压axis-bin-1_4.tar.gz文件。(如:E:\axis-bin-1_4\axis-1_4)
2.环境变量加入
AXIS_HOME
E:\axis-bin-1_4\axis-1_4
AXIS_LIB
%AXIS_HOME%/lib
AXIS_CLASSPATH
%AXIS_LIB%/activation.jar;
%AXIS_LIB%/mail.jar;
%AXIS_LIB%/xmlsec-1.5.0.jar;
%AXIS_LIB%/axis.jar;
%AXIS_LIB%/axis-ant.jar;
%AXIS_LIB%/commons-discovery-0.2.jar;
%AXIS_LIB%/commons-logging-1.0.4.jar;
%AXIS_LIB%/jaxrpc.jar;
%AXIS_LIB%/saaj.jar;
%AXIS_LIB%/log4j-1.2.8.jar;
%AXIS_LIB%/wsdl4j-1.5.1.jar
classpath %AXIS_CLASSPATH%
3.myeclipse中新建webproject “myaxis” 导入相关jar包,在“E:\axis-bin-1_4\axis-1_4\lib”中找
4.新建服务端类:webservice.axis.wsdd.HelloWorldWSDD.java
package webservice.axis.wsdd; public class HelloWorldWSDD { public String sayHello(String name) { System.out.println("hello !" + name); return "hello : " + name; } }
在web-INFO下建立deploy.wsdd文件
<?xml version="1.0" encoding="UTF-8"?> <deployment xmlns="http://xml.apache.org/axis/wsdd/" xmlns:java="http://xml.apache.org/axis/wsdd/providers/java"> <service name="HelloWorldWSDD" provider="java:RPC"> <parameter name="className" value="webservice.axis.wsdd.HelloWorldWSDD" /> <parameter name="allowedMethods" value="*" /> <parameter name="scope" value="request" /> </service> </deployment>
一、java2WSDL
在tomcat中部署此工程并启动之,然后win+R 输入cmd
进入“E:\Tomcat 6.0\webapps\myaxis\WEB-INF>”,输入java org.apache.axis.client.AdminClient deploy.wsdd -lhttp://127.0.0.1:8000/myaxis/services/AdminService回车
查看“E:\Tomcat 6.0\webapps\myaxis\WEB-INF”目录下生成文件“server-config.wsdd”。
浏览器中键入“http://localhost:8000/myaxis/servlet/AxisServlet”查看已部署的服务端HelloWorldWSDD
5.新建客户端类webservice.axis.wsdd.ClientWSDD.java 测试
package webservice.axis.wsdd; import javax.xml.namespace.QName; import org.apache.axis.client.Call; import org.apache.axis.client.Service; public class ClientWSDD { public static void main(String[] args) { try { String url = "http://localhost:8000/myaxis/services/HelloWorldWSDD"; Service s = new Service(); Call c = (Call) s.createCall(); c.setTargetEndpointAddress(url); c.setOperationName(new QName(url,"sayHello")); String result = (String) c.invoke(new Object[] {"beyond"}); System.out.println("result = " + result); } catch (Exception e) { e.printStackTrace(); } } }
运行之即可。
二、利用WSDL2Java工具生成工程(用.wsdl文件生成java工程)
win+R --> cmd 输入“java org.apache.axis.wsdl.WSDL2Java”测试环境变量是否配置正确
命令格式:java org.apache.axis.wsdl.WSDL2Java -o [文件夹名] -d Session -s -S true [wsdl文件名]
输入“java org.apache.axis.wsdl.WSDL2Java -o Server000 -d Session -s -S true EpamsServices.wsdl”生成服务端代码
输入“java org.apache.axis.wsdl.WSDL2Java -o Client -d Session -S true EpamsServices.wsdl”生成客户端代码
将server文件夹中的文件copy到myaxis的src目录下,然后将deploy.wsdd文件拷贝到web-info中进行生成“server-config.wsdd”文件
方法见第一步。