Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

JASPIC Standalone TCK and Webservices12, WebServices13 Full Profile Platform TCK failures with NPE #23412

Closed
gurunrao opened this issue Mar 9, 2021 · 15 comments
Assignees
Milestone

Comments

@gurunrao
Copy link
Contributor

gurunrao commented Mar 9, 2021

JASPIC TCK Test run logs and details of failures can be seen here - results.txt.
Also glassfish server logs can be seen here - server.log.
Steps for reproducing issue by running JASPIC TCK, can be found with wiki - https://github.com/eclipse-ee4j/jakartaee-tck/wiki/Instructions-for-Building-&-Running-Jakarta-EE-Standalone-TCKs

JASPIC TCK bundle can be downloaded from https://download.eclipse.org/ee4j/jakartaee-tck/jakartaee9-eftl/staged-910/jakarta-authentication-tck-2.0.0.zip
Archive with logs and results can be found at https://ci.eclipse.org/jakartaee-tck/job/9.1/job/eftl-standalonetck-build-run-910/28/artifact/authentication-tck-results.tar.gz

Exception stack-trace is as follows:

#|2021-03-09T04:35:42.447-0500|WARNING||jakarta.enterprise.webservices|_ThreadID=1;_ThreadName=main;_TimeMillis=1615282542447;_LevelValue=900;_MessageID=AS-WSJSR109IMPL-00050;|Following` exception was thrown:
java.lang.NullPointerException
	at org.glassfish.webservices.WebServiceReferenceManagerImpl.getServletAdapterBasedOnWsdlUrl(WebServiceReferenceManagerImpl.java:476)
	at org.glassfish.webservices.WebServiceReferenceManagerImpl.getServletAdapter(WebServiceReferenceManagerImpl.java:397)
	at org.glassfish.webservices.WebServiceReferenceManagerImpl.generateWsdlFile(WebServiceReferenceManagerImpl.java:335)
	at org.glassfish.webservices.WebServiceReferenceManagerImpl.initiateInstance(WebServiceReferenceManagerImpl.java:263)
	at org.glassfish.webservices.WebServiceReferenceManagerImpl.resolveWSReference(WebServiceReferenceManagerImpl.java:111)
	at com.sun.enterprise.container.common.impl.ComponentEnvManagerImpl$WebServiceRefProxy.create(ComponentEnvManagerImpl.java:944)
	at com.sun.enterprise.naming.impl.GlassfishNamingManagerImpl.lookup(GlassfishNamingManagerImpl.java:721)
	at com.sun.enterprise.naming.impl.GlassfishNamingManagerImpl.lookup(GlassfishNamingManagerImpl.java:691)
	at com.sun.enterprise.naming.impl.JavaURLContext.lookup(JavaURLContext.java:135)
	at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:447)
	at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:414)
	at java.naming/javax.naming.InitialContext.lookup(InitialContext.java:409)
	at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl._inject(InjectionManagerImpl.java:614)
	at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl.inject(InjectionManagerImpl.java:483)
	at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl.injectClass(InjectionManagerImpl.java:211)
	at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl.injectClass(InjectionManagerImpl.java:203)
	at org.glassfish.appclient.client.acc.AppClientContainer$ClientMainClassSetting.getClientMainClass(AppClientContainer.java:612)
	at org.glassfish.appclient.client.acc.AppClientContainer.getMainMethod(AppClientContainer.java:501)
	at org.glassfish.appclient.client.acc.AppClientContainer.completePreparation(AppClientContainer.java:395)
	at org.glassfish.appclient.client.acc.AppClientContainer.prepare(AppClientContainer.java:296)
	at org.glassfish.appclient.client.AppClientFacade.prepareACC(AppClientFacade.java:224)
	at org.glassfish.appclient.client.acc.agent.AppClientContainerAgent.premain(AppClientContainerAgent.java:60)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
	at java.instrument/sun.instrument.InstrumentationImpl.loadClassAndStartAgent(InstrumentationImpl.java:513)
	at java.instrument/sun.instrument.InstrumentationImpl.loadClassAndCallPremain(InstrumentationImpl.java:525)
|#]


