Glassfish:弹簧启动错误

问题描述:

我有一个在Glassfish 5.0中部署的弹簧启动应用程序。当试图在这个应用程序中使用spring security basic auth访问REST服务时,出现以下错误:Glassfish:弹簧启动错误

java.lang.NoSuchMethodError: sun.security.ssl.SessionId.checkLength(Lsun/security/ssl/ProtocolVersion;)V

该应用程序在Tomcat服务器中正常工作。此错误仅在glassfish服务器中发生。我的JAVA_HOME已被设置为jdk1.8.0_31。 可能是什么问题?

下面是当我尝试使用邮递员访问该服务的错误:

enter image description here

这意味着潜在的JAR LIB玻璃鱼不包含class'smethod作为springboot预期

包含方法sun.security.ssl.SessionId.checkLength的jar文件可能不在玻璃鱼服务器中部署。该软件包正在期待进入玻璃鱼服务器。因此,找到声明sun.security.ssl.SessionId类的包,并在Glassfish服务器中部署包的jar文件。该软件包包含在您的库列表中,但该库未部署在玻璃鱼服务器中。

sun.security.ssl.SessionId class is a part of jdk8. So make sure your glassfish server using jdk8. it may not work in jdk7. 
+0

我没有在我的应用程序中使用这个方法'sun.security.ssl.SessionId.checkLength'。 –

+0

@M S Hossain我正在使用'jdk1.8.0_31' –

+0

,但一些接口或类正在使用此方法。这个类是jdk8的一部分。所以确保你的服务器使用jdk8。它可能无法在jdk7中工作 –