转载地址:http://www.iteye.com/topic/183779
我这个人向来比较懒,没有动手写点东西的习惯,呵呵
最近几天由于需要,在学习webservice,用惯了eclipse,也想搭建个eclipse下开发web service的平台,上网搜索了下,文章还不少,非常详细,但是配置总是出错误,最大的问题是不能生成wsdl.无奈之下,自己动手。参考官方的文档,下面开始。
请尊重他人打字的辛劳,转载必须注明出处,并使用链接方式引用
1、tools
工欲善其事,当然是先找工具了
eclipse3.3
http://download.actuatechina.com/eclipse/eclipse/downloads/drops/R-3.3-200706251500/eclipse-SDK-3.3-win32.zip
STP all_in_one(以下简称stp)
这里推荐安装all_in_one(此安装文件已经包含必要的插件)
http://download.eclipse.org/stp/downloads/
相关的Pre-requisites SOA runtime
Apache CXF (一定要是2.1版本的) (必要)
http://people.apache.org/repo/m2-snapshot-repository/org/apache/cxf/apache-cxf/http://archive.apache.org/dist/incubator/tuscany/java/sca/1.0-incubating/
如果在生成WSDL时,出现找不到main的情况,是由于没有下载到正确的cxf运行环境
Apache Tuscany SCA Java (下载最新的apache-tuscany-sca-1.0-incubating.zip )
需要的tool就齐了
2、开始安装
eclipse 3.3安装非常简单,指定目录 解压缩就可以
STP all in one 是eclipse的插件,推荐采用link方式安装,具体请搜索网络,一大堆
简单说明下安装:
1)解压缩stp all in one,注意插件内文件名较长,如果解压缩的目录过长,如D:\My Documents\第四版本资料\使用links方式安装Eclipse插件\Struts2+Spring+Hibernate In Action(这样的目录是不行的),那么部分插件不能被解压缩,目录层次要少。将 stp解压缩到e:\stp
2)加入eclipse在e:\eclipse安装,在e:\eclipse下建立目录links,在links目录下建立文件AllInOne.link。用记事本打开,输入内容:path=e:\\stp
这里的e:\\stp 就是stp all in one的安装目录
3)用命令行方式运行eclipse(直接打开eclipse也可以,某些情况下,可能出现看不到新安装的插件)
cmd
e:\eclipse\eclipse -clean
启动eclipse
4) 打开eclipse后,在菜单栏,windows-->preference-->soa tools 如下图,说明插件安装成功
3、配置
1)把CXF2.1 sca1.0解压缩,目录分别为
d:\cxf2.1,d:\sca1.0
2) 选择上图中 Installed Runtimes
如下图
环境配置成功
4、开始测试环境是否能够开发webservice并简单演示自动生成wsdl的过程
1)新建立java project
project name: demo
/**
* 创建接口,将业务方法暴露给远程调用者
* @author 赵永亮
*
*/
package org.zhaoyl.webservice;
public interface Hello
{
public String sayHello();
}
2) 右键项目名称(demo),选择JAX-WX Tools -->enable JAX-WX-->java first programing mode
如下图
选择运行cxf环境(在配置里面已经安装了)
下一步
如图
选择Hello接口
完成
此时Hello.java内容如下:
package org.zhaoyl.webservice;
import javax.jws.WebService;
/**
* 创建接口,将业务方法暴露给远程调用者
* @author 赵永亮
*
*/
@WebService(name="Hello", targetNamespace="http://webservice.zhaoyl.org/")
public interface Hello {
public String sayHello();
}
3)在eclipse中调出 Annotation properties视图,增加并设置@WebService注释
在Hello.java文件中选择@webservice部分(鼠标定位在该部分就可以了)->在下面的Annotation Properties中选中javax.jws.soap.SOAPBinding,将缺省的false修改成true;将SOAPBinding展开,将其中的Style属性从RPC修改成DOCUMENT(注意是大写)。
此时Hello.java内容如下:
package org.zhaoyl.webservice;
import javax.jws.WebService;
import javax.jws.soap.SOAPBinding;
/**
* 创建接口,将业务方法暴露给远程调用者
* @author 赵永亮
*
*/
@SOAPBinding(use=SOAPBinding.Use.LITERAL, style=SOAPBinding.Style.DOCUMENT)
@WebService(name="Hello", targetNamespace="http://webservice.zhaoyl.org/")
public interface Hello {
public String sayHello();
}
4)在outline视图,选择sayHello(),右键,JAX-WX tools--〉create web method
此时,Hello.java内容如下:
package org.zhaoyl.webservice;
import javax.jws.WebService;
import javax.jws.soap.SOAPBinding;
import javax.xml.ws.RequestWrapper;
import javax.xml.ws.ResponseWrapper;
import javax.jws.WebMethod;
/**
* 创建接口,将业务方法暴露给远程调用者
* @author 赵永亮
*
*/
@SOAPBinding(use=SOAPBinding.Use.LITERAL, style=SOAPBinding.Style.DOCUMENT)
@WebService(name="Hello", targetNamespace="http://webservice.zhaoyl.org/")
public interface Hello {
@WebMethod(operationName="sayHello", exclude=false)
@ResponseWrapper(className="org.zhaoyl.webservice.SayHelloResponse", localName="sayHelloResponse", targetNamespace="http://webservice.zhaoyl.org/")
@RequestWrapper(className="org.zhaoyl.webservice.SayHello", localName="sayHello", targetNamespace="http://webservice.zhaoyl.org/")
public String sayHello();
}
5)右键项目名称(demo),JAX-WX Tools -->Generate wsdl
呵呵,自动生成了wsdl
目录结构图如下:
总结:此时,能够正确自动生成WSDL文件了,至于如何调用等等问题,还有待于学习
个人平时很少写作,以至于文字错误较多,语句不通顺之处,请多体谅
太郁闷了 ,怎么不能贴图,只好把QQ仍到上面了:252574345
分享到:
相关推荐
Web项目中基于Maven与Spring整合的WebService之cxf的实现⬇️ 详情请参考如下链接: https://locqi.github.io/locqi.com/2018/09/05/Eclipse+Maven+Spring+CXF-create-WebService/
SpringBoot+Mybatis+CXF框架,实现Restful api与 WebService api接口的大实验 ...通过本实验,我们可以学习到Spring Boot的自动配置和依赖管理功能、Mybatis的数据库操作功能和CXF的WebService开发功能。
基于spring+cxf实现用户文件传输的webservice.docx,webservice的小例子,对学习很有用,欢迎大家下载
Spring+CXF+tomcat开发webservice,包含服务端和客户端,导入myeclipse就可以用。帮助大家搭建webservice框架,实现webservice功能。
傻瓜试记录开发步骤,具体实现自己去完成。 如果看不懂,找自已原因。
FLEX4+Gilead+BlazeDS+pureMVC+spring2.5 MVC+hibernate3.3+SLF4J+CXF2.3.0 以及相关插件
实战Web+Service+with+CXF webservice快速入门 webservice快速入门
ibatis+spring+cxf+mysql搭建webservice的客户端,文章地址在http://blog.csdn.net/cenyi2013/article/details/17315755. 服务端源码的下载地址在http://download.csdn.net/detail/cenyi2012/6712729
简单的webservice+Cxf+Spring数据对接实例以及jar.rar简单的webservice+Cxf+Spring数据对接实例以及jar.rar简单的webservice+Cxf+Spring数据对接实例以及jar.rar简单的webservice+Cxf+Spring数据对接实例以及jar.rar...
Weblogic92+CXF+XDoclet+Spring轻松搞定webservice 例子
Spring + cxf = webservice 完整实例源码免费下载 完全免费。此资源仅为文档提供。 版权为百度文档 "Spring + cxf = webservice 完整实例源码免费下载" 所有。
本java工程实现了spring+cxf快速开发webservice jar包齐全导入myeclipse可直接二次开发
Spring+cxf配置接口+mybatis配置
mybatis+spring+cxf webservice服务 项目框架代码例子,绝对是可以参考的,信不信,只有下载之后才知道
自己在网上找了很多cxf实现rest风格的文章也不少,但是都讲的不全面,也没有lib包,所以自己参考网上零散的文章,搞了大半天才成功的。现在把源码发上来,java代码只有12K,主要是lib里面的全部jar包(spring、cxf等...
蛮简陋的一个项目,适合新手使用。 这是一个包含简单登录和查询的Web项目,内附有一个表sql文件和两个java项目。 WS_WebService是服务端,是一个Web项目,先启动它,进入的登录页面的链接为:...
Eclipse下Maven+Spring+CXF 构建webservice 服务,包含详细代码,完整的maven项目,内附说明,需要可以下载查看
maven+spring+cxf 的webservice开发源码,欢迎大家指点,谢谢
NULL 博文链接:https://liugang594.iteye.com/blog/2022626
WebService环境配置 CXF环境搭建