com.sun.enterprise.container.common.spi.util.InjectionException: Exception attempting to inject Env-Prop: AuthExceptionHelloService@Field-Injectable Resource. Class name = com.sun.ts.tests.jaspic.spi.authstatus.authexception.Client Field name=service@com.sun.ts.tests.jaspic.spi.authstatus.authexception.AuthExceptionHelloService@@@ into class com.sun.ts.tests.jaspic.spi.authstatus.authexception.Client: Lookup failed for 'java:comp/env/AuthExceptionHelloService' in SerialContext[myEnv={java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory, java.naming.factory.url.pkgs=com.sun.enterprise.naming, java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl}
	at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl._inject(InjectionManagerImpl.java:716)
	at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl.inject(InjectionManagerImpl.java:483)
	at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl.injectClass(InjectionManagerImpl.java:211)
	at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl.injectClass(InjectionManagerImpl.java:203)
	at org.glassfish.appclient.client.acc.AppClientContainer$ClientMainClassSetting.getClientMainClass(AppClientContainer.java:612)
	at org.glassfish.appclient.client.acc.AppClientContainer.getMainMethod(AppClientContainer.java:501)
	at org.glassfish.appclient.client.acc.AppClientContainer.completePreparation(AppClientContainer.java:395)
	at org.glassfish.appclient.client.acc.AppClientContainer.prepare(AppClientContainer.java:296)
	at org.glassfish.appclient.client.AppClientFacade.prepareACC(AppClientFacade.java:224)
	at org.glassfish.appclient.client.acc.agent.AppClientContainerAgent.premain(AppClientContainerAgent.java:60)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
	at java.instrument/sun.instrument.InstrumentationImpl.loadClassAndStartAgent(InstrumentationImpl.java:513)
	at java.instrument/sun.instrument.InstrumentationImpl.loadClassAndCallPremain(InstrumentationImpl.java:525)
Caused by: javax.naming.NamingException: Lookup failed for 'java:comp/env/AuthExceptionHelloService' in SerialContext[myEnv={java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory, java.naming.factory.url.pkgs=com.sun.enterprise.naming, java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl} [Root exception is javax.naming.NamingException [Root exception is java.lang.NullPointerException]]
	at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:467)
	at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:414)
	at java.naming/javax.naming.InitialContext.lookup(InitialContext.java:409)
	at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl._inject(InjectionManagerImpl.java:614)
	... 15 more
Caused by: javax.naming.NamingException [Root exception is java.lang.NullPointerException]
	at org.glassfish.webservices.WebServiceReferenceManagerImpl.resolveWSReference(WebServiceReferenceManagerImpl.java:205)
	at com.sun.enterprise.container.common.impl.ComponentEnvManagerImpl$WebServiceRefProxy.create(ComponentEnvManagerImpl.java:944)
	at com.sun.enterprise.naming.impl.GlassfishNamingManagerImpl.lookup(GlassfishNamingManagerImpl.java:721)
	at com.sun.enterprise.naming.impl.GlassfishNamingManagerImpl.lookup(GlassfishNamingManagerImpl.java:691)
	at com.sun.enterprise.naming.impl.JavaURLContext.lookup(JavaURLContext.java:135)
	at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:447)
	... 18 more
Caused by: java.lang.NullPointerException
	at org.glassfish.webservices.WebServiceReferenceManagerImpl.getServletAdapterBasedOnWsdlUrl(WebServiceReferenceManagerImpl.java:476)
	at org.glassfish.webservices.WebServiceReferenceManagerImpl.getServletAdapter(WebServiceReferenceManagerImpl.java:397)
	at org.glassfish.webservices.WebServiceReferenceManagerImpl.generateWsdlFile(WebServiceReferenceManagerImpl.java:335)
	at org.glassfish.webservices.WebServiceReferenceManagerImpl.initiateInstance(WebServiceReferenceManagerImpl.java:263)
	at org.glassfish.webservices.WebServiceReferenceManagerImpl.resolveWSReference(WebServiceReferenceManagerImpl.java:111)
	... 23 more
result: Failed. unexpected exit code: exit code 1
@smillidge
Copy link
Contributor

Same stack on this previous error #23147

@scottmarlow
Copy link
Member

@smillidge any idea which change from #23147 helped resolve the previous error?

Does your comment OK SSL is currently broken on current GlassFish due to a mismatch on npn and JDK version identify the root cause for that previous error?

