[jboss-user] [JBoss Messaging] - Re: Could not find new XAResource to use for recovering non-

chtimi2 do-not-reply at jboss.com
Thu Apr 2 04:18:32 EDT 2009


I already have these parameters, here is my jbossjta-properties.xml:
<?xml version="1.0" encoding="UTF-8"?>
  | <transaction-service>
  |     <properties depends="common" name="arjuna">
  |         <!--
  |         Transaction Reaper Timeout (default is 120000 ms).
  |       -->
  |         <property
  |             name="com.arjuna.ats.arjuna.coordinator.txReaperTimeout" value="120000"/>
  |         <!--
  |         Transaction Reaper Mode, can be: NORMAL or DYNAMIC (default is NORMAL).
  |       -->
  |         <property name="com.arjuna.ats.arjuna.coordinator.txReaperMode" value="DYNAMIC"/>
  |         <!--
  |         (default is NO)
  |       -->
  |         <property name="com.arjuna.ats.arjuna.coordinator.asyncCommit" value="NO"/>
  |         <!--
  |         (default is NO)
  |       -->
  |         <property name="com.arjuna.ats.arjuna.coordinator.asyncPrepare" value="NO"/>
  |         <!--
  |         (default is YES)
  |       -->
  |         <property
  |             name="com.arjuna.ats.arjuna.coordinator.commitOnePhase" value="YES"/>
  |         <!--
  |         (default is defaultStore)
  |       -->
  |         <property name="com.arjuna.ats.arjuna.objectstore.localOSRoot" value="defaultStore"/>
  |         <!--
  |         default is under user.home - must be writeable!)
  |       -->
  |         <property
  |             name="com.arjuna.ats.arjuna.objectstore.objectStoreDir" value="PutObjectStoreDirHere"/>
  |         <!--
  |         (default is ON)
  |       -->
  |         <property
  |             name="com.arjuna.ats.arjuna.objectstore.objectStoreSync" value="ON"/>
  |         <!--
  |         (default is ShadowNoFileLockStore)
  |       -->
  |         <property
  |             name="com.arjuna.ats.arjuna.objectstore.objectStoreType" value="ShadowNoFileLockStore"/>
  |         <!--
  |         (default is 255)
  |       -->
  |         <property
  |             name="com.arjuna.ats.arjuna.objectstore.hashedDirectories" value="255"/>
  |         <!--
  |         (default is ON)
  |       -->
  |         <property
  |             name="com.arjuna.ats.arjuna.objectstore.transactionSync" value="ON"/>
  |         <!--
  |         (Must be unique across all Arjuna instances.)
  |       -->
  |         <property name="com.arjuna.ats.arjuna.xa.nodeIdentifier" value="1"/>
  |         <!-- property
  |         name="com.arjuna.ats.arjuna.coordinator.actionStore"
  | 		value="HashedActionStore"
  | 		value="JDBCActionStore"
  |       -->
  |         <!-- property
  |         name="com.arjuna.ats.arjuna.objectstore.jdbcTxDbAccess"
  | 		value="JDBCAccess"
  |       -->
  |         <!-- property
  |         name="com.arjuna.ats.arjuna.objectstore.objectStoreType"
  | 		value="ShadowNoFileLockStore"
  | 		value="JDBCStore"
  |       -->
  |         <!-- property
  |         name="com.arjuna.ats.arjuna.objectstore.jdbcUserDbAccess"
  | 		value="JDBCAccess"
  |       -->
  |         <!-- property
  |         name="com.arjuna.ats.arjuna.objectstore.jdbcPoolSizeInitial"
  | 		value="1"
  |       -->
  |         <!-- property
  |         name="com.arjuna.ats.arjuna.objectstore.jdbcPoolSizeMaximum"
  | 		value="1"
  |       -->
  |         <!-- property
  |         name="com.arjuna.ats.arjuna.objectstore.jdbcPoolPutConnections"
  | 		value="false"
  |       -->
  |         <!-- property
  |         name="com.arjuna.ats.arjuna.internal.arjuna.objectstore.cacheStore.size"
  | 		value=""
  |       -->
  |         <!-- property
  |         name="com.arjuna.ats.arjuna.internal.arjuna.objectstore.cacheStore.period"
  | 		value=""
  |       -->
  |         <!--
  |         The location for creating temporary files, e.g., Uids.
  |         Default is under user.home.
  |         IMPORTANT: make sure the directory is lockable, e.g., /tmp on Unix
  |         may not be!
  |       -->
  |         <!--
  |         <property
  |           name="com.arjuna.ats.arjuna.common.varDir"
  |           value="var"/>
  |       -->
  |     </properties>
  |     <properties name="common">
  |         <!-- CLF 2.0 properties -->
  |         <property name="com.arjuna.common.util.logging.DebugLevel"
  |             type="System" value="0x00000000"/>
  |         <property name="com.arjuna.common.util.logging.FacilityLevel"
  |             type="System" value="0xffffffff"/>
  |         <property name="com.arjuna.common.util.logging.VisibilityLevel"
  |             type="System" value="0xffffffff"/>
  |         <property name="com.arjuna.common.util.logger" type="System" value="log4j"/>
  |     </properties>
  |     <properties depends="arjuna" name="txoj">
  |         <!--
  |         (default is LockStore of installation - must be writeable!)
  |       -->
  |         <!--
  |         <property
  |           name="com.arjuna.ats.txoj.lockstore.lockStoreDir"
  |           value="LockStore"/>
  |       -->
  |         <!--
  |         (default is BasicLockStore)
  |       -->
  |         <property name="com.arjuna.ats.txoj.lockstore.lockStoreType" value="BasicLockStore"/>
  |         <!--
  |         (default is NO)
  |       -->
  |         <property name="com.arjuna.ats.txoj.lockstore.multipleLockStore" value="NO"/>
  |         <!--
  |         (default is YES)
  |       -->
  |         <property name="com.arjuna.ats.txoj.lockstore.singleLockStore" value="YES"/>
  |         <!--
  |         (default is YES)
  |       -->
  |         <property
  |             name="com.arjuna.ats.txoj.lockstore.allowNestedLocking" value="YES"/>
  |     </properties>
  |     <properties depends="arjuna" name="jta">
  |         <!--
  |         Support subtransactions in the JTA layer?
  |         Default is NO.
  |       -->
  |         <property name="com.arjuna.ats.jta.supportSubtransactions" value="NO"/>
  |         <property name="com.arjuna.ats.jta.jtaTMImplementation" value="com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionManagerImple"/>
  |         <!--
  | 			com.arjuna.ats.internal.jta.transaction.jts.TransactionManagerImple
  | 			-->
  |         <property name="com.arjuna.ats.jta.jtaUTImplementation" value="com.arjuna.ats.internal.jta.transaction.arjunacore.UserTransactionImple"/>
  |         <!--
  | 			com.arjuna.ats.internal.jta.transaction.jts.UserTransactionImple
  | 			-->
  | 	<property name="com.arjuna.ats.jta.recovery.XAResourceRecovery.JBMESSAGING1"
  | 		  value="org.jboss.jms.server.recovery.MessagingXAResourceRecovery;java:/DefaultJMSProvider"/>
  |     </properties>
  |     <properties depends="arjuna,txoj,jta" name="recoverymanager">
  |         <!--
  |         Properties used only by the RecoveryManager.
  |       -->
  |         <!--
  |         Periodic recovery settings.
  |         Time values in this section are in seconds.
  |       -->
  |         <!--
  |         Interval in seconds between initiating the periodic recovery modules.
  |         Default is 120 seconds.
  |       -->
  |         <property
  |             name="com.arjuna.ats.arjuna.recovery.periodicRecoveryPeriod" value="120"/>
  |         <!--
  |         Interval in seconds between first and second pass of periodic recovery.
  |         Default is 10 seconds.
  |       -->
  |         <property
  |             name="com.arjuna.ats.arjuna.recovery.recoveryBackoffPeriod" value="10"/>
  |         <!--
  |         Periodic recovery modules to use.  Invoked in sort-order of names.
  |       -->
  |         <property
  |             name="com.arjuna.ats.arjuna.recovery.recoveryExtension1" value="com.arjuna.ats.internal.arjuna.recovery.AtomicActionRecoveryModule"/>
  |         <property
  |             name="com.arjuna.ats.arjuna.recovery.recoveryExtension2" value="com.arjuna.ats.internal.txoj.recovery.TORecoveryModule"/>
  |         <property
  |             name="com.arjuna.ats.arjuna.recovery.recoveryExtension3" value="com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule"/>
  |         <!--
  |         Expired entry removal
  |       -->
  |         <!--
  |         Expiry scanners to use (order of invocation is random).
  |         Names must begin with "com.arjuna.ats.arjuna.recovery.expiryScanner"
  |       -->
  |         <property
  |             name="com.arjuna.ats.arjuna.recovery.expiryScannerTransactionStatusManager" value="com.arjuna.ats.internal.arjuna.recovery.ExpiredTransactionStatusManagerScanner"/>
  |         <!--
  |         Interval, in hours, between running the expiry scanners.
  |         This can be quite long. The absolute value determines the interval -
  |         if the value is negative, the scan will NOT be run until after one
  |         interval has elapsed. If positive the first scan will be immediately
  |         after startup. Zero will prevent any scanning.
  |         Default  = 12 = run immediately, then every 12 hours.
  |       -->
  |         <property
  |             name="com.arjuna.ats.arjuna.recovery.expiryScanInterval" value="12"/>
  |         <!--
  |         Age, in hours, for removal of transaction status manager item.
  |         This should be longer than any ts-using process will remain running.
  |         Zero = Never removed.  Default is 12.
  |       -->
  |         <property
  |             name="com.arjuna.ats.arjuna.recovery.transactionStatusManagerExpiryTime" value="12"/>
  |         <!--
  |         Use this to fix the port on which the TransactionStatusManager listens,
  |         The default behaviour is to use any free port.
  |       -->
  |         <property
  |             name="com.arjuna.ats.arjuna.recovery.transactionStatusManagerPort" value="0"/>
  |     </properties>
  |     <properties depends="jta" name="jdbc">
  |         <!--
  |            property name="com.arjuna.ats.jdbc.isolationLevel" value="TRANSACTION_SERIALIZABLE"/>
  |         -->
  |     </properties>
  | </transaction-service>

