cxf-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ningji...@apache.org
Subject svn commit: r799234 [2/2] - in /cxf/trunk: rt/bindings/soap/src/main/java/org/apache/cxf/binding/soap/jms/interceptor/ rt/transports/jms/src/main/java/org/apache/cxf/transport/jms/ rt/transports/jms/src/main/resources/schemas/wsdl/ rt/transports/jms/sr...
Date Thu, 30 Jul 2009 10:52:57 GMT
Added: cxf/trunk/systests/src/test/java/org/apache/cxf/jms/testsuite/testcases/SOAPJMSTestSuiteClientTest.java
URL: http://svn.apache.org/viewvc/cxf/trunk/systests/src/test/java/org/apache/cxf/jms/testsuite/testcases/SOAPJMSTestSuiteClientTest.java?rev=799234&view=auto
==============================================================================
--- cxf/trunk/systests/src/test/java/org/apache/cxf/jms/testsuite/testcases/SOAPJMSTestSuiteClientTest.java (added)
+++ cxf/trunk/systests/src/test/java/org/apache/cxf/jms/testsuite/testcases/SOAPJMSTestSuiteClientTest.java Thu Jul 30 10:52:56 2009
@@ -0,0 +1,106 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.cxf.jms.testsuite.testcases;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import javax.jms.Destination;
+import javax.jms.Message;
+
+import org.apache.cxf.jms.testsuite.util.JMSTestUtil;
+import org.apache.cxf.jms_simple.JMSSimplePortType;
+import org.apache.cxf.jms_simple.JMSSimpleService0001;
+import org.apache.cxf.systest.jms.EmbeddedJMSBrokerLauncher;
+import org.apache.cxf.testsuite.testcase.TestCaseType;
+import org.apache.cxf.transport.jms.uri.JMSEndpoint;
+import org.apache.cxf.transport.jms.uri.JMSEndpointParser;
+
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+import org.springframework.jms.core.JmsTemplate;
+
+/**
+ * 
+ */
+public class SOAPJMSTestSuiteClientTest extends AbstractSOAPJMSTestSuite {
+
+    @BeforeClass
+    public static void startServers() throws Exception {
+        Map<String, String> props = new HashMap<String, String>();
+        if (System.getProperty("activemq.store.dir") != null) {
+            props.put("activemq.store.dir", System.getProperty("activemq.store.dir"));
+        }
+        props.put("java.util.logging.config.file", System
+            .getProperty("java.util.logging.config.file"));
+
+        assertTrue("server did not launch correctly", launchServer(EmbeddedJMSBrokerLauncher.class,
+                                                                   props, null));
+    }
+
+    @Test
+    public void test0001() throws Exception {
+        TestCaseType testcase = JMSTestUtil.getTestCase("test0001");
+        String address = testcase.getAddress().trim();
+        JMSEndpoint endpoint = JMSEndpointParser.createEndpoint(address);
+        String destinationName = endpoint.getDestinationName();
+
+        JmsTemplate jmsTemplate = JMSTestUtil.getJmsTemplate(address);
+        Destination dest = JMSTestUtil.getJmsDestination(jmsTemplate, destinationName, false);
+
+        JMSSimplePortType simplePort = getPort("JMSSimpleService0001", "SimplePort",
+                                               JMSSimpleService0001.class, JMSSimplePortType.class);
+        simplePort.ping("test");
+
+        Message message = jmsTemplate.receive(dest);
+        try {
+            checkJMSProperties(message, testcase.getRequestMessage(), true);
+        } catch (Exception ex) {
+            ex.printStackTrace();
+        }
+    }
+
+    @Test
+    public void test0002() throws Exception {
+        TestCaseType testcase = JMSTestUtil.getTestCase("test0002");
+        String address = testcase.getAddress().trim();
+        JMSEndpoint endpoint = JMSEndpointParser.createEndpoint(address);
+        String destinationName = endpoint.getDestinationName();
+
+        JmsTemplate jmsTemplate = JMSTestUtil.getJmsTemplate(address);
+        Destination dest = JMSTestUtil.getJmsDestination(jmsTemplate, destinationName, false);
+
+        final JMSSimplePortType simplePort = getPort("JMSSimpleService0001", "SimplePort",
+                                                     JMSSimpleService0001.class,
+                                                     JMSSimplePortType.class);
+        Thread serviceThread = new Thread() {
+            public void run() {
+                simplePort.echo("test");
+            }
+        };
+        serviceThread.start();
+
+        Message message = jmsTemplate.receive(dest);
+        checkJMSProperties(message, testcase.getRequestMessage(), false);
+
+        serviceThread.interrupt();
+    }
+}

Propchange: cxf/trunk/systests/src/test/java/org/apache/cxf/jms/testsuite/testcases/SOAPJMSTestSuiteClientTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/systests/src/test/java/org/apache/cxf/jms/testsuite/testcases/SOAPJMSTestSuiteClientTest.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: cxf/trunk/systests/src/test/java/org/apache/cxf/jms/testsuite/testcases/SOAPJMSTestSuiteServerTest.java
URL: http://svn.apache.org/viewvc/cxf/trunk/systests/src/test/java/org/apache/cxf/jms/testsuite/testcases/SOAPJMSTestSuiteServerTest.java?rev=799234&view=auto
==============================================================================
--- cxf/trunk/systests/src/test/java/org/apache/cxf/jms/testsuite/testcases/SOAPJMSTestSuiteServerTest.java (added)
+++ cxf/trunk/systests/src/test/java/org/apache/cxf/jms/testsuite/testcases/SOAPJMSTestSuiteServerTest.java Thu Jul 30 10:52:56 2009
@@ -0,0 +1,71 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.cxf.jms.testsuite.testcases;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.cxf.jms.testsuite.services.Server;
+import org.apache.cxf.systest.jms.EmbeddedJMSBrokerLauncher;
+
+import org.junit.BeforeClass;
+
+/**
+ * 
+ */
+public class SOAPJMSTestSuiteServerTest extends AbstractSOAPJMSTestSuite {
+
+    @BeforeClass
+    public static void startServers() throws Exception {
+        Map<String, String> props = new HashMap<String, String>();
+        if (System.getProperty("activemq.store.dir") != null) {
+            props.put("activemq.store.dir", System.getProperty("activemq.store.dir"));
+        }
+        props.put("java.util.logging.config.file", System
+            .getProperty("java.util.logging.config.file"));
+        assertTrue("server did not launch correctly", launchServer(EmbeddedJMSBrokerLauncher.class,
+                                                                   props, null));
+        assertTrue("server did not launch correctly", launchServer(Server.class, false));
+    }
+
+/*    @Test
+    public void test0002() throws Exception {
+        TestCaseType testcase = JMSTestUtil.getTestCase("test0002");
+        final JMSSimplePortType simplePort = getPort("JMSSimpleService", "SimplePort",
+                                                     JMSSimpleService.class,
+                                                     JMSSimplePortType.class);
+        InvocationHandler handler = Proxy.getInvocationHandler(simplePort);
+        BindingProvider bp = null;
+
+        if (handler instanceof BindingProvider) {
+            bp = (BindingProvider)handler;
+        }
+
+        String response = simplePort.echo("test");
+        assertEquals(response, "test");
+
+        if (bp != null) {
+            Map<String, Object> responseContext = bp.getResponseContext();
+            Message m = (Message)responseContext
+                .get(JMSConstants.JMS_CLIENT_RESPONSE_JMSMESSAGE);
+            checkJMSProperties(m, testcase.getResponseMessage(), false);
+        }
+    }*/
+}

