Java6.0之后,JDK自带了一个轻量级的Web Service服务器。
因此,使用JDK自带的API,不必担心框架(Axis、Spring WS)升级、更新等系列问题。
开发步骤:
1、创建一个WebServer Project
package wei.peng.server;
import javax.jws.Oneway;
import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebService;
import javax.xml.ws.Endpoint;
/**
* @author WPeng
* @time 2011-3-14 AM 12:03:33
* @email pengwei841221@126.com
*/
@WebService(targetNamespace = "http://localhost:8888/WEIPENG",
serviceName = "HelloServices")
public class WSProvider {
// 自定义该方法返回值在WSDL中相关的描述
//@WebResult(name="Greetings")
@WebMethod(action="sya",operationName="sayHi")
// WebParam是自定义参数name在WSDL中相关描述
public String sayHi(@WebParam(name="MyName") String name){
return "Hi, " + name;
}
// 表明该服务方法是单向的,既没有返回值,也不应该什么检查异常
@Oneway
// 自定义方法在WSDL中相关描述
@WebMethod(action="printSystemTime",operationName="printSystemTime")
public void printTime(){
System.out.println(System.currentTimeMillis());
}
public static void main(String args[]){
Thread wsPublisher = new Thread(new WSPublisher());
wsPublisher.start();
}
private static class WSPublisher implements Runnable{
@Override
public void run() {
// 发布WSPublisher到http://localhost:8888/WEIPENG/HelloServices这个地址
// 之前必须调用wsgen命令,生成服务类HelloServices的支持类,命令如下:
// wsgen -cp . wei.peng.server.WSProvider
Endpoint.publish("http://localhost:8888/WEIPENG/HelloServices", new WSProvider());
}
}
}
在服务器端运用 @WebService @WebMethod 等注释描述生成WSDL文件。
进入classes目录,运行
wsgen -cp ./bin -r ./wsdl -s ./src -d ./bin -wsdl wei.peng.server.WSProvider
执行之后会在WSDL文件夹中生成HelloServices的wsdl描述文件,
src文件夹中生成依赖类
bin生成依赖类的class文件
2、运行WSProvider
在浏览器打开
http://localhost:8888/WEIPENG/HelloServices?wsdl
3、创建WebClient Project
wsimport -d ./bin -s ./src -p wei.peng.client http://localhost:8888/WEIPENG/HelloServices?wsdl
会在客户端的wei.peng.client目录下生成相关的辅助类文件(便于客户端的调用)
共有七个文件:HelloServices.java
ObjectFactory.java
package-info.java
PrintSystemTime.java
SayHi.java
SayHiResponse.java
WSProvider.java
4、编写客户端程序
package wei.peng.client.test;
import wei.peng.client.HelloServices;
import wei.peng.client.WSProvider;
public class TestClient {
public static void main(String[] args) {
HelloServices helloServices = new HelloServices();
WSProvider wsProvider = helloServices.getWSProviderPort();
System.out.println(wsProvider.sayHi("wei.peng"));
wsProvider.printSystemTime();
}
}
5、运行TestClient
分享到:
相关推荐
9. **Web服务支持**:Java 1.6加强了对Web服务的支持,包括JAX-WS(Java API for XML Web Services)和JAXB(Java Architecture for XML Binding)。 10. **国际化和本地化**:对多语言环境的支持更加完善,包括...
Java Development Kit (JDK) 1.6 是一个重要的Java平台版本,它引入了许多新特性以增强开发者的体验,其中包括对Web服务(Web Services)的全面支持。Web服务是一种通过互联网进行应用程序之间的通信方式,允许不同...
JDK1.6对XML解析和Web服务的支持更加完善,如JAXB(Java Architecture for XML Binding)和JAX-WS(Java API for XML Web Services),简化了XML数据绑定和Web服务的开发。 **6. 其他增强** JDK1.6还包括了对IPv6...
8. **Web服务支持**: 对JAX-WS(Java API for XML Web Services)的增强,简化了Web服务的开发和部署。 9. **JavaScript交互**: 通过Java Scripting API,Java 6允许Java程序与JavaScript脚本进行交互,促进了混合...
在本案例中,我们关注的是JBoss 5.0版本与EJB 3.0以及Web Services的集成,特别是针对使用Java Development Kit (JDK) 1.6时可能出现的兼容性问题。以下是对这些关键概念的详细解释和解决方案: 1. **EJB 3.0**:...
标题中的“jdk1.6与jboss5.x冲突问题的解决方法”指的是在使用Java Development Kit(JDK)1.6版本与JBoss Application Server 5.x版本进行集成时可能出现的兼容性问题。JBoss AS是一款开源的企业级Java应用程序...
2. **协议支持**:CXF支持多种Web服务协议,如JAX-WS(Java API for XML Web Services)和JAX-RS(Java API for RESTful Web Services)。这使得开发者可以灵活地选择适合项目需求的服务模型。 3. **绑定框架**:...
标题"jdk1.6_6u45"指的是Java Development Kit (JDK) 的1.6版本的第6个更新,即更新45。JDK是Oracle公司提供的用于开发和运行Java应用程序的软件工具包,包含了Java编译器、调试器、JVM(Java虚拟机)等核心组件。 ...
《JDK1.6中文帮助文档三》是Java开发者的重要参考资料,主要涵盖了JDK1.6版本中的各类API、工具及技术要点。这部分文档详细解释了Java开发工具集的使用方法,包括编译器、运行时环境、调试器以及各种实用工具。在JDK...
6. **Web服务支持**:JDK 6加强了对Java EE和Web服务的支持,如Java API for RESTful Web Services (JAX-RS)的初步实现,使得开发RESTful服务更加便捷。 7. **脚本语言支持**:通过Java Scripting API,JDK 6可以...
9. **Web服务支持**:增加了对Java API for RESTful Web Services (JAX-RS)的支持,简化了RESTful服务的开发。 10. **脚本语言支持**:通过JSR 223,JDK 1.6引入了对多种脚本语言(如JavaScript)的内置支持,提高...
在 JDK 1.6 版本中,注解的引入极大地简化了 Web 服务的开发,使得开发者能够更高效地创建、部署和管理 Web 服务。 `@WebService` 是 Java Web Services (JAX-WS) 中的一个核心注解,用于声明一个类或接口作为 Web ...
AWS Java SDK 1.6.7 是亚马逊网络服务(Amazon Web Services)提供的Java开发工具包的一个版本,主要用于帮助Java开发者轻松地与AWS的各种云服务进行交互。这个版本1.6.7是AWS SDK for Java历史上的一个里程碑,包含...
- **Java版本**:jdk1.6 - **服务器**:Tomcat 5.5.20 #### 三、搭建开发环境 首先需要安装和配置上述提到的开发工具和运行环境。假设这些环境已经就绪,接下来按照以下步骤开始开发Web Services。 #### 四、创建...
在Java中,JDK 1.6开始内置了对Web Services的支持。例如,使用@WebService注解定义一个服务接口,@SOAPBinding注解指定绑定样式,@WebMethod注解标记服务方法。通过Endpoint类的publish方法可以发布服务,使得其他...
8. **Web服务支持**:IBM JDK 1.6支持JAX-WS(Java API for XML Web Services),使开发Web服务和客户端变得更简单。 9. **国际化**:1.6版本进一步增强了对多语言和不同地区设置的支持,方便开发全球化的应用程序...