geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Pavlenko, Andrey A" <andrey.a.pavle...@intel.com>
Subject RE: Using non-Sun JNDI/RMI service provider
Date Mon, 13 Mar 2006 18:06:18 GMT
David,

 

Thank you for you advice. 

However I don't think the problem can be solved by adding a copy of the
NamingProperties gbean to the client-system plan because the name of the
initial context factory is hardcoded in the following source:

modules/client/src/java/org/apache/geronimo/client/StaticJndiContextPlug
in.java:56:        System.setProperty("java.naming.factory.initial",
"com.sun.jndi.rmi.registry.RegistryContextFactory");

Therefore System.setProperty(...) overrides the property specified in
the NamingProperties gbean.

 

________________________________

From: David Jencks [mailto:david_jencks@yahoo.com] 
Sent: Friday, March 10, 2006 7:24 PM
To: dev@geronimo.apache.org
Subject: Re: Using non-Sun JNDI/RMI service provider

 

 

On Mar 10, 2006, at 7:36 AM, Pavlenko, Andrey A wrote:





Hi all,

 

I want to configure Geronimo to use non-Sun JNDI/RMI service provider.

But as I can see, the name of the initial context factory is hardcoded
in the sources so it looks I can't customize it in any way.

Is there a way I can plug my provider, and if not, can we think about
how this customization can be implemented?

The following is the list of sources containing hardcoded name of the
provider:

 

modules/client/src/java/org/apache/geronimo/client/StaticJndiContextPlug
in.java:56:        System.setProperty("java.naming.factory.initial",
"com.sun.jndi.rmi.registry.RegistryContextFactory");

modules/naming/src/test/org/apache/geronimo/naming/geronimo/GeronimoRoot
ContextTest.java:33:
System.setProperty("java.naming.factory.initial",
"com.sun.jndi.rmi.registry.RegistryContextFactory");

modules/naming/src/test/org/apache/geronimo/naming/java/AbstractContextT
est.java:48:        System.setProperty("java.naming.factory.initial",
"com.sun.jndi.rmi.registry.RegistryContextFactory");

modules/naming/src/test/org/apache/geronimo/naming/java/ThreadContextTes
t.java:53:        System.setProperty("java.naming.factory.initial",
"com.sun.jndi.rmi.registry.RegistryContextFactory");

modules/system/src/test/org/apache/geronimo/system/properties/NamingProp
ertiesTest.java:11:    private static final String
NAMING_FACTORY_INITIAL =
"com.sun.jndi.rmi.registry.RegistryContextFactory";

 

 

I can never keep straight exactly what this setting does :-) Note that
all but the first are in tests.  Do you need to change those too or just
the  app client setting which is the only one used at runtime?

 

The app client (runtime) use should be easy to eliminate by adding a
copy of the NamingProperties gbean from the rmi-naming configuration
plan to the client-system plan.  You'd still have to rebuild the
configurations to get the new value since at this time we can't override
gbean attributes in the first-loaded plan.  We could look into adding
another configuration for the app client that included the
NamingProperties and SystemProperties gbeans similar to the server
rmi-naming configuration: then you could override the properties in a
client-config.xml

 

thanks

david jencks

 





 

________________________________

Thanks

Andrey Pavlenko

Intel Middleware Products Division





 


Mime
View raw message