@smillidge
Copy link
Contributor

no I will investigate a bit to see if I can debug. Essentially I think the error is that it basically can't retrieve a WSDL. Last time the error was transport related this time, don't know yet.

@gurunrao
Copy link
Contributor Author

Most of the webservices12 and webservices13 testsuite failure see at CI run https://ci.eclipse.org/jakartaee-tck/job/9.1/job/eftl-jakartaeetck-run-910/30/testReport/ are related to ^ issue.
@smillidge @scottmarlow

@gurunrao gurunrao changed the title JASPIC TCK failures with NPE JASPIC Standalon TCK and Webservices12, WebServices13 Full Profile Platform TCK failures with NPE Mar 16, 2021
@gurunrao gurunrao changed the title JASPIC Standalon TCK and Webservices12, WebServices13 Full Profile Platform TCK failures with NPE JASPIC Standalone TCK and Webservices12, WebServices13 Full Profile Platform TCK failures with NPE Mar 16, 2021
@smillidge
Copy link
Contributor

@hs536 I'm a bit stuck for time on this one. Can you solve it?

@hs536 hs536 added this to the 6.1.0 milestone Mar 16, 2021
@hs536
Copy link
Contributor

hs536 commented Mar 16, 2021

I have no idea why this error occurred in JDK11, but I'll take a look.

@scottmarlow
Copy link
Member

Note that a warning was shown before the NPE:

WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.glassfish.appclient.client.acc.ACCClassLoader (file:/home/jenkins/agent/workspace/jakartaee-tck_master/glassfish6/glassfish/modules/gf-client-module.jar) to field java.lang.ClassLoader.parent
WARNING: Please consider reporting this to the maintainers of org.glassfish.appclient.client.acc.ACCClassLoader
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
[#|2021-03-16T08:05:08.580-0400|INFO||jakarta.enterprise.webservices|_ThreadID=1;_ThreadName=main;_TimeMillis=1615896308580;_LevelValue=800;_MessageID=AS-WSJSR109IMPL-00123;|Going to fetch ServletAdapter holding wsdl content for web service AuthExceptionHelloService based on url: null|#]


[#|2021-03-16T08:05:08.676-0400|WARNING||jakarta.enterprise.webservices|_ThreadID=1;_ThreadName=main;_TimeMillis=1615896308676;_LevelValue=900;_MessageID=AS-WSJSR109IMPL-00050;|Following exception was thrown:
java.lang.NullPointerException
	at org.glassfish.webservices.WebServiceReferenceManagerImpl.getServletAdapterBasedOnWsdlUrl(WebServiceReferenceManagerImpl.java:476)
	at org.glassfish.webservices.WebServiceReferenceManagerImpl.getServletAdapter(WebServiceReferenceManagerImpl.java:397)
	at org.glassfish.webservices.WebServiceReferenceManagerImpl.generateWsdlFile(WebServiceReferenceManagerImpl.java:335)
	at org.glassfish.webservices.WebServiceReferenceManagerImpl.initiateInstance(WebServiceReferenceManagerImpl.java:263)
	at org.glassfish.webservices.WebServiceReferenceManagerImpl.resolveWSReference(WebServiceReferenceManagerImpl.java:111)
	at com.sun.enterprise.container.common.impl.ComponentEnvManagerImpl$WebServiceRefProxy.create(ComponentEnvManagerImpl.java:944)
	at com.sun.enterprise.naming.impl.GlassfishNamingManagerImpl.lookup(GlassfishNamingManagerImpl.java:721)
	at com.sun.enterprise.naming.impl.GlassfishNamingManagerImpl.lookup(GlassfishNamingManagerImpl.java:691)
	at com.sun.enterprise.naming.impl.JavaURLContext.lookup(JavaURLContext.java:135)
	at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:447)
	at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:414)
	at java.naming/javax.naming.InitialContext.lookup(InitialContext.java:409)
	at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl._inject(InjectionManagerImpl.java:614)
	at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl.inject(InjectionManagerImpl.java:483)
	at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl.injectClass(InjectionManagerImpl.java:211)
	at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl.injectClass(InjectionManagerImpl.java:203)
	at org.glassfish.appclient.client.acc.AppClientContainer$ClientMainClassSetting.getClientMainClass(AppClientContainer.java:612)
	at org.glassfish.appclient.client.acc.AppClientContainer.getMainMethod(AppClientContainer.java:501)
	at org.glassfish.appclient.client.acc.AppClientContainer.completePreparation(AppClientContainer.java:395)
	at org.glassfish.appclient.client.acc.AppClientContainer.prepare(AppClientContainer.java:296)
	at org.glassfish.appclient.client.AppClientFacade.prepareACC(AppClientFacade.java:224)
	at org.glassfish.appclient.client.acc.agent.AppClientContainerAgent.premain(AppClientContainerAgent.java:60)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
	at java.instrument/sun.instrument.InstrumentationImpl.loadClassAndStartAgent(InstrumentationImpl.java:513)
	at java.instrument/sun.instrument.InstrumentationImpl.loadClassAndCallPremain(InstrumentationImpl.java:525)
