?? xfireconfigloadertest.java
字號:
package org.codehaus.xfire.spring.config;import java.util.List;import javax.servlet.ServletContext;import org.apache.xbean.spring.context.ClassPathXmlApplicationContext;import org.codehaus.xfire.XFire;import org.codehaus.xfire.handler.Handler;import org.codehaus.xfire.service.Endpoint;import org.codehaus.xfire.service.Service;import org.codehaus.xfire.service.invoker.BeanInvoker;import org.codehaus.xfire.service.invoker.Invoker;import org.codehaus.xfire.service.invoker.ObjectInvoker;import org.codehaus.xfire.spring.AbstractXFireSpringTest;import org.codehaus.xfire.spring.ServiceBean;import org.codehaus.xfire.spring.TestHandler;import org.codehaus.xfire.spring.XFireConfigLoader;import org.codehaus.xfire.test.Echo;import org.codehaus.xfire.test.EchoImpl;import org.codehaus.xfire.transport.http.SoapHttpTransport;import org.springframework.context.ApplicationContext;import org.springframework.mock.web.MockServletContext;/** * @author tomeks * */public class XFireConfigLoaderTest extends AbstractXFireSpringTest{ public void testConfigLoader() throws Exception { XFireConfigLoader configLoader = new XFireConfigLoader(); XFire xfire = configLoader.loadConfig("META-INF/xfire/sservices.xml", null); doAssertions(xfire); } public void testConfigLoaderWithFilesystem() throws Exception { XFireConfigLoader configLoader = new XFireConfigLoader(); XFire xfire = configLoader.loadConfig(getTestFile("src/test/META-INF/xfire/sservices.xml").getAbsolutePath()); doAssertions(xfire); } public void testConfigLoaderWithMultipleFiles() throws Exception { XFireConfigLoader configLoader = new XFireConfigLoader(); configLoader.setBasedir(getTestFile(".")); XFire xfire = configLoader.loadConfig("src/test/META-INF/xfire/sservices.xml, " + "org/codehaus/xfire/spring/config/OperationMetadataServices.xml"); doAssertions(xfire); } public void testConfigLoaderWithParentContext() throws Exception { ServletContext servletCtx = new MockServletContext(); ClassPathXmlApplicationContext appCtx = new ClassPathXmlApplicationContext(new String[] {"org/codehaus/xfire/spring/xfire.xml"}); XFireConfigLoader configLoader = new XFireConfigLoader(); XFire xfire = configLoader.loadConfig("META-INF/xfire/sservices.xml", appCtx); doAssertions(xfire); } private void doAssertions(XFire xfire){ assertNotNull(xfire); assertEquals(2, xfire.getInHandlers().size()); assertTrue(xfire.getInHandlers().get(1) instanceof TestHandler); assertEquals(xfire.getOutHandlers().size(),1); assertEquals(xfire.getFaultHandlers().size(),1); Service service = xfire.getServiceRegistry().getService("testservice"); assertNotNull(service); assertEquals(4, service.getBindings().size()); assertNotNull(service.getBinding(SoapHttpTransport.SOAP11_HTTP_BINDING)); assertNotNull(service.getBinding(SoapHttpTransport.SOAP12_HTTP_BINDING)); assertEquals(1, service.getEndpoints().size()); Endpoint ep = (Endpoint) service.getEndpoints().iterator().next(); assertNotNull(ep); assertEquals("http://localhost/TestService", ep.getUrl()); assertEquals(3, service.getInHandlers().size()); Handler testHandler = (Handler) service.getInHandlers().get(2); assertTrue(testHandler instanceof TestHandler); assertEquals(testHandler.getAfter().size(),1); assertEquals(testHandler.getBefore().size(),2); assertEquals(service.getOutHandlers().size(),1); assertEquals("value", service.getProperty("myKey")); assertEquals("value1", service.getProperty("myKey1")); List types = (List) service.getProperty("overrideTypesList"); assertNotNull(types); service = xfire.getServiceRegistry().getService("EchoWithJustImpl"); assertEquals(EchoImpl.class, service.getServiceInfo().getServiceClass()); service = xfire.getServiceRegistry().getService("EchoWithBean"); Invoker invoker = service.getInvoker(); assertTrue(invoker instanceof BeanInvoker); assertEquals(Echo.class, service.getServiceInfo().getServiceClass()); service = xfire.getServiceRegistry().getService("EchoWithBeanNoServiceClass"); invoker = service.getInvoker(); assertTrue(invoker instanceof BeanInvoker); assertEquals(EchoImpl.class, service.getServiceInfo().getServiceClass()); service = xfire.getServiceRegistry().getService("EchoWithSchemas"); ServiceBean serviceBean = (ServiceBean) getBean("EchoWithServiceFactory"); assertTrue(serviceBean.getServiceFactory() instanceof CustomServiceFactory); serviceBean = (ServiceBean) getBean("EchoWithBeanServiceFactory"); assertTrue(serviceBean.getServiceFactory() instanceof CustomServiceFactory); serviceBean = (ServiceBean) getBean("EchoWithServiceFactoryAndWhitespace"); assertTrue(serviceBean.getServiceFactory() instanceof CustomServiceFactory); serviceBean = (ServiceBean) getBean("EchoWithInvoker"); assertTrue(serviceBean.getInvoker() instanceof ObjectInvoker); } protected ApplicationContext createContext() { return new ClassPathXmlApplicationContext(new String[] { "org/codehaus/xfire/spring/xfire.xml", "META-INF/xfire/sservices.xml" }); }}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -