[jboss-cvs] JBoss Messaging SVN: r6399 - in trunk/examples/jms/xa-transaction: src/org/jboss/jms/example and 1 other directory.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Fri Apr 10 07:12:02 EDT 2009


Author: gaohoward
Date: 2009-04-10 07:12:02 -0400 (Fri, 10 Apr 2009)
New Revision: 6399

Modified:
   trunk/examples/jms/xa-transaction/server0/jbm-standalone-beans.xml
   trunk/examples/jms/xa-transaction/src/org/jboss/jms/example/XATransactionExample.java
Log:
temporarily commit xa-transaction example


Modified: trunk/examples/jms/xa-transaction/server0/jbm-standalone-beans.xml
===================================================================
--- trunk/examples/jms/xa-transaction/server0/jbm-standalone-beans.xml	2009-04-10 10:51:27 UTC (rev 6398)
+++ trunk/examples/jms/xa-transaction/server0/jbm-standalone-beans.xml	2009-04-10 11:12:02 UTC (rev 6399)
@@ -14,152 +14,44 @@
       <property name="rmiPort">1098</property>
       <property name="rmiBindAddress">localhost</property>
    </bean>
-
-   <bean name="DeploymentManager" class="org.jboss.messaging.core.deployers.impl.FileDeploymentManager">
-      <constructor>
-         <!-- The scan time in milliseconds -->
-         <parameter>5000</parameter>
-      </constructor>
-   </bean>
    
+   <!-- MBean server -->
+   <bean name="MBeanServer" class="javax.management.MBeanServer">
+      <constructor factoryClass="java.lang.management.ManagementFactory"
+                   factoryMethod="getPlatformMBeanServer"/>
+   </bean> 
+
+   <!-- The core configuration -->
    <bean name="Configuration" class="org.jboss.messaging.core.config.impl.FileConfiguration"/>
 
-   <!--<bean name="JBMSecurityManager" class="org.jboss.messaging.core.security.impl.JBossASSecurityManager"/>-->
-
+   <!-- The security manager -->
    <bean name="JBMSecurityManager" class="org.jboss.messaging.core.security.impl.JBMSecurityManagerImpl">
+      <start ignored="true"/>
+      <stop ignored="true"/>
    </bean>
 
-   <bean name="BasicSecurityDeployer" class="org.jboss.messaging.core.deployers.impl.BasicSecurityDeployer">
+   <!-- The core server -->
+   <bean name="MessagingServer" class="org.jboss.messaging.core.server.impl.MessagingServerImpl"> 
       <constructor>
          <parameter>
-            <inject bean="DeploymentManager"/>
-         </parameter>
-      </constructor>
-      <property name="jbmSecurityManager">
-         <inject bean="JBMSecurityManager"/>
-      </property>
-   </bean>
-
-   <bean name="MessagingServer" class="org.jboss.messaging.core.server.impl.MessagingServerImpl">
-      <depends>AddressSettingsDeployer</depends>
-      <depends>QueueDeployer</depends>
-      
-      <property name="storageManager">
-         <inject bean="StorageManager"/>
-      </property>
-      <property name="remotingService">
-         <inject bean="RemotingService"/>
-      </property>
-      <property name="configuration">
-         <inject bean="Configuration"/>
-      </property>
-      <property name="securityManager">
-         <inject bean="JBMSecurityManager"/>
-      </property>
-      <property name="managementService">
-         <inject bean="ManagementService"/>
-      </property>      
-   </bean>
-
-   <bean name="StorageManager" class="org.jboss.messaging.core.persistence.impl.journal.JournalStorageManager">
-      <constructor>
-         <parameter>
             <inject bean="Configuration"/>
          </parameter>
-      </constructor>
-   </bean>
-
-   <bean name="RemotingService" class="org.jboss.messaging.core.remoting.server.impl.RemotingServiceImpl">
-      <constructor>
          <parameter>
