Web Service 02

/**
     * 删除多个url的对象的web Service报文 TODO 添加方法注释。 ListKey不能为空由调用者验证.
     * @param listKeys 选择Key集合
     * @return reqMsg
     */
    public static SOAPMessage builDelUrlsMessage(List<String> listKeys)
    {
        try
        {
            logger.debug("build Del Urls Message begin.");
            buildSOAPMessageHeader();
            if (body != null)
            {
                // 定义报文体
                SOAPBodyElement bodyElement = body
                        .addBodyElement(envelope
                                .createName("EndPointUrlRequestMsg", "esb",
                                        "http://ngbss.huawei.com/esb/endpointurl/webservice"));
                SOAPBodyElement requestHeader = (SOAPBodyElement) bodyElement
                        .addChildElement("RequestHeader", "esb");
                SOAPBodyElement requestBody = (SOAPBodyElement) bodyElement
                        .addChildElement("RequestBody", "esb");

                requestHeader.addChildElement("userId", "esb").addTextNode(
                        "500");
                requestHeader.addChildElement("password", "esb").addTextNode(
                        "500");

                SOAPBodyElement urls = (SOAPBodyElement) requestBody
                        .addChildElement("urls", "esb");
                urls.setAttribute("Action", "Del");

                for (int i = 0; i < listKeys.size(); i++)
                {
                    SOAPBodyElement url = (SOAPBodyElement) urls
                            .addChildElement("url", "esb");
                    url.addChildElement("key", "esb").addTextNode(
                            listKeys.get(i));
                }

            }
            logger.debug("build Del Urls Message sueecss.");

        }
        catch (Exception e)
        {
            logger.error("build Del Urls Message failed and The Message was:"
                    + e.getMessage());
            return reqMsg;
        }
        return reqMsg;
    }

    /**
     * 向ESB流程发送ESB WebService请求 TODO 添加方法注释。由说这里前台界面无法对ESBFlowUrl验证是否正确还
     * 这个URL是否可以调用的所以这里先用IE测试ESB Web Service是否正在行进中. ESBFlowURl验证
     * @param esbFlowUrl  请求url
     * @return respMsg
     */
    public static SOAPMessage sendWebServiceMessage(String esbFlowUrl)
    {
        logger.debug("Send Web Service Message To ESB Flows begin.");
        SOAPMessage respMsg = null;
        try
        {
            // 初始化连接工厂
            init();
            URL endPoint = new URL(esbFlowUrl);
            // 调用EBS Flow Web Service
            respMsg = conn.call(reqMsg, endPoint);

        }
        catch (Exception e)
        {
            logger
                    .error("Send Web Service Message To ESB Flows failed and The Messsage was:"
                            + e.getMessage());
            return respMsg;
        }
        logger.debug("Send Web Service Message To ESB Flows sueecss.");
        return respMsg;
    }

}

猜你喜欢

转载自xieguowei123485.iteye.com/blog/1511185