2)新建web工程 名称为:axis
拷贝Axis包中 webapps/axis 目录中的所有文件到工程目录的 webroot 目录中,
然后 刷新 工程
新建一个 java 文件,文件名称为:HelloClient,文件内容如下:
import java.util.List;
import java.util.ArrayList;
public class Hello
{
public String getName(String name)
{
return "Hello "+ name;
}
public List getList()
{
List list= new ArrayList();
list.add(0,"aa");
list.add(1,"bb");
list.add(2,"cc");
return list;
}
}
现在拷贝 HelloClient.java 到 webroot 目录中,并改名称为 Hello.jws
现在布署工程,并启动服务
启动浏览器并打开以下链接
http://localhost:8080/axis/Hello.jws?wsdl
3)新建一个测试类:代码如下
import java.util.ArrayList;
import java.util.List;
import javax.xml.namespace.QName;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
public class testAXIS
{
public static void main(String[] args)
{
try
{
String endpoint = "http://localhost:9000/axis/Hello.jws";
Service service = new Service();
Call call = null;
call = (Call) service.createCall();
call.setOperationName(new QName(endpoint, "getName"));
call.setTargetEndpointAddress(new java.net.URL(endpoint));
String str = (String) call.invoke(new Object[] { " jian" });
System.out.println(str);
//这里是复杂数据类型,需要另外配置call.invoke才能转换
//call.setOperationName(new QName(endpoint, "getList"));
// call.setTargetEndpointAddress(new java.net.URL(endpoint));
//List list = (ArrayList) call.invoke(new Object[] {});
// System.out.println(list.size());
}
catch (Exception ex)
{
ex.printStackTrace();
}
}
}
注意需要5个JAR包:axis.jar,saaj.jar,jaxrpc.jar,commons-logging-1.0.4.jar,commons-discovery-0.2.jar