当前位置: 代码迷 >> Web前端 >> Spring集成AXIS2的Web service配备方法
  详细解决方案

Spring集成AXIS2的Web service配备方法

热度:325   发布时间:2012-06-28 15:20:03.0
Spring集成AXIS2的Web service配置方法

Spring集成AXIS2的Web?service配置方法

1、引入Axis2服务端的jar包,可以从axis2-web/lib目录下找到。

2、引入Spring支持的jar包。

3、在Web.xml中添加Spring引用
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/classes/applicationContext.xml </param-value>
</context-param>
4、在WEB-INF/services/下新建一个文件夹,这个名字可以起的随便,我们就起做test吧,然后在WEB-INF/services/test/下建立META-INF这个目录,最后在WEB-INF/services/test/META-INF/下建立service.xml
? 在services.xml中配置如:
? ? ?<?xml version="1.0" encoding="UTF-8"?>
? <serviceGroup> ?
? ??<!-- Spring 发布为WebService -->
? ? <service name= "SpringService" >?
? ? <description>simple spring example</description>?
? ? <parameter name= "ServiceObjectSupplier" >?
? ? ? ? org.apache.axis2.extensions.spring.receivers.SpringAppContextAwareObjectSupplier?
? ? </parameter>?
? ? <parameter name= "SpringBeanName" >springService</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>?
5、在web.xml里,添加Axis2的配置,如:
? ??<servlet>
<servlet-name>AxisServlet</servlet-name>
<servlet-class>org.apache.axis2.transport.http.AxisServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>/servlet/AxisServlet</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>*.jws</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>
6、定义接口,并开发实现类,同时在applicationContext.xml中添加配置信息。如:
(记住第一个bean,也就是applicationContext那个一定要有)
<!-- 引入Axis2的Bean -->
<bean id="applicationContext"
class="org.apache.axis2.extensions.spring.receivers.ApplicationContextHolder" />
<!-- 配置WS Bean -->
<bean id="springService" class="com.spring.axis2.SpringServiceImpl"></bean>
7、之后发布一下,在没有异常的情况下。访问一下http://<host>:<port>/<project?name>/services/SpringService?wsdl?看看
1 楼 songp1314 2012-04-10  
能吧源码贴出来不
2 楼 ccgkren 2012-04-14  
package com.spring.axis2;

public class SpringServiceImpl implements SpringService{

public String sayHi(String name) {

return "Hi "+name+" ,你好!";
}

}
这就是服务实现的测试代码!主要是上面的配置!
  相关解决方案