[jboss-cvs] JBoss Messaging SVN: r2596 - in projects/jms-integration: src/etc/deployments/mdb-ejb20-userTransaction/META-INF and 3 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Fri Apr 20 12:08:26 EDT 2007
Author: clebert.suconic at jboss.com
Date: 2007-04-20 12:08:26 -0400 (Fri, 20 Apr 2007)
New Revision: 2596
Added:
projects/jms-integration/.classpath
projects/jms-integration/.project
projects/jms-integration/src/main/org/jboss/test/jms/integration/mdb/TransactionedMDBTest.java
Modified:
projects/jms-integration/src/etc/deployments/mdb-ejb20-userTransaction/META-INF/jboss.xml
projects/jms-integration/src/main/org/jboss/test/jms/integration/support/ejb20/UserTransactionTestMessageDriven.java
projects/jms-integration/thirdparty/
Log:
Adding transactional tests
Added: projects/jms-integration/.classpath
===================================================================
--- projects/jms-integration/.classpath (rev 0)
+++ projects/jms-integration/.classpath 2007-04-20 16:08:26 UTC (rev 2596)
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src/main"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/activation.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/antlr.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/avalon-framework.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/commons-logging.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/concurrent.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/ejb3-persistence.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/getopt.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/hibernate-annotations.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/hibernate-client.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jacorb.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/javassist.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jaxb-api.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jaxb-impl.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jaxb-xjc.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jbossall-client.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jboss-annotations-ejb3.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jboss-aop-jdk50-client.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jboss-aspect-jdk50-client.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jboss-client.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jboss-common-core.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jbosscx-client.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jboss-deployment.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jboss-ejb3-client.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jboss-ejb3x.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jbossha-client.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jboss-iiop-client.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jboss-j2ee.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jboss-j2se.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jboss-jaxrpc.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jboss-jaxws.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jbossjmx-ant.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jboss-jsr77-client.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jboss-logging-jdk.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jboss-logging-log4j.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jboss-logging-spi.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jboss-messaging.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jboss-remoting.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jboss-saaj.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jboss-security-spi.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jboss-serialization.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jboss-srp-client.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jbosssx-client.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jboss-system-client.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jboss-system-jmx-client.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jboss-transaction-client.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jbossws-client.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jbossws-wsconsume-impl.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jboss-xml-binding.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jmx-client.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jmx-invoker-adaptor-client.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/jnp-client.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/log4j.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/logkit.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/mail.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/scout.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/stax-api.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/wsdl4j.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/wstx.jar"/>
+ <classpathentry kind="lib" path="/home/clebert/workspaces/svn-trunk-jboss/trunk/build/output/jboss-5.0.0.Beta2/client/xmlsec.jar"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
Added: projects/jms-integration/.project
===================================================================
--- projects/jms-integration/.project (rev 0)
+++ projects/jms-integration/.project 2007-04-20 16:08:26 UTC (rev 2596)
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>integration</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
Modified: projects/jms-integration/src/etc/deployments/mdb-ejb20-userTransaction/META-INF/jboss.xml
===================================================================
--- projects/jms-integration/src/etc/deployments/mdb-ejb20-userTransaction/META-INF/jboss.xml 2007-04-20 15:53:58 UTC (rev 2595)
+++ projects/jms-integration/src/etc/deployments/mdb-ejb20-userTransaction/META-INF/jboss.xml 2007-04-20 16:08:26 UTC (rev 2596)
@@ -6,7 +6,7 @@
<enterprise-beans>
<message-driven>
<ejb-name>QueueAdapter</ejb-name>
- <destination-jndi-name>queue/testQueue</destination-jndi-name>
+ <destination-jndi-name>queue/testQueue_Integration</destination-jndi-name>
<!-- I"m using singleton on this test to guarantee the order -->
<configuration-name>Singleton Message Driven Bean</configuration-name>
<resource-ref>
Added: projects/jms-integration/src/main/org/jboss/test/jms/integration/mdb/TransactionedMDBTest.java
===================================================================
--- projects/jms-integration/src/main/org/jboss/test/jms/integration/mdb/TransactionedMDBTest.java (rev 0)
+++ projects/jms-integration/src/main/org/jboss/test/jms/integration/mdb/TransactionedMDBTest.java 2007-04-20 16:08:26 UTC (rev 2596)
@@ -0,0 +1,153 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+package org.jboss.test.jms.integration.mdb;
+
+
+import javax.jms.Connection;
+import javax.jms.Session;
+import javax.jms.MessageProducer;
+import javax.jms.TextMessage;
+import javax.jms.MessageConsumer;
+import javax.naming.InitialContext;
+import junit.framework.*;
+import org.jboss.test.JBossTestSetup;
+import org.jboss.test.jms.integration.MessagingIntegrationTestBase;
+import org.jboss.test.jms.integration.util.JMSAdmin;
+
+/**
+ * @author <a href="mailto:clebert.suconic at jboss.org">Clebert Suconic</a>
+ * @version <tt>$Revision:2392 $</tt>
+ *
+ * $Id:SimpleMDBTest.java 2392 2007-02-21 23:25:21Z clebert.suconic at jboss.com $
+ */
+public class TransactionedMDBTest extends MDBTestBase
+{
+
+ // Constants ------------------------------------------------------------------------------------
+
+ // Attributes -----------------------------------------------------------------------------------
+
+ // Static ---------------------------------------------------------------------------------------
+
+ // Constructors ---------------------------------------------------------------------------------
+
+ public TransactionedMDBTest(String name)
+ {
+ super(name);
+ }
+
+ // Public ---------------------------------------------------------------------------------------
+
+ public void testTransacioned() throws Exception
+ {
+ Connection conn = cf.createConnection();
+ conn.start();
+ Session sess = null;
+
+ try
+ {
+ sess = conn.createSession(false, Session.AUTO_ACKNOWLEDGE);
+ MessageProducer producer = sess.createProducer(queueDestination);
+ MessageConsumer consumer = sess.createConsumer(responseDestination);
+ TextMessage message = sess.createTextMessage("Message " + random.nextLong());
+ message.setJMSReplyTo(responseDestination);
+ producer.send(message);
+
+ TextMessage messageResponse = (TextMessage)consumer.receive(10000);
+ assertNotNull(messageResponse);
+ System.out.println("Received message " + messageResponse.getText());
+
+ messageResponse = (TextMessage)consumer.receive(1000);
+ assertNotNull(messageResponse);
+ assertEquals("NonTransactioned message", messageResponse.getText());
+ }
+ finally
+ {
+ if (conn!=null)
+ {
+ conn.close();
+ }
+ }
+
+ }
+
+ public static Test suite() throws Exception
+ {
+ TestSuite suite = new TestSuite();
+
+ suite.addTest(new JBossTestSetup(new TestSuite(TransactionedMDBTest.class))
+ {
+ protected void setUp() throws Exception
+ {
+ super.setUp();
+ JMSAdmin admin = MessagingIntegrationTestBase.getDestManager();
+ try
+ {
+ admin.deployTopic("testTopic_Integration", "topic/testTopic_Integration");
+ admin.deployQueue("testQueue_Integration", "queue/testQueue_Integration");
+ admin.deployQueue("A_Integration", "queue/A_Integration");
+ }
+ catch (Exception e)
+ {
+ e.printStackTrace();
+ }
+ deploy ("integration-mdb20-userTransaction.jar");
+ }
+ protected void tearDown() throws Exception
+ {
+ ClassLoader loader = Thread.currentThread().getContextClassLoader();
+ JMSAdmin admin = MessagingIntegrationTestBase.getDestManager();
+ admin.destroyQueue("testQueue_Integration");
+ admin.destroyTopic("testTopic_Integration");
+ admin.destroyQueue("A_Integration");
+ undeploy ("integration-mdb20-userTransaction.jar");
+ super.tearDown();
+ }
+ });
+
+ return suite;
+ }
+
+
+
+
+ // Package protected ----------------------------------------------------------------------------
+
+ // Protected ------------------------------------------------------------------------------------
+
+ protected void setUp() throws Exception
+ {
+ super.setUp();
+
+ }
+
+ protected void tearDown() throws Exception
+ {
+ super.tearDown();
+ }
+
+ // Private --------------------------------------------------------------------------------------
+
+ // Inner classes --------------------------------------------------------------------------------
+
+}
Property changes on: projects/jms-integration/src/main/org/jboss/test/jms/integration/mdb/TransactionedMDBTest.java
___________________________________________________________________
Name: svn:keywords
+ Id LastChangedDate Author Revision
Modified: projects/jms-integration/src/main/org/jboss/test/jms/integration/support/ejb20/UserTransactionTestMessageDriven.java
===================================================================
--- projects/jms-integration/src/main/org/jboss/test/jms/integration/support/ejb20/UserTransactionTestMessageDriven.java 2007-04-20 15:53:58 UTC (rev 2595)
+++ projects/jms-integration/src/main/org/jboss/test/jms/integration/support/ejb20/UserTransactionTestMessageDriven.java 2007-04-20 16:08:26 UTC (rev 2596)
@@ -61,7 +61,6 @@
MessageDrivenContext messageDrivenContext;
Context ctx;
ConnectionFactory cf;
- Connection conn;
UserTransaction userTransaction;
// Static ---------------------------------------------------------------------------------------
@@ -81,41 +80,27 @@
{
ctx = new InitialContext();
cf = (ConnectionFactory) ctx.lookup(CONNECTION_FACTORY);
- conn = cf.createConnection();
- conn.start();
userTransaction = (UserTransaction) ctx.lookup("UserTransaction");
}
catch (NamingException e)
{
throw new EJBException(e);
}
- catch (JMSException e)
- {
- throw new EJBException(e);
- }
}
public void ejbRemove() throws EJBException
{
- try
- {
- if (conn != null)
- {
- conn.close();
- }
- }
- catch (JMSException e)
- {
- throw new EJBException (e);
- }
}
public void onMessage(Message message)
{
- TextMessage txtMessage = null;
+ TextMessage txtMessage = null;
try
{
+ Connection conn = cf.createConnection();
+ conn.start();
+
userTransaction.begin();
if (message instanceof TextMessage)
@@ -161,17 +146,18 @@
}
finally
{
- if (session!=null)
+ if (conn!=null)
{
- session.close();
+ conn.close();
}
}
+
+ conn = cf.createConnection();
+ session = conn.createSession(false, Session.AUTO_ACKNOWLEDGE);
+ MessageProducer producer = session.createProducer(replyTo);
+ producer.send(session.createTextMessage("NonTransactioned message"));
+ session.close();
- // I'm not doing anything with this connections... this is just to validate
- // if there isn't any problem on creating connections (such as classLoading isolations)
- ConnectionFactory localCF = (ConnectionFactory)ctx.lookup("/ConnectionFactory");
- Connection conn = localCF.createConnection();
- conn.close();
} catch (Exception e)
{
Property changes on: projects/jms-integration/thirdparty
___________________________________________________________________
Name: svn:ignore
+
*
More information about the jboss-cvs-commits
mailing list