`

Java简单实现webservice接口

 
阅读更多
webservice实现有多种方式

比如最常用的有axis框架,xfire框架,通过该框架可以发布wsdl接口,也可以实现webservice客户端,目前eclipse都有集成的插件,可以根据wsdl文件生成webservice客户端调用接口,但是这样部署的时候必须依赖框架的jar包,有时候可能因为环境等等原因,我们仅仅需要wsdl中的某一个接口,这时候可以通过http接口或socket接口直接发生xml数据,来调用服务端webservice服务,其实webservice底层还是发送xml数据,只是框架封装了对xml数据进行序列化与反序列化操作,下面以两个简单的例子说明http方式和socket方式。

http实现webservice接口调用例子:

import java.io.BufferedReader;  
import java.io.IOException;  
import java.io.InputStreamReader;  
import java.io.OutputStreamWriter;  
import java.io.UnsupportedEncodingException;  
import java.net.MalformedURLException;  
import java.net.URL;  
import java.net.URLConnection;  
 
public class HttpPostTest {  
    void testPost(String urlStr) {  
        try {  
            URL url = new URL(urlStr);  
            URLConnection con = url.openConnection();  
            con.setDoOutput(true);  
            con.setRequestProperty("Pragma:", "no-cache");  
            con.setRequestProperty("Cache-Control", "no-cache");  
            con.setRequestProperty("Content-Type", "text/xml");  
              
            OutputStreamWriter out = new OutputStreamWriter(con.getOutputStream());      
            String xmlInfo = getXmlInfo();  
            out.write(new String(xmlInfo));  
            out.flush();  
            out.close();  
            BufferedReader br = new BufferedReader(new InputStreamReader(con.getInputStream()));  
            String line = "";  
            StringBuffer buf = new StringBuffer();  
            for (line = br.readLine(); line != null; line = br.readLine()) {  
                buf.append(new String(line.getBytes(),"UTF-8"));  
            }  
            System.out.println(buf.toString());  
        } catch (MalformedURLException e) {  
            e.printStackTrace();  
        } catch (IOException e) {  
            e.printStackTrace();  
        }  
    }  
 
    private String getXmlInfo() {  
        // 通过wsdl文件可以查看接口xml格式数据,构造调用接口xml数据  
        String xml = "<SOAP-ENV:Envelope xmlns:SOAP-ENV=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:SOAP-ENC=\"http://schemas.xmlsoap.org/soap/encoding/\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\">" 
                    + "<SOAP-ENV:Body>" 
                    +    "<m:getItemDetailSingle xmlns:m=\"http:xxxxxxxxxxxxxxxxxx/\">" 
                    +        "<itemMo>" 
                    +            "<category>工厂类</category>" 
                    +            "<city>北京</city>" 
                    +            "<flag>1</flag>" 
                    +            "<itemId>0</itemId>" 
                    +            "<itemIndex>1</itemIndex>" 
                    +            "<keyword></keyword>" 
                    +            "<mobile>2147483647</mobile>" 
                    +            "<password>123456</password>" 
                    +            "<userName>sohu</userName>" 
                    +        "</itemMo>" 
                    +    "</m:getItemDetailSingle>" 
                    + "</SOAP-ENV:Body>" 
                    + "</SOAP-ENV:Envelope>";  
        return xml;  
    }  
 
    public static void main(String[] args) throws UnsupportedEncodingException {  
        String url = "http://localhost:9003/dataService/services/Job";  
        new HttpPostTest().testPost(url);  
    }  
分享到:
评论

相关推荐

    java实现webservice实例.doc

    java实现webservice实例.

    超简单的webservice调用

    超简单的webservice调用demo,对hutool工具进行简单的封装,只需要输入webservice接口名、接口参数即可进行webservice接口调用,欢迎大家吐槽

    java调用webservice接口.zip

    介绍了java代用webservice的实现方法,采用axis依赖的方式。对于任意webservie都可以实现简单条用,用最少的依赖和最少的代码实现调用

    spring + cxf 实现简单的webservice

    testWebService 是webservice的服务端 zxntest 是webservice 的客户端(很大一部分jar包无效) http://localhost:8080/testWebService/webservice/webservice?wsdl 测试路径

    java命名规范 开发规范

    b. 开发WebService接口实现类,@WebService注解该实现类,并制定endpointInterface; c. 配置applicationContext-ws.xml d. 测试 备注: 开发一个需要对第三方应用发布的RESTful Service 步骤: a. 开发RS接口...

    Java的webservice开发与测试入门例子

    最简单的webservice的例子,包括服务端与客户端,有axis、xfire的两种方式的实现

    WebService服务端demo样例生成json

    一个简单实用的WebService服务端开发样例,采用Spring MVC,利用 x-fire资源,加入 log4j日志记录,加入maven来获取对应依赖。 该服务提供一个针对 TRSServer 全文检索服务器数据库 的检索功能,通过 url来执行全文...

    java搭建一个简单的WebService

    搭建一个Web服务,实现一个服务端,怎么样来实现一个客户端,并相互传递数据。就算调用别人的服务时,也能知道大概是怎么样实现的。

    Java编程Webservice指定超时时间代码详解

    主要介绍了Java编程Webservice指定超时时间代码详解,简单介绍了webservice,然后分享了通过使用JDK对Webservice的支持进行Webservice调用实现指定超时时间完整示例,具有一定借鉴价值,需要的朋友可以参考下。

    简单的XFire WebService例子

    一个基于xfire开发的Webservice小例子,初学者可以看看!

    Java开发WebService实例--计数器.doc

    展示WebService功能特点(别的地方下载来的,与大家共享)

    简单的webservice例子(java,xfire)

    基于Java的一个简单的webservice 直接跟javaweb一样点运行 网址为 localhost/webservice/servlet/XFireServlet/Echo?wsdl WEB-INF下的META-INF下的services.xml定义了Echo,并定义了接口和实现类 web.xml进行了xfire...

    java利用 xfire实现 webservices 服务端与客户端

    xfire简单实现webservice服务端创建与客户端,实现方法用的代理调用的,不需要服务端的接口。

    c++访问webservice

    我们已经知道如何在java端调用web服务(见web服务使用说明文档),但是如何在其他平台的其他客户端调用我们的web服务呢?下面做一下简单介绍并通过Gsoap举一个请求服务的例子。 WebService是一种跨平台的解决方案。...

    testWebService.zip

    Java调用天气webservice接口简单实现

    java中实现调用短信发送接口

    短信业务能力引擎是一个短信业务接口,该接口采用同步Web Service方式提供服务。...通过调用该接口就可以实现向用户终端发送短消息。 在现阶段的情况下,商企平台通过接入到企信通平台,实现业务短信业务能力。

    webservice-mock:Web服务模拟

    WebService Mock是用于模拟WebServices的非常简单但功能强大的工具。 为什么要使用WebService模拟? 通过非侵入性方式实现模拟,甚至无需编写任何代码行,这意味着无需模拟服务存根。 可以用于对应用程序进行压力...

    webservice客户端+服务端.rar

    java 实现webservice的简单实例,服务端发布方式是通过servlet的方式发布webservice路径,首先建立接口类,然后建立实现类,配置servlet和web.xml,启动程序后然后在地址栏里面输入wsdl路径即可

    webService开发手册

    webService开发手册,...适应 WEB、VB 、Delphi、.NET、VC 、 JAVA 等多种主流开发语言及 Windows 、Linux 、Unix 等运行环境的短信通讯开发接口,让企业的 OA 、CRM 、ERP 、SCM 等系统快速、轻松实现移动商务应用。

Global site tag (gtag.js) - Google Analytics