eclipse中AXIS2发布过程
Axis2服务端研究好几个小时,终于解决了
需要下载:
地址1:
可以从镜像站下载: 上海大学开源镜像站
地址2:
链接:从百度网盘下载;
密码:8nwu

其中第二个可以不用下;
解压后

将3,4解压后的jar放到D:\eclipse\plugins,也就是安装目录的PLUGINS文件夹下;
在eclipse里面设置axis2运行时环境:
Windows-preferences-web services-axis2 preferences-axis2 runtime:
选择路径后确定

然后在eclipse里面新建一个dynamic web project;(我这里是XA)写你的用于服务的java类,如图:

此方法就是传4个参数,然后返回一个xml格式字符串;
然后建立webservice:
右键左边项目资源浏览器里面的刚才新建的服务类:SyncData.java,-web service-create webservice;

注意将configuration中第二项改成 axis2;然后一路下去生成webservice;
此时左侧项目自动生成相应文件如下图:

可以看到生成了很多新的文件;
打开WEB-INF的lib,发现里面自动导入了很多jar包,但这里缺少一个(可能是eclipse版本的问题)需要手动导入;
打开F:\java库\axis2-1.7.7\axis2-1.7.7-bin\axis2-1.7.7(文章开头下载后的解压路径),
打开lib,复制里面的xmlschema-core-2.2.1.jar这个jar包到eclipse里面左侧XA项目中的WEB-INF/lib;(重要);
并且删除项目lib中的XmlSchema-1.4.7.jar(相当于用xmlschema-core-2.2.1.jar替换掉XmlSchema-1.4.7.jar)
Jar包导入后,现在修改:

