博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
WebService(二)发送数据+接收数据并进行处理操作
阅读量:5292 次
发布时间:2019-06-14

本文共 3670 字,大约阅读时间需要 12 分钟。

(一)使用WebService发送数据

1.定义webService接口
import java.util.List;import javax.jws.WebParam;import javax.jws.WebService;import com.mxz.fvp.dto.ADto; @WebServicepublic interface MxzReceiveService {    public boolean addExpressBarRecord(@WebParam(name = "record") ADto record) throws Exception;// 方法1    public boolean batchAddExpressBarRecord(@WebParam(name = "listRecord") List listRecord) throws Exception; // 方法2}

2.工具类的创建

public class AUtil {    private final static Logger logger = Logger.getLogger(AUtil.class);    private static ApplicationContext factory = null;    private static MxzReceiveService mxzReceiveService ;    private static BService bService;    static {        factory = new ClassPathXmlApplicationContext("classpath:application-*.xml");        bService = (BService) factory.getBean("bService");    }     private static synchronized MxzReceiveService getMxzReceiveService () {      try {            if (mxzReceiveService  == null) {              JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();              factory.setServiceClass(MxzReceiveService class); // 1设置请求接口              String linkUrl = CommonDataUtil.getConfigValue(ServiceConstants.MXZ_WEBSERVICE_URL);// 2查询数据库获取链接地址              factory.setAddress(linkUrl + "services/MxzReceiveService "); //3设置地址              mxzReceiveService = (MxzReceiveService ) factory.create(); // 4创建客户端对象           }      } catch (Exception e) {          logger.error("mxzReceiveService Webservice initial error!");          mxzReceiveService = null;     }      return mxzReceiveService ;   }

3.具体使用

public static void batchAddExpressBarRecord(List listRecord) {        try {                if(getFvpReceiveService() == null) // 3.1初始化链接对象                       return;                        //3.2数据其他处理操作            if(!validateCode(listRecord))                 return;                     // 3.3调用接口            boolean isSendSuccess = mxzReceiveService .batchAddExpressBarRecord(listRecord);            if(!isSendSuccess) {                //....其他操作                return;            }            triggerCsdOorderBackState(listRecord); //3.3其他操作        } catch (Exception e) {    //3.3其他操作            saveSendFvp(listRecord, "m"); //....其他操作            logger.error("Sent to mxzReceiveService.batchAddExpressBarRecord fail!" + e.getMessage());        }   }

 

(一)使用WebService接收数据并处理
1.创建webService接口
xml配置	

  

import javax.jws.WebParam;import javax.jws.WebService; @WebService(targetNamespace = "http://rece/")public interface AServer {public void receiveLog(@WebParam(name = "wayNo") String wayNo,        @WebParam(name = "inputTypeCode") String inputTypeCode,        @WebParam(name = "isSuccess") boolean isSuccess,        @WebParam(name = "failreason") String failreason);   }

2.定义接口实现类,并实现其他操作

@WebService(targetNamespace = "http://waybilllog/", endpointInterface = "com.mxz.service.webService.AServer ")public class AServerImpl implements AServer{      private Logger logger=Logger.getLogger(this.getClass()); // this:AServerImpl       private BService bService; //提供gettter/setter方法      private CDaoImpl cDao; //提供gettter/setter方法 @Overridepublic void receiveLog(String waybillNo, String inputTypeCode, boolean isSuccess, String failreason) {            logger.info("接收返回结果:单号"+wayNo+",类型:"+inputTypeCode+",状态:"+isSuccess+",描述:"+failreason);                       try{ //其他操作                 .........................           }catch(Exception ex){                logger.error("接收返回结果失败:"+wayNo+","+inputTypeCode+","+isSuccess+","+failreason,ex);          }   }}

 

 
 
 

转载于:https://www.cnblogs.com/mxzer/p/6411632.html

你可能感兴趣的文章
Notepad++删除空行的多种实现办法
查看>>
SSH框架是个怎么回事?
查看>>
如何回报项目状态
查看>>
bootstrap3
查看>>
MySQL创建数据库和数据库表
查看>>
Codeforces Round #423 (Div. 2) C 思维,并查集 或 线段树 D 树构造,水
查看>>
Educational Codeforces Round 26 D dp,思维
查看>>
Spring Boot使用Servlet、Filter或Listener的方式
查看>>
ecshop中 transport.js/run() error:undefined
查看>>
POJ 1321 棋盘问题(DFS)
查看>>
mybatis中if及concat函数的使用
查看>>
第四周作业
查看>>
在ListView中获取当前行的索引
查看>>
Android 创世纪 第一天
查看>>
[重温数据结构]一种自平衡二叉查找树avl树的实现方法
查看>>
Java并发编程实战 第3章 对象的共享
查看>>
多线程系列(三):线程池基础
查看>>
【转载】数据库读写分离和垂直分库、水平分表
查看>>
String、StringBuffer和StringBuilder的区别
查看>>
mac terminal基本命令
查看>>