-            <inject bean="Configuration"/>
-         </parameter>
-      </constructor>
-      <property name="managementService">
-         <inject bean="ManagementService"/>
-      </property>
-   </bean>
-   
-   <bean name="JMSServerManager" class="org.jboss.messaging.jms.server.impl.JMSServerManagerImpl">
-      <constructor>
-         <parameter>
-            <inject bean="MessagingServer" property="serverManagement"/>
-         </parameter>
-         <parameter>
-            <inject bean="JMSManagementService"/>
-         </parameter>
-      </constructor>
-   </bean>
-
-   <bean name="JMSServerDeployer" class="org.jboss.messaging.jms.server.impl.JMSServerDeployer">
-      <constructor>
-         <parameter>
-            <inject bean="DeploymentManager"/>
-         </parameter>
-          <parameter>
-            <inject bean="Configuration"/>
-         </parameter>
-      </constructor>
-      <property name="jmsServerManager">
-         <inject bean="JMSServerManager"/>
-      </property>
-   </bean>
-
-   <bean name="AddressSettingsDeployer" class="org.jboss.messaging.core.deployers.impl.AddressSettingsDeployer">
-      <constructor>
-         <parameter>
-            <inject bean="DeploymentManager"/>
-         </parameter>
-         <parameter>
-            <inject bean="MessagingServer" property="addressSettingsRepository" state="Configured"/>
-         </parameter>
-      </constructor>
-   </bean>
-
-   <bean name="QueueDeployer" class="org.jboss.messaging.core.deployers.impl.QueueDeployer">
-      <constructor>
-         <parameter>
-            <inject bean="DeploymentManager"/>
-         </parameter>
-         <parameter>
-            <inject bean="Configuration"/>
-         </parameter>
-      </constructor>
-   </bean>
-   
-   <bean name="SecurityDeployer" class="org.jboss.messaging.core.deployers.impl.SecurityDeployer">
-      <constructor>
-         <parameter>
-            <inject bean="DeploymentManager"/>
-         </parameter>
-         <parameter>
-            <inject bean="MessagingServer" property="securityRepository"/>
-         </parameter>
-      </constructor>
-   </bean>
-
-   <bean name="ManagementService" class="org.jboss.messaging.core.management.impl.ManagementServiceImpl">
-      <constructor>
-         <parameter>
             <inject bean="MBeanServer"/>
          </parameter>
          <parameter>
-            <inject bean="Configuration" property="JMXManagementEnabled" />
-         </parameter>
-      </constructor>
+            <inject bean="JBMSecurityManager"/>
+         </parameter>        
+      </constructor>         
    </bean>
    
-   <bean name="JMSManagementService" class="org.jboss.messaging.jms.server.management.impl.JMSManagementServiceImpl">
-      <constructor>
+   <!-- The JMS server -->
+   <bean name="JMSServerManager" class="org.jboss.messaging.jms.server.impl.JMSServerManagerImpl">
+      <constructor>         
          <parameter>
-            <inject bean="ManagementService"/>
+            <inject bean="MessagingServer"/>
          </parameter>
       </constructor>
    </bean>
-   
-   <bean name="MBeanServer" class="javax.management.MBeanServer">
-      <constructor factoryClass="java.lang.management.ManagementFactory"
-                   factoryMethod="getPlatformMBeanServer"/>
-   </bean> 
-   
-</deployment>
\ No newline at end of file
+
+</deployment>

Modified: trunk/examples/jms/xa-transaction/src/org/jboss/jms/example/XATransactionExample.java
===================================================================
--- trunk/examples/jms/xa-transaction/src/org/jboss/jms/example/XATransactionExample.java	2009-04-10 10:51:27 UTC (rev 6398)
+++ trunk/examples/jms/xa-transaction/src/org/jboss/jms/example/XATransactionExample.java	2009-04-10 11:12:02 UTC (rev 6399)
@@ -29,6 +29,7 @@
 
 import javax.jms.Connection;
 import javax.jms.ConnectionFactory;
+import javax.jms.JMSException;
 import javax.jms.Message;
 import javax.jms.MessageConsumer;
 import javax.jms.MessageListener;
@@ -139,6 +140,8 @@
             System.out.println("Transaction rolled back, correct!");
          }
          
+         Thread.sleep(2000);
+         
          //Step 17. Check the result, it should receive none!
          checkNoMessageReceived();
 
@@ -162,6 +165,8 @@
          //Step 20. Now commit, should be ok.
          fakeTransaction.commit();
          
+         Thread.sleep(2000);
+         
          //Step 21. Check the result, all message received
          checkAllMessageReceived();
          
@@ -169,7 +174,7 @@
 
          initialContext.close();
          
