Good morning all,
We've been looking into an issue we ran into
trying to get the Jakarta TCK working on OpenLiberty. The
documentation states to use runclient to execute the tests
(in batch mode) but when doing that we are get RC code 3
from Java from the Harness without much clue so far as to
what we might be the cause, even with harness trace enabled.
BUILD FAILED
/jakarta/javaeetck/bin/xml/ts.nonleafimport.xml:63:
The following error occurred while executing this
line:
/jakarta/javaeetck/bin/xml/ts.import.xml:90:
The following error occurred while executing this
line:
/jakarta/javaeetck/bin/build.xml:168: The
following error occurred while executing this line:
/jakarta/javaeetck/bin/xml/ts.top.import.xml:894:
Java returned: 3
I suspect our issue is config related, but
interestingly it got me comparing our output with a run
against Glassfish/RI, which lead me to another issue I think
should be brought up.
When the VI is the RI/Glassfish, instead of
kicking the tests off though runclient per the TCK
documentation it's instead using it's own Ant target run.cts
(from the implementation specific Ant script s1as.xml) which
ultimately kicks the tests off via the class
com.sun.ant.taskdefs.common.RunCTS [see ts.common.props.xml
taskdef for runcts]. I could not find any source in the
proejct for RunCTS class or any of the com.sun.ant package so
could not follow the path further for the RI side. What I'm
wondering is why not have the RI's interface into the TCK
match what we are documenting and suggesting other VIs use?
I.e. runclient instead of the run.cts/runcts and an glassfish
specific RunCTS? I also think that the source code for these
classes should be included as part of the TCK or otherwise
available if we are going to make use of them - but unless I
completely missed something I can't find source for that class
or any of the others in that package/area?
Out of curiosity and to compare our openliberty
output to glassfish I changed the run script to call runclient
on a glassfish setup - basically trying to run tests against
the RI/GF but using the method outlined in our Readme and the
guide. When we try this we see the following error;
+
/jakarta/ri/glassfish5/glassfish/bin/asadmin --user
admin --passwordfile /jakarta/admin-password.txt -p
5858 start-domain
Waiting for domain1 to start ....
Successfully started the domain : domain1
domain Location:
/jakarta/ri/glassfish5/glassfish/domains/domain1
Log File:
/jakarta/ri/glassfish5/glassfish/domains/domain1/logs/server.log
Admin Port: 5858
Command start-domain executed
successfully.
+ [[ jaxr == samples ]]
+ [[ securityapi == samples ]]
+ cd /jakarta/javaeetck//bin
+ echo 'ant start.auto.deployment.server
> /tmp/deploy.out 2>&1 & '
ant start.auto.deployment.server >
/tmp/deploy.out 2>&1 &
+ cd
/jakarta/jakartaee-tck/src/com/sun/ts/tests/samples
+ ant runclient
+ ant start.auto.deployment.server
Buildfile:
/jakarta/jakartaee-tck/src/com/sun/ts/tests/samples/build.xml
[echo] ts.home =
/jakarta/jakartaee-tck/bin/xml/../..
[mkdir] Created dir:
/jakarta/jakartaee-tck/classes
[mkdir] Created dir:
/jakarta/jakartaee-tck/dist
[mkdir] Created dir:
/jakarta/jakartaee-tck/tmp
[mkdir] Created dir:
/jakarta/jakartaee-tck/weblib
BUILD FAILED
/jakarta/jakartaee-tck/src/com/sun/ts/tests/samples/build.xml:21:
The following error occurred while executing this
line:
/jakarta/jakartaee-tck/bin/xml/ts.nonleafimport.xml:30:
The following error occurred while executing this
line:
/jakarta/jakartaee-tck/bin/xml/ts.import.xml:30:
The following error occurred while executing this
line:
/jakarta/jakartaee-tck/bin/xml/ts.vehicles.xml:23:
The following error occurred while executing this
line:
/jakarta/jakartaee-tck/bin/xml/ts.clientjar.xml:23:
The following error occurred while executing this
line:
/jakarta/jakartaee-tck/bin/xml/ts.common.xml:23:
The following error occurred while executing this
line:
/jakarta/jakartaee-tck/bin/xml/ts.common.props.xml:240:
There is no deliverabledir by the name of samples
under /jakarta/jakartaee-tck/bin/xml/../../install.
Please set deliverabledir in your environment
It looks like - at least without some additional
changes you can't run tests against GF/RI using the method we
document out of the box? We get the above when trying to run
samples, but since it's looking for the install directory,
which is new in Jakara vs javaee, it seems to be trying to run
the stand alone TCK for samples (which there is not one) vs.
running the samples bucket in the main TCK here.
So in summary;
1) Anyone else seen the harness JVM exiting
right away with RC code 3 and no output/trace on why? Any
suggestions on how to determine the reason?
2) Why with Glassfish are we not using runclient
interface which leads to the JTHarness's main class but
instead a custom RunCTS class to kick off tests? Should we not
perhaps re-architect that and follow the same code path as
other VIs should use and our documentation states?
3) I think we should have the source available
for any classes we have as part of the project and unless I'm
mistaken it appears we are missing a lot of the
com.sun.ant.taskdefs etc?
Scott E. Highbarger
[shighbar@xxxxxxxxxx]
Advisory Software Engineer
WebSphere Application Server CTS
IBM Software Group
(303) 773-5264