1 17 package org.apache.servicemix.jms; 18 19 import javax.jbi.messaging.ExchangeStatus; 20 import javax.jbi.messaging.InOut; 21 import javax.naming.Context ; 22 import javax.xml.namespace.QName ; 23 24 import org.apache.commons.logging.Log; 25 import org.apache.commons.logging.LogFactory; 26 import org.apache.servicemix.client.DefaultServiceMixClient; 27 import org.apache.servicemix.jbi.jaxp.SourceTransformer; 28 import org.apache.servicemix.jbi.jaxp.StringSource; 29 import org.apache.servicemix.tck.SpringTestSupport; 30 import org.apache.xbean.spring.context.ClassPathXmlApplicationContext; 31 import org.apache.xbean.spring.jndi.SpringInitialContextFactory; 32 import org.springframework.context.support.AbstractXmlApplicationContext; 33 34 public class JmsSpringTest extends SpringTestSupport { 35 36 private static Log logger = LogFactory.getLog(JmsSpringTest.class); 37 38 public void test() throws Exception { 39 DefaultServiceMixClient client = new DefaultServiceMixClient(jbi); 40 InOut me = client.createInOutExchange(); 41 me.setService(new QName ("http://test", "MyProviderService")); 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 protected AbstractXmlApplicationContext createBeanFactory() { 58 System.setProperty(Context.INITIAL_CONTEXT_FACTORY, SpringInitialContextFactory.class.getName()); 59 System.setProperty(Context.PROVIDER_URL, "org/apache/servicemix/jms/jndi.xml"); 60 return new ClassPathXmlApplicationContext("org/apache/servicemix/jms/spring.xml"); 61 } 62 63 } 64 | Popular Tags |