webservice的axis服务的使用

本文详细介绍了一个基于Webservice的集成过程,包括如何从wsdl文件生成Java代码,如何调用Webservice接口并处理响应,以及如何在插件中实现具体业务逻辑。

以raid模块为例其他模块只需要改下模块名

1.找到wsdl文件和pub.xsd文件    itl(版本模块)\source\gui\gui_web\ubs_webservice_demo\wsdl
2.使用wsdl2java命令生成java文件   
    wsdl2java -uri wsdl文件路径(F:\wsdl\raidmod.wsdl)-o 生成路径(F:\wsdl) -p 包结构(com.macrosan.raidmod)  
3.将会生成两个文件   RaidmodCallbackHandler.java文件和RaidmodStub.java文件
4.将生成的两个java文件放在插件plugins下的com.macrosan.raid.model下面
5.自己写调用方法的java文件,调用文件命名RaidmodMethod.java

public static int delRaid(String raidName, RaidmodEndPoint endPoint) {

        RaidmodStub.Raid_delete_request request = null;//通过request对象传到调用方法
        RaidmodStub.Raid_delete_response response = null;//通过response对象去返回调用结果

        try {
            RaidmodStub stub = new RaidmodStub(endPoint.getEndPoint());//获取接口对象使用这个对象调用接口方法
            setCallParms(stub);设置webservice调用的超时时间、HTTP分段传输机制、最大线程数
            request = new RaidmodStub.Raid_delete_request();//从接口获取request对象
            request.setRaid_name(raidName);//需要操作的raid名字
            
            TestCodeTime.printBeforeWebServiceTime("raid_delete");//webservice调用开始时间
            response = stub.raid_delete(request);
            TestCodeTime.printAfterWebServiceTime("raid_delete");//webservice调用结束时间

            avoidCloseWait(stub);//调用webservice以后清空资源,防止因为close_wait导致的内存溢出等异常
        } catch (Exception e) {
            logger.error("operation exception.",e);
        }

        String operate = String.format(Message
                .getString("DELETE.RAID.AUDIT.LOG"), raidName);
        if (response == null) {
            AuditLog.send(endPoint.getDevice(), operate, WS_ERR, endPoint.getUser());
            RootLogger.getLogEx().debug("webservice error");
            return WS_ERR;
        }

        int ret = response.getRet();
        if (WS_OK != ret) {
            // error 抛异常
            RootLogger.getLogEx().debug("delete raid error: " + ret);
        }
        AuditLog.send(endPoint.getDevice(), operate, ret, endPoint.getUser());
        return ret;
    }

//webservice任务结束

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值