1. 程式人生 > >CXF開發webservice需要的最少jar包,CXF釋出和呼叫客戶端程式碼

CXF開發webservice需要的最少jar包,CXF釋出和呼叫客戶端程式碼

簡單介紹一下cxf開發客戶端和服務端的程式碼塊

釋出服務端程式碼:

Java程式碼  收藏程式碼
  1. @WebService
  2. publicinterface ApprovalService {  
  3.     /** 
  4.      * 3.1.10.  審批結果回撥介面 
  5.      * @param status 
  6.      * @return 
  7.      */
  8.     @WebMethod
  9.     String syncApprovalResult(@WebParam(name = "status") String status);  
  10. }  

實現類

Java程式碼  收藏程式碼
  1. @WebService
  2. publicclass ApprovalServiceImpl implements ApprovalService{  
  3.     @WebMethod
  4.     public String syncApprovalResult(String status) {  
  5.         System.out.println("************************************************");  
  6.         returnnull;  
  7.     }  
  8. }  

 釋出webservice

Java程式碼  收藏程式碼
  1. @Service
  2. publicclass
     ApprovalPublish implements Serializable{  
  3.     @PostConstruct//此方法為我專案中spring容器啟動自動釋出而寫的
  4.     publicvoid publishApprovalService(){  
  5.         this.publish(ApprovalService.classnew ApprovalServiceImpl());  
  6.     }  
  7.     privatevoid publish(Class<?> clazz, Object implObj) {  
  8.         System.out.println("啟動webservice【"
    +clazz.getSimpleName()+"】");  
  9.         // 建立WebService服務工廠
  10.         JaxWsServerFactoryBean factory = new JaxWsServerFactoryBean();  
  11.         // 註冊WebService介面
  12.         factory.setServiceClass(clazz);  
  13.         // 釋出介面
  14.         factory.setAddress("http://localhost:9000/e7cc/" + clazz.getSimpleName());  
  15.         factory.setServiceBean(implObj);  
  16.         // factory.getInInterceptors().add(new LoggingInInterceptor());
  17.         // factory.getOutInterceptors().add(new LoggingOutInterceptor());
  18.         // 建立WebService
  19.         factory.create();  
  20.     }  
  21.     publicstaticvoid main(String[] args) {  
  22.         new ApprovalPublish().publishApprovalService();  
  23.     }  
  24. }  

客戶端程式碼

Java程式碼  收藏程式碼
  1. publicstaticvoid main(String[] args) {  
  2.         JaxWsProxyFactoryBean  factoryBean=new JaxWsProxyFactoryBean();   
  3.         factoryBean.getInInterceptors().add(new LoggingInInterceptor());   
  4.         factoryBean.getOutInterceptors().add(new LoggingOutInterceptor());   
  5.         factoryBean.setServiceClass(ProcessService.class);   
  6.         factoryBean.setAddress("http://localhost:9000/e7cc/ApprovalService?wsdl");   
  7.         ApprovalService approvalService=(ApprovalService) factoryBean.create();   
  8.         approvalService.syncApprovalResult("hello");  
  9.     }  

 以上為cxf釋出和呼叫服務的程式碼,這個是通過java的代理類做的,還有一種通過spring-application.xml的配置檔案區生成的,原理一樣,以後有時間補上吧