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