Propchange: cxf/trunk/systests/src/test/java/org/apache/cxf/jms/testsuite/testcases/SOAPJMSTestSuiteServerTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/systests/src/test/java/org/apache/cxf/jms/testsuite/testcases/SOAPJMSTestSuiteServerTest.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: cxf/trunk/systests/src/test/java/org/apache/cxf/jms/testsuite/testcases/SOAPJMSTestSuiteTest.java
URL: http://svn.apache.org/viewvc/cxf/trunk/systests/src/test/java/org/apache/cxf/jms/testsuite/testcases/SOAPJMSTestSuiteTest.java?rev=799234&view=auto
==============================================================================
--- cxf/trunk/systests/src/test/java/org/apache/cxf/jms/testsuite/testcases/SOAPJMSTestSuiteTest.java (added)
+++ cxf/trunk/systests/src/test/java/org/apache/cxf/jms/testsuite/testcases/SOAPJMSTestSuiteTest.java Thu Jul 30 10:52:56 2009
@@ -0,0 +1,251 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.cxf.jms.testsuite.testcases;
+
+import java.lang.reflect.InvocationHandler;
+import java.lang.reflect.Proxy;
+import java.util.HashMap;
+import java.util.Map;
+
+import javax.jms.DeliveryMode;
+import javax.xml.ws.BindingProvider;
+
+import org.apache.cxf.jms.testsuite.services.Server;
+import org.apache.cxf.jms.testsuite.util.JMSTestUtil;
+import org.apache.cxf.jms_simple.JMSSimplePortType;
+import org.apache.cxf.jms_simple.JMSSimpleService0001;
+import org.apache.cxf.jms_simple.JMSSimpleService0003;
+import org.apache.cxf.jms_simple.JMSSimpleService0005;
+import org.apache.cxf.jms_simple.JMSSimpleService0006;
+import org.apache.cxf.jms_simple.JMSSimpleService0008;
+import org.apache.cxf.jms_simple.JMSSimpleService0009;
+import org.apache.cxf.jms_simple.JMSSimpleService0010;
+import org.apache.cxf.jms_simple.JMSSimpleService0011;
+import org.apache.cxf.jms_simple.JMSSimpleService0012;
+import org.apache.cxf.jms_simple.JMSSimpleService1001;
+import org.apache.cxf.systest.jms.EmbeddedJMSBrokerLauncher;
+import org.apache.cxf.testsuite.testcase.TestCaseType;
+import org.apache.cxf.transport.jms.JMSConstants;
+import org.apache.cxf.transport.jms.JMSMessageHeadersType;
+
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+/**
+ * 
+ */
+public class SOAPJMSTestSuiteTest extends AbstractSOAPJMSTestSuite {
+
+    @BeforeClass
+    public static void startServers() throws Exception {
+        Map<String, String> props = new HashMap<String, String>();
+        if (System.getProperty("activemq.store.dir") != null) {
+            props.put("activemq.store.dir", System.getProperty("activemq.store.dir"));
+        }
+        props.put("java.util.logging.config.file", System
+            .getProperty("java.util.logging.config.file"));
+        assertTrue("server did not launch correctly", launchServer(EmbeddedJMSBrokerLauncher.class,
+                                                                   props, null));
+        assertTrue("server did not launch correctly", launchServer(Server.class, false));
+    }
+
+    private void oneWayTest(TestCaseType testcase, JMSSimplePortType port) throws Exception {
+        InvocationHandler handler = Proxy.getInvocationHandler(port);
+        BindingProvider bp = (BindingProvider)handler;
+
+        Map<String, Object> requestContext = bp.getRequestContext();
+        JMSMessageHeadersType requestHeader = new JMSMessageHeadersType();
+        requestContext.put(JMSConstants.JMS_CLIENT_REQUEST_HEADERS, requestHeader);
+        Exception e = null;
+        try {
+            port.ping("test");
+        } catch (Exception e1) {
+            e = e1;
+        }
+        checkJMSProperties(testcase, requestHeader);
+        if (e != null) {
+            throw e;
+        }
+    }
+
+    private void twoWayTest(TestCaseType testcase, final JMSSimplePortType port)
+        throws Exception {
+        JMSMessageHeadersType requestHeader = new JMSMessageHeadersType();
+        twoWayTestWithRequestHeader(testcase, port, requestHeader);
+    }
+
+    private void twoWayTestWithRequestHeader(TestCaseType testcase, final JMSSimplePortType port,
+                                             JMSMessageHeadersType requestHeader)
+        throws Exception {
+        InvocationHandler handler = Proxy.getInvocationHandler(port);
+        BindingProvider bp = (BindingProvider)handler;
+
+        Map<String, Object> requestContext = bp.getRequestContext();
+        if (requestHeader == null) {
+            requestHeader = new JMSMessageHeadersType();
+        }
+        requestContext.put(JMSConstants.JMS_CLIENT_REQUEST_HEADERS, requestHeader);
+        Exception e = null;
+        try {
+            String response = port.echo("test");
+            assertEquals(response, "test");
+        } catch (Exception e1) {
+            e = e1;
+        }
+        Map<String, Object> responseContext = bp.getResponseContext();
+        JMSMessageHeadersType responseHeader = (JMSMessageHeadersType)responseContext
+            .get(JMSConstants.JMS_CLIENT_RESPONSE_HEADERS);
+        checkJMSProperties(testcase, requestHeader, responseHeader);
+        if (e != null) {
+            throw e;
+        }
+    }
+
+    @Test
+    public void test0001() throws Exception {
+        TestCaseType testcase = JMSTestUtil.getTestCase("test0001");
+        final JMSSimplePortType simplePort = getPort("JMSSimpleService0001", "SimplePort",
+                                                     JMSSimpleService0001.class,
+                                                     JMSSimplePortType.class);
+        oneWayTest(testcase, simplePort);
+    }
+
+    @Test
+    public void test0002() throws Exception {
+        TestCaseType testcase = JMSTestUtil.getTestCase("test0002");
+        final JMSSimplePortType simplePort = getPort("JMSSimpleService0001", "SimplePort",
+                                                     JMSSimpleService0001.class,
+                                                     JMSSimplePortType.class);
+        twoWayTest(testcase, simplePort);
+    }
+
+    @Test
+    public void test0003() throws Exception {
+        TestCaseType testcase = JMSTestUtil.getTestCase("test0003");
+        final JMSSimplePortType simplePort = getPort("JMSSimpleService0003", "SimplePort",
+                                                     JMSSimpleService0003.class,
+                                                     JMSSimplePortType.class);
+        oneWayTest(testcase, simplePort);
+    }
+
+    @Test
+    public void test0004() throws Exception {
+        TestCaseType testcase = JMSTestUtil.getTestCase("test0004");
+        final JMSSimplePortType simplePort = getPort("JMSSimpleService0003", "SimplePort",
+                                                     JMSSimpleService0003.class,
+                                                     JMSSimplePortType.class);
+        twoWayTest(testcase, simplePort);
+    }
+
+    @Test
+    public void test0005() throws Exception {
+        TestCaseType testcase = JMSTestUtil.getTestCase("test0005");
+        final JMSSimplePortType simplePort = getPort("JMSSimpleService0005", "SimplePort",
+                                                     JMSSimpleService0005.class,
+                                                     JMSSimplePortType.class);
+        twoWayTest(testcase, simplePort);
+    }
+
+    @Test
+    public void test0006() throws Exception {
+        TestCaseType testcase = JMSTestUtil.getTestCase("test0006");
+        final JMSSimplePortType simplePort = getPort("JMSSimpleService0006", "SimplePort",
+                                                     JMSSimpleService0006.class,
+                                                     JMSSimplePortType.class);
+        twoWayTest(testcase, simplePort);
+    }
+
+    @Test
+    public void test0008() throws Exception {
+        TestCaseType testcase = JMSTestUtil.getTestCase("test0008");
+        final JMSSimplePortType simplePort = getPort("JMSSimpleService0008", "SimplePort",
+                                                     JMSSimpleService0008.class,
+                                                     JMSSimplePortType.class);
+
+        JMSMessageHeadersType requestHeader = new JMSMessageHeadersType();
+        requestHeader.setJMSDeliveryMode(DeliveryMode.NON_PERSISTENT);
+        requestHeader.setTimeToLive(14400000);
+        requestHeader.setJMSPriority(8);
+        requestHeader.setJMSReplyTo("dynamicQueues/replyqueue0008");
+
+        twoWayTestWithRequestHeader(testcase, simplePort, requestHeader);
+    }
+
+    @Test
+    public void test0009() throws Exception {
+        TestCaseType testcase = JMSTestUtil.getTestCase("test0009");
+        final JMSSimplePortType simplePort = getPort("JMSSimpleService0009", "SimplePort",
+                                                     JMSSimpleService0009.class,
+                                                     JMSSimplePortType.class);
+
+        JMSMessageHeadersType requestHeader = new JMSMessageHeadersType();
+        requestHeader.setJMSDeliveryMode(DeliveryMode.NON_PERSISTENT);
+        requestHeader.setTimeToLive(10800000);
+        requestHeader.setJMSPriority(3);
+        requestHeader.setJMSReplyTo("dynamicQueues/replyqueue00093");
+
+        twoWayTestWithRequestHeader(testcase, simplePort, requestHeader);
+    }
+
+    @Test
+    public void test0010() throws Exception {
+        TestCaseType testcase = JMSTestUtil.getTestCase("test0010");
+        final JMSSimplePortType simplePort = getPort("JMSSimpleService0010", "SimplePort",
+                                                     JMSSimpleService0010.class,
+                                                     JMSSimplePortType.class);
+        twoWayTest(testcase, simplePort);
+    }
+
+    @Test
+    public void test0011() throws Exception {
+        TestCaseType testcase = JMSTestUtil.getTestCase("test0011");
+        final JMSSimplePortType simplePort = getPort("JMSSimpleService0011", "SimplePort",
+                                                     JMSSimpleService0011.class,
+                                                     JMSSimplePortType.class);
+        twoWayTest(testcase, simplePort);
+    }
+
+    @Test
+    public void test0012() throws Exception {
+        // same to test0002
+        TestCaseType testcase = JMSTestUtil.getTestCase("test0012");
+        final JMSSimplePortType simplePort = getPort("JMSSimpleService0012", "SimplePort",
+                                                     JMSSimpleService0012.class,
+                                                     JMSSimplePortType.class);
+        twoWayTest(testcase, simplePort);
+    }
+
+    @Test
+    public void test1001() throws Exception {
+        // same to test0002
+        TestCaseType testcase = JMSTestUtil.getTestCase("test1001");
+        final JMSSimplePortType simplePort = getPort("JMSSimpleService1001", "SimplePort",
+                                                     JMSSimpleService1001.class,
+                                                     JMSSimplePortType.class);
+
+        JMSMessageHeadersType requestHeader = new JMSMessageHeadersType();
+        requestHeader.setSOAPJMSBindingVersion("0.3");
+        try {
+            twoWayTestWithRequestHeader(testcase, simplePort, requestHeader);
+        } catch (Exception e) {
+            assertTrue(e.getMessage().contains("Unrecognized BindingVersion"));
+        }
+    }
+}

