dev@glassfish.java.net

Re: [GFv3] How do I get installDir location?

From: Sahoo <Sahoo_at_Sun.COM>
Date: Thu, 14 Aug 2008 06:59:34 +0530

Tim Quinn wrote:
> Byron Nevins wrote:
>> The Implementation of ServerEnvironment is problematic because there
>> is plenty of functionality that is available in the impl. class but
>> not in the interface. Therefore the impl class is used everywhere
>> instead of the interface.
>>
>> Here's how you get at any such well-known properties:
>>
>> ServerEnvironmentImpl.getProps().get(SystemPropertyConstants.INSTALL_ROOT_PROPERTY);
>>
>>
>> You could also just do System.getProperty(...) -- it is guaranteed to
>> be there and correct -- if you used Launcher to startup the server.
>> It is frowned upon though...
> Of course, the module name in which we find ServerEnvironment is
> telling: Public API of GlassFish v3.
> If we truly intend this to be an interface which developers of new
> containers can use, then if there is something they legitimately need
> that is not present in the interface (or some other public interface)
> then we should be adding it to the interface rather than "cheating"
> and using the implementation directly or, worse, getting the property
> directly... How well is that going to work in the embedded case??
>

+1 to everything you said above.
> Sahoo, just to satisfy my curiosity, did you want this location for
> some particular purpose or did you just notice it was not exposed
> through the interface and were curious why?
>
I need it so that I can add install_dir/lib to classpath of common class
loader.

Thanks,
Sahoo
>