java中webService

webservice远程调用

import java.io.ByteArrayOutputStream;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.URL;

import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpException;
import org.apache.commons.httpclient.methods.PostMethod;

public class MobileCodeService {

    public void httpGet(String mobile,String userID) throws Exception
    {
        //http://ws.webxml.com.cn/WebServices/MobileCodeWS.asmx/getMobileCodeInfo?mobileCode=string&userID=string
       URL url = new URL("http://ws.webxml.com.cn/WebServices/MobileCodeWS.asmx/getMobileCodeInfo?mobileCode="+mobile+"&userID="+userID);
       HttpURLConnection conn =(HttpURLConnection)url.openConnection();
       conn.setConnectTimeout(5000);
       conn.setRequestMethod("GET");

       if(conn.getResponseCode()==HttpURLConnection.HTTP_OK)  //200
       {
          InputStream is= conn.getInputStream();

          ByteArrayOutputStream arrayOutputStream = new ByteArrayOutputStream();  //

          byte [] buf = new byte[1024];
          int len = -1;
          while((len = is.read(buf))!=-1)
          {
              //获取结果
              arrayOutputStream.write(buf, 0, len);
          }

          System.out.println("Get方式获取的数据是:"+arrayOutputStream.toString());
          arrayOutputStream.close();
          is.close();
       }
    }

    public void httpPost(String mobile,String userID) throws HttpException, IOException
    {
        //访问路径   http://ws.webxml.com.cn/WebServices/MobileCodeWS.asmx/getMobileCodeInfo
        //HttpClient访问

        HttpClient httpClient = new HttpClient();
        PostMethod pm = new PostMethod("http://ws.webxml.com.cn/WebServices/MobileCodeWS.asmx/getMobileCodeInfo");

        pm.setParameter("mobileCode", mobile);
        pm.setParameter("userID", userID);

        int code= httpClient.executeMethod(pm);
        System.out.println("状态码:"+code);

        //获取结果
        String result = pm.getResponseBodyAsString();
        System.out.println("获取到的数据是:"+result);
    }

    public void SOAP() throws Exception
    {
        HttpClient client = new HttpClient();

        PostMethod method = new PostMethod("http://ws.webxml.com.cn/WebServices/MobileCodeWS.asmx");

        //设置访问方法的参数
        method.setRequestBody(new FileInputStream("C:\\soap.xml"));

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

        int code= client.executeMethod(method);
        System.out.println("状态码:"+code);

        //获取结果
        String result = method.getResponseBodyAsString();
        System.out.println("获取到的数据是:"+result);
    }

    public static void main(String[] args) throws Exception {
        MobileCodeService mcs=new MobileCodeService();
        mcs.httpGet("18524012513", "");
        //mcs.httpPost("18524012513", "");
        //mcs.SOAP();
    }
}

  

时间: 2025-01-04 16:42:08

java中webService的相关文章

Java中WebService实例

Web Services是由企业公布的完毕其特定商务需求的在线应用服务,其它公司或应用软件可以通过Internet来訪问并使用这项在线服务. Web Service的关键技术和规则: 1.XML:描写叙述数据的标准方法. 2.SOAP:表示信息交换的协议(简单对象訪问协议). 3.WSDL:Web服务描写叙述语言. 4.UDDI:通用描写叙述.发现与集成,他是一种独立于平台,基于XML语言的用于在互联网上描写叙述商务的协议. 一.利用JDK web服务api实现,这里使用基于SOAP messa

java中使用axis发布和调用webService

工作中需要调用webService服务,这里记录一下如何在java中发布和调用webService. 需要的jar包: 发布webService: package com.xzh.webservice; import javax.jws.WebMethod; import javax.jws.WebService; import javax.xml.ws.Endpoint; @WebService public class MyWebService { public String hello(S

你真的了解JAVA中与Webservice相关的规范和实现吗?

非常多人在项目中使用Webservice,仅仅是知道怎样公布Webservice,怎样调用Webservice,但真要论其来龙去脉,还真不一定清楚. 一切一切还要从我们伟大的sun公司规范说起. JAVA 中共同拥有三种WebService 规范,各自是JAXM&SAAJ.JAX-WS(JAX-RPC).JAX-RS. 以下来分别简要的介绍一下这三个规范.针对JDK 1.6以下版本号,新的还没研究过 (1.)JAX-WS: JAX-WS(Java API For XML-WebService),

如何在Java中快速发布WebService服务

在实际中,您是否遇到过需要发布WebService给别人调用的需求哪?如果您是个Java的新手,客户或合作方又催得很紧,您肯定为这事儿犯愁.别急,让我们看看能用哪些工具或对象发布.Java中可供选择的方式太多,如Axis2.XFire.JWS等.郁闷了,看都看不懂,谁知道该用哪一个. 别着急,如果您特别着急,客户马上就要要,那就用下面这种方法吧: 一.通过Axis2提供的模板自动发布 这种方法非常简单,只要下载Axis包后从里面的"axis-1_4\webapps"中找到axis站点,

Java调用WebService 接口 实例

这里给大家介绍一下,Java调用webservice的一个实例的过程. 本项目不能运行,因为接口地址不可用. 这里只是给大家介绍一个过程,同时留作自己的笔记.如果要学习,可以参照别人的实例.比较好. ①选择项目根目录的src ,右键,new --> webservice client 然后输入地址: http://172.18.100.52:456/hello?wsdl 必须要加wsdl结尾,这样才是一个webservice的接口. finlish.这时候刷新项目.可以看到项目下/src/com

HTTP协议报文、工作原理及Java中的HTTP通信技术详解

一.web及网络基础       1.HTTP的历史            1.1.HTTP的概念:                 HTTP(Hyper Text Transfer Protocol,超文本传输协议)是一种通信协议,它允许将超文本标记语言(HTML)文档从Web服务器传送到客户端的浏览器.                 它是一个应用层协议,承载于TCP之上.由请求和响应构成,是一个标准的客户端服务器模型            1.2.HTTP的发展历史:          

Java创建WebService服务及客户端实现(转)

简介 WebService是一种服务的提供方式,通过WebService,不同应用间相互间调用变的很方便,网络上有很多常用的WebService服务,如:http://developer.51cto.com/art/200908/147125.htm,不同的语言平台对WebService都有实现,Java的WebService实现,比较流行的有Axis2.Jaxws,本文介绍的是Axis2. Axis2下载和部署 Axis2是Apache开发的一个开源项目,再次感叹Apache的伟大! 下载地址

Java调用WebService

Java调用WebService可以直接使用Apache提供的axis.jar自己编写代码,或者利用Eclipse自动生成WebService Client代码,利用其中的Proxy类进行调用.理论上是一样的,只不过用Eclipse自动生成代码省事些. 1.编写代码方式: package com.yudun.test; import java.rmi.RemoteException;import org.apache.axis.client.Call;import org.apache.axis

C#访问Java的WebService添加SOAPHeader验证的问题

这两天做与公司OA的接口,发现C#访问Java的WebService需要提供一个SOAP的头验证信息,但是WebService的WSDL中并没有提供约定的验证信息,所以Visual Studio生成的代理类并没有发现这些内容,所以这个SOAPHeader就必须要自己组织,还遇到一个问题就是SOAP头部信息,OA那边还按照不知道什么实例添加了一个根节点没有的命名空间,这就致使SOAPHeader内容一直报传输错误,废话不多说,上两个阶段的示例. 首先,要创建一个继承自System.Web.Serv