-         return true;
+         return result;
       }
       finally
       {
@@ -189,7 +194,7 @@
    {
       if (receiveHolder.size() != 2)
       {
-         System.out.println("Message received not correct!");
+         System.out.println("Number of messages received not correct ! -- " + receiveHolder.size());
       }
       receiveHolder.clear();
    }
@@ -212,11 +217,12 @@
       
       public void sentMessage(String msg)
       {
-         helloWorld = helloWorld + " " + msg;
+         helloWorld = helloWorld + msg;
       }
 
       public void commit(Xid arg0, boolean arg1) throws XAException
       {
+         helloWorld = "";
       }
 
       public void end(Xid arg0, int arg1) throws XAException
@@ -232,14 +238,14 @@
          return 0;
       }
 
-      public boolean isSameRM(XAResource arg0) throws XAException
+      public boolean isSameRM(XAResource res) throws XAException
       {
-         return false;
+         return res instanceof SimpleXAResource;
       }
 
       public int prepare(Xid arg0) throws XAException
       {
-         if (helloWorld.equals("hello world"))
+         if (helloWorld.equals("helloworld"))
          {
             return XA_RDONLY;
          }
@@ -253,6 +259,7 @@
 
       public void rollback(Xid arg0) throws XAException
       {
+         helloWorld = "";
       }
 
       public boolean setTransactionTimeout(int arg0) throws XAException
@@ -286,10 +293,13 @@
             Xid xid = xids.get(i);
             try
             {
-               int n = res.prepare(xid);
+               System.out.println("----Preparing res: " + res);
+               res.prepare(xid);
             }
             catch (XAException e)
             {
+               System.out.println("-----Preparing error "  + res);
+               e.printStackTrace();
                ifCommit = false;
             }
          }
@@ -314,6 +324,7 @@
             }
             catch (XAException e)
             {
+               e.printStackTrace();
                throw new HeuristicRollbackException();
             }
          }
@@ -325,7 +336,9 @@
          {
             XAResource res = txResources.get(i);
             Xid xid = xids.get(i);
+            System.err.println("---------committing res: " + res);
             res.commit(xid, false);
+            System.err.println("---------committed res: " + res);
          }
          
       }
@@ -336,27 +349,31 @@
          {
             XAResource res = txResources.get(i);
             Xid xid = xids.get(i);
+            System.out.println("rolling back------------- " + res);
             res.rollback(xid);
+            System.out.println("rolled back------------- " + res);
          }
       }
 
       public boolean delistResource(XAResource res, int arg1) throws IllegalStateException, SystemException
       {
+         System.out.println("----------delisting: " + res);
          boolean result = false;
          for (int i = 0; i < txResources.size(); i++)
          {
             try
             {
                if (txResources.get(i).isSameRM(res)) {
-                  XAResource deRes = txResources.remove(i);
+                  XAResource deRes = txResources.get(i);
                   deRes.end(xids.get(i), XAResource.TMSUCCESS);
-                  xids.remove(i);
+                  System.out.println("------delisted: " + deRes);
                   result = true;
                   break;
                }
             }
             catch (XAException e)
             {
+               e.printStackTrace();
             }
          }
          return result;
@@ -364,6 +381,7 @@
 
       public boolean enlistResource(XAResource res) throws RollbackException, IllegalStateException, SystemException
       {
+         System.out.println("--Enlisting: " + res);
          txResources.add(res);
          Xid xid = new XidImpl("xa1".getBytes(), 1, UUIDGenerator.getInstance().generateStringUUID().getBytes()); 
          xids.add(xid);
@@ -373,8 +391,9 @@
          }
          catch (XAException e)
          {
-            //ignore
+            e.printStackTrace();
          }
+         System.out.println("--Enlisted: " + res);
          return true;
       }
 
@@ -409,14 +428,18 @@
    
    public class SimpleMessageListener implements MessageListener
    {
-
-      /* (non-Javadoc)
-       * @see javax.jms.MessageListener#onMessage(javax.jms.Message)
-       */
-      public void onMessage(Message arg0)
+      public void onMessage(Message message)
       {
-         // TODO Auto-generated method stub
-         
+         try
+         {
+            System.out.println("-----Message received: " + message);
+            receiveHolder.add(((TextMessage)message).getText());
+         }
+         catch (JMSException e)
+         {
+            result = false;
+            e.printStackTrace();
+         }
       }
       
    }




More information about the jboss-cvs-commits mailing list