And my hajndi-jms-ds.xml does define DefaultJMSProvider:
<?xml version="1.0" encoding="UTF-8"?>
  | 
  | <connection-factories>
  |  
  |   <!-- ==================================================================== -->
  |   <!-- JMS Stuff                                                            -->
  |   <!-- ==================================================================== -->
  | 
  |   <!-- The JMS provider loader -->
  |   <mbean code="org.jboss.jms.jndi.JMSProviderLoader"
  | 	 name="jboss.messaging:service=JMSProviderLoader,name=HAJNDIJMSProvider">
  |     <attribute name="ProviderName">DefaultJMSProvider</attribute>
  |     <attribute name="ProviderAdapterClass">
  |       org.jboss.jms.jndi.JNDIProviderAdapter
  |     </attribute>
  |     <!-- The combined connection factory -->
  |     <attribute name="FactoryRef">XAConnectionFactory</attribute>
  |     <!-- The queue connection factory -->
  |     <attribute name="QueueFactoryRef">XAConnectionFactory</attribute>
  |     <!-- The topic factory -->
  |     <attribute name="TopicFactoryRef">XAConnectionFactory</attribute>
  |     <!-- Access JMS via HAJNDI -->
  |     <attribute name="Properties">
  |        java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
  |        java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces
  |        java.naming.provider.url=${jboss.bind.address:127.0.0.1}:1100
  |        jnp.disableDiscovery=false
  |        jnp.partitionName=${jboss.partition.name:DefaultPartition}
  |        jnp.discoveryGroup=${jboss.partition.udpGroup:230.0.0.4}
  |        jnp.discoveryPort=1102
  |        jnp.discoveryTTL=16
  |        jnp.discoveryTimeout=5000
  |        jnp.maxRetries=1
  |     </attribute>
  |   </mbean>
  | 
  |   <!-- The server session pool for Message Driven Beans -->
  |   <mbean code="org.jboss.jms.asf.ServerSessionPoolLoader"
  | 	 name="jboss.messaging:service=ServerSessionPoolMBean,name=StdJMSPool">
  |     <depends optional-attribute-name="XidFactory">jboss:service=XidFactory</depends>
  |     <attribute name="PoolName">StdJMSPool</attribute>
  |     <attribute name="PoolFactoryClass">
  |       org.jboss.jms.asf.StdServerSessionPoolFactory
  |     </attribute>
  |   </mbean>
  | 
  |   <!-- JMS XA Resource adapter, use this to get transacted JMS in beans -->
  |   <tx-connection-factory>
  |     <jndi-name>JmsXA</jndi-name>
  |     <xa-transaction/>
  |     <rar-name>jms-ra.rar</rar-name>
  |     <connection-definition>org.jboss.resource.adapter.jms.JmsConnectionFactory</connection-definition>
  |     <config-property name="SessionDefaultType" type="java.lang.String">javax.jms.Topic</config-property>
  |     <config-property name="JmsProviderAdapterJNDI" type="java.lang.String">java:/DefaultJMSProvider</config-property>
  |     <max-pool-size>20</max-pool-size>
  |     <security-domain-and-application>JmsXARealm</security-domain-and-application>
  | <!--    <use-java-context>false</use-java-context>-->
  |   </tx-connection-factory>
  | 
  | </connection-factories>

View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4222890#4222890

Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4222890



More information about the jboss-user mailing list