xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <display-name>XFireServicedisplay-name> begin Spring配置 --> <context-param> <param-name>contextConfigLocationparam-name> <param-value>/WEB-INF/applicationContext.xml,/WEB-INF/xfire-servlet.xmlparam-value> context-param> <listener> <listener-class> org.springframework.web.context.ContextLoaderListener listener-class> listener> <listener> <listener-class> org.springframework.web.util.IntrospectorCleanupListener listener-class> listener> end Spring配置 --> begin XFire 配置 --> <servlet> <servlet-name>xfireservlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServletservlet-class> servlet> <servlet-mapping> <servlet-name>xfireservlet-name> <url-pattern>*.wsurl-pattern> servlet-mapping> <servlet> 配合Spring容器中XFire一起工作的Servlet--> <servlet-name>xfireServletservlet-name> <servlet-class>org.codehaus.xfire.spring.XFireSpringServletservlet-class> servlet> <servlet-mapping> <servlet-name>xfireServletservlet-name> 在这个URI下开放Web Service服务 --> <url-pattern>/service/*url-pattern> servlet-mapping> end XFire 配置 --> web-app>
package webservice; /** * HelloWorld的接口类. */ public interface HelloWorld { /** * 对名字为name的人打招呼. * @param name 名字 * @return 返回打招呼的字符串 */ String sayHelloWorld(String name); }
package webservice; /** * HelloWorld的实现类. */ public class HelloWorldImpl implements HelloWorld { public String sayHelloWorld(String name) { String helloWorld = "hello," + name; return helloWorld; } }
xml version="1.0" encoding="UTF-8"?> DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"> <beans> <bean id="HelloWorldBean" class="webservice.HelloWorldImpl"/> beans>
xml version="1.0" encoding="UTF-8"?> DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"> <beans> 引入XFire预配置信息 --> <importresource="classpath:org/codehaus/xfire/spring/xfire.xml" /> —定义访问的url--> <bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"> <property name="urlMap"> <map> <entry key="/HelloWorldService.ws"> <ref bean="HelloWorldService" /> entry> map> property> bean> 使用XFire导出器 --> <bean id="baseWebService" class="org.codehaus.xfire.spring.remoting.XFireExporter" lazy-init="false" abstract="true"> 引用xfire.xml中定义的工厂 --> <property name="serviceFactory" ref="xfire.serviceFactory" /> 引用xfire.xml中的xfire实例 --> <property name="xfire" ref="xfire" /> bean> <bean id="HelloWorldService" parent="baseWebService"> 业务服务bean --> <property name="serviceBean" ref="HelloWorldBean" /> 业务服务bean的窄接口类 --> <property name="serviceClass" value="webservice.HelloWorld" /> bean> beans>
package test; import org.codehaus.xfire.client.Client; import org.springframework.core.io.ClassPathResource; import org.springframework.core.io.Resource; import webservice.HelloWorld; /** * Copyright 2007 GuangZhou Amigo. * All right reserved. * HelloWorld的webservice的测试类. * @author AmigoXie * @version 1.0 * Creation date: 2007-9-16 - 下午05:36:05 */ public class WebServiceClientTest { HelloWorld helloWorld = null; public static void main(String[] args) throws Exception { WebServiceClientTest test = new WebServiceClientTest(); test.testClient(); } public void testClient() throws Exception { String wsdl = "HelloWorldService.wsdl"; //对应的WSDL文件 Resource resource = new ClassPathResource(wsdl); Client client = new Client(resource.getInputStream(), null); //根据WSDL创建客户实例 Object[] objArray = new Object[1]; objArray[0] = "阿蜜果"; //调用特定的Web Service方法 Object[] results = client.invoke("sayHelloWorld", objArray); System.out.println("result:" + results[0]); } }
xml version="1.0" encoding="UTF-8"?>
DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
"http://www.springframework.org/dtd/spring-beans.dtd">
![]()
<beans>
<bean id="testWebService" class="org.codehaus.xfire.spring.remoting.XFireClientFactoryBean">
<property name="serviceClass">
<value>webservice.HelloWorldvalue>
property>
<property name="wsdlDocumentUrl">
<value>http://localhost:8080/webservice_helloworld/HelloWorldService.ws?wsdl
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/8631799/viewspace-1024481/ ,如需转载,请注明出处,否则将追究法律责任。