dev@glassfish.java.net

Re: How to tell if running in GF server JVM?

From: Jerome Dochez <jerome.dochez_at_oracle.com>
Date: Tue, 06 Jul 2010 02:38:09 -0700

you still should use ProcessEnvironment, in a normal Java SE client, it
will be set to Other which is standalone Java SE.

jerome

On 6/30/10 8:48 PM, Cheng Fang wrote:
> Tim,
>
> In my case, this util class (EJBUtils) runs in a Java SE application,
> which connects to GF server and invokes remote ejb. EJBUtils also
> runs inside GF server, which is more manageable and not a concern.
>
> The client can vary greatly in their configuration, classpath and
> classloader, and this also affects the behavior of EJBUtils. So I was
> wondering how can we conditionize it.
>
> Thanks,
> -cheng
>
> On 6/30/10 10:50 PM, Tim Quinn wrote:
>> Cheng,
>>
>> In the client case are you talking about the utility being part of
>> the Java EE app client container environment or in a Java SE client?
>>
>> If this code is running as part of GlassFish then the best way - and
>> maybe you want to avoid this based on your "not a component or
>> service" comment - is to use the ProcessEnvironment service which
>> lets you find out if your environment is server, ACC, embedded ,or
>> other.. But of course to use an injected service like that you don't
>> just refer to it or instantiate it. It needs to be set up by hk2 as
>> part of the general container set-up.
>>
>> Can you explain a little more about this utility class? Maybe that
>> will help us see some other possibilities.
>>
>> - Tim
>>
>> On Jun 30, 2010, at 9:10 PM, Cheng Fang wrote:
>>
>>> Thanks, Byron. Are the same set of sysprops also available in
>>> GlassFish embedded? For my purpose, I also consider GF embedded as
>>> a server environment.
>>>
>>> -cheng
>>>
>>> On 6/30/10 1:57 PM, Byron Nevins wrote:
>>>> one simple inelegant possibility --
>>>> Take a look at the output of "asadmin generate-jvm-report" and pick
>>>> a system property or three that the server always sets and that
>>>> clients wouldn't set.
>>>>
>>>> On 6/30/2010 10:47 AM, Cheng Fang wrote:
>>>>>
>>>>> I have a GlassFish utility class (not a component or service) that
>>>>> may need to do things a little differently depends on its
>>>>> execution environment.
>>>>>
>>>>> Is there a way to tell whether a class is currently running inside
>>>>> GF server JVM, or in the client-side as a referenced library?
>>>>>
>>>>> Thanks,
>>>>> -cheng
>>>>>
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>>>>> <mailto:dev-unsubscribe_at_glassfish.dev.java.net>
>>>>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>>>> <mailto:dev-help_at_glassfish.dev.java.net>
>>>>>
>>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>>> <mailto:dev-unsubscribe_at_glassfish.dev.java.net>
>>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>> <mailto:dev-help_at_glassfish.dev.java.net>
>>>
>>
>>
>>
>> Oracle <http://www.oracle.com>
>> Tim Quinn | Principal Member of Technical Staff | +1.847.604.9475
>> Oracle GlassFish Engineering
>> Lake Forest, IL
>>