spring+xfire+webservice+helloworld
2007-07-24 10:25
spring+xfire+webservice+helloworld
Echo.java package org.codehaus.xfire.spring.example; public interface Echo{ String echo(String in); } EchoImpl.java package org.codehaus.xfire.spring.example; public class EchoImpl implements Echo{ public String echo(String in){ return in; } } applicationContext.xml <?xml version=1.0 encoding=UTF-8?> <beans> <bean id=echoBean class=org.codehaus.xfire.spring.example.EchoImpl/> </beans> 这上面的就最简单的spring IoC 下helloworld的例子 这文件xfire-servlet.xml配置是关键: xfire-servlet.xml <?xml version=1.0 encoding=UTF-8?> <beans> <bean class=org.springframework.web.servlet.handler.SimpleUrlHandlerMapping> <property name=urlMap> <map> <entry key=/EchoService> <ref bean=echo> </entry> </map> </property> </bean> <bean id=echo class=org.codehaus.xfire.spring.remoting.XFireExporter> <property name=serviceFactory> <ref bean=xfire.serviceFactory </property> <property name=xfire> <ref bean=xfire </property> <property name=serviceBean> <ref bean=echoBean </property> <property name=serviceClass> <value>org.codehaus.xfire.spring.example.Echo</value> </property> </bean> </beans> 接下来是客户端的test就更简单了 客户端
applicationContext-client.xml <?xml version=1.0 encoding=UTF-8?> <beans> <beanid=testWebService class=org.codehaus.xfire.spring.remoting.XFireClientFactoryBean> <property name=serviceClass> <value>org.codehaus.xfire.spring.example.Echo</value> </property> <property name=wsdlDocumentUrl> <value>http://127.0.0.1:8080/xfire/EchoService?wsdl</value> </property> </bean> <beans> package test; import java.util.*; import junit.framework.TestCase; import org.codehaus.xfire.spring.example.*; public class WebServiceClientTest extends TestCase { Echo echo=null; static { ApplicationContextFactory.init(/test/applicationContext-client.xml); } public static void main(String[] args) { junit.swingui.TestRunner.run(PlayContextDaoTest.class); } protected void setUp() throws Exception { echo=(Echo)ApplicationContextFactory.getApplicationContext().getBean(testWebService); super.setUp(); } protected void tearDown() throws Exception { super.tearDown(); } public void testCilient(){ System.out.print(echo.echo(haoha i haohao)); } }
|