[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [jakartaee-tck-dev] Usage of security.jar from Glassfish to build platform TCK
|
Hi Alwin,
CC: GlassFish
dev ml
On 2/3/21 9:55 AM, Alwin Joseph wrote:
Hi all,
This is to bring attention to [1] where we
have tried to remove the dependency on Glassfish CI to compile
the jakartaee-tck source code for building the platform TCK.
Previously we were downloading the entire glassfish bundle and
referred the jars in the glassfish/modules/ to build the TCK.
We have made changes now to only download the required api
jars from maven instead of using glassfish CI for this purpose
in [2] & [3]. But in this process we realised that the
usage of security.jar from glassfish is still a requirement
for compiling the tck source as mentioned in [4].
As it seems the methods
LoginContextDriver.doClientLogin() &
LoginContextDriver.logout() from
com.sun.enterprise.security.auth.login package (available in
security.jar) is used in SunRILoginContext.java which is
used for ejb, ejb30/sec tests.
If any of you have ideas to replace these methods please
feel free to comment in the [1] or provide your suggestions
here.
In the Platform TCK source for ts.jte, I see SunRILoginContext
referenced for:
"
@porting.ts.login.class.1 VI of
com.sun.ts.lib.porting.TSLoginContextInterface
@porting.ts.login.class.2
RI of com.sun.ts.lib.porting.TSLoginContextInterface
"
When non-GlassFish implementations deploy tests to their EE
implementation, I think that any of the reverse/forward tests that
also run a second EE server will need porting.ts.login.class.2 to
be set to their second implementation that they are testing
against. If they use GlassFish as the second server, that
would indeed use the
"porting.ts.login.class.2=com.sun.ts.lib.implementation.sun.javaee.SunRILoginContext"
setting. However, if the SunRILoginContext class is only
actually used for the ejb, ejb30/sec tests, I think that means
the "porting.ts.login.class.2"
is no longer needed since we removed the interop tests
which were probably the only use (EJB) case of "porting.ts.login.class.2".
If removing "porting.ts.login.class.2"
works (e.g. GlassFish 6 still passes Java SE
8 TCK), then I think only the GlassFish EE 9.1 implementation
needs the com.sun.ts.lib.implementation.sun.javaee.SunRILoginContext
class.
Some possible options for eliminating the Platform TCK on the
GlassFish security.jar:
1. Compile com.sun.ts.lib.implementation.sun.javaee.SunRILoginContext
and create a jar that contains the class, check that jar
into the Platform TCK as a convenience for GlassFish
testing to then use that jar when testing against EE 9.1.
Also rename
SunRILoginContext.java
to SunRILoginContext.java.src
or something like that to stop compiling SunRILoginContext.java
when building the TCK.
2. Move the SunRILoginContext.java
to a GlassFish TCK porting (git) repository.
Thoughts?
Scott
_______________________________________________
jakartaee-tck-dev mailing list
jakartaee-tck-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/jakartaee-tck-dev