You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@camel.apache.org by slimrednano <st...@rednano.sg> on 2008/09/17 14:55:33 UTC

Message Persistence

Hi

I am a novice user of Active MQ and Apache Camel.

Currently I am constructing an application that using Apache Camel to Route
Message to Active MQ.
I encounter problems in persisting messages to MYSQL DB.

I am wondering why the message is not persisted into the Database. However
the Topic Subscriber name and the URI is persisted into the Table
"activemq_acks".

The table with name "activemq_msgs" is always empty, even I have sent out
several messages to the Topic in the ACTIVE MQ Server.

I use Active MQ 5.1.0

here I attached my activemq.xml configuration file

<beans
    xmlns="http://www.springframework.org/schema/beans"
    xmlns:amq="http://activemq.apache.org/schema/core"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
    http://activemq.apache.org/schema/core
http://activemq.apache.org/schema/core/activemq-core.xsd   
http://activemq.apache.org/camel/schema/spring
http://activemq.apache.org/camel/schema/spring/camel-spring.xsd">
    
    <bean
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/>
    
    <broker xmlns="http://activemq.apache.org/schema/core"
brokerName="localhost" persistent="true"
dataDirectory="${activemq.base}/data">
        
        <destinationPolicy>
            <policyMap>
                <policyEntries>
                    <policyEntry queue=">" memoryLimit="5mb"/>
                    <policyEntry topic=">" memoryLimit="5mb">
                        <dispatchPolicy>
                            <strictOrderDispatchPolicy/>
                        </dispatchPolicy>
                        <subscriptionRecoveryPolicy>
                            <lastImageSubscriptionRecoveryPolicy/>
                        </subscriptionRecoveryPolicy>
                    </policyEntry>
                </policyEntries>
            </policyMap>
        </destinationPolicy>
        
        <managementContext>
        <managementContext createConnector="false"/>
        </managementContext>
        
        <networkConnectors>
            <networkConnector name="default-nc" uri="multicast://default"/>
        </networkConnectors>
        
        <persistenceAdapter>
            <jdbcPersistenceAdapter dataSource="#mysql-ds"
useDatabaseLock="false"/>
        </persistenceAdapter>
        
        <systemUsage>
            <systemUsage>
                <memoryUsage>
                <memoryUsage limit="20 mb"/>
                </memoryUsage>
                <storeUsage>
                <storeUsage limit="1 gb" name="foo"/>
                </storeUsage>
                <tempUsage>
                <tempUsage limit="100 mb"/>
                </tempUsage>
            </systemUsage>
        </systemUsage>
        
        <transportConnectors>
            <transportConnector name="openwire" uri="tcp://localhost:61616"
discoveryUri="multicast://default"/>
            <transportConnector name="ssl" uri="ssl://localhost:61617"/>
            <transportConnector name="stomp" uri="stomp://localhost:61613"/>
            <transportConnector name="xmpp" uri="xmpp://localhost:61222"/>
        </transportConnectors>
        
    </broker>
    
    <camelContext id="camel"
xmlns="http://activemq.apache.org/camel/schema/spring">
        <package>org.foo.bar</package>
        <route>
            <from uri="activemq:example.A"/>
            <to uri="activemq:example.B"/>
        </route>
    </camelContext>
    
    <jetty xmlns="http://mortbay.com/schemas/jetty/1.0">
        <connectors>
            <nioConnector port="8161"/>
        </connectors>
        
        <handlers>
            <webAppContext contextPath="/admin"
resourceBase="${activemq.base}/webapps/admin" logUrlOnStart="true"/>
            <webAppContext contextPath="/demo"
resourceBase="${activemq.base}/webapps/demo" logUrlOnStart="true"/>
            <webAppContext contextPath="/fileserver"
resourceBase="${activemq.base}/webapps/fileserver" logUrlOnStart="true"/>
        </handlers>
    </jetty>
    
    <bean id="mysql-ds" class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
        <property name="driverClassName" value="com.mysql.jdbc.Driver"/>
        <property name="url"
value="jdbc:mysql://localhost/activemq?relaxAutoCommit=true"/>
        <property name="username" value="activemq"/>
        <property name="password" value="activemq"/>
        <property name="maxActive" value="200"/>
        <property name="poolPreparedStatements" value="true"/>
    </bean>
    
</beans>


Anybody have encountered this problem before?
Or I configured the activemq.xml wrongly?
I need some help on this issue

Thanks.



Regards,
SlimRednano

-- 
View this message in context: http://www.nabble.com/Message-Persistence-tp19531496s22882p19531496.html
Sent from the Camel - Users mailing list archive at Nabble.com.