KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > servicemix > jms > JmsSpringTest


1 /*
2  * Licensed to the Apache Software Foundation (ASF) under one or more
3  * contributor license agreements. See the NOTICE file distributed with
4  * this work for additional information regarding copyright ownership.
5  * The ASF licenses this file to You under the Apache License, Version 2.0
6  * (the "License"); you may not use this file except in compliance with
7  * the License. You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */

17 package org.apache.servicemix.jms;
18
19 import javax.jbi.messaging.ExchangeStatus;
20 import javax.jbi.messaging.InOut;
21 import javax.naming.Context JavaDoc;
22 import javax.xml.namespace.QName JavaDoc;
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 JavaDoc {
39         DefaultServiceMixClient client = new DefaultServiceMixClient(jbi);
40         InOut me = client.createInOutExchange();
41         me.setService(new QName JavaDoc("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