On Mar 17, 2006, at 4:09 PM, Oli Kessler wrote:
Hello,
I'm trying to write a GBean that depends on a JMS configuration
initialized with a resource group configuration plan as indicated
in the
book by Aaron Mulder on chariotsolutions.com.
The file contains a connection factory object named
"MyConnectionFactory" indicated in the connectiondefition-instance
and a
topic called "MyTopic" (message-destination-name). When deployed,
those
2 objects can be seen and verified in the web console.
Now, my GBean needs to publish to the topic "MyTopic" using a
connection
from the factory object. How would I get the factory object in my code
with JNDI? Opposed to a web-application or EJB, I can not count on
configured resource references in web.xml or similar, right?
I tried the simple
(..)
InitialContext context = new InitialContext();
Object obj = context.lookup("MyConnectionFactory);
(..)
but this did not work out. Is there any prefix I should use?
Jndi won't work within a gbean, you should use a gbean reference.
Here's an example from the system datasource plan, and the gbean
referenced can show you how to code it. The reference to emulate
here is ManagedConnectionFactoryWrapper
<gbean name="NonTransactionalThreadPooledTimer"
class="org.apache.geronimo.timer.jdbc.JDBCStoreThreadPooledNonTransactio
nalTimer">
<reference
name="TransactionContextManager"><moduleType>J2EEModule</
moduleType><module>geronimo/j2ee-server/${pom.currentVersion}/car</
module><name>TransactionContextManager</name></reference>
<reference
name="ManagedConnectionFactoryWrapper"><moduleType>JCAResource</
moduleType><name>SystemDatasource</name></reference>
<reference name="ThreadPool"><moduleType>J2EEModule</
moduleType><module>geronimo/j2ee-server/${pom.currentVersion}/car</
module><name>DefaultThreadPool</name></reference>
<!--TODO remove moduleType when gbeans get the moduleType of
the plan they are in -->
<reference name="DerbySystem"><moduleType>J2EEModule</
moduleType><name>DerbySystem</name></reference>
</gbean>
thanks
david jencks
Cheers,
Oli Kessler
--
ncode solutions gmbh
http://www.ncode.ch
tel +41 43 817 01 88
fax +41 43 817 02 88
Zurich / Switzerland