|#]


com.sun.enterprise.container.common.spi.util.InjectionException: Exception attempting to inject Env-Prop: AuthExceptionHelloService@Field-Injectable Resource. Class name = com.sun.ts.tests.jaspic.spi.authstatus.authexception.Client Field name=service@com.sun.ts.tests.jaspic.spi.authstatus.authexception.AuthExceptionHelloService@@@ into class com.sun.ts.tests.jaspic.spi.authstatus.authexception.Client: Lookup failed for 'java:comp/env/AuthExceptionHelloService' in SerialContext[myEnv={java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory, java.naming.factory.url.pkgs=com.sun.enterprise.naming, java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl}
	at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl._inject(InjectionManagerImpl.java:716)
	at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl.inject(InjectionManagerImpl.java:483)
	at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl.injectClass(InjectionManagerImpl.java:211)
	at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl.injectClass(InjectionManagerImpl.java:203)
	at org.glassfish.appclient.client.acc.AppClientContainer$ClientMainClassSetting.getClientMainClass(AppClientContainer.java:612)
	at org.glassfish.appclient.client.acc.AppClientContainer.getMainMethod(AppClientContainer.java:501)
	at org.glassfish.appclient.client.acc.AppClientContainer.completePreparation(AppClientContainer.java:395)
	at org.glassfish.appclient.client.acc.AppClientContainer.prepare(AppClientContainer.java:296)
	at org.glassfish.appclient.client.AppClientFacade.prepareACC(AppClientFacade.java:224)
	at org.glassfish.appclient.client.acc.agent.AppClientContainerAgent.premain(AppClientContainerAgent.java:60)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
	at java.instrument/sun.instrument.InstrumentationImpl.loadClassAndStartAgent(InstrumentationImpl.java:513)
	at java.instrument/sun.instrument.InstrumentationImpl.loadClassAndCallPremain(InstrumentationImpl.java:525)
Caused by: javax.naming.NamingException: Lookup failed for 'java:comp/env/AuthExceptionHelloService' in SerialContext[myEnv={java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory, java.naming.factory.url.pkgs=com.sun.enterprise.naming, java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl} [Root exception is javax.naming.NamingException [Root exception is java.lang.NullPointerException]]
	at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:467)
	at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:414)
	at java.naming/javax.naming.InitialContext.lookup(InitialContext.java:409)
	at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl._inject(InjectionManagerImpl.java:614)
	... 15 more
Caused by: javax.naming.NamingException [Root exception is java.lang.NullPointerException]
	at org.glassfish.webservices.WebServiceReferenceManagerImpl.resolveWSReference(WebServiceReferenceManagerImpl.java:205)
	at com.sun.enterprise.container.common.impl.ComponentEnvManagerImpl$WebServiceRefProxy.create(ComponentEnvManagerImpl.java:944)
	at com.sun.enterprise.naming.impl.GlassfishNamingManagerImpl.lookup(GlassfishNamingManagerImpl.java:721)
	at com.sun.enterprise.naming.impl.GlassfishNamingManagerImpl.lookup(GlassfishNamingManagerImpl.java:691)
	at com.sun.enterprise.naming.impl.JavaURLContext.lookup(JavaURLContext.java:135)
	at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:447)
	... 18 more
