Axis2 开发实例
环境说明
Axis2 1.6.2
Eclipse : Indigo Service Release 1
下载Axis2
从http://axis.apache.org/axis2/java/core/download.cgi 下载最新的axis2
Eclipse 配置Axis2
在windows-->Preferences-->WebServices-->Axis2Preferences-->设置 Axis2 runtime location为Axis2下载后的位置
创建工程
在eclipse里建立web project工程
注意: Dynamic web module version 的版本选择3.0以下。
配置Axis2
然后继续完成工程的创建。
注意,这里不需要配置web.xml
启动tomcat然后在浏览器输入
http://localhost:8080/WebServiceProject/axis2-web/
就能够看到界面了。
创建WebService
新建两个,代码如下:
package org.test.service; import java.util.ArrayList; import java.util.List; import org.test.entity.Student; public class QueryStudents { public List<Student> queryStudent(Integer id) { List<Student> list = new ArrayList<Student>(); Student student1 = new Student(); student1.setId(1); student1.setPsw("abc"); student1.setUser("ABC"); list.add(student1); return list; } }
package org.test.entity; import java.io.Serializable; public class Student implements Serializable { private static final long serialVersionUID = 1L; private Integer id; private String user; private String psw; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getUser() { return user; } public void setUser(String user) { this.user = user; } public String getPsw() { return psw; } public void setPsw(String psw) { this.psw = psw; } }
创建Student 的目的是以后要将Spring与Hibernate集成进来,后面再说。
然后在QueryStudent类上点右键 选择 web serives –> create web service
有两个滑块,把上面的滑块滑至最上端(为Test service)。把下方滑块滑至第二格(Develop client)表示生成当前服务的客户端代码
然后需要选择 web service runtime 为 Axis2
步骤如
然后一路next完成。
注意,如果需要生成客户端的测试代码,需要勾选 junit选项。
当服务启动后,在浏览器里输入
http://localhost:8080/WebServiceProject/services/QueryStudents?wsdl
就可以看到wsdl了
测试
因为在create web service 的第一步时选择了生成client端,所以在结束的时候会生成一个客户端的工程。
在客户端工程中加入junit
然后添加测试类,代码如下:
package org.test.service; import java.util.ArrayList; import java.util.List; import org.test.entity.Student; public class QueryStudents { public List<Student> queryStudent(Integer id) { List<Student> list = new ArrayList<Student>(); Student student1 = new Student(); student1.setId(111); student1.setPsw("abc"); student1.setUser("ABC"); list.add(student1); return list; } }
运行后就能够得到在服务端代码里的ID值了。
如何与spring、hibernate明天继续。
本文参考: