activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From tabshift <betr...@acoreus.de>
Subject Re: Problems with Persistent Messages
Date Fri, 23 Mar 2007 11:29:48 GMT

I am sorry, I do not have any experience in integrating ActiveMQ into JBoss.



Karthik.Gopalakrishnan wrote:
> 
> I was not able to configure ActiveMQ4.2 to integrate it with JBoss . I
> followed the same set of steps to integrate ActiveMQ with JBoss and i get
> an exception "IllegalStateException : could not find Implementation for
> 2.0".I faced the same problem with ActiveMQ4.1 also .Is there something
> missing in the instructions in 
> http://devzone.logicblaze.com/site/integrating-apache-activemq-with-jboss.html.
> Or is it because i took the wrong release and worked on that(If that is
> the case can you give me the exact release/link  i should be taking to
> start all that again ).If i am doing the wrong set of steps please
> elaborate on what exactly has to be followed to achieve the goal.
> 
> 
> tabshift wrote:
>> 
>> Maybe you should check if the messages are really lost by using the
>> program "browse". You find it in the bin-directory.
>> Since 4.2-Snapshot browse is implemented in activemq-admin.
>> I suggest that your messages are still there but Hermes gives you some
>> strange information.
>> 
>> 
>> 
>> 
>> Karthik.Gopalakrishnan wrote:
>>> 
>>> Hi 
>>> 
>>>                  I am new to activemq and now i am facing a weird
>>> problem with ActiveMQ(integrated with JBoss). I have a c# client which
>>> sends persistent messages to a queue that is created using the file
>>> activemq-jms-ds.xml the contents of which  is as follows
>>> 
>>> <?xml version="1.0" encoding="UTF-8"?>
>>> 
>>> <!DOCTYPE connection-factories
>>>     PUBLIC "-//JBoss//DTD JBOSS JCA Config 1.5//EN"
>>>     "http://www.jboss.org/j2ee/dtd/jboss-ds_1_5.dtd">
>>> 
>>> <connection-factories>
>>> 
>>>    <tx-connection-factory>
>>>       <jndi-name>activemq/QueueConnectionFactory</jndi-name>
>>>       <xa-transaction/>
>>>       <track-connection-by-tx/>
>>>       <rar-name>activemq-ra.rar</rar-name>
>>>      
>>> <connection-definition>javax.jms.QueueConnectionFactory</connection-definition>
>>>      
>>> <security-domain-and-application>JmsXARealm</security-domain-and-application>
>>>    </tx-connection-factory>
>>> 
>>>    <mbean code="org.jboss.resource.deployment.AdminObject"
>>> name="activemq.queue:name=queue1">
>>>       <attribute name="JNDIName">queue/queue1</attribute>
>>>       <depends
>>> optional-attribute-name="RARName">jboss.jca:service=RARDeployment,name='activemq-ra.rar'</depends>
>>>       <attribute name="Type">javax.jms.Queue</attribute>
>>>       <attribute name="Properties">
>>>             PhysicalName=queue.queue1
>>>       </attribute>
>>>    </mbean>
>>> </connection-factories>
>>> 
>>> This file is dropped in the folder location :
>>> jboss/server/default/deploy to be picked up by jboss.
>>> 
>>> when i use hermes to check if the message is actually posted to the
>>> queue i am able to see the messages being arrived there.But when i
>>> shutdown JBoss once and start it again the messages are no more present
>>> in that queue.I understood that by default queues are persistent.Is
>>> there something else i should be doing to make the queue really
>>> persistent,  in the sense i dont want the messages to be lost when JBoss
>>> is restarted.
>>> 
>>> 
>>> 
>>> I am also including the contents of the files ra.xml and
>>> broker-config.xml incase it might be changed :
>>> 
>>> ra.xml
>>> ------------------------------
>>> 
>>> <?xml version="1.0" encoding="UTF-8"?>
>>> <!--
>>>     Copyright 2005-2006 The Apache Software Foundation
>>>    
>>>     Licensed 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.
>>> -->
>>> 
>>> <connector xmlns="http://java.sun.com/xml/ns/j2ee"
>>>     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>>>     xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
>>>     http://java.sun.com/xml/ns/j2ee/connector_1_5.xsd"
>>>     version="1.5">
>>>     <description>ActiveMQ  inbound and outbound JMS
>>> ResourceAdapter</description>
>>>     <display-name>ActiveMQ JMS Resource Adapter</display-name>
>>>     <vendor-name>activemq.org</vendor-name>
>>>     <eis-type>JMS 1.1</eis-type>
>>>     <resourceadapter-version>1.0</resourceadapter-version>
>>>     <license>
>>>         <description>
>>>         
>>>             Copyright 2005-2006 The Apache Software Foundation
>>>            
>>>             Licensed 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.
>>> 
>>>         </description>
>>>         <license-required>true</license-required>
>>>     </license>
>>>     <resourceadapter>
>>>        
>>> <resourceadapter-class>org.apache.activemq.ra.ActiveMQResourceAdapter</resourceadapter-class>
>>>         <config-property>
>>>             <description>
>>>               The URL to the ActiveMQ server that you want this
>>> connection to connect to.  If using
>>>               an embedded broker, this value should be 'vm://localhost'.
>>>             </description>
>>>             <config-property-name>ServerUrl</config-property-name>
>>>            
>>> <config-property-type>java.lang.String</config-property-type>
>>> <!--                   
>>> <config-property-value>tcp://localhost:61616</config-property-value>-->
>>> 	    <config-property-value>vm://localhost</config-property-value>

