Buddhima Wijeweera created SYNAPSE-916:
------------------------------------------

             Summary: JDBC Message Store Support For Synapse
                 Key: SYNAPSE-916
                 URL: https://issues.apache.org/jira/browse/SYNAPSE-916
             Project: Synapse
          Issue Type: New Feature
          Components: Core
    Affects Versions: FUTURE
         Environment: Synapse ESB, JDBC supporting database
            Reporter: Buddhima Wijeweera


The aim of this improvement is to enable JDBC databases to act as message 
stores for Synapse ESB. Currently Synapse comes with JMS Message Stores as the 
persistent store and have drawbacks. Since JDBC Message store uses relational 
databases to store messages, Synapse will be able to overcome those 
disadvantages and will benefited with an easy way to persist messages.
After applying patch, you need to add the respective jdbc driver to 'lib' 
folder of Synapse and add message Store as follows. (In here I'm using 
mysql-jdbc-connector)

<store messageStore="MyStore"/>

<messageStore class="org.apache.synapse.message.store.jdbc.JDBCMessageStore" 
name="MyStore">
  
        <parameter name="store.jdbc.driver">com.mysql.jdbc.Driver</parameter>
        <parameter 
name="store.jdbc.connection.url">jdbc:mysql://localhost:3306/mystore</parameter>
        <parameter name="store.jdbc.username">root</parameter>
        <parameter name="store.jdbc.password"></parameter>

        <parameter name="store.jdbc.table">store_table</parameter>
        
</messageStore>

Configuration parameter list can be used as follows if you want to add a 
datasource:

<parameter name="store.jdbc.dsName">reportDB</parameter>
<parameter 
name="store.jdbc.icClass">com.sun.jndi.rmi.registry.RegistryContextFactory</parameter>
<parameter name="store.jdbc.connection.url">rmi://localhost:2199</parameter>
<parameter name="store.jdbc.username">root</parameter>
<parameter name="store.jdbc.password"></parameter>
<parameter name="store.jdbc.table">store_table</parameter>

Testing:
I have already tested the JDBC Message Store with mysql databases using the 
configuration given.

To create table:

CREATE TABLE store_table
(
indexId bigint(20),
msg_id varchar(200),
message blob
)


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to