`

Java6开发WebService

    博客分类:
  • Java
阅读更多
    之前常常用CXF、Axis2、XFire等结合Java语言来开发Web Service应用,这样的好处是用途广,灵活,另外一个重要原因是我们的生产环境是Java5。
    但实际上Java6中已经支持用Java开发WebService应用了,而且很方便。这样就大大减少了项目安装部署的代价,因为选择开源的框架依赖大量第三方包,程序的尺寸倍增。
    下面是一个用Java6开发WebService的例子。
    一、web service服务端代码
package com.test.wsserver;

import javax.jws.WebMethod;
import javax.jws.WebService;
import javax.xml.ws.Endpoint;

@WebService
public class Java6WS {

	@WebMethod
	public String doSomeThing() {
		return "Hello Java6 Web Service";
	}

	public static void main(String[] args){
		Endpoint.publish("http://localhost:8080/sky/java6ws", new Java6WS());
	}
}


运行后,控制台的输出为:
2010-12-31 9:28:36 com.sun.xml.internal.ws.model.RuntimeModeler getRequestWrapperClass
信息: Dynamically creating request wrapper Class com.test.wsserver.jaxws.DoSomeThing
2010-12-31 9:28:36 com.sun.xml.internal.ws.model.RuntimeModeler getResponseWrapperClass
信息: Dynamically creating response wrapper bean Class com.test.wsserver.jaxws.DoSomeThingResponse


web service发布对应的wsdl的获取:在浏览器中访问:http://localhost:8080/sky/java6ws?wsdl,respond即为wsdl:
<?xml version="1.0" encoding="UTF-8" ?> 
- <!--  Published by JAX-WS RI at http://jax-ws.dev.java.net. RI's version is JAX-WS RI 2.1.6 in JDK 6. 
  --> 
- <!--  Generated by JAX-WS RI at http://jax-ws.dev.java.net. RI's version is JAX-WS RI 2.1.6 in JDK 6. 
  --> 
- <definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://wsserver.test.com/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.xmlsoap.org/wsdl/" targetNamespace="http://wsserver.test.com/" name="Java6WSService">
- <types>
- <xsd:schema>
  <xsd:import namespace="http://wsserver.test.com/" schemaLocation="http://localhost:8080/sky/java6ws?xsd=1" /> 
  </xsd:schema>
  </types>
- <message name="doSomeThing">
  <part name="parameters" element="tns:doSomeThing" /> 
  </message>
- <message name="doSomeThingResponse">
  <part name="parameters" element="tns:doSomeThingResponse" /> 
  </message>
- <portType name="Java6WS">
- <operation name="doSomeThing">
  <input message="tns:doSomeThing" /> 
  <output message="tns:doSomeThingResponse" /> 
  </operation>
  </portType>
- <binding name="Java6WSPortBinding" type="tns:Java6WS">
  <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" /> 
- <operation name="doSomeThing">
  <soap:operation soapAction="" /> 
- <input>
  <soap:body use="literal" /> 
  </input>
- <output>
  <soap:body use="literal" /> 
  </output>
  </operation>
  </binding>
- <service name="Java6WSService">
- <port name="Java6WSPort" binding="tns:Java6WSPortBinding">
  <soap:address location="http://localhost:8080/sky/java6ws" /> 
  </port>
  </service>
  </definitions>


    由以上内容可以看出在java6中开发web service并发布是很容易的事情。

    二、web service客户端代码
    java6提供了根据web service服务端生成客户端代码的工具,生成的时候需要服务端处于运行状态。

    命令的格式为:wsimport -p 客户端存放路径 -keep wsdl的响应url

    命令执行后,客户端程序将生成到目录com.test.wsclient中

   
    三、客户端测试代码
package com.test;

import com.test.wsclient.Java6WS;
import com.test.wsclient.Java6WSService;

public class TestClient {
	public static void main(String[] args) {
		Java6WSService wsService = new Java6WSService();
		Java6WS java6ws = wsService.getJava6WSPort();
		String returnContentString = java6ws.doSomeThing();
		System.out.println(returnContentString);
	}

}

注意:测试类中引用的类都是com.test.wsclient中的。

测试类执行的结果是在控制台输出以下内容:
Hello Java6 Web Service

  • 大小: 44.5 KB
  • 大小: 31 KB
分享到:
评论

相关推荐

    Java 6 开发 WebService

    【Java 6 开发 WebService】是关于使用Java 6版本进行Web服务开发的技术主题。Web服务是一种基于网络的应用程序接口,它允许不同系统之间的数据交换。在这个场景中,我们将探讨如何利用Java 6的新特性,通过注解轻松...

    Java6开发WebService详细啊.docx

    【Java6开发WebService详解】 在Java6中,开发Web Service变得更加简单和直接,无需依赖额外的框架如CXF、Axis2或XFire。Java6引入了内置的JAX-WS(Java API for XML Web Services)支持,使得创建和发布Web ...

    Java6开发WebService入门

    ### Java6开发WebService入门 #### 一、背景与意义 在早期的Web服务开发中,开发者通常会使用CXF、Axis2、XFire等工具来构建基于Java的应用程序。这些工具之所以被广泛采用,主要是因为它们能够提供广泛的兼容性和...

    JAVA6开发WebService (四)——SAAJ调用WebService

    在本篇主题“JAVA6开发WebService(四)——SAAJ调用WebService”中,我们将探讨如何使用Java API for XML Messaging (SAAJ)来与WebService进行交互。SAAJ是Java平台中用于处理SOAP消息的API,它提供了创建、解析和...

    JAVA6开发WebService (三)——几个概念

    在Java 6中开发Web服务(WebService)是企业级应用中的常见任务,它允许不同的系统之间通过网络交换数据。本文将深入探讨Web服务的几个关键概念,帮助开发者更好地理解和使用这项技术。 首先,我们来理解什么是Web...

    JAVA6开发WebService (二)——JAX-WS例子

    在Java世界中,WebService是一种基于标准的、平台无关的通信机制,它允许不同的应用程序之间...了解和熟练掌握JAX-WS是Java开发人员必备的技能之一,尤其在企业级应用开发中,Web服务常常作为不同系统间通信的桥梁。

    Java开发WebService实例

    ### Java开发WebService实例详解 在IT领域,尤其是企业级应用开发中,WebService作为一种标准化的、跨平台的服务交互方式,被广泛应用于系统间的数据交换与服务调用。本文将基于给定的“Java开发WebService实例”...

    java webService接口开发案例

    Java WebService接口开发是将Java应用程序暴露为网络服务的一种方式,允许不同系统间的数据交换和交互。本案例将深入探讨如何使用Java实现Web服务的创建、发布和调用。 一、理解WebService WebService是一种基于...

    java开发webservice的简单例子

    Java开发Web服务(Web Service)是一种常见的技术,用于在不同应用程序之间实现互操作性。Web服务基于开放标准,如XML(可扩展标记语言)、WSDL(Web服务描述语言)和SOAP(简单对象访问协议),使得服务提供者可以...

    Java6上开发WebService的实例

    在Java 6中,主要使用以下组件来开发WebService: 1. **Service端点接口(SEI)**:定义了服务的操作,使用`@WebService`注解标识。例如: ```java import javax.jws.WebService; @WebService public interface ...

    java 利用webservice传输文件

    在“java 利用webservice传输文件”的场景中,JACOB可能被用来执行以下任务: 1. **文件操作**:Windows系统有许多内置的COM组件,如Scripting.FileSystemObject,可用于读写文件、创建目录等。通过JACOB,Java程序...

    java-Web简单开发

    #### 一、Java6开发WebService入门概述 在Java6中,开发者可以直接利用内置的支持来创建WebService应用,而无需借助额外的框架如CXF、Axis2或XFire等。这种方式不仅简化了项目的安装和部署流程,还减少了对第三方库...

    Java cxf开发webservice,分别有客户端和服务端

    2.用cxf开发webservice 3.这个服务端和客户端的小demo 在服务端 对外开放接口服务,然后在客户端 调用服务端的方法, 实现客户端(一个javaweb项目)对服务端(javaweb项目)方法的调用, 实际上就是发送和接收消息...

    java6创建webservice,原来这么简单啊

    在Java 6中创建Web服务(WebService)是一个相对简单的过程,尤其对于那些熟悉JAX-WS(Java API for XML Web Services)的开发者来说。本文将详细介绍如何利用Java 6的API来构建一个基本的SOAP(Simple Object ...

    Java6上开发WebService

    在Java 6中开发Web服务(WebService)是企业级应用中...同时,通过提供的HTML文档(Java6上开发WebService.html)和相关资源(java6WS、Java6上开发WebService_files),可以更深入地学习和实践Java 6 Web服务开发。

    Java与.net开发webservice详解大全

    【Java与.NET开发WebService详解大全】 在IT领域,WebService是一种基于标准协议(如SOAP和WSDL)的跨平台、跨语言的通信机制,允许不同系统间的应用进行交互。本篇文章将详细探讨使用Java和.NET(VB.NET为例)开发...

    java android 调用webservice

    在Android开发中,Java语言是主要的编程工具,而Webservice是一种通过网络提供服务的方式,通常基于HTTP协议,使得移动应用、Web应用等可以互相交换数据。本篇将详细讲解如何在Android应用中使用Java调用Webservice...

    java定时进行webservice数据上报

    1. Java编程语言:Java是广泛使用的跨平台编程语言,尤其在企业级应用开发中占有重要地位。其特性包括面向对象、内存管理(垃圾回收)、丰富的类库以及优秀的可移植性。在本场景中,Java将作为实现定时任务的主要...

    java axis 调用webservice服务端

    Axis是Apache软件基金会开发的一个开源项目,它提供了一种方便、高效的方式,使得Java应用程序能够作为客户端来消费或作为服务端来发布WebService。在这个过程中,Axis起到了一个SOAP(Simple Object Access ...

Global site tag (gtag.js) - Google Analytics