双击项目中的services.xml:
<service name="SyncData" >
<Description>
Please Type your service description here
</Description>
<messageReceivers>
<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only" class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" />
<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out" class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
</messageReceivers>
<parameter name="ServiceClass" locked="false">com.ams.webService.SyncData</parameter>
</service>
上方是原内容,注意红色字,现在修改为:
<service name="SyncData" >
<Description>
Please Type your service description here
</Description>
<messageReceivers>
<messageReceiver mep="http://www.w3.org/ns/wsdl/in-only" class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" />
<messageReceiver mep="http://www.w3.org/ns/wsdl/in-out" class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
</messageReceivers>
<parameter name="ServiceClass" locked="false">com.ams.webService.SyncData</parameter>
</service>
至此,修改完毕;webservice服务端可正确发布;
通过spring配置数据源时必看:
如果提示报错找不到javax/ws/rs/Produces ;
复制F:\java库\axis2-1.7.7\axis2-1.7.7-bin\axis2-1.7.7中的jsr311-api-1.1.1.jar到项目lib中;
在webservice的类中取得spring的bean:
此方法并没有将AXIAS2集成到spring中,在webservice服务类中无法通过Autowired来装载spring的bean,必须通过spring的xml配置文件来查找自动状态的bean;
public static ApplicationContext ac=new ClassPathXmlApplicationContext(new String[]{"/applicationContext.xml"});
public ABSDao absDao = (ABSDao) ac.getBean(ABSDao.class);
第一行取得ApplicationContext,第二行通过ApplicationContext来取得需要的bean,注意,这个bean没有直接配置在xml文件中,而是通过自动扫描对应包的方式配置到xml中的,因此,这个bean没有name,id等属性,所以这里只能通过xxx.class的方式来getbean
eclipse中AXIS2发布过程的更多相关文章
- Eclipse中Axis2发布WebService
介绍:Axis是apache下一个开源的webservice开发组件. l 开发工具下载: 1. eclipse的Java EE版本.下载地址:http://www.eclipse.org/dow ...
- eclipse中tomcat发布失败(Could not delete May be locked by another process)原因及解决办法
在eclipse中tomcat发布项目时,偶尔出现了以下情况: publishing to tomcat v7.0 services at localhost has encountered a pr ...
- 在eclipse中部署发布web项目 和 更改eclipseweb项目发布的路径
我的工作空间:d:workspaceweb项目名称:xxx在eclipse配置完tomcat后,发布到的路径是 d:\workspace\.metadata\.plugins\org.eclipse. ...
- Eclipse + Apache Axis2 发布RESTful WebService(二)配置开发环境
1. 下载axis2相关软件地址:http://axis.apache.org/axis2/java/core/download.html 2. 安装插件:将axis2-eclipse-codegen ...
- Eclipse + Apache Axis2 发布RESTful WebService(三)第一个程序Hello Axis2 !(未成功)
此路不通 Axis2发布SOAP WebService非常简单,建一个Dynamic Web Project,然后为它建一个Axis的Web Service(Tomcat7+JDK),就会生成Clas ...
- Eclipse + Apache Axis2 发布SOAP WebService(三)第一个程序Hello Axis2 SOAP!
因为Axis2同时支持SOAP和RESTful的WebService开发. 我的目标主要是RESTful,这里简单记录一个SOAP的小例子: 原文地址:https://jingyan.baidu.co ...
- Eclipse + Apache Axis2 发布RESTful WebService(一)基础知识
1.什么是WebService 学习 WebService 第一步:体系结构.三元素SOAP/WSDL/UDDI 2.什么是Axis2 Axis2是Apache一套崭新的WebService引擎(框架 ...
- 在eclipse中maven web项目部署到tomcat,访问不了
修改eclipse中tomcat发布路径后,能正常访问
- eclipse中build path与Web Deployment Assembly的作用,区别
转自:https://blog.csdn.net/heart_mine/article/details/79402792 以下内容只为做个笔记记录已下,有问题可以留言,欢迎补充. 今天在eclipse ...
随机推荐
- halcon相机标定及图像矫正
https://blog.csdn.net/humanking7/article/details/44756073 相机标定内容详解:转载自 祥的博客 预备知识 标定中的四个坐标系 1.1.平面旋转 ...
- Codeforces C The Game of Efil (暴力枚举状态)
http://codeforces.com/gym/100650 阅读题,边界的cell的邻居要当成一个环形的来算,时间有8s,状态最多2^16种,所以直接暴力枚举就行了.另外一种做法是逆推. #in ...
- winhex 中磁盘大小与偏移
下图为c盘(活动分区).上方base offset为相对于整个硬盘的字节偏移量.partition 1中信息包括c盘开始扇区,总扇区数.partition 2 信息为扩展分区开始扇区和扇区数.由 P1 ...
- 模板类 vector
概要 介绍一下模板类 vector 的常用操作,以及一个应用举例,顺时针打印矩阵. 基本定义 模板类 vector 是一种动态数组,它是使用 new 创建动态数组的替代品,实际上,vector 也 ...
- shell脚本,每5个字符之间插入"|",行末不插入“|”。
文本aaaaabbbbbcccccdddd eeeeefffffkkkkkvvvv nnnnnggggg 希望得到的结果如下: aaaaa|bbbbb|ccccc|dddd eeeee|fffff|k ...
- React初识整理(二)--生命周期的方法
React生命周期主要有7中: 1. componentWillMount() :组件将要挂载时触发 ,只调用1次 2. componentDidMount() :组件挂载完成时触发,只调用1次 3. ...
- **没有规则可以创建“XXX”需要的目标“XXX”问题的解决方案
一.现象 我将之前Redhat9.0编译好的uboot,转到ubuntu12.04环境.在ubuntu环境下对 uboot重新编译提示错误.编译过程如下: root@hailin-virtual-ma ...
- [转]automaticallyAdjustsScrollViewInsets(个人认为iOS7中略坑爹的属性)
@当我们在一个UIViewController中同时创建2个tableView的时候,如果把它们的frame中的Y坐标设置为一样,你可能会发现它们的位置并没有达到你想要的结果.比如第一tableVie ...
- (转)编写高质量的OC代码
点标记语法 属性和幂等方法(多次调用和一次调用返回的结果相同)使用点标记语法访问,其他的情况使用方括号标记语法. 良好的风格: view.backgroundColor = [UIColor or ...
- PAT Basic 1048
1048 数字加密 本题要求实现一种数字加密方法.首先固定一个加密用正整数 A,对任一正整数 B,将其每 1 位数字与 A 的对应位置上的数字进行以下运算:对奇数位,对应位的数字相加后对 13 取余— ...