Propchange: cxf/trunk/systests/src/test/java/org/apache/cxf/jms/testsuite/testcases/SOAPJMSTestSuiteTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/systests/src/test/java/org/apache/cxf/jms/testsuite/testcases/SOAPJMSTestSuiteTest.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: cxf/trunk/systests/src/test/java/org/apache/cxf/jms/testsuite/util/JMSTestUtil.java
URL: http://svn.apache.org/viewvc/cxf/trunk/systests/src/test/java/org/apache/cxf/jms/testsuite/util/JMSTestUtil.java?rev=799234&view=auto
==============================================================================
--- cxf/trunk/systests/src/test/java/org/apache/cxf/jms/testsuite/util/JMSTestUtil.java (added)
+++ cxf/trunk/systests/src/test/java/org/apache/cxf/jms/testsuite/util/JMSTestUtil.java Thu Jul 30 10:52:56 2009
@@ -0,0 +1,172 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.cxf.jms.testsuite.util;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
+import javax.jms.DeliveryMode;
+import javax.jms.Destination;
+import javax.jms.JMSException;
+import javax.jms.Message;
+import javax.jms.Session;
+import javax.jms.TextMessage;
+import javax.xml.bind.JAXBContext;
+import javax.xml.bind.JAXBElement;
+import javax.xml.bind.Unmarshaller;
+
+import org.apache.cxf.testsuite.testcase.TestCaseType;
+import org.apache.cxf.testsuite.testcase.TestCasesType;
+import org.apache.cxf.transport.jms.JMSConfiguration;
+import org.apache.cxf.transport.jms.JMSFactory;
+import org.apache.cxf.transport.jms.JMSOldConfigHolder;
+import org.apache.cxf.transport.jms.JNDIConfiguration;
+import org.apache.cxf.transport.jms.uri.JMSEndpoint;
+import org.apache.cxf.transport.jms.uri.JMSEndpointParser;
+import org.apache.cxf.transport.jms.uri.JMSURIConstants;
+import org.springframework.jms.core.JmsTemplate;
+import org.springframework.jms.core.MessageCreator;
+import org.springframework.jms.support.destination.JndiDestinationResolver;
+import org.springframework.jndi.JndiTemplate;
+
+/**
+ * 
+ */
+public final class JMSTestUtil {
+
+    private static TestCasesType testcases;
+
+    private JMSTestUtil() {
+    }
+
+    public static void createSession(String address) throws Exception {
+        JMSEndpoint endpoint = JMSEndpointParser.createEndpoint(address);
+        try {
+            JmsTemplate jmsTemplate = JMSFactory
+                .createJmsTemplate(getInitJMSConfiguration(address), null);
+            Destination dest = JMSFactory.resolveOrCreateDestination(jmsTemplate, endpoint
+                .getDestinationName(), false);
+            jmsTemplate.send(dest, new MessageCreator() {
+                public Message createMessage(Session session) throws JMSException {
+                    TextMessage message = session.createTextMessage();
+                    message.setText("This is message " + 1);
+                    return message;
+                }
+            });
+        } catch (JMSException e) {
+            System.out.println("Exception occurred: " + e.toString());
+        }
+    }
+
+    public static List<TestCaseType> getTestCases() {
+        try {
+            if (testcases == null) {
+                loadTestCases();
+            }
+            return testcases.getTestCase();
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        return new ArrayList<TestCaseType>();
+    }
+
+    public static TestCaseType getTestCase(String testId) {
+        if (testId == null) {
+            return null;
+        }
+        Iterator<TestCaseType> iter = getTestCases().iterator();
+        while (iter.hasNext()) {
+            TestCaseType testcase = iter.next();
+            if (testId.equals(testcase.getId())) {
+                return testcase;
+            }
+        }
+        return null;
+    }
+
+    private static void loadTestCases() throws Exception {
+        JAXBContext context = JAXBContext.newInstance("org.apache.cxf.testsuite.testcase");
+        Unmarshaller unmarshaller = context.createUnmarshaller();
+        JAXBElement e = (JAXBElement)unmarshaller.unmarshal(new JMSTestUtil().getClass()
+            .getResource("/org/apache/cxf/jms/testsuite/util/testcases.xml"));
+        testcases = (TestCasesType)e.getValue();
+    }
+
+    public static JmsTemplate getJmsTemplate(String address) throws Exception {
+        return JMSFactory.createJmsTemplate(getInitJMSConfiguration(address), null);
+    }
+
+    public static Destination getJmsDestination(JmsTemplate jmsTemplate, String destinationName,
+                                                boolean pubSubDomain) {
+        return JMSFactory.resolveOrCreateDestination(jmsTemplate, destinationName, pubSubDomain);
+    }
+
+    private static JMSConfiguration getInitJMSConfiguration(String address) throws Exception {
+        JMSEndpoint endpoint = JMSEndpointParser.createEndpoint(address);
+
+        JMSConfiguration jmsConfig = new JMSConfiguration();
+
+        if (endpoint.isSetDeliveryMode()) {
+            int deliveryMode = endpoint.getDeliveryMode()
+                .equals(JMSURIConstants.DELIVERYMODE_PERSISTENT)
+                ? DeliveryMode.PERSISTENT : DeliveryMode.NON_PERSISTENT;
+            jmsConfig.setDeliveryMode(deliveryMode);
+        }
+
+        if (endpoint.isSetPriority()) {
+            int priority = endpoint.getPriority();
+            jmsConfig.setPriority(priority);
+        }
+
+        if (endpoint.isSetTimeToLive()) {
+            long timeToLive = endpoint.getTimeToLive();
+            jmsConfig.setTimeToLive(timeToLive);
+        }
+
+        if (jmsConfig.isUsingEndpointInfo()) {
+            JndiTemplate jt = new JndiTemplate();
+            jt.setEnvironment(JMSOldConfigHolder.getInitialContextEnv(endpoint));
+            boolean pubSubDomain = false;
+            pubSubDomain = endpoint.getJmsVariant().equals(JMSURIConstants.TOPIC);
+            JNDIConfiguration jndiConfig = new JNDIConfiguration();
+            jndiConfig.setJndiConnectionFactoryName(endpoint.getJndiConnectionFactoryName());
+            jmsConfig.setJndiTemplate(jt);
+            jmsConfig.setJndiConfig(jndiConfig);
+            jmsConfig.setExplicitQosEnabled(true);
+            jmsConfig.setPubSubDomain(pubSubDomain);
+            jmsConfig.setPubSubNoLocal(true);
+            boolean useJndi = endpoint.getJmsVariant().equals(JMSURIConstants.JNDI);
+            if (useJndi) {
+                // Setup Destination jndi destination resolver
+                final JndiDestinationResolver jndiDestinationResolver = new JndiDestinationResolver();
+                jndiDestinationResolver.setJndiTemplate(jt);
+                jmsConfig.setDestinationResolver(jndiDestinationResolver);
+                jmsConfig.setTargetDestination(endpoint.getDestinationName());
+                jmsConfig.setReplyDestination(endpoint.getReplyToName());
+            } else {
+                // Use the default dynamic destination resolver
+                jmsConfig.setTargetDestination(endpoint.getDestinationName());
+                jmsConfig.setReplyDestination(endpoint.getReplyToName());
+            }
+        }
+        return jmsConfig;
+    }
+}

Propchange: cxf/trunk/systests/src/test/java/org/apache/cxf/jms/testsuite/util/JMSTestUtil.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/systests/src/test/java/org/apache/cxf/jms/testsuite/util/JMSTestUtil.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: cxf/trunk/systests/src/test/java/org/apache/cxf/jms/testsuite/util/testcases.xml
URL: http://svn.apache.org/viewvc/cxf/trunk/systests/src/test/java/org/apache/cxf/jms/testsuite/util/testcases.xml?rev=799234&view=auto
==============================================================================
--- cxf/trunk/systests/src/test/java/org/apache/cxf/jms/testsuite/util/testcases.xml (added)
+++ cxf/trunk/systests/src/test/java/org/apache/cxf/jms/testsuite/util/testcases.xml Thu Jul 30 10:52:56 2009
@@ -0,0 +1,269 @@
+<?xml version="1.0" encoding="UTF-8"?>
+	<!--
+		Licensed to the Apache Software Foundation (ASF) under one or more
+		contributor license agreements. See the NOTICE file distributed with
+		this work for additional information regarding copyright ownership.
+		The ASF licenses this file to you under the Apache License, Version
+		2.0 (the "License"); you may not use this file except in compliance
+		with the License. You may obtain a copy of the License at
+
+
+		http://www.apache.org/licenses/LICENSE-2.0 Unless required by
+		applicable law or agreed to in writing, software distributed under the
+		License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
+		CONDITIONS OF ANY KIND, either express or implied. See the License for
+		the specific language governing permissions and limitations under the
+		License.
+	-->
+<testCases xmlns="http://cxf.apache.org/jms/testcase/">
+	<testCase id="test0001" mep="inonly">
+		<address>jms:jndi:dynamicQueues/testqueue0001?jndiInitialContextFactory=org.apache.activemq.jndi.ActiveMQInitialContextFactory&amp;jndiConnectionFactoryName=ConnectionFactory&amp;jndiURL=tcp://localhost:61500</address>
+		<requestMessage>
+			<messageType>byte</messageType>
+			<deliveryMode>2</deliveryMode>
+			<priority>4</priority>
+			<expiration>0</expiration>
+			<replyTo></replyTo>
+			<correlationID></correlationID>
+			<destination>queue://testqueue0001</destination>
+			<redelivered>false</redelivered>
+			<bindingVersion>1.0</bindingVersion>
+			<targetService></targetService>
+			<contentType>text/xml; charset=UTF-8</contentType>
+			<soapAction></soapAction>
+			<requestURI>jms:jndi:dynamicQueues/testqueue0001
+			</requestURI>
+			<messageBody></messageBody>
+		</requestMessage>
+	</testCase>
+	
+	<testCase id="test0002" mep="inout">
+		<address>jms:jndi:dynamicQueues/testqueue0001?jndiInitialContextFactory=org.apache.activemq.jndi.ActiveMQInitialContextFactory&amp;jndiConnectionFactoryName=ConnectionFactory&amp;jndiURL=tcp://localhost:61500</address>
+		<requestMessage>
+			<messageType>byte</messageType>
+			<deliveryMode>2</deliveryMode>
+			<priority>4</priority>
+			<expiration>0</expiration>
+			<replyTo></replyTo>
+			<correlationID></correlationID>
+			<destination>queue://testqueue0001</destination>
+			<redelivered>false</redelivered>
+			<bindingVersion>1.0</bindingVersion>
+			<targetService></targetService>
+			<contentType>text/xml; charset=UTF-8</contentType>
+			<soapAction></soapAction>
+			<requestURI>jms:jndi:dynamicQueues/testqueue0001
+			</requestURI>
+			<messageBody></messageBody>
+		</requestMessage>
+		<responseMessage>
+			<messageType>byte</messageType>
+			<deliveryMode>2</deliveryMode>
+			<priority>4</priority>
+			<expiration>0</expiration>
+			<replyTo></replyTo>
+			<correlationID></correlationID>
+			<destination></destination>
+			<redelivered>false</redelivered>
+			<bindingVersion>1.0</bindingVersion>
+			<targetService></targetService>
+			<contentType>text/xml; charset=UTF-8</contentType>
+			<soapAction></soapAction>
+			<requestURI>jms:jndi:dynamicQueues/testqueue0001</requestURI>
+			<messageBody></messageBody>
+		</responseMessage>
+	</testCase>
+	
+	<testCase id="test0003" mep="inonly">
+		<address>jms:jndi:dynamicQueues/testqueue0003?jndiInitialContextFactory=org.apache.activemq.jndi.ActiveMQInitialContextFactory&amp;jndiConnectionFactoryName=ConnectionFactory&amp;jndiURL=tcp://localhost:61500</address>
+		<requestMessage>
+			<messageType>text</messageType>
+			<deliveryMode>2</deliveryMode>
+			<priority>4</priority>
+			<expiration>0</expiration>
+			<replyTo></replyTo>
+			<correlationID></correlationID>
+			<destination>queue://testqueue0003</destination>
+			<redelivered>false</redelivered>
+			<bindingVersion>1.0</bindingVersion>
+			<targetService></targetService>
+			<contentType>text/xml; charset=UTF-8</contentType>
+			<soapAction></soapAction>
+			<requestURI>jms:jndi:dynamicQueues/testqueue0003
+			</requestURI>
+			<messageBody></messageBody>
+		</requestMessage>
+	</testCase>
+	
+	<testCase id="test0004" mep="inout">
+		<address>jms:jndi:dynamicQueues/testqueue0003?jndiInitialContextFactory=org.apache.activemq.jndi.ActiveMQInitialContextFactory&amp;jndiConnectionFactoryName=ConnectionFactory&amp;jndiURL=tcp://localhost:61500</address>
+		<requestMessage>
+			<messageType>text</messageType>
+			<deliveryMode>2</deliveryMode>
+			<priority>4</priority>
+			<expiration>0</expiration>
+			<replyTo></replyTo>
+			<correlationID></correlationID>
+			<destination>queue://testqueue0003</destination>
+			<redelivered>false</redelivered>
+			<bindingVersion>1.0</bindingVersion>
+			<targetService></targetService>
+			<contentType>text/xml; charset=UTF-8</contentType>
+			<soapAction></soapAction>
+			<requestURI>jms:jndi:dynamicQueues/testqueue0003
+			</requestURI>
+			<messageBody></messageBody>
+		</requestMessage>
+		<responseMessage>
+			<messageType>text</messageType>
+			<deliveryMode>2</deliveryMode>
+			<priority>4</priority>
+			<expiration>0</expiration>
+			<replyTo></replyTo>
+			<correlationID></correlationID>
+			<destination></destination>
+			<redelivered>false</redelivered>
+			<bindingVersion>1.0</bindingVersion>
+			<targetService></targetService>
+			<contentType>text/xml; charset=UTF-8</contentType>
+			<soapAction></soapAction>
+			<requestURI>jms:jndi:dynamicQueues/testqueue0003</requestURI>
+			<messageBody></messageBody>
+		</responseMessage>
+	</testCase>
+	
+	<testCase id="test0005" mep="inout">
+		<address>jms:jndi:dynamicQueues/testqueue0005?jndiInitialContextFactory=org.apache.activemq.jndi.ActiveMQInitialContextFactory&amp;jndiConnectionFactoryName=ConnectionFactory&amp;jndiURL=tcp://localhost:61500&amp;targetService=EchoPort&amp;deliveryMode=NON_PERSISTENT&amp;timeToLive=3600000&amp;priority=5&amp;replyToName=dynamicQueues/replyqueue0005</address>
+		<requestMessage>
+			<deliveryMode>1</deliveryMode>
+			<priority>5</priority>
+			<expiration>0</expiration>
+			<replyTo>queue://replyqueue0005</replyTo>
+			<destination>queue://testqueue0005</destination>
+		</requestMessage>
+		<responseMessage>
+			<destination>queue://replyqueue0005</destination>
+		</responseMessage>
+	</testCase>
+	
+	<testCase id="test0006" mep="inout">
+		<address>jms:jndi:dynamicQueues/testqueue0006?jndiInitialContextFactory=org.apache.activemq.jndi.ActiveMQInitialContextFactory&amp;jndiConnectionFactoryName=ConnectionFactory&amp;jndiURL=tcp://localhost:61500</address>
+		<requestMessage>
+			<deliveryMode>1</deliveryMode>
+			<priority>6</priority>
+			<expiration>0</expiration>
+			<replyTo>queue://replyqueue0006</replyTo>
+			<destination>queue://testqueue0006</destination>
+		</requestMessage>
+		<responseMessage>
+			<destination>queue://replyqueue0006</destination>
+		</responseMessage>
+	</testCase>
+	
+	<testCase id="test0008" mep="inout">
+		<address>jms:jndi:dynamicQueues/testqueue0008?jndiInitialContextFactory=org.apache.activemq.jndi.ActiveMQInitialContextFactory&amp;jndiConnectionFactoryName=ConnectionFactory&amp;jndiURL=tcp://localhost:61500</address>
+		<requestMessage>
+			<deliveryMode>1</deliveryMode>
+			<priority>8</priority>
+			<expiration>0</expiration>
+			<replyTo>queue://replyqueue0008</replyTo>
+			<destination>queue://testqueue0008</destination>
+		</requestMessage>
+		<responseMessage>
+			<destination>queue://replyqueue0008</destination>
+		</responseMessage>
+	</testCase>
+	
+	<testCase id="test0009" mep="inout">
+		<address>jms:jndi:dynamicQueues/testqueue0009?jndiInitialContextFactory=org.apache.activemq.jndi.ActiveMQInitialContextFactory&amp;jndiConnectionFactoryName=ConnectionFactory&amp;jndiURL=tcp://localhost:61500&amp;targetService=EchoPort&amp;deliveryMode=PERSISTENT&amp;timeToLive=3600000&amp;priority=1&amp;replyToName=dynamicQueues/replyqueue00091</address>
+		<requestMessage>
+			<deliveryMode>1</deliveryMode>
+			<priority>3</priority>
+			<expiration>0</expiration>
+			<replyTo>queue://replyqueue00093</replyTo>
+			<destination>queue://testqueue0009</destination>
+		</requestMessage>
+		<responseMessage>
+			<destination>queue://replyqueue00093</destination>
+		</responseMessage>
+	</testCase>
+	
+	<testCase id="test0010" mep="inout">
+		<address>jms:jndi:dynamicQueues/testqueue0010?jndiInitialContextFactory=org.apache.activemq.jndi.ActiveMQInitialContextFactory&amp;jndiConnectionFactoryName=ConnectionFactory&amp;jndiURL=tcp://localhost:61500&amp;deliveryMode=PERSISTENT&amp;timeToLive=3600000&amp;priority=1&amp;replyToName=dynamicQueues/replyqueue00101</address>
+		<requestMessage>
+			<deliveryMode>2</deliveryMode>
+			<priority>1</priority>
+			<expiration>0</expiration>
+			<replyTo>queue://replyqueue00101</replyTo>
+			<destination>queue://testqueue0010</destination>
+		</requestMessage>
+		<responseMessage>
+			<destination>queue://replyqueue00101</destination>
+		</responseMessage>
+	</testCase>
+	
+	<testCase id="test0011" mep="inout">
+		<address>jms:jndi:dynamicQueues/testqueue0011?jndiInitialContextFactory=org.apache.activemq.jndi.ActiveMQInitialContextFactory&amp;jndiConnectionFactoryName=ConnectionFactory&amp;jndiURL=tcp://localhost:61500&amp;deliveryMode=PERSISTENT&amp;timeToLive=3600000&amp;priority=1&amp;replyToName=dynamicQueues/replyqueue00111&amp;deliveryMode=NON_PERSISTENT&amp;timeToLive=7200000&amp;priority=2&amp;replyToName=dynamicQueues/replyqueue00112</address>
+		<requestMessage>
+			<deliveryMode>1</deliveryMode>
+			<priority>2</priority>
+			<expiration>0</expiration>
+			<replyTo>queue://replyqueue00112</replyTo>
+			<destination>queue://testqueue0011</destination>
+		</requestMessage>
+		<responseMessage>
+			<destination>queue://replyqueue00112</destination>
+		</responseMessage>
+	</testCase>
+	
+	<testCase id="test0012" mep="inout">
+		<address>jms:jndi:dynamicQueues/testqueue0012?jndiInitialContextFactory=org.apache.activemq.jndi.ActiveMQInitialContextFactory&amp;jndiConnectionFactoryName=ConnectionFactory&amp;jndiURL=tcp://localhost:61500</address>
+		<requestMessage>
+			<deliveryMode>2</deliveryMode>
+			<priority>4</priority>
+			<expiration>0</expiration>
+			<destination>queue://testqueue0001</destination>
+		</requestMessage>
+		<responseMessage>
+			<destination>queue://replyqueue0001</destination>
+		</responseMessage>
+	</testCase>
+	
+	<testCase id="test1001" mep="inout">
+		<address>jms:jndi:dynamicQueues/testqueue1001?jndiInitialContextFactory=org.apache.activemq.jndi.ActiveMQInitialContextFactory&amp;jndiConnectionFactoryName=ConnectionFactory&amp;jndiURL=tcp://localhost:61500</address>
+		<requestMessage>
+			<messageType>byte</messageType>
+			<deliveryMode>2</deliveryMode>
+			<priority>4</priority>
+			<expiration>0</expiration>
+			<replyTo></replyTo>
+			<correlationID></correlationID>
+			<destination>queue://testqueue1001</destination>
+			<redelivered>false</redelivered>
+			<bindingVersion>0.3</bindingVersion>
+			<targetService></targetService>
+			<contentType>text/xml; charset=UTF-8</contentType>
+			<soapAction></soapAction>
+			<requestURI>jms:jndi:dynamicQueues/testqueue1001
+			</requestURI>
+			<messageBody></messageBody>
+		</requestMessage>
+		<responseMessage>
+			<messageType>byte</messageType>
+			<deliveryMode>2</deliveryMode>
+			<priority>4</priority>
+			<expiration>0</expiration>
+			<replyTo></replyTo>
+			<correlationID></correlationID>
+			<destination></destination>
+			<redelivered>false</redelivered>
+			<bindingVersion>1.0</bindingVersion>
+			<targetService></targetService>
+			<contentType>text/xml; charset=UTF-8</contentType>
+			<soapAction></soapAction>
+			<requestURI>jms:jndi:dynamicQueues/testqueue1001</requestURI>
+			<isFault>true</isFault>
+			<messageBody></messageBody>
+		</responseMessage>
+	</testCase>
+</testCases>
\ No newline at end of file

Propchange: cxf/trunk/systests/src/test/java/org/apache/cxf/jms/testsuite/util/testcases.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/systests/src/test/java/org/apache/cxf/jms/testsuite/util/testcases.xml
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Propchange: cxf/trunk/systests/src/test/java/org/apache/cxf/jms/testsuite/util/testcases.xml
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Added: cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jms/GreeterImplTwoWayJMSAppCorrelationIDEng.java
URL: http://svn.apache.org/viewvc/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jms/GreeterImplTwoWayJMSAppCorrelationIDEng.java?rev=799234&view=auto
==============================================================================
--- cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jms/GreeterImplTwoWayJMSAppCorrelationIDEng.java (added)
+++ cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jms/GreeterImplTwoWayJMSAppCorrelationIDEng.java Thu Jul 30 10:52:56 2009
@@ -0,0 +1,32 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.cxf.systest.jms;
+
+import javax.jws.WebService;
+
+
+
+@WebService(serviceName = "HelloWorldServiceAppCorrelationID", 
+            portName = "HelloWorldPortAppCorrelationIDEng",
+            endpointInterface = "org.apache.cxf.hello_world_jms.HelloWorldPortType",
+            targetNamespace = "http://cxf.apache.org/hello_world_jms",
+            wsdlLocation = "testutils/jms_test.wsdl")
+public class GreeterImplTwoWayJMSAppCorrelationIDEng extends TwoWayJMSImplBase {    
+    
+}

Propchange: cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jms/GreeterImplTwoWayJMSAppCorrelationIDEng.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jms/GreeterImplTwoWayJMSAppCorrelationIDEng.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jms/GreeterImplTwoWayJMSAppCorrelationIDSales.java
URL: http://svn.apache.org/viewvc/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jms/GreeterImplTwoWayJMSAppCorrelationIDSales.java?rev=799234&view=auto
==============================================================================
--- cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jms/GreeterImplTwoWayJMSAppCorrelationIDSales.java (added)
+++ cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jms/GreeterImplTwoWayJMSAppCorrelationIDSales.java Thu Jul 30 10:52:56 2009
@@ -0,0 +1,32 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.cxf.systest.jms;
+
+import javax.jws.WebService;
+
+
+
+@WebService(serviceName = "HelloWorldServiceAppCorrelationID", 
+            portName = "HelloWorldPortAppCorrelationIDSales",
+            endpointInterface = "org.apache.cxf.hello_world_jms.HelloWorldPortType",
+            targetNamespace = "http://cxf.apache.org/hello_world_jms",
+            wsdlLocation = "testutils/jms_test.wsdl")
+public class GreeterImplTwoWayJMSAppCorrelationIDSales extends TwoWayJMSImplBase {    
+    
+}

Propchange: cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jms/GreeterImplTwoWayJMSAppCorrelationIDSales.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jms/GreeterImplTwoWayJMSAppCorrelationIDSales.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Modified: cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jms/JMSClientServerTest.java
URL: http://svn.apache.org/viewvc/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jms/JMSClientServerTest.java?rev=799234&r1=799233&r2=799234&view=diff
==============================================================================
--- cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jms/JMSClientServerTest.java (original)
+++ cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jms/JMSClientServerTest.java Thu Jul 30 10:52:56 2009
@@ -18,13 +18,13 @@
  */
 package org.apache.cxf.systest.jms;
 
+import java.lang.Thread.State;
 import java.lang.reflect.UndeclaredThrowableException;
 import java.net.URL;
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.HashMap;
 import java.util.Map;
-import java.util.UUID;
 
 import javax.activation.DataHandler;
 import javax.jms.DeliveryMode;
@@ -48,6 +48,7 @@
 import org.apache.cxf.hello_world_jms.HelloWorldPubSubService;
 import org.apache.cxf.hello_world_jms.HelloWorldQueueDecoupledOneWaysService;
 import org.apache.cxf.hello_world_jms.HelloWorldService;
+import org.apache.cxf.hello_world_jms.HelloWorldServiceAppCorrelationID;
 import org.apache.cxf.hello_world_jms.HelloWorldServiceAppCorrelationIDNoPrefix;
 import org.apache.cxf.hello_world_jms.HelloWorldServiceAppCorrelationIDStaticPrefix;
 import org.apache.cxf.hello_world_jms.HelloWorldServiceRuntimeCorrelationIDDynamicPrefix;
@@ -586,20 +587,21 @@
             }
         }
     }
