You will need to configure the surefire (testing) plugin to fork your
tests into a new vm and set the endorsed dir for that new vm. The
first is easy but the second will be difficult. First off the docs
for the sure fire plugin can be found here
http://maven.apache.org/plugins/maven-surefire-plugin/test-mojo.html
Here is an example setting
<project>
...
<build>
...
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<forkMode>once</forkMode >
<argLine>-Djava.endorsed.dirs=somedir</argLine>
</configuration>
</plugin>
...
</build>
...
</project>
The problem will be selecting a dir on the filesystem that will
include the endorsed API. BTW you could also set the boot class path
in the argLine above, but testing endorsed dir will be more
representative of the runtime environment.
Jason, you have any ideas on how to configure this?
-dain
On Aug 23, 2006, at 3:10 AM, Rick McGuire wrote:
Dain Sundstrom wrote:
On Aug 11, 2006, at 12:40 PM, Dain Sundstrom wrote:
Rick,
I believe what you really want to do is to use the endorsed
directory. This allows you to override the vm implementation of
endorsed specification such as corba (https://java.sun.com/j2se/
1.5.0/docs/guide/standards/index.html). In general, you should
try to keep the stuff in the endorsed jar to a minimum as not to
pollute the class path. In geronimo, to add something to the
endorsed dir, you need to add it to our endorsed manifest entry
"Endorsed-Dirs" (I have no idea where this is set in the build)
and you need to modify the build to put the jar into lib/endorsed
by modifying the bin.xml.
I'm dumb. You simply need to add the jar to lib/endorsed jar in
the boilerplate config (thanks Jason), and add it to the manifest
class path of the j2ee-system configuration (see the pom file in
that dir). It will be added to the system class path and marked
as endorsed so it can override the corba specs just like we
override the xml specs using xerces.
Ok, this looks pretty simple, but, unfortunately, it only addresses
the issues when running/building Geronimo. I'm running into a
problem trying to get the unit tests to run while building
openejb2. I've been trying to find the equivalent touch points in
the openejb2 build, and have not had much success. I'm definitely
skating on thin ice (not good for a person of my size :-) ) when it
comes to the m2 stuff, so I'd appreciate any help/pointers I can
get on this.
Rick
-dain