java.lang.NoClassDefFoundError: sun/security/ssl/SupportedEllipticCurvesExtension [英] java.lang.NoClassDefFoundError: sun/security/ssl/SupportedEllipticCurvesExtension

查看:42
本文介绍了java.lang.NoClassDefFoundError: sun/security/ssl/SupportedEllipticCurvesExtension的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试保护 Web 应用程序,以便我可以将安全数据传输层 TLS/SSL 与 HTTPS 结合使用.我正在使用 glassfish 服务器 5.启动服务器后,我做了一个 https://localhost:8181 并且它给了我这个异常:

I am trying to secure a web application so that I can use a secure data transport layer TLS/SSL with HTTPS. I am using glassfish server 5. After starting the server I did a https://localhost:8181 and it gave me this exception:

    Warning:   GRIZZLY0013: Exception during FilterChain execution
java.lang.NoClassDefFoundError: sun/security/ssl/SupportedEllipticCurvesExtension
    at sun.security.ssl.HelloExtensions.<init>(HelloExtensions.java:82)
    at sun.security.ssl.HandshakeMessage$ClientHello.<init>(HandshakeMessage.java:362)
    at sun.security.ssl.ServerHandshaker.processMessage(ServerHandshaker.java:223)
    at sun.security.ssl.Handshaker.processLoop(Handshaker.java:984)
    at sun.security.ssl.Handshaker$1.run(Handshaker.java:924)
    at sun.security.ssl.Handshaker$1.run(Handshaker.java:921)
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.security.ssl.Handshaker$DelegatedTask.run(Handshaker.java:1379)
    at org.glassfish.grizzly.ssl.SSLUtils.executeDelegatedTask(SSLUtils.java:274)
    at org.glassfish.grizzly.ssl.SSLBaseFilter.doHandshakeStep(SSLBaseFilter.java:708)
    at org.glassfish.grizzly.ssl.SSLBaseFilter.doHandshakeStep(SSLBaseFilter.java:622)
    at org.glassfish.grizzly.ssl.SSLBaseFilter.handleRead(SSLBaseFilter.java:334)
    at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
    at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:284)
    at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:201)
    at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:133)
    at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:112)
    at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
    at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:539)
    at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:112)
    at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:117)
    at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:56)
    at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:137)
    at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:593)
    at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:573)
    at java.lang.Thread.run(Thread.java:748)

浏览器(firefox)显示:错误

The browser(firefox) shows this: error

可能是什么问题?

推荐答案

这看起来与 此错误,这是由 Java 8 162 中的更改引起的,其中该类已重命名.这是对 OpenJDK 中此错误的修复,该错误已更改此处,但不幸的是,这是一个重大更改,在重命名时引入了此问题班级.

This is looks to be the same issue as this bug, which is caused by a change in Java 8 162, where that class was renamed. Which was a fix for this bug in OpenJDK which was changed here, but unfortunately that was a breaking change that introduced this issue as they renaming the class.

另一种方法是使用 Payara 5.182,这是 glassfish 的一个分支,其中包含一个修复程序.

An alternative is to use Payara 5.182, a fork of glassfish which includes a fix for it.

这篇关于java.lang.NoClassDefFoundError: sun/security/ssl/SupportedEllipticCurvesExtension的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