WebService(三)--获取服务端复杂对象

比如我们要请求一个webservice,想得到其定义的对象。这里没有用到生成的客户端代码,生成的代码问题太多了。

1: 服务端,定义POJO

比如Student  三个属性id,name,pwd设置get/setter方法

2:接口 比如 IStudent

定义了一个返回ArrayList的方法,ArrayList存储的都是Student

假设定义方法:  public ArrayList getStudentById(Integer classid);

我们需要在接口同一目录下建一个文件:接口名.aegis.xml 即 IStudent.aegis.xml

<?xml version="1.0" encoding="UTF-8"?> 
<mappings> 
   <mapping> 
      <method name="getStudentById"> 
         <parameter index="0" componentType="java.lang.Integer" /> 
         <return-type componentType="com.asiainfo.bean.Student"/> 
      </method> 
   </mapping> 
</mappings> 

其他配置都与一般的WebService配置一样。

客户端:

客户端只需要复制下服务端的POJO,接口和xml即可。

		     //调用web services方法的返回信息
		     ArrayList<Student> list = service.getStudentById(2);
		     System.out.println(list.size());
		     for (Student stu:list ) {
		    	 System.out.println(stu.getId()+stu.getName()+stu.getPwd());
		     }

  

猜你喜欢

转载自maclab.iteye.com/blog/1161497