1,新建一个web project项目,项目的目录 如下:

2,导入需要的jar包,本例用的是axis2 1.7.3版本。

3,创建接口。

package com.dsdl.hcm.webService.service;

import java.util.List;

import com.dsdl.hcm.businessmanagement.bean.HcmEmptyboxBean;

public interface EmptyBoxService {

	public String fanhui(String s);
public int updateHcmEmptyBoxForBoxCodeBySano(List<HcmEmptyboxBean> hcmEmptyboxBeanList);
public int getPrice();
public String getGreeting(String name);
public String recieveXml(String str);
}

4,创建接口的实现类EmptyBoxServiceImpl

package com.dsdl.hcm.webService.service.impl;

import java.util.ArrayList;
import java.util.List; import javax.annotation.Resource; import com.dsdl.hcm.businessmanagement.bean.HcmEmptyboxBean;
import com.dsdl.hcm.businessmanagement.dao.HcmEmptyboxDao;
import com.dsdl.hcm.webService.bean.HcmEmptyboxPojo;
import com.dsdl.hcm.webService.service.EmptyBoxService;
import com.dsdl.hcm.webService.xmlUtil.Xml;
import com.dsdl.hcm.webService.xmlUtil.XmlHead;
import com.dsdl.hcm.webService.xmlUtil.XmlUtil; public class EmptyBoxServiceImpl implements EmptyBoxService { @Resource(name="hcmEmptyboxDao")
public HcmEmptyboxDao hcmEmptyboxDao; @Override
public String fanhui(String s) {
// TODO Auto-generated method stub
return s+""+hcmEmptyboxDao.toString();
} @Override
public int updateHcmEmptyBoxForBoxCodeBySano(
List<HcmEmptyboxBean> hcmEmptyboxBeanList) {
// TODO Auto-generated method stub
return hcmEmptyboxDao.updateHcmEmptyBoxForBoxCodeBySano(hcmEmptyboxBeanList);
} @Override
public int getPrice() {
// TODO Auto-generated method stub
System.out.println(hcmEmptyboxDao+"================");
return 11;
} @Override
public String getGreeting(String name) {
// TODO Auto-generated method stub
return "你好 " + name;
}
@Override
public String recieveXml(String str){
try {
Xml xml = new Xml();
Xml xmls = (Xml) XmlUtil.getObjectFromXml(xml, str);
System.out.println(xmls.getXMLHEAD().getREQUESTUSER()); switch (xmls.getXMLHEAD().getREQUESTMETHOD()) {
case "writebackboxcode":
return this.writeBackBoxCode(xmls);
default:
return this.writeBackBoxCode(xmls);
} } catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
return "异常";
}
} private String writeBackBoxCode(Xml xmls) {
// TODO Auto-generated method stub
// BusinessManagementController businessManagementController = (com.dsdl.hcm.businessmanagement.controller.BusinessManagementController) ctx.getBean("businessManagementController");
List<HcmEmptyboxPojo> HcmEmptyboxPojo = xmls.getXMLBODY().getHCMEMPTYBOXPOJOLIST();
List<HcmEmptyboxBean> hcmEmptyboxBeanList = new ArrayList<HcmEmptyboxBean>();
HcmEmptyboxBean hcmEmptyboxBean = null; for (HcmEmptyboxPojo temp : HcmEmptyboxPojo) {
hcmEmptyboxBean = new HcmEmptyboxBean();
hcmEmptyboxBean.setSano(temp.getSANO());
hcmEmptyboxBean.setBoxCode(temp.getBOXCODE());
hcmEmptyboxBeanList.add(hcmEmptyboxBean);
}
int count = hcmEmptyboxDao.updateHcmEmptyBoxForBoxCodeBySano(hcmEmptyboxBeanList);
Xml resultXml = new Xml();
XmlHead xmlHead = new XmlHead();
xmlHead.setREQUESTTIME("");
xmlHead.setREQUESTUSER("");
if(count > 0){
xmlHead.setSTATUS(1);
xmlHead.setSTATUS_TEXT("成功");
}else{
xmlHead.setSTATUS(0);
xmlHead.setSTATUS_TEXT("失败");
}
resultXml.setXMLHEAD(xmlHead);
return XmlUtil.getXmlFromObject(resultXml);
}
}

5,webservice类SimpleService

package com.dsdl.hcm.webService.server;
import java.util.List;
import org.apache.axis2.AxisFault;
import org.apache.axis2.ServiceObjectSupplier;
import org.apache.axis2.description.AxisService;
import org.apache.axis2.description.Parameter;
import org.apache.axis2.i18n.Messages;
import org.springframework.beans.BeansException;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
import com.dsdl.hcm.businessmanagement.bean.HcmEmptyboxBean;
import com.dsdl.hcm.webService.service.EmptyBoxService; public class SimpleService implements EmptyBoxService {
private static ApplicationContext ctx; @Override
public String fanhui(String s) {
// TODO Auto-generated method stub
return null;
}
@Override
public int updateHcmEmptyBoxForBoxCodeBySano(
List<HcmEmptyboxBean> hcmEmptyboxBeanList) {
// TODO Auto-generated method stub
return 0;
}
@Override
public int getPrice() {
// TODO Auto-generated method stub
return 0;
}
@Override
public String getGreeting(String name) {
// TODO Auto-generated method stub
return null;
}
@Override
public String recieveXml(String str) {
// TODO Auto-generated method stub
return null;
} }

6,web.xml

  <servlet>
<servlet-name>AxisServlet</servlet-name>
<servlet-class>org.apache.axis2.transport.http.AxisServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:conf/axis2.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet> <servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>