>>>         </config-property>
>>>         <config-property>
>>>             <description>The default user name that will be used to
>>> establish connections to the ActiveMQ server.</description>
>>>             <config-property-name>UserName</config-property-name>
>>>            
>>> <config-property-type>java.lang.String</config-property-type>
>>>             <config-property-value>defaultUser</config-property-value>
>>>         </config-property>
>>>         <config-property>
>>>             <description>The default password that will be used to log
>>> the default user into the ActiveMQ server.</description>
>>>             <config-property-name>Password</config-property-name>
>>>            
>>> <config-property-type>java.lang.String</config-property-type>
>>>            
>>> <config-property-value>defaultPassword</config-property-value>
>>>         </config-property>
>>>         <config-property>
>>>             <description>The client id that will be set on the
>>> connection that is established to the ActiveMQ server.</description>
>>>             <config-property-name>Clientid</config-property-name>
>>>            
>>> <config-property-type>java.lang.String</config-property-type>
>>>         </config-property>
>>>         <config-property>
>>>             <description>Boolean to configure if outbound connections
>>> should reuse the inbound connection's session for sending
>>> messages.</description>
>>>            
>>> <config-property-name>UseInboundSession</config-property-name>
>>>            
>>> <config-property-type>java.lang.Boolean</config-property-type>
>>>             <config-property-value>false</config-property-value>
>>>         </config-property>
>>> 
>>> 			  <!-- NOTE disable the following property if you do not wish to
>>> deploy an embedded broker -->
>>>         <config-property>
>>>             <description>
>>>               Sets the XML configuration file used to configure the
>>> embedded ActiveMQ broker via 
>>>               Spring if using embedded mode.
>>>               
>>>               BrokerXmlConfig is the filename which is assumed to be on
>>> the classpath unless 
>>>               a URL is specified. So a value of foo/bar.xml would be
>>> assumed to be on the 
>>>               classpath whereas file:dir/file.xml would use the file
>>> system. 
>>>               Any valid URL string is supported.              
>>>             </description>
>>>             <config-property-name>BrokerXmlConfig</config-property-name>
>>>            
>>> <config-property-type>java.lang.String</config-property-type>
>>>            
>>> <config-property-value>xbean:broker-config.xml</config-property-value>
>>>         </config-property>
>>> 
>>>         <outbound-resourceadapter>
>>>             <connection-definition>
>>>                
>>> <managedconnectionfactory-class>org.apache.activemq.ra.ActiveMQManagedConnectionFactory</managedconnectionfactory-class>
>>>                
>>> <connectionfactory-interface>javax.jms.ConnectionFactory</connectionfactory-interface>
>>>                
>>> <connectionfactory-impl-class>org.apache.activemq.ra.ActiveMQConnectionFactory</connectionfactory-impl-class>
>>>                
>>> <connection-interface>javax.jms.Connection</connection-interface>
>>>                
>>> <connection-impl-class>org.apache.activemq.ra.ManagedConnectionProxy</connection-impl-class>
>>>             </connection-definition>
>>>             <connection-definition>
>>>                
>>> <managedconnectionfactory-class>org.apache.activemq.ra.ActiveMQManagedConnectionFactory</managedconnectionfactory-class>
>>>                
>>> <connectionfactory-interface>javax.jms.QueueConnectionFactory</connectionfactory-interface>
>>>                
>>> <connectionfactory-impl-class>org.apache.activemq.ra.ActiveMQConnectionFactory</connectionfactory-impl-class>
>>>                
>>> <connection-interface>javax.jms.QueueConnection</connection-interface>
>>>                
>>> <connection-impl-class>org.apache.activemq.ra.ManagedConnectionProxy</connection-impl-class>
>>>             </connection-definition>
>>>             <connection-definition>
>>>                
>>> <managedconnectionfactory-class>org.apache.activemq.ra.ActiveMQManagedConnectionFactory</managedconnectionfactory-class>
>>>                
>>> <connectionfactory-interface>javax.jms.TopicConnectionFactory</connectionfactory-interface>
>>>                
>>> <connectionfactory-impl-class>org.apache.activemq.ra.ActiveMQConnectionFactory</connectionfactory-impl-class>
>>>                
>>> <connection-interface>javax.jms.TopicConnection</connection-interface>
>>>                
>>> <connection-impl-class>org.apache.activemq.ra.ManagedConnectionProxy</connection-impl-class>
>>>             </connection-definition>
>>>             <transaction-support>XATransaction</transaction-support>
>>>             <authentication-mechanism>
>>>                
>>> <authentication-mechanism-type>BasicPassword</authentication-mechanism-type>
>>>                
>>> <credential-interface>javax.resource.spi.security.PasswordCredential</credential-interface>
>>>             </authentication-mechanism>
>>>             <reauthentication-support>false</reauthentication-support>
>>>         </outbound-resourceadapter>
>>>         <inbound-resourceadapter>
>>>             <messageadapter>
>>>                 <messagelistener>
>>>                    
>>> <messagelistener-type>javax.jms.MessageListener</messagelistener-type>
>>>                     <activationspec>
>>>                        
>>> <activationspec-class>org.apache.activemq.ra.ActiveMQActivationSpec</activationspec-class>
>>>                         
>>>                         <required-config-property>
>>>                            
>>> <config-property-name>destination</config-property-name>
>>>                         </required-config-property>
>>>                         <required-config-property>
>>>                            
>>> <config-property-name>destinationType</config-property-name>
>>>                         </required-config-property>
>>>                         
>>>                     </activationspec>
>>>                 </messagelistener>
>>>             </messageadapter>
>>>         </inbound-resourceadapter>
>>>         <adminobject>
>>>            
>>> <adminobject-interface>javax.jms.Queue</adminobject-interface>
>>>            
>>> <adminobject-class>org.apache.activemq.command.ActiveMQQueue</adminobject-class>
>>>             <config-property>
>>>                
>>> <config-property-name>PhysicalName</config-property-name>
>>>                
>>> <config-property-type>java.lang.String</config-property-type>
>>>             </config-property>
>>>         </adminobject>
>>>         <adminobject>
>>>            
>>> <adminobject-interface>javax.jms.Topic</adminobject-interface>
>>>            
>>> <adminobject-class>org.apache.activemq.command.ActiveMQTopic</adminobject-class>
>>>             <config-property>
>>>                
>>> <config-property-name>PhysicalName</config-property-name>
>>>                
>>> <config-property-type>java.lang.String</config-property-type>
>>>             </config-property>
>>>         </adminobject>
>>>     </resourceadapter>
>>> </connector>
>>> 
>>> 
>>> broker-config.xml
>>> ------------------------------
>>> <?xml version="1.0" encoding="UTF-8"?>
>>> <!--
>>>     Copyright 2005-2006 The Apache Software Foundation
>>>    
>>>     Licensed 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.
>>> -->
>>> <!-- START SNIPPET: xbean -->
>>> <beans xmlns="http://activemq.org/config/1.0">
>>> 
>>>   <broker useJmx="true" brokerName="bruce.broker1">
>>> 
>>> 	<!-- In ActiveMQ 4, you can setup destination policies. note: this xml
>>> format may still change a bit -->
>>>     <destinationPolicy>
>>>       <policyMap><policyEntries>
>>> 
>>>           <policyEntry topic="FOO.>">
>>>             <dispatchPolicy>
>>>               <strictOrderDispatchPolicy />
>>>             </dispatchPolicy>
>>>             <subscriptionRecoveryPolicy>
>>>               <lastImageSubscriptionRecoveryPolicy />
>>>             </subscriptionRecoveryPolicy>
>>>           </policyEntry>
>>> 
>>>       </policyEntries></policyMap>
>>>     </destinationPolicy>
>>> 
>>> 
>>>     <persistenceAdapter>
>>>       <journaledJDBC journalLogFiles="5"
>>> dataDirectory="../activemq-data"/>
>>>       <!-- To use a different datasource, use th following syntax : -->
>>>       <!--
>>>       <journaledJDBC journalLogFiles="5" dataDirectory="../data"
>>> dataSource="#postgres-ds"/>
>>>        -->
>>>     </persistenceAdapter>
>>> 
>>>     <transportConnectors>
>>>       <!-- prefixing a connector with discovery: causes the connector to
>>> be advertiesed over rendezvous -->
>>>       <transportConnector name="bruce.broker1"
>>> uri="tcp://localhost:61616" discoveryUri="multicast://default"/>      
>>>     </transportConnectors>
>>> 
>>>     <networkConnectors>
>>>       <!-- by default just auto discover the other brokers -->
>>>       <networkConnector uri="multicast://default"/>
>>>       <!--
>>>       <networkConnector
>>> uri="static://(tcp://host1:61616,tcp://host2:61616)"/>
>>>       -->
>>>     </networkConnectors>
>>> 
>>>   </broker>
>>> 
>>> 
>>> </beans>
>>> 
>>> 
>>> 
>>> Thanks in advance
>>> 
>>> 
>>> 
>>> 
>>> 
>> 
>> 
> 
> 

-- 
View this message in context: http://www.nabble.com/Problems-with-Persistent-Messages-tf3445893s2354.html#a9632813
Sent from the ActiveMQ - User mailing list archive at Nabble.com.


Mime
View raw message