工具:Eclipse
说明:我知道的WebService的一点点的作用,例如:天气预报,这样的一个项目,应该很庞大,并不是所有的公司都能写的起的,
那所以呢,有的公司把天气预报做成了webService的形式的,这样,其他的企业如果想用天气预报的功能的话,不用自己写了,直接的花点钱买服务就行了。所以我测试的时候(局域网),为了展示出明显的效果,我就把服务端代码和客户端代码写在了不同的电脑上,只是为了增强效果。
随便建立一个Java-project
服务器端的代码
1:写一个接口,暴漏在外面的
package service;
//对外暴露的接口
publicinterfaceTestWebService{
publicString getName(String name);
}
2:写接口的实现类
package service;
import javax.jws.WebService;
import javax.jws.soap.SOAPBinding;
import javax.xml.ws.Endpoint;
//name webService的名称,ServiceName:webService的服务名称
@WebService(name="wsName",serviceName="wsServiceName")
@SOAPBinding(style =SOAPBinding.Style.RPC)//可能是我的jdk的版本低吧,如果不加这个注解,会报错,因为默认的是:
//SOAPBinding.Style.DOCUMENT
publicclassTestWebServiceImplimplementsTestWebService{
publicString getName(String name){
// TODO Auto-generated method stub
return"你好,"+name;
}
/**
* @param args
*/
publicstaticvoid main(String[] args){
Endpoint.publish("http://192.168.1.116:7777/wsServiceName/",newTestWebServiceImpl());
}
}
错误图:
![基于jdk6的WebService~JAX-WS 方法 - 杨阳 - 会有天使替我爱你](http://img1.ph.126.net/y_mWP86eUaXtOlevaqaUcA==/98234766889935051.jpg)
错误信息截取:Wrapper class service.jaxws.GetName is
not found. Have you run APT to generate them?
试运行
TestWebServiceImpl 运行这个类的main方法,这个就是打开服务的过程
在浏览器里输入网址:http://localhost:7777/wsServiceName/?wsdl 能运行出xml来就行
接下来就是看 webService的实际应用了
在另一台电脑上,也是建立一个随便的项目,我这里建立的是javaProject
![基于jdk6的WebService~JAX-WS 方法 - 杨阳 - 会有天使替我爱你](http://img8.ph.126.net/L_4jcs9DZU0HVlLqckuyog==/2737625623505644448.jpg)
1:Test的代码:空代码,还没有十几意义
package test;
publicclassTest{
publicstaticvoid main(String[] args){
}
}
2:把webService的代码,引入到客户端,应用者的地方
开始 -》运行 (cmd)
![](http://dl2.iteye.com/upload/attachment/0085/7529/b3c8bd6f-071e-321d-b9c8-0f22a176b1a9.jpg)
我解释一下下面的这个命令
wsimport -s F:\practice\room\jdk6WSClient -keep http://192.168.1.116:7777/wsServiceName/?wsdl
wsimport 呢就是专门,命令来获取服务器的wsdl文件并生成客户端的stub类信息
-s 是用来指定生成的 服务器端的代理类(wsimport 能打出所有的命令,并能查看,每个命令的作用)
F:\practice\room\jdk6WSClient 这个是指我的客户端电脑上的项目所在的位置
-keep 就是 keep generated files
http://192.168.1.116:7777/wsServiceName/?wsdl 这个就是服务的网址
执行这个命令后,客户端的项目,就产生了响应的代码:如下图,刷新一下项目
共生成了两个类:WsName,WsServiceName 这两个生成的原因是,人家服务器端的代码里,这样写过了
@WebService(name="wsName",serviceName="wsServiceName") 在此日志的上面,写过了
![基于jdk6的WebService~JAX-WS 方法 - 杨阳 - 会有天使替我爱你](http://img1.ph.126.net/a2I-ENq66-TfP4Omn3H_tA==/41095346617761341.jpg)
package test;
import service.WsServiceName;
publicclassTest{
/**
* @param args
*/
publicstaticvoid main(String[] args){
WsServiceName test=newWsServiceName();
String msg=test.getWsNamePort().getName("哎呀呀");
System.out.println(msg);
}
}
相关推荐
Java 基于第三方插件实现WebService实在麻烦,尤其是要添加几十M的Jar包...还好,自从JDK 1.6开始,Java自身已经支持WebSeervice的开发即JAX-WS,附件是一个简单的示例,供入门参考。注意,JDK环境要求1.6及以上版本。
Java API for XML Web Services(JAX-WS)是Java平台上用于构建和消费Web服务的标准API。它简化了创建和使用Web服务的过程,使得开发者能够通过SOAP消息与远程服务进行交互。JAX-WS允许开发者将服务接口直接映射到...
- 考虑到Web服务的安全性,JAX-WS支持WS-Security标准,可以实现消息认证、加密和签名。 8. **测试**: - 使用工具如`wsimport`生成客户端代码后,可以编写测试用例来验证服务的正确性。 9. **ws_1文件**: - ...
【Java WebService Jax-WS 创建】是Java中创建Web服务的一种常见方式,主要用于构建基于SOAP(Simple Object Access Protocol)的Web服务。JAX-WS(Java API for XML Web Services)是Java EE 5及更高版本中提供的...
Java API for XML Web Services(JAX-WS)是Java平台上的一个标准,用于构建和部署Web服务。...在"jax-ws-server"和"jax-ws-client"这两个目录中,你可以找到完整的示例代码,帮助你理解和实践JAX-WS的使用。
- **运行环境**:说明了在 JDK 6 上运行 JAX-WS 的特定要求。 - **依赖库**:列出了必需的 JAR 文件及其版本。 - **限制条件**:指出了当前版本中存在的已知限制。 - **修复的 Bug**:列出了在此版本中修复的错误...
在MyEclipse中使用JAX-WS开发Web服务是一个简单而高效的过程,下面将详细介绍这个过程中的关键步骤和涉及的技术点。 首先,JAX-WS(Java API for XML Web Services)是Java平台上的一个标准,用于创建和消费Web服务...
【标题】:“基于Jax-ws的WebService”详解 在Web服务开发中,JAX-WS(Java API for XML Web Services)是一种标准的、面向Java平台的SOAP Web服务开发框架。它是由Sun Microsystems(现在是Oracle公司的一部分)...
在Java SE 6及以后的版本中,JAX-WS已经被集成到JDK中,提供了创建SOAP(Simple Object Access Protocol)Web服务的简便方法。 标题中的"webservicedemo+jax-ws"是一个示例项目,展示了如何使用JAX-WS来实现Web服务...
【JAX-WS开发部署WebService】是Web服务开发的一个重要主题,主要涉及到使用Java API for XML Web Services(JAX-WS)创建和部署基于SOAP的Web服务。JAX-WS是一种标准的、Java平台上的API,它使得开发人员能够轻松地...
在JAX-WS 2.0中,异步调用基于JDK 5.0的并发编程支持,特别是`java.util.concurrent.Future`接口和回调机制。`Future`接口允许客户端应用程序启动一个异步操作,并在后续时间检查该操作是否完成,而不会阻塞当前线程...
然而,现代开发中,Apache CXF更为常见,因为它支持更多的WS-*规范并有更好的社区支持。 教程内容可能包括以下步骤: 1. **环境配置**:首先确保安装了MyEclipse 6.5,然后可能需要配置JDK和Web服务相关的库,如...
这是因为JAX-WS自Java SE 6开始作为标准API被集成到了JDK中,但在Java SE 1.5中也可以通过额外添加相关的JAR包来实现。 2. **开发工具**:本教程推荐使用MyEclipse作为开发工具,因为MyEclipse内置了对JAX-WS的...
### JAX-WS WebService开发详解 #### 一、开发环境 为了进行JAX-WS WebService的开发,本文档采用以下开发环境配置: - **操作系统**:Windows XP - **IDE**:MyEclipse 10 - **Web服务器**:Tomcat 7 - **Java版本...
8. **安全性**: 虽然JDK 5的JAX-WS没有内置高级的安全特性,但可以通过添加第三方库,如Apache CXF或Metro,来实现WS-Security等安全标准。 9. **性能优化**: 针对大规模的Web服务应用,JDK 5的JAX-WS支持服务端的...
使用JAX-WS(JWS)发布WebService 使用myeclipse开发java的webservice的两种方式 方式一: (此方式只能作为调试,有以下bug:jdk1.6u17?以下编译器不支持以Endpoint.publish方式发布document方式的soap,必须在...
2. **CXF框架**:提供更多功能和扩展性,如WS-Security、MTOM/XOP等,对于大型项目或有特定需求的Web服务更有优势。同时,CXF提供了更好的调试工具和更强的错误处理机制。 总结,JDK原生方式适合初学者或小型项目,...
JDK 6引入了JAX-WS(Java API for XML Web Services),它是一个标准的、基于注解的框架,简化了Web Service的开发流程。以下是对标题和描述中涉及的知识点的详细说明: 1. **JAX-WS**: JAX-WS是Java平台的一个核心...