Caused by: java.lang.NullPointerException
	at org.glassfish.webservices.WebServiceReferenceManagerImpl.getServletAdapterBasedOnWsdlUrl(WebServiceReferenceManagerImpl.java:476)
	at org.glassfish.webservices.WebServiceReferenceManagerImpl.getServletAdapter(WebServiceReferenceManagerImpl.java:397)
	at org.glassfish.webservices.WebServiceReferenceManagerImpl.generateWsdlFile(WebServiceReferenceManagerImpl.java:335)
	at org.glassfish.webservices.WebServiceReferenceManagerImpl.initiateInstance(WebServiceReferenceManagerImpl.java:263)
	at org.glassfish.webservices.WebServiceReferenceManagerImpl.resolveWSReference(WebServiceReferenceManagerImpl.java:111)
	... 23 more
result: Failed. unexpected exit code: exit code 1

@hs536
Copy link
Contributor

hs536 commented Mar 17, 2021

I'm trying to run jaspic tck in my local environment for debugging, but I can't see this error.
Are there any mistakes or deficiencies in my procedue?

git clone https://github.com/eclipse-ee4j/jakartaee-tck
cd jakartaee-tck
export WORKSPACE=`pwd`
export PATH_ORG=$PATH
export ANT_HOME=/work/TOOL/apache-ant-1.10.7
export JAVA_HOME=/work/JDK/jdk8u265-b01
export M2_HOME=/work/TOOL/apache-maven-3.6.2
export PATH=$M2_HOME/bin:$JAVA_HOME/bin:$ANT_HOME/bin/:$PATH_ORG
export GF_BUNDLE_URL=https://download.eclipse.org/ee4j/glassfish/glassfish-6.1.0-SNAPSHOT-nightly.zip
sh docker/build_standalone-tcks.sh jaspic
export JAVA_HOME=/work/JDK/jdk-11.0.2
export JDK=JDK11
export PATH=$M2_HOME/bin:$JAVA_HOME/bin:$ANT_HOME/bin/:$PATH_ORG
sh docker/jaspictck.sh |& tee jaspictck.log

@hs536
Copy link
Contributor

hs536 commented Mar 17, 2021

The following additional lines to install/jaspic/bin/ts.jte.jdk11 were required to run the JASPIC TCK and reproduce this error:

+ ###############################################################################
+ # @client.cert.test.jdk.tls.client.protocols JDK 11 in TLSv1.3 does not support
+ #                        Post-Handshake Authentication, so TLSv1.2 must be used
+ #                        for client-cert authentication to work.
+ ###############################################################################
+ client.cert.test.jdk.tls.client.protocols=TLSv1.2

refs) https://github.com/eclipse-ee4j/jakartaee-tck/pull/637/files

@smillidge
Copy link
Contributor

smillidge commented Mar 17, 2021

Do we want to add that to the domain.xml for GlassFish?

@hs536
Copy link
Contributor

hs536 commented Mar 17, 2021

No, I think this option is only necessary to minimize the TCK fixes for JDK11.

@hs536
Copy link
Contributor

hs536 commented Mar 17, 2021