+    
     @Test
-    public void testTwoWayQueueAppCorrelationIDStaticPrefix() throws Exception {
+    public void testTwoWayQueueAppCorrelationID() throws Exception {
         QName serviceName = getServiceName(new QName("http://cxf.apache.org/hello_world_jms", 
-                                 "HelloWorldServiceAppCorrelationIDStaticPrefix"));
+                                 "HelloWorldServiceAppCorrelationID"));
         QName portNameEng = getPortName(new QName("http://cxf.apache.org/hello_world_jms", 
-                                               "HelloWorldPortAppCorrelationIDStaticPrefixEng"));
+                                               "HelloWorldPortAppCorrelationIDEng"));
         QName portNameSales = getPortName(new QName("http://cxf.apache.org/hello_world_jms", 
-                                               "HelloWorldPortAppCorrelationIDStaticPrefixSales"));
+                                               "HelloWorldPortAppCorrelationIDSales"));
 
         URL wsdl = getClass().getResource("/wsdl/jms_test.wsdl");
         assertNotNull(wsdl);
 
-        HelloWorldServiceAppCorrelationIDStaticPrefix service = 
-            new HelloWorldServiceAppCorrelationIDStaticPrefix(wsdl, serviceName);
+        HelloWorldServiceAppCorrelationID service = 
+            new HelloWorldServiceAppCorrelationID(wsdl, serviceName);
         assertNotNull(service);
 
         ClientRunnable engClient = 
