这是pom文件中需要的axis需要的依赖
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-remoting</artifactId>
<version>2.0.8</version>
</dependency>
<dependency>
<groupId>org.apache.axis</groupId>
<artifactId>axis</artifactId>
<version>1.4</version>
</dependency>
<dependency>
<groupId>axis</groupId>
<artifactId>axis-jaxrpc</artifactId>
<version>1.4</version>
</dependency>
<dependency>
<groupId>wsdl4j</groupId>
<artifactId>wsdl4j</artifactId>
<version>1.4</version>
</dependency>
然后是编写一个整合的类
package com.qtone.hdkt.service.data;
import javax.xml.rpc.ServiceException;
import org.springframework.context.ApplicationContext;
import org.springframework.remoting.jaxrpc.ServletEndpointSupport;
import com.qtone.hdkt.service.data.DataSend_PortType;
/**
* 用于axis1与Spring进行整合
* @author qichenghao
* @date: 2018年1月9日 下午1:34:11
* @throws
*/
public class WebService extends ServletEndpointSupport {
/** spring初始化 **/
private ApplicationContext applicationContext;
/** 接口类 **/
private DataSend_PortType dataSend_PortType;
@Override
protected void onInit() throws ServiceException {
// 初始化Spirng 配置
applicationContext = super.getApplicationContext();
//实例化DataSend_PortType
dataSend_PortType = (DataSend_PortType) applicationContext.getBean("dataSendSOAP");
}
/**
* 调用获取数据的方法
*
* @author qichenghao
* @date:2018年1月9日 下午12:07:32
* @param data
* @return
* @throws java.rmi.RemoteException
*/
public String sendXmlMessage(java.lang.String data) throws java.rmi.RemoteException{
return dataSend_PortType.sendXmlMessage(data);
}
}
这里的DataSend_PortType接口类,就是客户端需要访问的服务端的入口类(处理数据的类):
dataSend_PortType.sendXmlMessage(data):这个方法就是处理数据的方法;
实例化:DataSendSOAPImpl类 此类实现了DataSend_PortType接口
<!-- 实例化axis类 -->
<bean id="dataSendSOAP" class="com.qtone.hdkt.service.data.DataSendSOAPImpl" />
web.xml文件中
<servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>
在server-config.wsdd文件中配置:
<ns1:parameter name="className" value="com.qtone.hdkt.service.data.WebService"/>
<ns1:parameter name="wsdlServicePort" value="DataSendSOAP"/>
这样访问的地址:http://localhost:8080/项目名/services/DataSendSOAP?wsdl