geronimo-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From David Jencks <david_jen...@yahoo.com>
Subject Re: How to change the ActiveMQ DataSource?
Date Tue, 20 Nov 2007 17:14:06 GMT
I suspect a bug in the local attribute manager reference override.   
Note that the 3 (or more?) gbeans it found all have different  
j2eeType which makes me think there's something missing from the  
reference pattern setup in LAM.  Fixing the bug would be great :-),  
opening a jira next best, and meanwhile deploying your own broker  
plan should work.

If you want to shift the entire server to using mysql you can put a  
couple lines in artifact_aliases.properties to switch system-database  
to your database.  As long as your datasources are named the same as  
in system-database everything should work.

thanks
david jencks

On Nov 20, 2007, at 4:01 AM, Kristian Köhler wrote:

> Hi
>
> I'm trying to reconfigure the DataSource used by the ActiveMQ  
> broker service (from derby to mysql). For that I created a  
> DataSource config (CAR) with a simple plan pointing to my MySQL  
> Database. The configuration for the database works fine. I can  
> access the Connection Pool and execute SQL statements... ;-)
>
> Here is my db plan file:
>
> --- 8< --- plan.xml --- (start)
> <connector xmlns="http://geronimo.apache.org/xml/ns/j2ee/connector-$ 
> {geronimoSchemaVersion}">
>     <resourceadapter>
>         <outbound-resourceadapter>
>             <connection-definition>
>                 <connectionfactory-interface>javax.sql.DataSource</ 
> connectionfactory-interface>
>                 <connectiondefinition-instance>
>                     <name>MyDatasource</name>
>                     <config-property-setting  
> name="Driver">com.mysql.jdbc.Driver</config-property-setting>
>                     <config-property-setting  
> name="ConnectionURL">jdbc:mysql://localhost:3306/ode</config- 
> property-setting>
>                     <config-property-setting name="UserName">root</ 
> config-property-setting>
> 			  <connectionmanager>
> 				<local-transaction/>
>                         <single-pool>
>                             <max-size>100</max-size>
>                             <blocking-timeout-milliseconds>5000</ 
> blocking-timeout-milliseconds>
>                             <select-one-assume-match/>
>                         </single-pool>
>                     </connectionmanager>
>                 </connectiondefinition-instance>
>             </connection-definition>
>         </outbound-resourceadapter>
>     </resourceadapter>
> </connector>
> --- 8< --- plan.xml --- (end)
>
> I have also added a dependency to my database CAR from the ActiveMQ  
> config and "recompiled" the configuration.
>
> But when I specify the "database reference" within the  
> ActiveMQBrokerGBean (config.xml) I'm getting the following  
> exception: "More than one match to referencePatterns in parent  
> configurations"
>
> --- 8< --- config.xml --- (start)
>
>     <gbean name="ActiveMQ">
>         <attribute name="useShutdownHook">false</attribute>
>         <attribute name="dataDirectory">var/activemq</attribute>
>         <reference name="dataSource">
> 				<pattern>
> 					<name>MyDatasource</name>
> 				</pattern>
>         </reference>
> 	...
>
> --- 8< --- config.xml --- (end)
>
> --- 8< --- full exception --- (start)
>
> Caused by: org.apache.geronimo.kernel.GBeanNotFoundException: More  
> than one match to referencePatterns in parent configurations:  
> [net.sourceforge.gaswerk.assemblies/gaswerk-my-database/0.9.2- 
> SNAPSHOT/car? 
> J2EEApplication=null,JCAResource=net.sourceforge.gaswerk.assemblies/ 
> gaswerk-my-database/0.9.2-SNAPSHOT/ 
> car,ResourceAdapter=net.sourceforge.gaswerk.assemblies/gaswerk-my- 
> database/0.9.2-SNAPSHOT/ 
> car,ResourceAdapterModule=net.sourceforge.gaswerk.assemblies/ 
> gaswerk-my-database/0.9.2-SNAPSHOT/ 
> car,j2eeType=JCAConnectionFactory,name=MyDatasource,  
> net.sourceforge.gaswerk.assemblies/gaswerk-my-database/0.9.2- 
> SNAPSHOT/car? 
> J2EEApplication=null,JCAConnectionFactory=MyDatasource,JCAResource=net 
> .sourceforge.gaswerk.assemblies/gaswerk-my-database/0.9.2-SNAPSHOT/ 
> car,ResourceAdapter=net.sourceforge.gaswerk.assemblies/gaswerk-my- 
> database/0.9.2-SNAPSHOT/ 
> car,ResourceAdapterModule=net.sourceforge.gaswerk.assemblies/ 
> gaswerk-my-database/0.9.2-SNAPSHOT/ 
> car,j2eeType=JCAManagedConnectionFactory,name=MyDatasource,  
> net.sourceforge.gaswerk.assemblies/gaswerk-my-database/0.9.2- 
> SNAPSHOT/car? 
> J2EEApplication=null,JCAConnectionFactory=MyDatasource,JCAManagedConne 
> ctionFactory=MyDatasource,JCAResource=net.sourceforge.gaswerk.assembli 
> es/gaswerk-my-database/0.9.2-SNAPSHOT/ 
> car,ResourceAdapter=net.sourceforge.gaswerk.assemblies/gaswerk-my- 
> database/0.9.2-SNAPSHOT/ 
> car,ResourceAdapterModule=net.sourceforge.gaswerk.assemblies/ 
> gaswerk-my-database/0.9.2-SNAPSHOT/ 
> car,j2eeType=JCAConnectionManager,name=MyDatasource]: [? 
> name=MyDatasource#]
>
> --- 8< --- full exception --- (start)
>
> How do I have to specify this reference? Is this possible to do it  
> that way??
> Or do I have to use an (external) activemq.xml file?
>
> Thanks
>
>
> Kristian
>
>
>
> --
> GASwerk SOA Stack
> http://gaswerk.sourceforge.net


Mime
View raw message