`
showcup
  • 浏览: 24640 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

HttpURLConnection调用WebService

阅读更多

protected ResponseMessage httpProtocol_http(String businessServiceName,RequestMessage message) throws Exception {

        String url_str = protocol + ":" + "//" + host + ":" + port + uri;

        logger.debug("asip服务地址:" + url_str);

        URL url = new URL(url_str);

        URLConnection connection = url.openConnection();

        /**

         * 构建soap消息

         */

        StringBuffer soapMessage = new StringBuffer();

        soapMessage.append("<soap:Envelope xmlns:soap=\"" + SOAP_NS + "\"  soap:encodingStyle=\"" + ENCODINGSTYLE_NS

                + "\" xmlns:xsd=\"" + XSD_NS + "\" xmlns:xsi=\"" + XSI_NS + "\">");

        soapMessage.append("<soap:Body>");

        soapMessage.append("<ns1:call xmlns:ns1=\"http://service.asip.regaltec.com/\">");

        soapMessage.append("<ns1:in0>").append(businessServiceName).append("</ns1:in0>");

        soapMessage.append("<ns1:in1>").append(StringEscapeUtils.escapeXml(message.toString())).append(

                "</ns1:in1>");

        soapMessage.append("<ns1:in2>").append("").append("</ns1:in2>");

        soapMessage.append("</ns1:call>");

        soapMessage.append("</soap:Body>");

        soapMessage.append("</soap:Envelope>");

        logger.debug("发送到asip的soap消息内容:" + soapMessage);

        byte[] b = soapMessage.toString().getBytes();

        HttpURLConnection con = (HttpURLConnection) connection;

        con.setRequestProperty("Content-Length", String.valueOf(b.length));

        con.setRequestProperty("Content-Type", "text/xml; charset=utf-8");

        con.setRequestMethod("POST");

        con.setDoOutput(true);

        con.setDoInput(true);

        OutputStream out = con.getOutputStream();

        out.write(b);

        out.close();

        // 发送完毕

        // 读取响应

        InputStreamReader isr = new InputStreamReader(con.getInputStream());

        BufferedReader in = new BufferedReader(isr);

        String inputLine = null;

        StringBuffer result = new StringBuffer();

        while ((inputLine = in.readLine()) != null) {

            result.append(inputLine);

        }

        in.close();

        logger.debug("接收到asip的soap消息内容:" + result);

        /**

         * 解析soap消息

         */

        DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();

        factory.setNamespaceAware(true);

        DocumentBuilder builder = factory.newDocumentBuilder();

        Document doc = builder.parse(new InputSource(new StringReader(result.toString())));

        String callResponse = getAsipReturnString(doc);

 

        return ResponseMessage.newInstance(callResponse);

    }

分享到:
评论
1 楼 shixiuteng 2012-08-24  
请问你有没有服务端的代码

相关推荐

    HttpURLConnection调用.net WebService

    2. **设置请求方法**:调用`setRequestMethod("POST")`,因为通常调用WebService都是POST方式。 3. **设置请求属性**:设置请求头,比如`Content-Type`应设为`text/xml;charset=UTF-8`,表示发送的数据是XML格式。 4...

    使用Http post的方式调用webservice

    在调用WebService时,POST方法可以承载请求参数,将其封装在请求体中发送到服务端。 1. **构建HTTP请求** 在Java中,可以使用`java.net.URL`、`java.net.HttpURLConnection`或第三方库如Apache HttpClient来构建...

    android调用webservice查询QQ在线状态

    2. **使用HttpURLConnection调用WebService**: - 如果Web Service不使用SOAP,而是RESTful API,可以使用Android内置的HttpURLConnection类进行网络通信。 - 发送GET或POST请求,设置HTTP头,如Content-Type...

    拼接xml调用webservice

    本主题的核心是"拼接XML调用WebService",这通常指的是通过构建XML字符串来构造请求,然后发送该请求到一个Web Service接口以获取响应。以下是对这个过程的详细解释: 1. **XML基础**:XML是一种结构化标记语言,它...

    HttpUrlConnection请求WebService.rar

    本教程主要探讨如何使用HttpURLConnection来访问WebService。 首先,让我们理解什么是WebService。WebService是一种基于开放标准(如SOAP、WSDL和UDDI)的,可以被不同平台和编程语言之间进行交互的服务。它们通过...

    java 调用 webService工具类

    本工具类主要用于简化这个过程,确保开发者能够高效、可靠地调用WebService。下面我们将详细探讨Java调用WebService的相关知识点。 1. **WebService概念**: WebService是一种基于互联网的、平台无关的应用程序...

    模拟soapui调用webservice

    这篇博客文章“模拟soapui调用webservice”可能探讨了如何在不使用SOAPUI图形界面的情况下,通过编程方式模拟SOAP请求。 首先,我们需要理解SOAP消息的结构。一个SOAP消息通常包含三个主要部分:Envelope、Header和...

    java android 调用webservice

    本篇将详细讲解如何在Android应用中使用Java调用Webservice。 一、理解Web服务 Web服务是一种基于互联网的、标准化的服务交互方式,它允许不同系统之间的应用程序共享数据和功能。常见的Web服务有SOAP(Simple ...

    java调用webservice工程

    Java调用WebService工程是将Java应用程序与通过WebService接口提供的服务进行交互的过程。WebService是一种基于XML标准的、平台和语言无关的通信方式,它允许不同系统间的应用能够共享数据和服务。在Java中,我们...

    android 调用 Webservice源码

    Android调用Webservice主要依赖于HTTP协议,常见的库有HttpURLConnection、Apache HttpClient(已废弃)以及Volley、Retrofit等现代网络库。但针对SOAP协议,我们通常会使用`ksoap2`库,因为它对SOAP消息处理更为...

    android 调用webservice 有源码+jar

    本教程将详细介绍如何在Android环境中调用Webservice,并提供源码和jar包以供参考。主要涉及的技术点包括SOAP协议、HTTP通信以及接口调用。 1. **SOAP(Simple Object Access Protocol)协议** SOAP是一种轻量级的...

    安卓调用webservice接口

    在这里,我们将深入探讨如何在Android应用中调用WebService接口。 首先,我们需要了解两种主要的WebService类型:SOAP(Simple Object Access Protocol)和REST(Representational State Transfer)。SOAP通常基于...

    android webservice

    1. **使用HttpURLConnection调用WebService** ```java URL url = new URL("http://example.com/WebService.asmx"); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection....

    android调用webservice接口实现登陆源码

    本教程将深入探讨如何在Android中实现调用WebService接口进行登录功能,并基于提供的"login"源码进行分析。 首先,了解基础概念: 1. Android:Google开发的开源移动操作系统,主要应用于智能手机和平板电脑。 2. ...

    java调用webservice(20211103125800).rar

    Java调用WebService是一种常见的在Java应用中集成外部服务或系统的方式。WebService是一种基于XML的、平台和语言无关的标准,允许不同系统之间的数据交换。在这个场景中,我们将深入探讨Java如何利用各种技术栈来...

    如何在android app调用webservice的示例源码

    2. **HTTP客户端库**:Android提供了`HttpURLConnection`作为基本的HTTP请求工具,但实际开发中更常使用第三方库,如`OkHttp`和`Volley`,它们提供了更高效、更易用的API。 3. **调用Web服务**:通常,Web服务是以...

    Java调用webService应用.zip

    Java调用WebService应用是软件开发中的常见任务,它允许Java应用程序与远程的Web服务进行交互,从而实现数据交换和服务的集成。在这个主题中,我们将深入探讨如何在Java环境中使用不同的库和技术来调用WebService。 ...

    调用WebService获取信息

    在本案例中,我们将探讨如何在Android平台上调用WebService来获取服务器上的信息。 首先,我们需要了解WebService的工作原理。WebService提供一组预先定义好的操作(也称为Web方法或API),这些操作可以通过HTTP...

    Android中调用Webservice实现号码归属地查询案例

    这个任务通常通过调用外部的Web服务接口来完成,本案例将详细讲解如何在Android应用中集成和调用Webservice来查询号码归属地。 首先,我们需要了解什么是Webservice。Webservice是一种基于网络的、分布式的模块化...

    android调用webservice实现手机归属查询

    在Android开发中,调用Web Service来实现手机归属地查询是一项常见的需求,这通常涉及到网络通信、XML或JSON解析以及Web服务接口的调用。在这个过程中,开发者需要掌握以下关键知识点: 1. **Web Service**: Web ...

Global site tag (gtag.js) - Google Analytics