JAX-WS学习(二)、服务端返回一个List集合

1、服务端代码:

package com.sxit;

import java.util.ArrayList;
import java.util.List;

import javax.jws.WebMethod;
import javax.jws.WebService;

@WebService
public class GetList {
	
	@WebMethod
	public List<String> getList(){
		List<String> list = new ArrayList<String>();
		list.add("sb1");
		list.add("sb2");
		list.add("sb3");
		return list;
	}
	
}

 2、生成wsdl文件:

E:\Workspaces\Service\WebRoot\WEB-INF>wsgen -cp E:\Workspaces\Service\WebRoot\WE
B-INF\classes com.sxit.GetList -wsdl

 3、根据wsd文件和binding.xml文件生成本地代码:

E:\Workspaces\Service\WebRoot\WEB-INF>wsimport -b binding.xml -s in GetListServi
ce.wsdl

 4、客户端代码(轮询):

package com.sxit;

import java.util.List;
import java.util.concurrent.ExecutionException;

import javax.xml.ws.Response;

public class SynchronizeClient {

	public static void main(String[] args) {
		
		GetListService service = new GetListService();
		GetList port = service.getGetListPort();
		
		Response<GetListResponse> response = port.getListAsync();
		while(!response.isDone()){
			System.out.println("未返回....");
		}
		
		try {
			GetListResponse get = response.get();
			List<String> list = get.getReturn();
			for(String str:list){
				System.out.println(str);
			}
		} catch (InterruptedException e) {
			e.printStackTrace();
		} catch (ExecutionException e) {
			e.printStackTrace();
		}
	}
}

 5、打印信息:

未返回....
未返回....
未返回....
未返回....
未返回....
未返回....
未返回....
未返回....
未返回....
未返回....
未返回....
sb1
sb2
sb3

转自:http://blog.csdn.net/lifetragedy/article/details/7206589

猜你喜欢

转载自luan.iteye.com/blog/1824843