axis2开发webservice(二)
工欲善其事,必先利其器
我们选择axis2来生成服务端和客户端
首先安装myeclipse或者eclipse的axis2插件如果使用其它的工具可以自己查找有没有更好的工具。
1. 下载Myeclipse Axis2插件
http://archive.apache.org/dist/ws/axis2/tools/1_4_1/
下载axis2-eclipse-codegen-wizard.zip和axis2-eclipse-service-archiver-wizard.zip
http://labs.xiaonei.com/apache-mirror/ws/axis2/1_5/axis2-1.5-war.zip
下载axis2-1.5-war.zip
2.解压插件($ECLIPSE_HOME表示你安装的myeclipse主目录)
将上述两个插件都解压到$ECLIPSE_HOMEeclipseplugins目录中;
Axis2_Codegen_Wizard_1.3.0 和Axis2_Service_Archiver_1.3.0
3. 在$ECLIPSE_HOMEeclipselinks目录下增加文件axis-eclipse-plugin.link
写入path= $ECLIPSE_HOMEeclipseplugins (千万不要直接复制!!)
4. 重新启动myeclipse,在file->new->other中即可看到Axis2 Wizards,至此,axis2插件安装成功!!(GXGX)
5. 赶快试下用wsdl文件生成java源文件吧!是不是有错误出现?对~ 事情就是这样发展的。
6. An error occurred while completing process-java.lang.reflect.InvocationTargetException的错误 。嗯不用急~ 有得解
解决方法如下: step 1、从AXIS2的LIB库中复制"geronimo-stax-api_1.0_spec-1.0.1.jar"和
"backport-util-concurrent-3.1.jar"文件到Axis2_Codegen_Wizard_1.3.0的lib目录中,同时修改Axis2_Codegen_Wizard_1.3.0下的plugin.xml文件,在<runtime>中添加
<library name="lib/geronimo-stax-api_1.0_spec-1.0.1.jar">
<export name="*"/>
</library>
<library name="lib/backport-util-concurrent-3.1.jar">
<export name="*"/>
</library>
到plugin.xml文件中,保存!
step 2、将 $workspace位置.metadata.plugins下目录 Axis2_Codegen_Wizard 删除
step 3、在命令行下切换至$ECLIPSE_HOME目录,然后执行:
eclipse –clear
当然也可以下载更新一点的版本,如果在安装插件的过程中遇到问题,上边已经提供了解决方案,如果仍然不能解决,可以再到网上查一下,我用上边的办法已经成功解决了,而且正常的生成代码没有问题。
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 从 0 开始构建一个亿级请求的微服务架构
- ruby+cucumber+watir环境搭建
- Python常用模块os和shutil学习
- Python简单实现批量下载无版权图片
- Pycharm自动添加文件头注释和函数注释参数
- ClickHouse TTL for Columns and Tables
- Sentence-BERT详解
- 分布式文件系统(HDFS和FastDFS)
- Springboot集成JUnit5优雅进行单元测试
- 音视频相关开发库和资料
- SpringSecurity认证专题之【AuthenticationManager】
- dotnet 让 C# 可以通过动态生成 HLSL 使用 DX12 的 GPU 并行计算库 ComputeSharp 的简介
- 比对软件STAR创建索引文件(index)
- linux|无需解压查看压缩文件内容
- R函数不会写,"抄"总会吧!