`

AXIS2数据解析和封装

阅读更多

一、解析示例:

 public Senddividendstrategy senddividendstrategy(OMElement in) {
        Senddividendstrategy svs = null;
        try {
            svs = EbsServiceImp.checkDataByOMElement(in);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return svs;
    }

    public static Senddividendstrategy checkDataByOMElement(OMElement element) throws AxisFault, Exception {
        Senddividendstrategy s = null;
        if (element != null) {
            Calendar cal = Calendar.getInstance();
            SimpleDateFormat formater = new SimpleDateFormat("yyyy-MM-dd");
            String mDateTime = formater.format(cal.getTime());
            List<Senddividendstrategy> sList = new ArrayList<Senddividendstrategy>();
            Senddividendstrategy svs = null;
            Iterator iteClient = element.getChildElements();
            while (iteClient.hasNext()) {
                OMNode omNodeClient = (OMNode) iteClient.next();
                if (omNodeClient.getType() == 1) {
                    OMElement omeClient = (OMElement) omNodeClient;
                    if (omeClient.getLocalName().toLowerCase().equals("sparams")) {
                        Iterator iteTParam = omeClient.getChildElements();
                        while (iteTParam.hasNext()) {
                            OMNode omNodeTParam = (OMNode) iteTParam.next();
                            if (omNodeTParam.getType() == 1) {
                                OMElement omeTParam = (OMElement) omNodeTParam;
                                if (omeTParam.getLocalName().toLowerCase().equals("sparam")) {
                                    svs = (Senddividendstrategy) BeanUtil.processObject(omeTParam, Senddividendstrategy.class, null, true, new DefaultObjectSupplier());
                                    sList.add(svs);
                                }
                            }
                        }
                    }
                }
            }
            s = senddividendstrategyCal(sList);
        }
        return s;
    }

 二、封装示例:

1、
    /**
     * 测试
     * @param statistic
     * @param userId
     * @return
     */
    public static String sendDataDfzwByOMElement() {
        targetEPR = new EndpointReference("http://192.168.10.227/ebsService/services/ebsService?wsdl");
        // 创建request SOAP包
        OMFactory fac = OMAbstractFactory.getOMFactory();
        // OMNamespace指定此SOAP文档名称空间
        OMNamespace om = fac.createOMNamespace("http://service.eee.shun.com", "client");
        // 创建元素,并指定其在om指代的名称空间中,元素名必须跟services.xml重大operation的name相同
        OMElement method = fac.createOMElement("senddividendstrategy", om);
        OMElement root;
        OMElement svsListOmElement;
        List<Senddividendstrategy> svsList = new ArrayList<Senddividendstrategy>();
        try {
            Senddividendstrategy s = new Senddividendstrategy();
            for (int i = 0; i < 10 ; i++) {
                s.setDividend_date("1");
                s.setCompany_code("2");
                s.setEquity_note_number("3");
                s.setDividend_line_number(Long.valueOf(4));
                s.setAssign_type_code("5");
                s.setAssign_source("6");
                s.setSegment3("7");
               
                s.setAmount(Long.valueOf(8));
                s.setCash_amount(Long.valueOf(9));
                s.setCash_proportion(Long.valueOf(10));
                s.setCash_person_proportion(Long.valueOf(11));
                s.setCapital_source("12");
                s.setCapital_amount(Long.valueOf(13));
                s.setCapital_proportion(Long.valueOf(14));
               
                s.setCapital_person_proportion(Long.valueOf(15));
                s.setEquity_category("16");
                s.setEquity_properties("17");
                s.setReduce_tax_amount(Long.valueOf(18));
                s.setStart_date("19");
               
                s.setManager_type("20");
                s.setProcess_startus("21");
                s.setData_status("22");
                s.setX_msg_data("23");
                s.setX_return_status("24");
               
                svsList.add(s);
            }
            root = fac.createOMElement("root", null);
            svsListOmElement = BeanUtil.getOMElement(new QName("sparams"), svsList.toArray(), new QName("sparam"), false, null);
            root.addChild(svsListOmElement);
            method.addChild(root);
           
            Options options = new Options();
            options.setTo(targetEPR);
            ServiceClient sender = new ServiceClient();
            sender.setOptions(options);
            // 发出request SOAP
            // 同时将得到的远端由senddividendstrategy方法返回的信息保存到result
            // 通过services.xml能准确找到senddividendstrategy方法所在的文件
            sender.sendReceive(method);
            String filePath = "E:\\ebs.xml";
            writeToFile(filePath, method);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }


2、
    //创建response SOAP包
            OMFactory fac = OMAbstractFactory.getOMFactory();
            //OMNamespace指定此SOAP文档名称空间
            OMNamespace omNs = fac.createOMNamespace("http://service.eee.shun.com", "service");
            //创建元素SafetyTrouble返回给客服端的元素,并指定其在omNs指代的名称空间中
            OMElement resp = fac.createOMElement("line-service", omNs);
            OMElement root = fac.createOMElement("root", null);
           
            ReturnOutParameter rop = new ReturnOutParameter();
            List<ReturnOutParameter> ropList = new ArrayList<ReturnOutParameter>();
            OMElement ropListOmElement;
           
            rop.setX_return_status(x_return_status);
            rop.setX_msg_data(x_msg_data);
            ropList.add(rop);
           
            //添加消息信息
            ropListOmElement = BeanUtil.getOMElement(new QName("rparams"), ropList.toArray(), new QName("rparam"), false, null);
            root.addChild(ropListOmElement);
            resp.addChild(root);
           
            return resp;

 

分享到:
评论

相关推荐

    java开源包2

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    JAVA上百实例源码以及开源项目源代码

    2个目标文件,FTP的目标是:(1)提高文件的共享性(计算机程序和/或数据),(2)鼓励间接地(通过程序)使用远程计算机,(3)保护用户因主机之间的文件存储系统导致的变化,(4)为了可靠和高效地传输,虽然用户...

    java开源包1

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    java开源包11

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    java开源包3

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    java开源包6

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    java开源包5

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    java开源包10

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    java开源包4

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    java开源包8

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    java开源包7

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    java开源包9

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    java开源包101

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    Java资源包01

    jActionScript 是一个使用了 JavaSWF2 的 Flash 解析器和生成器。提供了一个基于对象模型的 ActionScript 字节码,并提供了 ActionScript 字节码统计工具。 Java类重加载工具 JReloader JReloader 是一个用来重新...

    JAVA上百实例源码以及开源项目

    2个目标文件,FTP的目标是:(1)提高文件的共享性(计算机程序和/或数据),(2)鼓励间接地(通过程序)使用远程计算机,(3)保护用户因主机之间的文件存储系统导致的变化,(4)为了可靠和高效地传输,虽然用户...

    matlab离散点连成的两曲线的交点-intersections.m

    另外就是,对于一组离散点构成的曲线,很难知道它们的解析表达式,因此想通过非线性方程组求解的方法来求交点,就不大可能了(不过你可以用曲线拟合出函数解析式),因此,本帖的方法将会是一个较为有效求交点的方法...

Global site tag (gtag.js) - Google Analytics