具体步骤如下:
1、在web.xml配置文件中增加Spring的配置,同时将XFire的Bean配置文件org/codehuas/xfire/spring/xfire.xml加入到Spring容器中:代码如下:
</web-app>
2、在Spring容器中,需要配置org.codehaus.xfire.spring.XFireSpringServlet类集中处理Web服务的Servlet请求,代码如下:
org/codehuas/xfire/spring/xfire.xml加入到Spring容器中:代码如下:
<servlet> <servlet-name>XFireServlet</servlet-name> <servlet-class>org.codehaus.xfire.spring.XFireSpringServlet</servlet-class> <load-on-startup>0</load-on-startup> </servlet> <servlet-mapping> <servlet-name>XFireServlet</servlet-name> <url-pattern>/services/*</url-pattern> </servlet-mapping> </web-app>
3.配置要发布的Web服务,需要配置Spring容器中的Bean,因为此时XFire运行在Spring容器中,所以不需要再配置serives.xml,而是在applicationContext.xml配置bean,示例代码如下:
<!--服务信息-->
<bean id="clientquery" class="com.s3.database.clientqueryImpl"> </bean> <bean name="queryServcie" class="org.codehaus.xfire.spring.ServiceBean"> <property name="serviceBean" ref="clientquery"></property> <property name="serviceClass" value="com.s3.database.Iclientquery"></property> <property name="inHandlers"> <list> <ref bean="addressingHandler"/> </list> </property> </bean>
<!--这个不需要改变,定义的是Handler--> <bean id="addressingHandler" class="org.codehaus.xfire.addressing.AddressingInHandler"> </bean> |