dev@glassfish.java.net

Re: JPA in embedded GF?

From: Jerome Dochez <Jerome.Dochez_at_Sun.COM>
Date: Thu, 06 Aug 2009 00:00:18 -0700

If you want to see the maven classpath when invoking the test, just do
mvn -X test and check the display.

I don't think this is a practical proposal to try the ejb embedded
container with 15 jars files on the command line classpath. Why don't
you use the single uber jar that Siraj is publishing for such a use-
case. That way there is only one jar to put on the classpath. Have you
tried that ?

There are very different packaging solutions for embedded :
        1. maven : we just use transitive package resolution to get the full
list
        2. uber-jar : we repackage all jars inside a big fat jar for one
simple yet not flexible solution
        3. inplanted : we use an existing glassfish installation.

I don't think we should promote the three solutions for all use-cases.
Depending on what the user wants to do, he should pick up the most
practical one. Of course all 3 solutions use the same embedded APIs.

jerome

On Aug 5, 2009, at 4:42 PM, Marina Vatkina wrote:

> Hi Jerome,
>
> Maven resolves transitive dependencies and I didn't try to check
> what does it end up with, but my latest attempt to test embedded EJB
> is with 'java -cp'. I attached here the script that so far allows to
> get a reply from helloWorld bean (with exception - see more on it
> below), but when trying to use EJB with JPA, it fails with
> java.io.FileNotFoundException: /export/v3/gfs/glassfishv3/lib/
> install/applications/__ds_jdbc_ra (see no 'glassfish' after
> 'glassfishv3').
>
> Now about exceptions: I do still see them with 'java -cp' calls, but:
> a) I either get ClassNotFoundException:
> org.glassfish.flashlight.provider.ProbeProviderFactory if flashlight-
> framework.jar is not in the classpath,
>
> or
> b) I get tons of IllegalStateException's ("Provider already mapped"
> and "is not an interface") if it is there.
>
> I also get
> c) several java.io.IOException: No such file or directory
> at java.io.UnixFileSystem.createFileExclusively(Native Method)
> at java.io.File.createNewFile(File.java:883)
> at
> com
> .sun
> .enterprise.security.common.Util.writeConfigFileToTempDir(Util.java:
> 136)
>
> But the last one doesn't seem to stop the bean access.
>
> thanks,
> -marina
>
> Jerome Dochez wrote:
>> I just added an embedded ejb test in tests/embedded/ejb directory.
>> It's using the ejb embedded APIs to test a sample ejb bundle. This
>> should give you some ideas how you can set up your environment to
>> test EJBs with EJB embedded APIs.
>> the test passes even without a single exception !
>> jerome
>> On Aug 5, 2009, at 11:51 AM, Marina Vatkina wrote:
>>> Siraj Ghaffar wrote:
>>>
>>>> Marina Vatkina wrote:
>>>>
>>>>> Hi Jerome,
>>>>>
>>>>> I tried to add a main method to my UnitTest and start it via
>>>>> java command (using GF_HOME as the pointer to the gf
>>>>> installation), but it failed with the same error as the maven
>>>>> test ("Address already in use").
>>>>>
>>>>> I put the glassfish-embedded-shell.jar from extras/embedded-
>>>>> shell and gf-client.jar into the classpath. Is the former the
>>>>> "embedded- shell.jar? -
>>>>
>>>> yes, it is.
>>>
>>>
>>> OK. I looked at its manifest and this is what it has:
>>>
>>> Class-Path: hk2-0.3.81.jar hk2-core-0.3.81.jar config-0.3.81.jar
>>> auto-
>>> depends-0.3.81.jar tiger-types-osgi-0.3.81.jar bean-validator-3.0-
>>> JBo
>>> ss-4.0.0.Beta1-b01.jar glassfish-api-3.0-SNAPSHOT.jar grizzly-
>>> utils-1
>>> .9.17-RC2.jar management-api-3.0.0-b004.jar glassfish-3.0-
>>> SNAPSHOT.jar
>>>
>>> Do you expect glassfish-embedded-shell.jar to be in the gf
>>> modules directory to be able to use those referenced jars?
>>>
>>> Is there a version of it that refers to the jars without versions
>>> in their names?
>>>
>>> thanks,
>>> -marina
>>>
>>>>> I didn't find the exact name anywhere). The latter I used
>>>>> because the list of jars that I needed to add explicitly was
>>>>> becoming too long.
>>>>>
>>>>> Regards,
>>>>> -marina
>>>>>
>>>>> Jerome Dochez wrote:
>>>>>
>>>>>> I looked at the second issue you reported and I know what's
>>>>>> going on.
>>>>>>
>>>>>> The issue is that maven is invoking the test with a bunch of
>>>>>> glassfish jars in the classpath (all test dependencies of the
>>>>>> ejb-container project). It's the normal way maven works. Now
>>>>>> when invoking inplanted mode, it does not work well because a
>>>>>> lot of jars are duplicated between 2 class loaders, one set
>>>>>> up by maven (will all the dependencies I mention above), one
>>>>>> set up by the inplanted mode. Note that in normal embedded
>>>>>> mode with maven, we only use the maven classloader, so its
>>>>>> works fine.
>>>>>>
>>>>>> This duplication of glassfish jars between these two
>>>>>> classloaders does not really create a class loading problem
>>>>>> since through delegation we happen to load most classes from
>>>>>> the maven classloader. However, in terms of habitat metadata
>>>>>> (inhabitants file) it's two different sets of resources so we
>>>>>> end up finding most resources in double and therefore we have
>>>>>> 2 grizzly services started which creates this port busy issue.
>>>>>>
>>>>>> There is not much I can do to support such a case, we can
>>>>>> support what I think you were trying to test but not using
>>>>>> any glassfish project themselves (ie not using the ejb-
>>>>>> container project). What you need to do is to set up a new
>>>>>> project (a normal ejb jar project, where you would just build
>>>>>> a ejb application and deploy it using the ejb-api that would
>>>>>> use an existing glassfish installation. The dependencies of
>>>>>> such a project should just be embedded-shell.jar and ejb-
>>>>>> api.jar, nothing else. I believe this is what our users will
>>>>>> want to do anyhow.
>>>>>>
>>>>>> you should keep the ejb-container tests to tests normal
>>>>>> embedded mode basic functionalities and probably set up new
>>>>>> projects that would be closer to what users will want to do
>>>>>> when using the embedded ejb container APIs.
>>>>>>
>>>>>> Let me know if you have more questions.
>>>>>>
>>>>>> jerome
>>>>>>
>>>>>> On Jul 27, 2009, at 5:00 PM, Marina Vatkina wrote:
>>>>>>
>>>>>>> Jerome Dochez wrote:
>>>>>>>
>>>>>>>> I have fixed both issues, I still see a flashlight related
>>>>>>>> issue that I will look at tomorrow but it seems to be
>>>>>>>> functional now.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Only the 1st one. The 2nd (opening ports and failing for an
>>>>>>> already opened port) could be caused caused by using the pre-
>>>>>>> existing domain.xml. There is no such error if I don't set
>>>>>>> the pointer(s).
>>>>>>>
>>>>>>> I've checked in my changes to the UnitTest, so that you can
>>>>>>> see exactly what I'm doing. To test existing domain.xml, set
>>>>>>> env variable S1AS_HOME to the existing GF installation (like
>>>>>>> for QL in V2).
>>>>>>>
>>>>>>> thanks,
>>>>>>> -marina
>>>>>>>
>>>>>>>> Earlier today, I also should have added support for JPA but
>>>>>>>> I don't have anything to test with. could you or mitesh
>>>>>>>> try it out and add a test.
>>>>>>>> to turn on the jpa container just do
>>>>>>>> server.addContainer(ContainerBuillder.Type.jpa);
>>>>>>>> jerome
>>>>>>>> On Jul 27, 2009, at 12:05 PM, Marina Vatkina wrote:
>>>>>>>>
>>>>>>>>> Hi Jerome,
>>>>>>>>>
>>>>>>>>> I still see both problems. Did you have a chance to look at
>>>>>>>>> them?
>>>>>>>>>
>>>>>>>>> thanks,
>>>>>>>>> -marina
>>>>>>>>>
>>>>>>>>> Marina Vatkina wrote:
>>>>>>>>>
>>>>>>>>>> Jerome Dochez wrote:
>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On Jul 22, 2009, at 6:21 PM, Marina Vatkina wrote:
>>>>>>>>>>>
>>>>>>>>>>>> Now that you added another test case, I see that I need
>>>>>>>>>>>> to call separately setInstallRoot() for GF
>>>>>>>>>>>> installation and setConfigurationFile() for
>>>>>>>>>>>> domain.xml ;)
>>>>>>>>>>>>
>>>>>>>>>>>> But(!)
>>>>>>>>>>>>
>>>>>>>>>>>> 1. The default setup (e.g. EmbeddedTest or UnitTest
>>>>>>>>>>>> without my temp changes) fail with NPE in binding and
>>>>>>>>>>>> lookup caused by:
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> Caused by: java.lang.RuntimeException: Orb
>>>>>>>>>>>> initialization erorr
>>>>>>>>>>>> at
>>>>>>>>>>>> org
>>>>>>>>>>>> .glassfish
>>>>>>>>>>>> .enterprise
>>>>>>>>>>>> .iiop
>>>>>>>>>>>> .api.GlassFishORBHelper.getORB(GlassFishORBHelper.java:
>>>>>>>>>>>> 128)
>>>>>>>>>>>> at
>>>>>>>>>>>> com
>>>>>>>>>>>> .sun
>>>>>>>>>>>> .enterprise
>>>>>>>>>>>> .naming
>>>>>>>>>>>> .impl
>>>>>>>>>>>> .SerialContext.getRemoteProvider(SerialContext.java: 294)
>>>>>>>>>>>> at
>>>>>>>>>>>> com
>>>>>>>>>>>> .sun
>>>>>>>>>>>> .enterprise
>>>>>>>>>>>> .naming
>>>>>>>>>>>> .impl.SerialContext.getProvider(SerialContext.java: 269)
>>>>>>>>>>>> ... 28 more
>>>>>>>>>>>> Caused by: java.lang.NullPointerException
>>>>>>>>>>>> at
>>>>>>>>>>>> org
>>>>>>>>>>>> .glassfish
>>>>>>>>>>>> .enterprise
>>>>>>>>>>>> .iiop
>>>>>>>>>>>> .api.GlassFishORBHelper.getORB(GlassFishORBHelper.java:98)
>>>>>>>>>>>> ... 30 more
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> I have no idea what's going on, I will need Ken Saks to
>>>>>>>>>>> look at it.
>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> 2. If I try to set install root and config file, the
>>>>>>>>>>>> ports are beeing open and the server doesn't even get
>>>>>>>>>>>> to deployment:
>>>>>>>>>>>>
>>>>>>>>>>>> INFO: GlassFish v3 startup time : Embedded(2728ms)
>>>>>>>>>>>> startup services(3792ms) total(6520ms)
>>>>>>>>>>>> Jul 22, 2009 6:08:29 PM
>>>>>>>>>>>> com.sun.enterprise.v3.server.AppServerStartup run
>>>>>>>>>>>> SEVERE: Shutting down v3 due to startup exception :
>>>>>>>>>>>> Address already in use:
>>>>>>>>>>>> 8080=com.sun.grizzly.http.SelectorThreadHandler_at_1609c13
>>>>>>>>>>>> Jul 22, 2009 6:08:29 PM
>>>>>>>>>>>> org.glassfish.admin.mbeanserver.JMXStartupService shutdown
>>>>>>>>>>>> INFO: ConnectorStartupService: shutting down AMX and JMX
>>>>>>>>>>>> Jul 22, 2009 6:08:29 PM
>>>>>>>>>>>> org.glassfish.admin.mbeanserver.JMXStartupService
>>>>>>>>>>>> $JMXConnectorsStarterThread shutdown
>>>>>>>>>>>> INFO: Stopped JMXConnectorServer: service:jmx:rmi:///
>>>>>>>>>>>> jndi/ rmi:// uphill:8686/jmxrmi
>>>>>>>>>>>> Jul 22, 2009 6:08:29 PM AppServerStartup run
>>>>>>>>>>>>
>>>>>>>>>>>> Note that there is no other gf instance running at that
>>>>>>>>>>>> time.
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> I have an idea of what might be going on here... did
>>>>>>>>>>> you instantiate any embedded Port here ?
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> I'm doing this:
>>>>>>>>>> Server.Builder builder = new
>>>>>>>>>> Server.Builder("GFEJBContainerProviderImpl");
>>>>>>>>>> ... creating Files for gf install and domain.xml...
>>>>>>>>>> EmbeddedFileSystem.Builder efsb = new
>>>>>>>>>> EmbeddedFileSystem.Builder();
>>>>>>>>>> efsb.setInstallRoot(installed_root);
>>>>>>>>>> efsb.setConfigurationFile(domain_file);
>>>>>>>>>> builder.setEmbeddedFileSystem(efsb.build());
>>>>>>>>>> server = builder.build();
>>>>>>>>>> -marina
>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> thanks,
>>>>>>>>>>>> -marina
>>>>>>>>>>>>
>>>>>>>>>>>> Jerome Dochez wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>> look in the tests/embedded/inplanted, there are
>>>>>>>>>>>>> examples of using the embedded file system.
>>>>>>>>>>>>> jerome
>>>>>>>>>>>>> On Jul 21, 2009, at 3:25 PM, Marina Vatkina wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>> What should setEmbeddedFileSystem() be set to? using
>>>>>>>>>>>>>> my GF installation (/export/v3/gfs/glassfishv3/
>>>>>>>>>>>>>> glassfish) causes
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> java.io.FileNotFoundException: /export/v3/gfs/
>>>>>>>>>>>>>> glassfishv3/ lib/ install/applications/__ds_jdbc_ra
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> (see missing "glassfish" after "glassfishv3").
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> There are also strange NameNotFoundExceptions like
>>>>>>>>>>>>>> "__SYSTEM" but this can be a side effect of the
>>>>>>>>>>>>>> original problem.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> thanks,
>>>>>>>>>>>>>> -marina
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Marina Vatkina wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Jerome Dochez wrote:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> On Jul 21, 2009, at 8:41 AM, Marina Vatkina wrote:
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Jerome Dochez wrote:
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> On Jul 20, 2009, at 10:01 AM, Marina Vatkina wrote:
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>> Jerome Dochez wrote:
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>> On Jul 17, 2009, at 7:18 PM, Marina Vatkina wrote:
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>> Is it possible to use JPA with the latest
>>>>>>>>>>>>>>>>>>>>> embedded GF?
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>> no yet, I have not tried
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>> If yes, how do I specify the details of the
>>>>>>>>>>>>>>>>>>>>> jdbc resource to be used?
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>> you would need to run asadmin commands, the
>>>>>>>>>>>>>>>>>>>> embedded way, through the
>>>>>>>>>>>>>>>>>>>> EmbeddedAdminContainer.
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>> Is it possible to point to an existing domain.xml
>>>>>>>>>>>>>>>>>>> instead?
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> yes you can do that see Server.ServerBuilder
>>>>>>>>>>>>>>>>>> setEmbeddedFileSystem()
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Will it also load all apps registered in such domain?
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> yes but that suppose you have a valid domains
>>>>>>>>>>>>>>>> directory (inplanted mode). why would you want
>>>>>>>>>>>>>>>> to do that ?
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> I won't, I'm afraid of side-effects :(.
>>>>>>>>>>>>>>> What the setEmbeddedFileSystem() should be set to and
>>>>>>>>>>>>>>> what is the expected behavior?
>>>>>>>>>>>>>>> thanks,
>>>>>>>>>>>>>>> -marina
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>> If not, are there any examples that I can look at?
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> yes look at EmbeddedTest in distribution/web.
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>> thanks,
>>>>>>>>>>>>>>>>>>>>> -marina
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>>>>>>>>>>>>> To unsubscribe, e-mail: dev- unsubscribe_at_glassfish.dev.java.net
>>>>>>>>>>>>>>>>>>>>> For additional commands, e-mail: dev- help_at_glassfish.dev.java.net
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>>>>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>>>>>>>>>>>>>>>>>>>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>>>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>>>>>>>>>>>>>>>>>>> For additional commands, e-mail: dev- help_at_glassfish.dev.java.net
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>>>>>>>>>> To unsubscribe, e-mail: dev- unsubscribe_at_glassfish.dev.java.net
>>>>>>>>>>>>>>>>>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>>>>>>>>>>>>>>>>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>>>>>>>> To unsubscribe, e-mail: dev- unsubscribe_at_glassfish.dev.java.net
>>>>>>>>>>>>>>>> For additional commands, e-mail: dev- help_at_glassfish.dev.java.net
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>>>>>>>>>>>>>>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>>>>>>>>>>>>>> For additional commands, e-mail: dev- help_at_glassfish.dev.java.net
>>>>>>>>>>>>>>
>>>>>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>>>>>>>>>>>>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>>>> To unsubscribe, e-mail: dev- unsubscribe_at_glassfish.dev.java.net
>>>>>>>>>>>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>>>>>>>>>>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>>>>>>>>>>
>>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>> To unsubscribe, e-mail: dev-
>>>>>>>>>> unsubscribe_at_glassfish.dev.java.net
>>>>>>>>>> For additional commands, e-mail: dev- help_at_glassfish.dev.java.net
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>>>>>>>>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>>>>>>>>
>>>>>>>> ---------------------------------------------------------------------
>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>>>>>>>> For additional commands, e-mail: dev-
>>>>>>>> help_at_glassfish.dev.java.net
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> ---------------------------------------------------------------------
>>>>>>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>>>>>>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>>>>>>
>>>>>>
>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>>>>>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>>>>>
>>>>>
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>>>>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>>>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>>
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
> #!/bin/sh
> GF_HOME=/export/v3/gfs/glassfishv3/glassfish
> export GF_HOME
> java -cp "target/test-classes:$GF_HOME/modules/glassfish.jar:
> $GF_HOME/modules/hk2.jar:$GF_HOME/modules/glassfish-api.jar:$GF_HOME/
> modules/ejb-container.jar:$GF_HOME/modules/javax.ejb.jar:$GF_HOME/
> modules/common-util.jar:$GF_HOME/modules/internal-api.jar:$GF_HOME/
> modules/config-api.jar:$GF_HOME/modules/grizzly-config.jar:$GF_HOME/
> modules/grizzly-http.jar:$GF_HOME/modules/grizzly-framework.jar:
> $GF_HOME/modules/container-common.jar:$GF_HOME/modules/connectors-
> internal-api.jar:$GF_HOME/modules/security.jar:$GF_HOME/modules/
> transaction-internal-api.jar:$GF_HOME/modules/dol.jar:$GF_HOME/
> modules/glassfish-naming.jar:$GF_HOME/modules/orb-connector.jar:
> $GF_HOME/modules/ejb-internal-api.jar:$GF_HOME/modules/deployment-
> javaee-core.jar:$GF_HOME/modules/deployment-common.jar:$GF_HOME/
> modules/annotation-framework.jar:$GF_HOME/modules/monitoring-
> core.jar:$GF_HOME/modules/stats77.jar:$GF_HOME/modules/flashlight-
> framework.xjar" org.glassfish.tests.ejb.UnitTest
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net