You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@geronimo.apache.org by ericp56 <er...@twcable.com> on 2009/02/10 22:37:00 UTC
Changing the jta-data-source in openejb-jar.xml
In persistence.xml I my data sources are named IVRFramework.
I want to change my openejb-jar.xml deployment plan so I can change the data
source at will.
In my persistence.xml, the data sources are IVRFrameworkXA and IVRFramework.
The DB Pools are OracleXA and Oracle. What's wrong with the deployement
plan?
Thanks for your help.
<?xml version="1.0" encoding="UTF-8"?>
<ejb:openejb-jar
xmlns:app="http://geronimo.apache.org/xml/ns/j2ee/application-2.0"
xmlns:client="http://geronimo.apache.org/xml/ns/j2ee/application-client-2.0"
xmlns:conn="http://geronimo.apache.org/xml/ns/j2ee/connector-1.2"
xmlns:dep="http://geronimo.apache.org/xml/ns/deployment-1.2"
xmlns:ejb="http://openejb.apache.org/xml/ns/openejb-jar-2.2"
xmlns:name="http://geronimo.apache.org/xml/ns/naming-1.2"
xmlns:pers="http://java.sun.com/xml/ns/persistence"
xmlns:pkgen="http://openejb.apache.org/xml/ns/pkgen-2.1"
xmlns:sec="http://geronimo.apache.org/xml/ns/security-2.0"
xmlns:web="http://geronimo.apache.org/xml/ns/j2ee/web-2.0.1">
<dep:environment>
<dep:moduleId>
<dep:groupId>abc</dep:groupId>
<dep:artifactId>IVRFrameworkEjb</dep:artifactId>
<dep:version>1.0</dep:version>
<dep:type>car</dep:type>
</dep:moduleId>
<dep:dependencies>
<dep:dependency>
<dep:groupId>org.apache.geronimo.configs</dep:groupId>
<dep:artifactId>sharedlib</dep:artifactId>
<dep:type>car</dep:type>
</dep:dependency>
<dep:dependency>
<dep:groupId>console.dbpool</dep:groupId>
<dep:artifactId>Oracle</dep:artifactId>
</dep:dependency>
<dep:dependency>
<dep:groupId>console.dbpool</dep:groupId>
<dep:artifactId>OracleXA</dep:artifactId>
</dep:dependency>
</dep:dependencies>
</dep:environment>
<ejb:enterprise-beans>
<ejb:entity>
<ejb:ejb-ref>
<name:ref-name>IVRFrameworkXA</name:ref-name>
<name:ejb-link>OracleXA</name:ejb-link>
</ejb:ejb-ref>
<ejb:ejb-ref>
<name:ref-name>IVRFramework</name:ref-name>
<name:ejb-link>Oracle</name:ejb-link>
</ejb:ejb-ref>
</ejb:entity>
</ejb:enterprise-beans>
</ejb:openejb-jar>
--
View this message in context: http://www.nabble.com/Changing-the-jta-data-source-in-openejb-jar.xml-tp21943167s134p21943167.html
Sent from the Apache Geronimo - Users mailing list archive at Nabble.com.
Re: Changing the jta-data-source in openejb-jar.xml
Posted by David Jencks <da...@yahoo.com>.
On Feb 10, 2009, at 1:37 PM, ericp56 wrote:
>
> In persistence.xml I my data sources are named IVRFramework.
>
> I want to change my openejb-jar.xml deployment plan so I can change
> the data
> source at will.
That won't work... here's what you should do.
First, you'll probably find it more convenient to put both the jta and
non-jta datasources in one plan. Lets say the id is then
com.twcable.db/oracle/1.0/car. You'll have a dependency on that in
your openejb-jar.xml plan similar to the existing dependencies. This
is the "primary" datasource plugin.
Now write another plan for another set of jta and nonjta datasources,
say with id com.twcable.db/firebird/1.0/car. Make sure the datasource
names are exactly the same as in the primary plan. All the config
properties, pooling, etc, can be different but the names have to be
the same.
Deploy the second plan.
To get your app to use the 2nd plugin instead of the primary plugin,
you need a couple lines in the var/config/artifact-aliases.properties
file.
com.twcable.db/oracle/1.0/car=com.twcable.db/firebird/1.0/car
com.twcable.db/oracle//car=com.twcable.db/firebird/1.0/car
You probably only need the second line.
>
>
> In my persistence.xml, the data sources are IVRFrameworkXA and
> IVRFramework.
> The DB Pools are OracleXA and Oracle. What's wrong with the
> deployement
> plan?
Do you get errors? Does something not work? The only bit I see that
looks like it might be a problem is that the db pool dependencies need
the type, hopefully also "car".
hope this helps
david jencks
>
>
> Thanks for your help.
>
>
> <?xml version="1.0" encoding="UTF-8"?>
> <ejb:openejb-jar
> xmlns:app="http://geronimo.apache.org/xml/ns/j2ee/application-2.0"
>
> xmlns:client="http://geronimo.apache.org/xml/ns/j2ee/application-client-2.0
> "
> xmlns:conn="http://geronimo.apache.org/xml/ns/j2ee/connector-1.2"
> xmlns:dep="http://geronimo.apache.org/xml/ns/deployment-1.2"
> xmlns:ejb="http://openejb.apache.org/xml/ns/openejb-jar-2.2"
> xmlns:name="http://geronimo.apache.org/xml/ns/naming-1.2"
> xmlns:pers="http://java.sun.com/xml/ns/persistence"
> xmlns:pkgen="http://openejb.apache.org/xml/ns/pkgen-2.1"
> xmlns:sec="http://geronimo.apache.org/xml/ns/security-2.0"
> xmlns:web="http://geronimo.apache.org/xml/ns/j2ee/web-2.0.1">
> <dep:environment>
> <dep:moduleId>
> <dep:groupId>abc</dep:groupId>
> <dep:artifactId>IVRFrameworkEjb</dep:artifactId>
> <dep:version>1.0</dep:version>
> <dep:type>car</dep:type>
> </dep:moduleId>
> <dep:dependencies>
> <dep:dependency>
> <dep:groupId>org.apache.geronimo.configs</dep:groupId>
> <dep:artifactId>sharedlib</dep:artifactId>
> <dep:type>car</dep:type>
> </dep:dependency>
> <dep:dependency>
> <dep:groupId>console.dbpool</dep:groupId>
> <dep:artifactId>Oracle</dep:artifactId>
> </dep:dependency>
> <dep:dependency>
> <dep:groupId>console.dbpool</dep:groupId>
> <dep:artifactId>OracleXA</dep:artifactId>
> </dep:dependency>
> </dep:dependencies>
> </dep:environment>
> <ejb:enterprise-beans>
> <ejb:entity>
> <ejb:ejb-ref>
> <name:ref-name>IVRFrameworkXA</name:ref-name>
> <name:ejb-link>OracleXA</name:ejb-link>
> </ejb:ejb-ref>
> <ejb:ejb-ref>
> <name:ref-name>IVRFramework</name:ref-name>
> <name:ejb-link>Oracle</name:ejb-link>
> </ejb:ejb-ref>
> </ejb:entity>
> </ejb:enterprise-beans>
> </ejb:openejb-jar>
>
> --
> View this message in context: http://www.nabble.com/Changing-the-jta-data-source-in-openejb-jar.xml-tp21943167s134p21943167.html
> Sent from the Apache Geronimo - Users mailing list archive at
> Nabble.com.
>