package com.java1234.webservice;
import java.util.List;
import org.apache.cxf.frontend.ClientProxy;
import org.apache.cxf.interceptor.LoggingInInterceptor;
import org.apache.cxf.interceptor.LoggingOutInterceptor;
public class Client {
public static void main(String[] args) {
HelloWorldService service=new HelloWorldService();
HelloWorld helloWorld=service.getHelloWorldPort();
org.apache.cxf.endpoint.Client client= ClientProxy.getClient(helloWorld);
client.getInInterceptors().add(new LoggingInInterceptor());//添加
client.getOutInterceptors().add(new LoggingOutInterceptor());
/*
*数据只能传输List<T>,不能传输map,所以map的key放入T中,便可以轻松传输!
*/
MyRoleArray arry = helloWorld.getRoles();
List<MyRole> roleList= arry.item;
for(int i=0; i<roleList.size();i++){
MyRole my=roleList.get(i);
System.out.println(my.key+":");
for(Role r:my.value){
System.out.println(r.getId()+","+r.getRoleName());
}
System.out.println("========================");
}
}
}
运行结果:
信息: Outbound Message
---------------------------
ID: 1
Address: http://192.168.244.1/helloWorld
Encoding: UTF-8
Http-Method: POST
Content-Type: text/xml
Headers: {Accept=[*/*], SOAPAction=[""]}
Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><ns2:getRoles xmlns:ns2="http://webservice.java1234.com/"/></soap:Body></soap:Envelope>
--------------------------------------
八月 02, 2016 12:20:53 下午 org.apache.cxf.services.HelloWorldService.HelloWorldPort.HelloWorld
信息: Inbound Message
----------------------------
ID: 1
Response-Code: 200
Encoding: UTF-8
Content-Type: text/xml; charset=UTF-8
Headers: {content-type=[text/xml; charset=UTF-8], Date=[Tue, 02 Aug 2016 04:20:53 GMT], Server=[Jetty(9.2.11.v20150529)], transfer-encoding=[chunked]}
Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><ns2:getRolesResponse xmlns:ns2="http://webservice.java1234.com/"><return><item><key>jack</key><value><id>3</id><roleName>程序员</roleName></value></item><item><key>java1234</key><value><id>1</id><roleName>技术总监</roleName></value><value><id>2</id><roleName>架构师</roleName></value></item></return></ns2:getRolesResponse></soap:Body></soap:Envelope>
--------------------------------------
jack:
3,程序员
========================
java1234:
1,技术总监
2,架构师
========================
|