7, 所使用的框架是SSM,在配置文件中spring-mybatis.xml 中配置。

<bean id="applicationContext" class="org.apache.axis2.extensions.spring.receivers.ApplicationContextHolder" />
<bean id="emptyBoxService" class="com.dsdl.hcm.webService.service.impl.EmptyBoxServiceImpl"></bean>

 在这个里面配置,主要取决于,web.xml的配置

8,WEB-INF\services\XXX\META-INF\services.xml,在此目录下配置service.xml ,如果不存在则自己创建。其中XXX可以自己定义。

<serviceGroup>
<service name="SimpleService" >
<description>
Test Service Example
</description>
<parameter name="ServiceObjectSupplier"><!-- 固定的不变 -->
org.apache.axis2.extensions.spring.receivers.SpringServletContextObjectSupplier
</parameter>
<parameter name="SpringBeanName">emptyBoxService</parameter><!-- bean名字 -->
<parameter name="ServiceClass">
com.dsdl.hcm.webService.server.SimpleService
</parameter>
<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>
</service>
</serviceGroup>

  到此为止,axis2+springMVC集成到此已经开发完成,接下把工程部署到tomcat。

  访问地址是http://localhost:8080/HCM/services/SimpleService?wsdl。

  本人亲测,如有不当之处,敬请批评指正,共同学习,共同进步。

SpringMVC 与axis2 的整合(服务器端)的更多相关文章

  1. SpringMVC中使用Swagger2整合

    Swagger2是什么 Swagger 是一款RESTFUL接口的文档在线自动生成+功能测试功能软件. Swagger 是一个规范和完整的框架,用于生成.描述.调用和可视化 RESTful 风格的 W ...

  2. 1.springMVC+spring+Mybatis的整合思路

    SSM整合的过程:就是把一些东西交给spring管理,也就是添加配置文件的一个过程.那么有哪些东西我们要交给spring管理呢?大概有以下几个: 1.数据源(可配置数据库连接池) 2.SqlSessi ...

  3. SSM框架整合的详细过程(含每一步的分析及代码)。实质上是SpringMVC与mybatis的整合,应为spring与SpringMVC不需要整合。

    为了更好的学习 springmvc和mybatis整合开发的方法,需要将springmvc和mybatis进行整合. 整合目标:控制层采用springmvc.持久层使用mybatis实现. 1.1 需 ...

  4. Spring+SpringMVC+MyBatis+Maven框架整合

    本文记录了Spring+SpringMVC+MyBatis+Maven框架整合的记录,主要记录以下几点 一.Maven需要引入的jar包 二.Spring与SpringMVC的配置分离 三.Sprin ...

  5. SpringMVC:学习笔记(10)——整合Ckeditor且实现图片上传

    SpringMVC:学习笔记(10)——整合Ckeditor且实现图片上传 配置CKEDITOR 精简文件 解压之后可以看到ckeditor/lang下面有很多语言的js,如果不需要那么多种语言的,可 ...

  6. JavaWeb_(SpringMVC框架)测试SpringMVC&Spring&MyBatis三大整合

    搭建 SpringMVC&Spring&MyBatis三大整合 传送门 1.准备 测试搭建S pringMVC&Spring&MyBatis三大整合 用例   a)准备 ...

  7. idea spring+springmvc+mybatis环境配置整合详解

    idea spring+springmvc+mybatis环境配置整合详解 1.配置整合前所需准备的环境: 1.1:jdk1.8 1.2:idea2017.1.5 1.3:Maven 3.5.2 2. ...

  8. spring4+springmvc+springdataJPA+hibernate4+Junit4整合懒加载问题

    文章目录 技术交流 #摘要 本文主要是为了解决"spring4+springmvc+springdataJPA+hibernate4+junit4整合",注解了OneToMany. ...

  9. WebService(axis2),整合springmvc

    webservice:不同组织或者部门之间互通数据 https://www.cnblogs.com/buggou/p/8183738.html 1 package com.sh.test; 2 3 4 ...

随机推荐

  1. Python3学习笔记(MOOC)

    文本进度条实例 #!/usr/bin/env python3 import time #for i in range(101): # print ("\r{:3.0f}%".for ...

  2. go语言从例子开始之Example18_1.结构体中定义方法

    Go 支持在结构体类型中定义方法 . Example: package main import "fmt" type product struct{ name string num ...

  3. jq的ajax请求更改为axios请求时零碎总结

    #老版切新版更改处----ajax 更改为 axios //ajax$.ajax({ type: 'POST', url: url, data: data, success: success, dat ...

  4. jquery 下拉框左右选择

    html <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <ti ...

  5. Pycharm文档模板变量

    点击这里查看JetBrains官方英文源文件 本篇Blog只是搬运外加大概翻译一下. File template variables A file template can contain varia ...

  6. python连接mongodb集群

    一 安装模块pymongo pip3 install pymongo 二 创建一个MongoClient conn=MongoClient('mongodb://cbi:pass@ip1:20000, ...

  7. usermod - modify a user account

    -a, --append Add the user to the supplementary group(s). Use only with the -G option. -G, --groups G ...

  8. python plotly 使用教程

    1.plotly介绍 lotly的Python图形库使互动的出版质量图表成为在线. 如何制作线图,散点图,面积图,条形图,误差线,箱形图,直方图,热图,子图,多轴,极坐标图和气泡图的示例. 推荐最好使 ...

  9. Eur yml

    server: port: 6001 # 服务端口 eureka: instance: hostname: localhost # eureka服务端的实例名称 client: registerWit ...

  10. spring Data solr依赖文件 和xml配置文件

    <dependencies>        <dependency>            <groupId>org.springframework.data< ...