一、相关概念
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLiIXZ05WZD9CX5RXa2Fmcn9CXwczLcVmds92czlGZvwVP9EUTDZ0aRJkSwk0LcxGbpZ2LcBDM08CXlpXazRnbvZ2LcRlMMVDT2EWNvwFdu9mZvwVPFdUYoh2VZ9mRHFmdGdEZ1xWbhZXUYpVd1kmYr50MZV3YyI2cKJDT29GRjBjUIF2LcRHelR3LcJzLctmch1mclRXY39TN0YzM0YTMyIjNxATM3EDMy8CX0Vmbu4GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.jpg)
二、代码示例
服务端:
package com.dataType;
import java.util.List;
import javax.xml.ws.Endpoint;
import org.apache.cxf.interceptor.Interceptor;
import org.apache.cxf.interceptor.LoggingInInterceptor;
import org.apache.cxf.interceptor.LoggingOutInterceptor;
import org.apache.cxf.jaxws.EndpointImpl;
import org.apache.cxf.message.Message;
public class runService {
public static void main(String[] args) {
//指定webservice的访问url
String address = "http://192.168.1.100:8080/test/dataType" ;
Endpoint endpoint = Endpoint.publish(address, new DataTypeWSImp());
System.out.println(endpoint);
EndpointImpl endpointImpl = (EndpointImpl)endpoint;
//服务器日志入拦截器
List<Interceptor<? extends Message>> inInterceptor = endpointImpl.getInInterceptors();
inInterceptor.add(new LoggingInInterceptor());
//服务器日志入拦截器
List<Interceptor<? extends Message>> outInterceptor = endpointImpl.getOutInterceptors();
outInterceptor.add(new LoggingOutInterceptor());
System.out.println("发布成功!!!");
}
}
客户端:
package com.datatype;
import java.lang.annotation.Annotation;
import java.util.List;
import org.apache.cxf.endpoint.Client;
import org.apache.cxf.frontend.ClientProxy;
import org.apache.cxf.interceptor.InInterceptors;
import org.apache.cxf.interceptor.Interceptor;
import org.apache.cxf.interceptor.LoggingInInterceptor;
import org.apache.cxf.interceptor.LoggingOutInterceptor;
import org.apache.cxf.message.Message;
import com.datatype.GetAllStudentsMapResponse.Return;
import com.datatype.GetAllStudentsMapResponse.Return.Entry;
public class test {
public static void main(String[] args) {
DataTypeWSImpService fac = new DataTypeWSImpService();
DataTypeWS ws = fac.getDataTypeWSImpPort();
Client client = ClientProxy.getClient(ws);
//客户端入拦截器
List<Interceptor<? extends Message>> inInterceptor = client.getInInterceptors();
inInterceptor.add(new LoggingInInterceptor());
//客户端出拦截器
List<Interceptor<? extends Message>> outInterceptor = client.getOutInterceptors();
outInterceptor.add(new LoggingOutInterceptor());
ws.addStudent(new Student(111, "mark", 2.3f));
}
}