我在 AWS 中有一个简单的 t2 实例,我必须更改运行 RDS 数据库实例的默认时区;由于没有反映任何更改,我决定重新启动RDS 实例。
发生这种情况后,运行我的Glassfish 5
的 EC2 实例开始失败,应用程序在尝试连接到数据库时返回错误。
我也决定重新启动EC2 实例(我是 AWS 的新手)。
在此之后,我无法访问我的 Web 应用程序,所以我继续通过 SSH 和./asadmin restart-domain [my_domain]
连接到 EC2 实例。
我注意到几分钟后,网络应用程序无法正常工作,并在空白页面上显示 500 错误,所以我决定tail -f server.log
重新启动域时遇到以下异常:
[警告] [][org.glassfish.grizzly.filterchain.DefaultFilterChain] [tid: _ThreadID=44 _ThreadName=管理员侦听器(4)][时间毫秒: 1524271134399] [级别值:900][[ GRIZZLY0013:期间的异常 FilterChain execution java.lang.NoClassDefFoundError: sun/security/ssl/SupportedEllipticPointFormatsExtension at sun.security.ssl.HelloExtensions.(你好扩展.java:84) at sun.security.ssl.HandshakeMessage$ClientHello.(握手留言.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.portunif.PUFilter.handleRead(PUFilter.java:231) 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) ]]
似乎是SSL的某种问题,但我就是无法解决它。
任何见解将不胜感激。
当你重新启动时,你一定得到了一个新版本的Java。Glassfish 5.0 不适用于 Java 8u161 或更高版本:https://github.com/javaee/glassfish/issues/22416