通過wsdl文件生成java客戶端及簡單調(diào)用

2018-12-14 16:00 更新

首先:下載安裝axis1.4 下載地址(http://download.csdn.net/download/u011255725/9911612) 環(huán)境路徑配置:classpath:D:\Axis2\axis1.4\axis-1_4\lib. axis1.4文件目錄結(jié)構(gòu) 在cc.bat中配置相關(guān)的生成規(guī)則(包括生成客戶端的文件需要的關(guān)鍵jar包,生成文件目錄和地址,wsdl文件等)如下:

set AXIS_HOME=D:\Axis2\axis1.4\axis-1_4
set CLASSPATH=,;%AXIS_HOME%\lib\axis.jar;%AXIS_HOME%\lib\axis-ant.jar;%AXIS_HOME%\lib\commons-discovery-0.2.jar;%AXIS_HOME%\lib\commons-logging-1.0.4.jar;%AXIS_HOME%\lib\jaxrpc.jar;%AXIS_HOME%\lib\log4j-1.2.8.jar;%AXIS_HOME%\lib\saaj.jar;%AXIS_HOME%\lib\wsdl4j-1.5.1.jar;%AXIS_HOME%\lib\mail.jar;
java org.apache.axis.wsdl.WSDL2Java -p com.tcl.esb.matplantsync SI_SRM_MatPlantSync_OB.wsdl

配置完成后雙機cc.bat文件即可生成客戶端程序com.tcl.esb.matplantsync。

注意:如果出現(xiàn)閃退情況,請運行cmd,輸入java回車看java路徑是否可以查看java信息,如果出現(xiàn):系統(tǒng)找不到文件 C:\ProgramData\Oracle\Java\javapath\java.exe 解決方法:把環(huán)境變量配置path里邊的java配置移到最前面。

使用方法: public static List<ZSMM_SMR_MAT_PLANT_SYNC> getMatplansync(String startDay,String endDay,String flag) throws Exception{

    
    List<ZSMM_SMR_MAT_PLANT_SYNC> result=new ArrayList<ZSMM_SMR_MAT_PLANT_SYNC>();
        BC_SRM_MatPlantSync_Sender_SI_SRM_MatPlantSync_OBLocator locator =new BC_SRM_MatPlantSync_Sender_SI_SRM_MatPlantSync_OBLocator();
        SI_SRM_MatPlantSync_OBBindingStub stub = (SI_SRM_MatPlantSync_OBBindingStub) locator.getHTTP_Port();
        stub.setUsername(Config.getUserName());
        stub.setPassword(Config.getPassWord());
        stub.setTimeout(Config.getTimeOut());
        // 次數(shù)設(shè)置true,登錄后才能保持登錄狀態(tài),否則第二次調(diào)用ws方法時仍然會提示未登錄。
        stub.setMaintainSession(true);
        // 調(diào)用ws的方法
        ZFR15MM_SRM_MAT_PLANT_SYNC sync=new ZFR15MM_SRM_MAT_PLANT_SYNC();
        //輸出
        ZSMM_SMR_MAT_PLANT_SYNC[] zfr={};
        //獲取輸入?yún)?shù)
        String ivFullFlag=flag;
        String ivBegda=startDay;
        String ivEndda=endDay;

        
        sync.setIV_FULL_FLAG(ivFullFlag);
        Date d1=new Date();
        Date d2=new Date();
        d1.setGenericDateValue(ivBegda);
        d2.setGenericDateValue(ivEndda);
        sync.setIV_BEGDA(d1);
        sync.setIV_ENDDA(d2);

        
        sync.setET_MAT_PLANT_INFO(zfr);
        //設(shè)置消息頭參數(shù)
        ZS00_MSGHEADER msgHeader=new ZS00_MSGHEADER();
        msgHeader.setAPP_ID("SRM");
        msgHeader.setAPP_NAME("供應(yīng)商管理系統(tǒng)");
        msgHeader.setSUBMITDATE(DateUtil.getTodayTime());
        msgHeader.setUSERID("srmadmin");
        msgHeader.setUSERNAME("供應(yīng)商管理系統(tǒng)");

        
        sync.setIV_MSGHEADER(msgHeader);

        
        logger.info("獲取工廠—物料數(shù)據(jù)接口請求:"+sync.toString());
        ZFR15MM_SRM_MAT_PLANT_SYNCResponse rsp=stub.SI_SRM_MatPlantSync_OB(sync);
        ZSMM_SMR_MAT_PLANT_SYNC[] zs=rsp.getET_MAT_PLANT_INFO();
        if(null!=zs&&zs.length>0){
            logger.info("條數(shù):"+zs.length);
            result=Arrays.asList(zs);
        }
    return result;
}
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號