1 17 package org.apache.servicemix.jsr181; 18 19 import javax.jbi.messaging.ExchangeStatus; 20 import javax.jbi.messaging.InOut; 21 import javax.xml.namespace.QName ; 22 23 import org.apache.commons.logging.Log; 24 import org.apache.commons.logging.LogFactory; 25 import org.apache.servicemix.client.DefaultServiceMixClient; 26 import org.apache.servicemix.jbi.jaxp.SourceTransformer; 27 import org.apache.servicemix.jbi.jaxp.StringSource; 28 import org.apache.servicemix.tck.SpringTestSupport; 29 import org.springframework.context.support.AbstractXmlApplicationContext; 30 import org.apache.xbean.spring.context.ClassPathXmlApplicationContext; 31 32 import test.Echo; 33 34 public class Jsr181SpringTest extends SpringTestSupport { 35 36 private static Log logger = LogFactory.getLog(Jsr181ComponentTest.class); 37 38 public void test() throws Exception { 39 DefaultServiceMixClient client = new DefaultServiceMixClient(jbi); 40 InOut me = client.createInOutExchange(); 41 me.setInterfaceName(new QName ("http://test", "EchoPortType")); 42 me.getInMessage().setContent(new StringSource("<echo xmlns='http://test'><echoin0>world</echoin0></echo>")); 43 client.sendSync(me); 44 if (me.getStatus() == ExchangeStatus.ERROR) { 45 if (me.getFault() != null) { 46 fail("Received fault: " + new SourceTransformer().toString(me.getFault().getContent())); 47 } else if (me.getError() != null) { 48 throw me.getError(); 49 } else { 50 fail("Received ERROR status"); 51 } 52 } else { 53 logger.info(new SourceTransformer().toString(me.getOutMessage().getContent())); 54 } 55 } 56 57 public void testProxy() throws Exception { 58 Echo echo = (Echo) context.getBean("proxy"); 59 String result = echo.echo("world"); 60 assertEquals("world", result); 61 } 62 63 protected AbstractXmlApplicationContext createBeanFactory() { 64 return new ClassPathXmlApplicationContext("org/apache/servicemix/jsr181/spring.xml"); 65 } 66 67 } 68 | Popular Tags |