My guess is that the cause of this problem is CNFE when initializing webservice.

        java.lang.reflect.Constructor cons = svcClass.getConstructor
                (new Class[]{java.net.URL.class,
                        javax.xml.namespace.QName.class});
        try {
            obj =
                    cons.newInstance(wsdlFile, desc.getServiceName()); ★★ CNFE
        } catch (Exception e) {
            /* ★★NPE is occurring ahead.
java.lang.reflect.InvocationTargetException
 at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
 at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
 at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
 at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
 at org.glassfish.webservices.WebServiceReferenceManagerImpl.initiateInstance(WebServiceReferenceManagerImpl.java:254)
 at org.glassfish.webservices.WebServiceReferenceManagerImpl.resolveWSReference(WebServiceReferenceManagerImpl.java:111)
 at com.sun.enterprise.container.common.impl.ComponentEnvManagerImpl$WebServiceRefProxy.create(ComponentEnvManagerImpl.java:944)
 at com.sun.enterprise.naming.impl.GlassfishNamingManagerImpl.lookup(GlassfishNamingManagerImpl.java:721)
 at com.sun.enterprise.naming.impl.GlassfishNamingManagerImpl.lookup(GlassfishNamingManagerImpl.java:691)
 at com.sun.enterprise.naming.impl.JavaURLContext.lookup(JavaURLContext.java:135)
 at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:447)
 at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:414)
 at java.naming/javax.naming.InitialContext.lookup(InitialContext.java:409)
 at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl._inject(InjectionManagerImpl.java:614)
 at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl.inject(InjectionManagerImpl.java:483)
 at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl.injectClass(InjectionManagerImpl.java:211)
 at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl.injectClass(InjectionManagerImpl.java:203)
 at org.glassfish.appclient.client.acc.AppClientContainer$ClientMainClassSetting.getClientMainClass(AppClientContainer.java:612)
 at org.glassfish.appclient.client.acc.AppClientContainer.getMainMethod(AppClientContainer.java:501)
 at org.glassfish.appclient.client.acc.AppClientContainer.completePreparation(AppClientContainer.java:395)
 at org.glassfish.appclient.client.acc.AppClientContainer.prepare(AppClientContainer.java:296)
 at org.glassfish.appclient.client.AppClientFacade.prepareACC(AppClientFacade.java:224)
 at org.glassfish.appclient.client.acc.agent.AppClientContainerAgent.premain(AppClientContainerAgent.java:60)
 at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
 at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 at java.base/java.lang.reflect.Method.invoke(Method.java:566)
 at java.instrument/sun.instrument.InstrumentationImpl.loadClassAndStartAgent(InstrumentationImpl.java:513)
 at java.instrument/sun.instrument.InstrumentationImpl.loadClassAndCallPremain(InstrumentationImpl.java:525)
Caused by: java.lang.NoClassDefFoundError: com/sun/org/apache/xml/internal/resolver/CatalogManager
 at com.sun.xml.ws.util.xml.XmlUtil.createDefaultCatalogResolver(XmlUtil.java:296)
 at com.sun.xml.ws.client.WSServiceDelegate.createCatalogResolver(WSServiceDelegate.java:348)
 at com.sun.xml.ws.client.WSServiceDelegate.parseWSDL(WSServiceDelegate.java:334)
 at com.sun.xml.ws.client.WSServiceDelegate.<init>(WSServiceDelegate.java:292)
 at com.sun.xml.ws.client.WSServiceDelegate.<init>(WSServiceDelegate.java:201)
 at com.sun.xml.ws.client.WSServiceDelegate.<init>(WSServiceDelegate.java:182)
 at com.sun.xml.ws.client.WSServiceDelegate.<init>(WSServiceDelegate.java:178)
 at com.sun.xml.ws.spi.ProviderImpl.createServiceDelegate(ProviderImpl.java:89)
 at jakarta.xml.ws.Service.<init>(Service.java:82)
 at com.sun.ts.tests.jaspic.spi.authstatus.authexception.AuthExceptionHelloService.<init>(AuthExceptionHelloService.java:54)
 ... 29 more
Caused by: java.lang.ClassNotFoundException: com.sun.org.apache.xml.internal.resolver.CatalogManager
 at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:471)
 at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:588)
 at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)                                                                                                    
 ... 39 more

I'm continuing to investigate why CNFE occurred.

@smillidge
Copy link
Contributor

@lukasj has just updated Metro will that make a difference?

@lukasj
Copy link
Member

lukasj commented Mar 17, 2021

Yes, in 3.0.0-b01 the webservices-osgi.jar is finally a multi-release jar and contains all the JDK 11 related fixes I've managed to find on my end, so in short, this should not happen on JDK 11 anymore, since javax.xml.catalog stuff comming from META-INF/versions/9 in the webservices-osgi.jar should be used instead

@smillidge smillidge added this to In progress in 6.1.0 Release Mar 17, 2021
@hs536
Copy link
Contributor

hs536 commented Mar 18, 2021

@smillidge @lukasj
Thank you, I have confirmed that all JASPIC tests pass using the latest master branch build.

[javatest.batch] ********************************************************************************
[javatest.batch] Completed running 107 tests.
[javatest.batch] Number of Tests Passed      = 107
[javatest.batch] Number of Tests Failed      = 0
[javatest.batch] Number of Tests with Errors = 0
[javatest.batch] ********************************************************************************

@hs536 hs536 moved this from In progress to Done in 6.1.0 Release Mar 18, 2021
@hs536 hs536 closed this as completed Mar 23, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
No open projects
Development

No branches or pull requests

5 participants