`

java6 WebServices客户端

    博客分类:
  • java
阅读更多

J ava6 WebServices 服务端 这篇文章中和大家分享了Java6 WebServices 服务端的写法,光有服务端还不行,还要有客户端才行啊。看了一些网友的相关文章,都只给出了服务端的写法,没有说客户端怎么说。经过一番研究,终于搞定了客户端,今天我就和大家分享下。
首先启动 Java6 WebServices 服务端 一文中写好的服务端。
新建个项目webserviceclient。命令行到src目录执行,wsimport -keep http://localhost:5050/HelloService?wsdl
会自动生成以下代码:

package cn.cissco;

import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebResult;
import javax.jws.WebService;
import javax.jws.soap.SOAPBinding;


/**
* This class was generated by the JAX-WS RI.
* JAX-WS RI 2.1.1 in JDK 6
* Generated source version: 2.1
* 
*/
@WebService(name = "Hello", targetNamespace = "http://www.cissco.cn")
@SOAPBinding(style = SOAPBinding.Style.RPC)
public interface Hello {


    /**
     * 
     * @param arg0
     * @return
     *     returns java.lang.String
     */
    @WebMethod
    @WebResult(partName = "return")
    public String sayHello(
        @WebParam(name = "arg0", partName = "arg0")
        String arg0);

}



package cn.cissco;

import java.net.MalformedURLException;
import java.net.URL;
import javax.xml.namespace.QName;
import javax.xml.ws.Service;
import javax.xml.ws.WebEndpoint;
import javax.xml.ws.WebServiceClient;
import javax.xml.ws.WebServiceFeature;


/**
* This class was generated by the JAX-WS RI.
* JAX-WS RI 2.1.1 in JDK 6
* Generated source version: 2.1
* 
*/
@WebServiceClient(name = "HelloService", targetNamespace = "http://www.cissco.cn", wsdlLocation = "http://localhost:5050/HelloService?wsdl")
public class HelloService
    extends Service
{

    private final static URL HELLOSERVICE_WSDL_LOCATION;

    static {
        URL url = null;
        try {
            url = new URL("http://localhost:5050/HelloService?wsdl");
        } catch (MalformedURLException e) {
            e.printStackTrace();
        }
        HELLOSERVICE_WSDL_LOCATION = url;
    }

    public HelloService(URL wsdlLocation, QName serviceName) {
        super(wsdlLocation, serviceName);
    }

    public HelloService() {
        super(HELLOSERVICE_WSDL_LOCATION, new QName("http://www.cissco.cn", "HelloService"));
    }

    /**
     * 
     * @return
     *     returns Hello
     */
    @WebEndpoint(name = "HelloPort")
    public Hello getHelloPort() {
        return (Hello)super.getPort(new QName("http://www.cissco.cn", "HelloPort"), Hello.class);
    }

    /**
     * 
     * @param features
     *     A list of {@link javax.xml.ws.WebServiceFeature} to configure on the proxy. Supported features not in the <code>features</code> parameter will have their default values.
     * @return
     *     returns Hello
     */
    @WebEndpoint(name = "HelloPort")
    public Hello getHelloPort(WebServiceFeature... features) {
        return (Hello)super.getPort(new QName("http://www.cissco.cn", "HelloPort"), Hello.class, features);
    }

}

 

然后再写一个测试类ClientTest.java

package cn.cissco;

public class ClientTest {

/**
* @param args
*/
public static void main(String[] args) {
   // TODO Auto-generated method stub
   HelloService service = new HelloService();
   Hello h = service.getHelloPort();
   System.out.println(h.sayHello("Cissco"));
}
}

 

执行,控制台能输出:"Cissco Say Hello!"

OK 成功,java6编写WebServices就这么简单

分享到:
评论
1 楼 wanggod 2010-03-22  
请问我
return (Hello)super.getPort(new QName("http://www.cissco.cn", "HelloPort"), Hello.class, features); 
加上features参数就报错,
<SendMessage> SendMessage javax.xml.ws.Service.getPort(QName portName, Class<SendMessage> serviceEndpointInterface)

javax.xml.ws.Service.getPort 方法参数就只有两个,根本没有WebServiceFeature , 是jar包版本的问题么?

相关推荐

    webservices客户端

    在Java世界中,JAX-WS(Java API for XML Web Services)是官方支持的标准,用于处理SOAP Web服务。Apache CXF是一个流行的开源框架,支持JAX-WS和RESTful服务。以下是如何使用CXF生成Java Web服务客户端的步骤: 1...

    java6 纯发布WebServices及客户端调用

    本教程将深入探讨这个主题,讲解如何利用Java 6的标准API,如JAX-WS(Java API for XML Web Services),来实现这一目标。 首先,我们要理解Web服务的基本概念。Web服务是一种基于互联网的软件应用程序,它能够通过...

    WebServices服务端和客户端DEMO

    总结来说,"WebServices服务端和客户端DEMO"涵盖的内容广泛,包括Spring Boot的使用、Apache CXF的集成、服务端Web Services的创建、以及客户端的SOAP请求和响应处理。理解这些概念和技术对于开发分布式系统和实现跨...

    java web services教程

    【Java Web Services 教程】 Java Web Services 是一种利用 Java 技术开发网络服务的方式,它使得不同系统之间能够通过互联网进行数据交换和功能调用。这个教程将深入讲解 Java Web Services 的核心概念和技术,...

    WebServices客户端调试工具

    WebServices客户端调试工具 wsCaller可执行程序的发布方式为一个wsCaller.jar包,不包含Java运行环境。你可以把wsCaller.jar复制到任何安装了Java运行环境(要求安装JRE/JDK 1.3.1或更高版本)的计算机中,用以下...

    The Java™ Web Services Tutorial

    ### Java™ Web Services 教程知识点详解 #### 一、教程概述 《Java™ Web Services 教程》是一本指导开发者使用 Java Web Services Developer Pack(Java WSDP)开发 Web 应用程序的专业指南。该教程由 Sun ...

    JAVA访问WebServices接口的简单实例,android可用

    总结来说,Java访问Web Services接口涉及理解协议、生成客户端代码、调用服务方法、处理响应以及在Android环境中进行异步调用和错误处理。这个简单的实例将引导开发者完成这一过程,为构建与Web Services交互的Java...

    webservices客户端开发-java[归纳].pdf

    本篇主要关注的是如何使用Java进行Web服务客户端的开发,特别是通过Eclipse和MyEclipse工具来生成和调用Web服务。 1. **Web服务客户端开发流程** - **生成客户端代码**:首先,你需要一个WSDL(Web Services ...

    java调用exchange web services

    Java调用Exchange Web Services(EWS)是一种常见的技术实践,用于与Microsoft Exchange Server进行交互,进行邮件发送、日历管理、联系人同步等任务。EWS是Exchange Server提供的一组基于SOAP协议的Web服务接口,...

    java webservices例子,java webservices,webservices

    Java Web服务(Java Web Services,JWS)是一种基于开放标准的网络通信协议,它允许不同系统之间的应用程序通过互联网交换数据。在本示例中,我们将深入探讨如何在Java环境中创建和使用Web服务,特别是利用MyEclipse...

    RESTful Java Web Services

    ### RESTful Java Web Services #### 一、RESTful Web服务概览 REST(Representational State Transfer)是一种软件架构风格,最初由Roy Fielding在他的博士论文中提出。它定义了一种简单且灵活的方法来创建分布式...

    java调用webservices

    本文详细介绍了如何使用Java调用WebServices的过程,包括了从环境搭建、工具使用到客户端代码编写等多个环节。希望这些内容能够帮助读者更好地理解和掌握这一技术。在未来的学习和工作中,我们还可以进一步探索更...

    webservices客户端方式调用接口

    - **使用工具生成**:大多数编程环境提供工具,如Java的`wsimport`,.NET的`svcutil.exe`,这些工具能够解析WSDL并生成客户端所需的代理类和配置文件。 - **手动创建**:如果自动工具不可用,也可以手动创建必要的...

    C#调用JavaWebService(客户端)

    Java开发者通常使用JAX-WS(Java API for XML Web Services)框架来创建WebService。这包括编写一个Java类,该类包含公共方法,这些方法会被SOAP消息所调用。接着,使用工具(如`wsimport`或Apache CXF的`wsdl2java...

    用java调用webservices的三种方式

    #### 二、Java客户端获取WebServices的方式 Java客户端可以通过两种途径获取WebServices: - **基于容器管理的客户端**:这类客户端可以由不同的J2EE容器管理,例如应用程序客户端容器、Web容器(如JavaBean或...

    JAX-WS_Java API for XML Web Services

    JAX-WS(Java API for XML Web Services)是Java平台上用于创建Web服务和Web服务客户端的核心API。这个标准由Java社区进程(JCP)制定,旨在简化面向服务架构(SOA)的实现。JAX-WS允许开发者使用Java编程语言来构建...

    web service 客户端java例子

    本篇文章将详细探讨如何在Java环境中创建和使用Web服务客户端,以"weather"为例。 一、Web服务基础 Web服务通常通过SOAP(简单对象访问协议)或REST(Representational State Transfer)进行通信。SOAP是基于XML的...

    Java与.NET 的Web Services相互调用

    对于.NET做客户端调用Java Web Services,步骤相对类似。首先,你需要在.NET中创建一个Web服务项目,例如使用ASP.NET创建一个简单的服务。然后,公开一个Web服务方法,如`Service1.asmx.cs`中的`getSample`方法。 ...

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

    Java使用XFire实现Web服务(WebServices)是Java开发中的一种常见技术,它允许应用程序通过网络交换数据。XFire是一个轻量级、高性能的框架,它简化了在Java应用程序中创建和消费Web服务的过程。本篇文章将深入探讨...

    基于 .NET, Java and MS SOAP Toolkit进行Web Services 的客户端调用程序例子

    在.NET环境中,我们可以利用.NET Framework的System.Web.Services客户端代理类来调用Web服务。以下是一般的步骤: 1. **生成代理类**:使用“添加Web引用”或“添加服务引用”功能,Visual Studio会自动生成一个...

Global site tag (gtag.js) - Google Analytics