@@ -627,6 +629,52 @@
         }
     
         for (Thread t : threads) {
+            t.join(5000);
+        }
+
+        Throwable e = (engClient.getException() != null) 
+                          ? engClient.getException() 
+                          : (salesClient.getException() != null) 
+                              ? salesClient.getException() : null;
+                              
+        if (e != null) {
+            StringBuffer message = new StringBuffer();
+            for (StackTraceElement ste : e.getStackTrace()) {
+                message.append(ste.toString() + System.getProperty("line.separator"));
+            }
+            fail(message.toString());
+        }
+    }
+    
+    @Test
+    public void testTwoWayQueueAppCorrelationIDStaticPrefix() throws Exception {
+        QName serviceName = getServiceName(new QName("http://cxf.apache.org/hello_world_jms", 
+                                 "HelloWorldServiceAppCorrelationIDStaticPrefix"));
+        QName portNameEng = getPortName(new QName("http://cxf.apache.org/hello_world_jms", 
+                                               "HelloWorldPortAppCorrelationIDStaticPrefixEng"));
+        QName portNameSales = getPortName(new QName("http://cxf.apache.org/hello_world_jms", 
+                                               "HelloWorldPortAppCorrelationIDStaticPrefixSales"));
+
+        URL wsdl = getClass().getResource("/wsdl/jms_test.wsdl");
+        assertNotNull(wsdl);
+
+        HelloWorldServiceAppCorrelationIDStaticPrefix service = 
+            new HelloWorldServiceAppCorrelationIDStaticPrefix(wsdl, serviceName);
+        assertNotNull(service);
+
+        ClientRunnable engClient = 
+            new ClientRunnable(service.getPort(portNameEng, HelloWorldPortType.class));
+        
+        ClientRunnable salesClient = 
+             new ClientRunnable(service.getPort(portNameSales, HelloWorldPortType.class));
+        
+        Thread[] threads = new Thread[] {new Thread(engClient), new Thread(salesClient)};
+        
+        for (Thread t : threads) {
+            t.start();
+        }
+    
+        for (Thread t : threads) {
             t.join(10000);
         }
 
@@ -670,26 +718,32 @@
         
         HelloWorldPortType port = service.getPort(portName, HelloWorldPortType.class);
         
-        for (int i = 0; i < 10; ++i) {
-            ClientRunnable client =  
-                new ClientRunnable(port,
-                    new CorrelationIDFactory() {
-                        public String createCorrealtionID() {
-                            return UUID.randomUUID().toString();
-                        }
-                    });
-            
+        for (int i = 0; i < 1; ++i) {
+            ClientRunnable client = new ClientRunnable(port);            
             Thread thread = new Thread(client);
             threads.add(thread);
             clients.add(client);
             thread.start();
         }
 
+        for (Thread t : threads) {
+            t.join(5000);
+            assertTrue("Not terminated state: " + t.getState(), t.getState() == State.TERMINATED);
+        }
+
+        for (ClientRunnable client : clients) {
+            if (client.getException() != null 
+                && client.getException().getMessage().contains("Timeout")) {
+                fail(client.getException().getMessage());
+            }
+        }
+        /*
+         * The result is not certain. sometimes right, sometime wrong. because the thread.
         //Sleep for up to 10 seconds.   The timeout should be at 5 seconds so this
         //should bail earlier
         for (int x = 0; x < 10; x++) {
             Thread.sleep(1000);
-
+            
             for (ClientRunnable client : clients) {
                 if (client.getException() != null 
                     && client.getException().getMessage().contains("Timeout")) {
@@ -703,6 +757,7 @@
              + " has been added to the runtime or an unexpected exception received. " 
              + " If latter is true, then read method comments for details on missing QoS"
              + " and change this test to fail on exception");
+        */
     }
 
     /*
@@ -754,7 +809,7 @@
         HelloWorldPortType portEng = service.getPort(portNameEng, HelloWorldPortType.class);
         HelloWorldPortType portSales = service.getPort(portNameSales, HelloWorldPortType.class);
         
-        for (int i = 0; i < 5; ++i) {
+        for (int i = 0; i < 10; ++i) {
             ClientRunnable client =  new ClientRunnable(portEng, "com.mycompany.eng:");
             Thread thread = new Thread(client);
             threads.add(thread);
@@ -766,12 +821,11 @@
             clients.add(client);
             thread.start();
         }
-
+    
         for (Thread t : threads) {
             t.join(10000);
         }
 
-
         for (ClientRunnable client : clients) {
             if (client.getException() != null 
                 && client.getException().getMessage().contains("Timeout")) {
@@ -801,8 +855,7 @@
         HelloWorldPortType port = service.getPort(portName, HelloWorldPortType.class);
         
         for (int i = 0; i < 10; ++i) {
-            ClientRunnable client =  
-                new ClientRunnable(port);
+            ClientRunnable client = new ClientRunnable(port);
             
             Thread thread = new Thread(client);
             threads.add(thread);

Modified: cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jms/Server.java
URL: http://svn.apache.org/viewvc/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jms/Server.java?rev=799234&r1=799233&r2=799234&view=diff
==============================================================================
--- cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jms/Server.java (original)
+++ cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jms/Server.java Thu Jul 30 10:52:56 2009
@@ -46,6 +46,8 @@
         Object i4 = new GreeterImplTwoWayJMSRuntimeCorrelationIDDynamicPrefix();
         Object i5 = new GreeterImplTwoWayJMSRuntimeCorrelationIDStaticPrefixEng();
         Object i6 = new GreeterImplTwoWayJMSRuntimeCorrelationIDStaticPrefixSales();
+        Object i7 = new GreeterImplTwoWayJMSAppCorrelationIDEng();
+        Object i8 = new GreeterImplTwoWayJMSAppCorrelationIDSales();
         Object mtom = new JMSMTOMImpl();
         
         Endpoint.publish(null, impleDoc);
@@ -62,6 +64,8 @@
         Endpoint.publish("", i4);
         Endpoint.publish("", i5);
         Endpoint.publish("", i6);
+        Endpoint.publish("", i7);
+        Endpoint.publish("", i8);
         EndpointImpl ep = (EndpointImpl)Endpoint.publish("http://cxf.apache.org/transports/jms", mtom);
         Binding binding = ep.getBinding();        
         ((SOAPBinding)binding).setMTOMEnabled(true);  

Added: cxf/trunk/systests/src/test/resources/jms/testcase.xjb
URL: http://svn.apache.org/viewvc/cxf/trunk/systests/src/test/resources/jms/testcase.xjb?rev=799234&view=auto
==============================================================================
--- cxf/trunk/systests/src/test/resources/jms/testcase.xjb (added)
+++ cxf/trunk/systests/src/test/resources/jms/testcase.xjb Thu Jul 30 10:52:56 2009
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements. See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership. The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License. You may obtain a copy of the License at
+ 
+  http://www.apache.org/licenses/LICENSE-2.0
+ 
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied. See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+<jaxb:bindings version="1.0" 
+  xmlns:jaxb="http://java.sun.com/xml/ns/jaxb" 
+  xmlns:xs="http://www.w3.org/2001/XMLSchema" 
+  xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc" 
+  jaxb:extensionBindingPrefixes="xjc">
+    <jaxb:bindings schemaLocation="testcase.xsd" node="/xs:schema">
+        <jaxb:schemaBindings>
+            <jaxb:package name="org.apache.cxf.testsuite.testcase"/>
+        </jaxb:schemaBindings>
+        <jaxb:globalBindings generateIsSetMethod="true"/>
+    </jaxb:bindings>
+</jaxb:bindings>

Propchange: cxf/trunk/systests/src/test/resources/jms/testcase.xjb
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/systests/src/test/resources/jms/testcase.xjb
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Propchange: cxf/trunk/systests/src/test/resources/jms/testcase.xjb
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Added: cxf/trunk/systests/src/test/resources/jms/testcase.xsd
URL: http://svn.apache.org/viewvc/cxf/trunk/systests/src/test/resources/jms/testcase.xsd?rev=799234&view=auto
==============================================================================
--- cxf/trunk/systests/src/test/resources/jms/testcase.xsd (added)
+++ cxf/trunk/systests/src/test/resources/jms/testcase.xsd Thu Jul 30 10:52:56 2009
@@ -0,0 +1,75 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema targetNamespace="http://cxf.apache.org/jms/testcase/"
+	xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://cxf.apache.org/jms/testcase/">
+
+	<xs:element name="testCases" type="tns:testCasesType" />
+	<xs:element name="testCase" type="tns:testCaseType" />
+	<xs:element name="requestMessage" type="tns:messagePropertiesType" />
+	<xs:element name="responseMessage" type="tns:messagePropertiesType" />
+
+	<xs:element name="messageType" type="xs:string"></xs:element>
+	<xs:element name="deliveryMode" type="xs:int"></xs:element>
+	<xs:element name="priority" type="xs:int"></xs:element>
+	<xs:element name="expiration" type="xs:int"></xs:element>
+	<xs:element name="replyTo" type="xs:string"></xs:element>
+	<xs:element name="correlationID" type="xs:string"></xs:element>
+	<xs:element name="destination" type="xs:string"></xs:element>
+	<xs:element name="redelivered" type="xs:boolean"></xs:element>
+	<xs:element name="bindingVersion" type="xs:string"></xs:element>
+	<xs:element name="targetService" type="xs:string"></xs:element>
+	<xs:element name="contentType" type="xs:string"></xs:element>
+	<xs:element name="soapAction" type="xs:string"></xs:element>
+	<xs:element name="requestURI" type="xs:string"></xs:element>
+	<xs:element name="messageBody" type="xs:string"></xs:element>
+	<xs:element name="address" type="xs:string"></xs:element>
+	<xs:element name="isFault" type="xs:boolean"></xs:element>
+
+	<xs:complexType name="testCasesType">
+		<xs:sequence>
+			<xs:element ref="tns:testCase" minOccurs="0" maxOccurs="unbounded"></xs:element>
+		</xs:sequence>
+	</xs:complexType>
+
+	<xs:complexType name="testCaseType">
+		<xs:all>
+			<xs:element ref="tns:address"></xs:element>
+			<xs:element ref="tns:requestMessage"></xs:element>
+			<xs:element ref="tns:responseMessage" minOccurs="0"
+				maxOccurs="1">
+			</xs:element>
+		</xs:all>
+		<xs:attribute name="id" type="xs:string" use="required"></xs:attribute>
+		<xs:attribute name="mep" type="tns:mepType" use="required"></xs:attribute>
+	</xs:complexType>
+
+	<xs:simpleType name="mepType">
+		<xs:restriction base="xs:string">
+			<xs:enumeration value="inonly" />
+			<xs:enumeration value="inout" />
+		</xs:restriction>
+	</xs:simpleType>
+	
+	<xs:complexType name="messagePropertiesType">
+		<xs:all>
+			<xs:element ref="tns:messageType" minOccurs="0" maxOccurs="1"></xs:element>
+			<xs:element ref="tns:deliveryMode" minOccurs="0"
+				maxOccurs="1"></xs:element>
+			<xs:element ref="tns:priority" minOccurs="0" maxOccurs="1"></xs:element>
+			<xs:element ref="tns:expiration" minOccurs="0" maxOccurs="1"></xs:element>
+			<xs:element ref="tns:replyTo" minOccurs="0" maxOccurs="1"></xs:element>
+			<xs:element ref="tns:correlationID" minOccurs="0"
+				maxOccurs="1"></xs:element>
+			<xs:element ref="tns:destination" minOccurs="0" maxOccurs="1"></xs:element>
+			<xs:element ref="tns:redelivered" minOccurs="0" maxOccurs="1"></xs:element>
+			<xs:element ref="tns:bindingVersion" minOccurs="0"
+				maxOccurs="1"></xs:element>
+			<xs:element ref="tns:targetService" minOccurs="0"
+				maxOccurs="1"></xs:element>
+			<xs:element ref="tns:contentType" minOccurs="0" maxOccurs="1"></xs:element>
+			<xs:element ref="tns:soapAction" minOccurs="0" maxOccurs="1"></xs:element>
+			<xs:element ref="tns:requestURI" minOccurs="0" maxOccurs="1"></xs:element>
+			<xs:element ref="tns:isFault" minOccurs="0" maxOccurs="1"></xs:element>			
+			<xs:element ref="tns:messageBody" minOccurs="0" maxOccurs="1"></xs:element>
+		</xs:all>
+	</xs:complexType>
+</xs:schema>
\ No newline at end of file

Propchange: cxf/trunk/systests/src/test/resources/jms/testcase.xsd
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/systests/src/test/resources/jms/testcase.xsd
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Propchange: cxf/trunk/systests/src/test/resources/jms/testcase.xsd
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Added: cxf/trunk/testutils/src/main/resources/wsdl/jms_spec_testsuite.wsdl
URL: http://svn.apache.org/viewvc/cxf/trunk/testutils/src/main/resources/wsdl/jms_spec_testsuite.wsdl?rev=799234&view=auto
==============================================================================
--- cxf/trunk/testutils/src/main/resources/wsdl/jms_spec_testsuite.wsdl (added)
+++ cxf/trunk/testutils/src/main/resources/wsdl/jms_spec_testsuite.wsdl Thu Jul 30 10:52:56 2009
@@ -0,0 +1,221 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements. See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership. The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License. You may obtain a copy of the License at
+
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied. See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+<wsdl:definitions name="JMSSimpleService"
+    targetNamespace="http://cxf.apache.org/jms_simple"
+    xmlns="http://schemas.xmlsoap.org/wsdl/"
+    xmlns:jms="http://cxf.apache.org/transports/jms" 
+    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+    xmlns:tns="http://cxf.apache.org/jms_simple"
+    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+    xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+    xmlns:x1="http://cxf.apache.org/jms_simple/types"
+    xmlns:soapjms="http://www.w3.org/2008/07/soap/bindings/JMS/">
+    <wsdl:types>
+        <schema targetNamespace="http://cxf.apache.org/jms_simple/types"
+            xmlns="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
+            <element name="echoRequest" type="xsd:string"></element>
+            <element name="echoResponse" type="xsd:string"></element>
+            <element name="pingRequest" type="xsd:string"></element>
+        </schema>
+    </wsdl:types>
+
+    <wsdl:message name="echoRequest">
+        <wsdl:part element="x1:echoRequest" name="in"/>
+    </wsdl:message>
+    <wsdl:message name="echoResponse">
+        <wsdl:part element="x1:echoResponse" name="out"/>
+    </wsdl:message>
+    <wsdl:message name="pingRequest">
+        <wsdl:part element="x1:pingRequest" name="in"/>
+    </wsdl:message>
+
+    <wsdl:portType name="JMSSimplePortType">
+        <wsdl:operation name="echo">
+            <wsdl:input message="tns:echoRequest" name="echoRequest"/>
+            <wsdl:output message="tns:echoResponse" name="echoResponse"/>
+        </wsdl:operation>
+
+        <wsdl:operation name="ping">
+            <wsdl:input message="tns:pingRequest" name="pingRequest"/>
+        </wsdl:operation>
+    </wsdl:portType>
+
+    <wsdl:binding name="JMSSimplePortBinding" type="tns:JMSSimplePortType">
+        <soap:binding style="document" transport="http://www.w3.org/2008/07/soap/bindings/JMS/"/>
+
+        <wsdl:operation name="echo">
+            <soap:operation soapAction="echo" style="document"/>
+            <wsdl:input name="echoRequest">
+                <soap:body use="literal"/>
+            </wsdl:input>
+            <wsdl:output name="echoResponse">
+                <soap:body use="literal"/>
+            </wsdl:output>
+        </wsdl:operation>
+        
+        <wsdl:operation name="ping">
+            <soap:operation soapaction="ping" style="document"/>
+            <wsdl:input name="pingRequest">
+                <soap:body use="literal"/>
+            </wsdl:input>
+        </wsdl:operation>
+    </wsdl:binding>
+
+    <wsdl:binding name="JMSSimplePortBinding0006" type="tns:JMSSimplePortType">
+        <soap:binding style="document" transport="http://www.w3.org/2008/07/soap/bindings/JMS/"/>
+        
+        <soapjms:deliveryMode>NON_PERSISTENT</soapjms:deliveryMode>
+        <soapjms:timeToLive>7200000</soapjms:timeToLive>
+        <soapjms:priority>6</soapjms:priority>
+        <soapjms:replyToName>dynamicQueues/replyqueue0006</soapjms:replyToName>
+        
+        <wsdl:operation name="echo">
+            <soap:operation soapAction="echo" style="document"/>
+            <wsdl:input name="echoRequest">
+                <soap:body use="literal"/>
+            </wsdl:input>
+            <wsdl:output name="echoResponse">
+                <soap:body use="literal"/>
+            </wsdl:output>
+        </wsdl:operation>
+        
+        <wsdl:operation name="ping">
+            <soap:operation soapaction="ping" style="document"/>
+            <wsdl:input name="pingRequest">
+                <soap:body use="literal"/>
+            </wsdl:input>
+        </wsdl:operation>
+    </wsdl:binding>
+    
+    <wsdl:binding name="JMSSimplePortBinding0009" type="tns:JMSSimplePortType">
+        <soap:binding style="document" transport="http://www.w3.org/2008/07/soap/bindings/JMS/"/>
+        
+        <soapjms:deliveryMode>PERSISTENT</soapjms:deliveryMode>
+        <soapjms:timeToLive>7200000</soapjms:timeToLive>
+        <soapjms:priority>2</soapjms:priority>
+        <soapjms:replyToName>dynamicQueues/replyqueue00092</soapjms:replyToName>
+        
+        <wsdl:operation name="echo">
+            <soap:operation soapAction="echo" style="document"/>
+            <wsdl:input name="echoRequest">
+                <soap:body use="literal"/>
+            </wsdl:input>
+            <wsdl:output name="echoResponse">
+                <soap:body use="literal"/>
+            </wsdl:output>
+        </wsdl:operation>
+        
+        <wsdl:operation name="ping">
+            <soap:operation soapaction="ping" style="document"/>
+            <wsdl:input name="pingRequest">
+                <soap:body use="literal"/>
+            </wsdl:input>
+        </wsdl:operation>
+    </wsdl:binding>
+    
+    <wsdl:binding name="JMSSimplePortBinding0010" type="tns:JMSSimplePortType">
+        <soap:binding style="document" transport="http://www.w3.org/2008/07/soap/bindings/JMS/"/>
+        
+        <soapjms:deliveryMode>NON_PERSISTENT</soapjms:deliveryMode>
+        <soapjms:timeToLive>7200000</soapjms:timeToLive>
+        <soapjms:priority>2</soapjms:priority>
+        <soapjms:replyToName>dynamicQueues/replyqueue000102</soapjms:replyToName>
+        
+        <wsdl:operation name="echo">
+            <soap:operation soapAction="echo" style="document"/>
+            <wsdl:input name="echoRequest">
+                <soap:body use="literal"/>
+            </wsdl:input>
+            <wsdl:output name="echoResponse">
+                <soap:body use="literal"/>
+            </wsdl:output>
+        </wsdl:operation>
+        
+        <wsdl:operation name="ping">
+            <soap:operation soapaction="ping" style="document"/>
+            <wsdl:input name="pingRequest">
+                <soap:body use="literal"/>
+            </wsdl:input>
+        </wsdl:operation>
+    </wsdl:binding>
+    
+    <wsdl:service name="JMSSimpleService0001">
+        <wsdl:port binding="tns:JMSSimplePortBinding" name="SimplePort">
+            <soap:address location="jms:jndi:dynamicQueues/testqueue0001?jndiInitialContextFactory=org.apache.activemq.jndi.ActiveMQInitialContextFactory&amp;jndiConnectionFactoryName=ConnectionFactory&amp;jndiURL=tcp://localhost:61500"/>
+        </wsdl:port>
+    </wsdl:service>
+    
+    <wsdl:service name="JMSSimpleService0003">
+        <wsdl:port binding="tns:JMSSimplePortBinding" name="SimplePort">
+            <soap:address location="jms:jndi:dynamicQueues/testqueue0003?jndiInitialContextFactory=org.apache.activemq.jndi.ActiveMQInitialContextFactory&amp;jndiConnectionFactoryName=ConnectionFactory&amp;jndiURL=tcp://localhost:61500"/>
+            <jms:client messageType="text"/>
+        </wsdl:port>
+    </wsdl:service>
+    
+    <wsdl:service name="JMSSimpleService0005">
+        <wsdl:port binding="tns:JMSSimplePortBinding" name="SimplePort">
+            <soap:address location="jms:jndi:dynamicQueues/testqueue0005?jndiInitialContextFactory=org.apache.activemq.jndi.ActiveMQInitialContextFactory&amp;jndiConnectionFactoryName=ConnectionFactory&amp;jndiURL=tcp://localhost:61500&amp;targetService=EchoPort&amp;deliveryMode=NON_PERSISTENT&amp;timeToLive=3600000&amp;priority=5&amp;replyToName=dynamicQueues/replyqueue0005"/>
+        </wsdl:port>
+    </wsdl:service>
+    
+    <wsdl:service name="JMSSimpleService0006">
+        <wsdl:port binding="tns:JMSSimplePortBinding0006" name="SimplePort">
+            <soap:address location="jms:jndi:dynamicQueues/testqueue0006?jndiInitialContextFactory=org.apache.activemq.jndi.ActiveMQInitialContextFactory&amp;jndiConnectionFactoryName=ConnectionFactory&amp;jndiURL=tcp://localhost:61500"/>
+        </wsdl:port>
+    </wsdl:service>
+    
+    <wsdl:service name="JMSSimpleService0008">
+        <wsdl:port binding="tns:JMSSimplePortBinding" name="SimplePort">
+            <soap:address location="jms:jndi:dynamicQueues/testqueue0008?jndiInitialContextFactory=org.apache.activemq.jndi.ActiveMQInitialContextFactory&amp;jndiConnectionFactoryName=ConnectionFactory&amp;jndiURL=tcp://localhost:61500"/>
+        </wsdl:port>
+    </wsdl:service>
+    
+    <wsdl:service name="JMSSimpleService0009">
+        <wsdl:port binding="tns:JMSSimplePortBinding0009" name="SimplePort">
+            <soap:address location="jms:jndi:dynamicQueues/testqueue0009?jndiInitialContextFactory=org.apache.activemq.jndi.ActiveMQInitialContextFactory&amp;jndiConnectionFactoryName=ConnectionFactory&amp;jndiURL=tcp://localhost:61500&amp;targetService=EchoPort&amp;deliveryMode=PERSISTENT&amp;timeToLive=3600000&amp;priority=1&amp;replyToName=dynamicQueues/replyqueue00091"/>
+        </wsdl:port>
+    </wsdl:service>
+    
+    <wsdl:service name="JMSSimpleService0010">
+        <wsdl:port binding="tns:JMSSimplePortBinding0010" name="SimplePort">
+            <soap:address location="jms:jndi:dynamicQueues/testqueue0010?jndiInitialContextFactory=org.apache.activemq.jndi.ActiveMQInitialContextFactory&amp;jndiConnectionFactoryName=ConnectionFactory&amp;jndiURL=tcp://localhost:61500&amp;deliveryMode=PERSISTENT&amp;timeToLive=3600000&amp;priority=1&amp;replyToName=dynamicQueues/replyqueue00101"/>
+        </wsdl:port>
+    </wsdl:service>
+    
+    <wsdl:service name="JMSSimpleService0011">
+        <wsdl:port binding="tns:JMSSimplePortBinding" name="SimplePort">
+            <soap:address location="jms:jndi:dynamicQueues/testqueue0011?jndiInitialContextFactory=org.apache.activemq.jndi.ActiveMQInitialContextFactory&amp;jndiConnectionFactoryName=ConnectionFactory&amp;jndiURL=tcp://localhost:61500&amp;deliveryMode=PERSISTENT&amp;timeToLive=3600000&amp;priority=1&amp;replyToName=dynamicQueues/replyqueue00111&amp;deliveryMode=NON_PERSISTENT&amp;timeToLive=7200000&amp;priority=2&amp;replyToName=dynamicQueues/replyqueue00112"/>
+        </wsdl:port>
+    </wsdl:service>
+    
+    <wsdl:service name="JMSSimpleService0012">
+        <wsdl:port binding="tns:JMSSimplePortBinding" name="SimplePort">
+            <soap:address location="jms:jndi:dynamicQueues/testqueue0012?jndiInitialContextFactory=org.apache.activemq.jndi.ActiveMQInitialContextFactory&amp;jndiConnectionFactoryName=ConnectionFactory&amp;jndiURL=tcp://localhost:61500"/>
+        </wsdl:port>
+    </wsdl:service>
+    
+    <wsdl:service name="JMSSimpleService1001">
+        <wsdl:port binding="tns:JMSSimplePortBinding" name="SimplePort">
+            <soap:address location="jms:jndi:dynamicQueues/testqueue1001?jndiInitialContextFactory=org.apache.activemq.jndi.ActiveMQInitialContextFactory&amp;jndiConnectionFactoryName=ConnectionFactory&amp;jndiURL=tcp://localhost:61500"/>
+        </wsdl:port>
+    </wsdl:service>
+</wsdl:definitions>
\ No newline at end of file

Propchange: cxf/trunk/testutils/src/main/resources/wsdl/jms_spec_testsuite.wsdl
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/testutils/src/main/resources/wsdl/jms_spec_testsuite.wsdl
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Propchange: cxf/trunk/testutils/src/main/resources/wsdl/jms_spec_testsuite.wsdl
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Modified: cxf/trunk/testutils/src/main/resources/wsdl/jms_test.wsdl
URL: http://svn.apache.org/viewvc/cxf/trunk/testutils/src/main/resources/wsdl/jms_test.wsdl?rev=799234&r1=799233&r2=799234&view=diff
==============================================================================
--- cxf/trunk/testutils/src/main/resources/wsdl/jms_test.wsdl (original)
+++ cxf/trunk/testutils/src/main/resources/wsdl/jms_test.wsdl Thu Jul 30 10:52:56 2009
@@ -351,6 +351,27 @@
                <jms:server durableSubscriberName="CXF_subscriber"/>
            </port>
     </service>
+        
+    <service name="HelloWorldServiceAppCorrelationID">
+        <port binding="tns:HelloWorldPortBinding" name="HelloWorldPortAppCorrelationIDEng">
+               <jms:address
+                   jndiConnectionFactoryName="ConnectionFactory" 
+                   jndiDestinationName="dynamicQueues/test.jmstransport.text.app.correlation.id"
+                   jndiReplyDestinationName="dynamicQueues/test.jmstransport.text.app.correlation.id.reply">
+                   <jms:JMSNamingProperty name="java.naming.factory.initial" value="org.apache.activemq.jndi.ActiveMQInitialContextFactory"/>
+                   <jms:JMSNamingProperty name="java.naming.provider.url" value="tcp://localhost:61500"/>
+               </jms:address>
+        </port>
+        <port binding="tns:HelloWorldPortBinding" name="HelloWorldPortAppCorrelationIDSales">
+               <jms:address
+                   jndiConnectionFactoryName="ConnectionFactory" 
+                   jndiDestinationName="dynamicQueues/test.jmstransport.text.app.correlation.id"
+                   jndiReplyDestinationName="dynamicQueues/test.jmstransport.text.app.correlation.id.reply">
+                   <jms:JMSNamingProperty name="java.naming.factory.initial" value="org.apache.activemq.jndi.ActiveMQInitialContextFactory"/>
+                   <jms:JMSNamingProperty name="java.naming.provider.url" value="tcp://localhost:61500"/>
+               </jms:address>
+        </port>
+    </service>
     
     <service name="HelloWorldServiceAppCorrelationIDStaticPrefix">
         <port binding="tns:HelloWorldPortBinding" name="HelloWorldPortAppCorrelationIDStaticPrefixEng">
@@ -380,7 +401,7 @@
     <service name="HelloWorldServiceAppCorrelationIDNoPrefix">
         <port binding="tns:HelloWorldPortBinding" name="HelloWorldPortAppCorrelationIDNoPrefix">
             <jms:clientConfig clientReceiveTimeout = "5000"
-                              useConduitIdSelector="false"/>
+                              useConduitIdSelector="true"/>
             <jms:address
                    jndiConnectionFactoryName="ConnectionFactory" 
                    jndiDestinationName="dynamicQueues/test.jmstransport.text.app.correlation.id.no.prefix"
@@ -436,7 +457,7 @@
             <jms:address
                 jndiConnectionFactoryName="ConnectionFactory" 
                 jndiDestinationName="dynamicQueues/test.jmstransport.binary"
-                jndiReplyDestinationName="dynamicQueues/test.jmstransport.binary">
+                jndiReplyDestinationName="dynamicQueues/test.jmstransport.binary.reply">
                 <jms:JMSNamingProperty name="java.naming.factory.initial" value="org.apache.activemq.jndi.ActiveMQInitialContextFactory"/>
                 <jms:JMSNamingProperty name="java.naming.provider.url" value="tcp://localhost:61500"/>
             </jms:address>



Mime
View raw message