microprofile-extensions / openapi-ext

Some extensions for MicroProfile OpenAPI
Apache License 2.0
22 stars 13 forks source link

Another NoSuchMethodError with Java 8 and Payara 4 #33

Closed ralfovelgoenne closed 4 years ago

ralfovelgoenne commented 4 years ago

I got a different NoSuchMethodError locally when starting the server. Strange to say that the same artefact runs well on a remote server with the same Payara and Java version. I did try around with some different minor Java and Payara versions but nothing helped. Any ideas welcome.

Suppressed: javax.enterprise.inject.spi.DeploymentException: Deployment Failure for ConfigProperty openapi.ui.swaggerUiTheme in class org.microprofileext.openapi.swaggerui.Templates Reason sun.misc.IOUtils.readExactlyNBytes(Ljava/io/InputStream;I)[B at fish.payara.microprofile.config.cdi.CDIExtension.validateInjectionPoint(CDIExtension.java:92) at sun.reflect.GeneratedMethodAccessor64.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.jboss.weld.injection.StaticMethodInjectionPoint.invoke(StaticMethodInjectionPoint.java:88) at org.jboss.weld.injection.StaticMethodInjectionPoint.invoke(StaticMethodInjectionPoint.java:78) at org.jboss.weld.injection.MethodInvocationStrategy$SimpleMethodInvocationStrategy.invoke(MethodInvocationStrategy.java:129) at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:299) at org.jboss.weld.event.ExtensionObserverMethodImpl.sendEvent(ExtensionObserverMethodImpl.java:124) at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:277) at org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:255) at org.jboss.weld.event.ObserverNotifier.notifySyncObservers(ObserverNotifier.java:269) at org.jboss.weld.event.ObserverNotifier.notify(ObserverNotifier.java:258) at org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:154) at org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:148) at org.jboss.weld.bootstrap.events.AbstractContainerEvent.fire(AbstractContainerEvent.java:53) at org.jboss.weld.bootstrap.events.AbstractDefinitionContainerEvent.fire(AbstractDefinitionContainerEvent.java:44) ... 63 more Caused by: java.lang.NoSuchMethodError: sun.misc.IOUtils.readExactlyNBytes(Ljava/io/InputStream;I)[B at com.sun.crypto.provider.JceKeyStore.engineLoad(JceKeyStore.java:868) at java.security.KeyStore.load(KeyStore.java:1445) at com.sun.enterprise.security.store.PasswordAdapter.loadKeyStore(PasswordAdapter.java:189) at com.sun.enterprise.security.store.PasswordAdapter.(PasswordAdapter.java:158) at org.glassfish.security.services.impl.JCEKSPasswordAliasStore.pa(JCEKSPasswordAliasStore.java:101) at org.glassfish.security.services.impl.JCEKSPasswordAliasStore.containsKey(JCEKSPasswordAliasStore.java:167) at fish.payara.nucleus.microprofile.config.source.PasswordAliasConfigSource.getValue(PasswordAliasConfigSource.java:84) at fish.payara.nucleus.microprofile.config.spi.PayaraConfig.getValue(PayaraConfig.java:168) at fish.payara.nucleus.microprofile.config.spi.PayaraConfig.getValue(PayaraConfig.java:155) at fish.payara.microprofile.config.cdi.ConfigPropertyProducer.getGenericProperty(ConfigPropertyProducer.java:97) at fish.payara.microprofile.config.cdi.CDIExtension.validateInjectionPoint(CDIExtension.java:77) ... 79 more

ralfovelgoenne commented 4 years ago

With OpenJDK 8 (https://jdk.java.net/java-se-ri/8-MR3) it runs into another error: Suppressed: javax.enterprise.inject.spi.DeploymentException: Deployment Failure for ConfigProperty openapi.ui.swaggerUiTheme in class org.microprofileext.openapi.swaggerui.Templates Reason sun/misc/ObjectInputFilter at fish.payara.microprofile.config.cdi.CDIExtension.validateInjectionPoint(CDIExtension.java:92) at sun.reflect.GeneratedMethodAccessor62.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:497) at org.jboss.weld.injection.StaticMethodInjectionPoint.invoke(StaticMethodInjectionPoint.java:88) at org.jboss.weld.injection.StaticMethodInjectionPoint.invoke(StaticMethodInjectionPoint.java:78) at org.jboss.weld.injection.MethodInvocationStrategy$SimpleMethodInvocationStrategy.invoke(MethodInvocationStrategy.java:129) at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:299) at org.jboss.weld.event.ExtensionObserverMethodImpl.sendEvent(ExtensionObserverMethodImpl.java:124) at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:277) at org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:255) at org.jboss.weld.event.ObserverNotifier.notifySyncObservers(ObserverNotifier.java:269) at org.jboss.weld.event.ObserverNotifier.notify(ObserverNotifier.java:258) at org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:154) at org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:148) at org.jboss.weld.bootstrap.events.AbstractContainerEvent.fire(AbstractContainerEvent.java:53) at org.jboss.weld.bootstrap.events.AbstractDefinitionContainerEvent.fire(AbstractDefinitionContainerEvent.java:44) ... 63 more Caused by: java.lang.NoClassDefFoundError: sun/misc/ObjectInputFilter at java.lang.Class.getDeclaredConstructors0(Native Method) at java.lang.Class.privateGetDeclaredConstructors(Class.java:2671) at java.lang.Class.getConstructor0(Class.java:3075) at java.lang.Class.getConstructor(Class.java:1825) at java.security.Provider$Service.newInstance(Provider.java:1594) at sun.security.jca.GetInstance.getInstance(GetInstance.java:236) at sun.security.jca.GetInstance.getInstance(GetInstance.java:164) at java.security.Security.getImpl(Security.java:695) at java.security.KeyStore.getInstance(KeyStore.java:848) at com.sun.enterprise.security.store.PasswordAdapter.loadKeyStore(PasswordAdapter.java:182) at com.sun.enterprise.security.store.PasswordAdapter.(PasswordAdapter.java:158) at org.glassfish.security.services.impl.JCEKSPasswordAliasStore.pa(JCEKSPasswordAliasStore.java:101) at org.glassfish.security.services.impl.JCEKSPasswordAliasStore.containsKey(JCEKSPasswordAliasStore.java:167) at fish.payara.nucleus.microprofile.config.source.PasswordAliasConfigSource.getValue(PasswordAliasConfigSource.java:84) at fish.payara.nucleus.microprofile.config.spi.PayaraConfig.getValue(PayaraConfig.java:168) at fish.payara.nucleus.microprofile.config.spi.PayaraConfig.getValue(PayaraConfig.java:155) at fish.payara.microprofile.config.cdi.ConfigPropertyProducer.getGenericProperty(ConfigPropertyProducer.java:97) at fish.payara.microprofile.config.cdi.CDIExtension.validateInjectionPoint(CDIExtension.java:77) ... 79 more Caused by: java.lang.ClassNotFoundException: sun.misc.ObjectInputFilter at java.net.URLClassLoader.findClass(URLClassLoader.java:381) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ... 97 more

phillip-kruger commented 4 years ago

Can you create a small app that recreate the issue ? Then I can have a look ?

ralfovelgoenne commented 4 years ago

I tryed it out on two different machines. Everything works fine. Therefore it is a local problem on my machine. Thanks.

phillip-kruger commented 4 years ago

Glad its working :)