`
sha1064616837
  • 浏览: 40221 次
  • 性别: Icon_minigender_2
  • 来自: 湖南
社区版块
存档分类
最新评论

jax-ws入门篇

阅读更多
1.定义服务接口
package com.sha;

import javax.jws.WebMethod;
import javax.jws.WebService;
/**
 * @author: Administrator
 * Date: 2015-4-17
 * Time: 上午09:04:30
 */
@WebService(
		name="hello"
)
public interface IHello {
	/**
	 * sayHello
	 * @param arg0
	 * @return
	 */
	@WebMethod
	public String sayHello(String arg0);
}

2.实现接口
package com.sha;

import javax.jws.WebService;
/**
 * @author: Administrator
 * Date: 2015-4-17
 * Time: 上午09:04:30
 */
@WebService(
		endpointInterface = "com.sha.IHello", 
		portName = "hello_Port", 
		serviceName = "hello_Service", 
		targetNamespace = "http://www.sha.com/hello"
)
public class HelloImpl implements IHello{

	@Override
	public String sayHello(String arg0)
	{
		System.out.println("客户端调用 sayHello ");
		return "hello "+arg0;
	}

}


3.发布服务
package com.sha;

import javax.xml.ws.Endpoint;
/**
 * 启动服务
 * @author: Administrator
 * Date: 2015-4-17
 * Time: 上午09:04:30
 */
public class HelloServer {
	private static String ENDPOINT_URL="http://localhost:31038/hello";

	public static void main(String[] args)
	{
		IHello helloimpl = new HelloImpl();
		Endpoint endpoint = Endpoint.create(helloimpl);
		/*发布webservice*/
		endpoint.publish(ENDPOINT_URL);
		System.out.println("运行并发布hello WebService Successfully...");
	}
	
}

4.客户端访问
package com.sha;

import java.net.MalformedURLException;
import java.net.URL;

import javax.xml.namespace.QName;
import javax.xml.ws.Service;
/**
 * 客户端
 * @author: Administrator
 * Date: 2015-4-17
 * Time: 上午09:04:30
 */
public class HelloClient {
	private static final String ENDPOINT_URL = "http://localhost:31038/hello?wsdl";
	private static final String nameSpace = "http://www.sha.com/hello";
	private static final String serviceName = "hello_Service";


	public static void main(String[] args) throws MalformedURLException
	{
		//连接服务器端
		URL url = new URL(ENDPOINT_URL);
		QName name = new QName(nameSpace, serviceName);
		Service service = Service.create(url, name);
		IHello hello = service.getPort(IHello.class);
		String response = hello.sayHello("admin");
		System.out.println("返回的报文:" + response);
	}
}

5.build.xml生成相应的wsdl文件和xsd文件
<project default="wsgen">
	<!--wsgen
		-cp 定义classpath 
		-r 生成 bean的wsdl文件的存放目录
		-s 生成发布Web Service的源代码文件的存放目录(如果方法有抛出异常,则会生成该异常的描述类源文件)
		-d 生成发布Web Service的编译过的二进制类文件的存放目录(该异常的描述类的class文件) 
		-->
	<target name="wsgen">
		<exec executable="wsgen">
			<arg line="-cp ./server/classes -keep -s ./server -d ./server/classes -r ./public -wsdl com.sha.HelloImpl" />
		</exec>
	</target>

</project>
分享到:
评论

相关推荐

    WebService CXF学习-入门篇.pdf

    **WebService CXF 学习——入门篇** **一、WebService CXF 由来与目标** Apache CXF 是一个流行的开源框架,它源自 ObjectWeb Celtix 和 CodeHaus XFire 的合并,这两个项目分别由 IONA 公司和业界知名SOAP堆栈...

    使用jaxws快速发布WebService

    本篇将详细介绍如何使用JAX-WS快速发布一个简单的Web服务,适合初学者入门。 首先,我们需要编写一个服务接口或实现类。这个类将定义Web服务提供的功能。例如,我们可以创建一个名为`HelloWorldService`的类,包含...

    axis中文文档

    - **JAX-RPC/JAX-WS**:Axis基于JAX-RPC(Java API for XML-based RPC)实现,同时也支持更现代的JAX-WS(Java API for XML Web Services)规范。 - **模块化设计**:Axis允许通过添加自定义模块来扩展其功能,如...

    Apache CXF 资料搜集

    5. **Apache CXF入门范例以及对传递ListMap类型的疑惑**:这篇资料可能讨论了在使用CXF时遇到的具体问题,例如如何处理复杂的数据类型,如List, Object&gt;&gt;。在Web服务中,复杂类型的序列化和反序列化可能需要特别注意...

    cxf 入门(hello world)

    CXF支持JAX-WS和JAX-RS标准,分别用于构建SOAP和RESTful服务。JAX-WS是基于WSDL(Web服务描述语言)的,而JAX-RS则基于HTTP协议和URI设计原则。 **步骤一:创建CXF项目** 1. 设置开发环境:确保已经安装了Java JDK...

    WebService CXF学习文档

    WebService CXF学习——入门篇 1.CXF由来 2.HelloWorld 3.WSDL描述 WebService CXF学习——进阶篇 1.SOAP讲解 2.JAX-WS讲解 3.对象传递 WebService CXF学习——高级篇(一)(二) 1.整合Spring框架 2.CXF...

    CXF入门 -- 第一个简单webService

    CXF全称CXF CXF (Common eXtensible Framework),它支持多种服务标准,如SOAP、RESTful、JAX-WS、JAX-RS等。CXF不仅提供了服务端的实现,还提供了客户端调用服务的API,使得开发和调试Web服务变得简单易行。 2. **...

    cxf入门学习

    这篇博文链接(由于实际链接不可用,此处不再提供具体内容)可能涵盖了CXF的基本概念、环境配置、快速入门示例等内容。 【标签】:“源码”意味着该压缩包可能包含CXF的部分源代码,供学习者查看和理解其内部工作...

    Axis实践之Axis入门

    【Axis实践之Axis入门】 Axis是一个流行的开源SOAP(Simple Object Access ...继续深入学习,你将掌握更多关于Web服务开发的专业知识,如WSDL、SOAP消息结构、服务安全以及与其他技术(如JAX-RPC、JAX-WS)的集成等。

    Web Service修炼之一XFire入门3

    1. **定义服务接口**:使用Java接口来定义Web服务的契约,可以使用JAX-RS或JAX-WS的注解来标注方法。 2. **实现服务接口**:创建接口的实现类,业务逻辑在此处编写。 3. **配置服务**:可以通过XML配置文件或注解来...

    webService入门

    本篇文章将详细介绍这三项关键技术以及如何入门Web服务。 1. SOAP(简单对象访问协议) SOAP是Web服务的主要通信协议,它定义了一种结构化的XML消息格式,用于在分布式环境中传递信息。SOAP消息包含三个主要部分:...

    WebService的实现——CXF学习笔记

    它集成了JAX-WS和JAX-RS标准,允许开发者使用注解或者XML配置来定义服务接口。 2. **环境配置**:要运行CXF的示例,需要安装JDK 1.5或以上版本,Eclipse 3.4,以及Tomcat 5.5作为应用服务器。同时,需要下载并添加...

    Java WebService入门实例

    在Java中,我们可以使用JAX-WS(Java API for XML Web Services)来创建和部署WebService。以下是一个简单的示例: - 首先,我们需要创建一个标注了`@WebService`的Java类,这个类中的公共方法将暴露为可供调用的...

    WebService

    XFire 支持多种 Web 服务标准,如 Spring 整合、JBI、JAXB、XMLBeans、Java 5 和 JAX-WS,并支持 HTTP、JMS、XMPP 和内存中的传输协议。 #### 五、实现 HelloWorld WebService ##### 1. 创建 HelloWorld ...

    WebService (一) CXF 入门 HelloWorld

    在这里,我们使用了JAX-WS注解来描述服务。 #### 2.4 配置CXF 在Spring配置文件中,配置CXF的Servlet和服务发布: ```xml ``` #### 2.5 运行与测试 运行应用,然后可以通过CXF提供的测试客户端或者使用...

    glassFish+postgres+NetBeans j2ee开发指南

    JavaEE(Java Platform, ...综合来看,这篇文章是一份全面的JavaEE开发入门指南,覆盖了从基础概念到环境配置,再到快速入门和实际应用集成,甚至提供了参考资料,对初学者和有经验的开发者都有一定的指导价值。

    经典JAVA.EE企业应用实战.基于WEBLOGIC_JBOSS的JSF_EJB3_JPA整合开发.pdf

    第二部分则深入探讨了JSF RI(Reference Implementation)、JTA(Java Transaction API)、JNDI(Java Naming and Directory Interface)、RMI...)、JavaMail、EJB 3的session bean和message driven bean、JPA以及JAX...

Global site tag (gtag.js) - Google Analytics