Jakarta ee 在GlassFish服务器上运行java EE应用程序时偶尔出现java.lang.NullPointerException

Jakarta ee 在GlassFish服务器上运行java EE应用程序时偶尔出现java.lang.NullPointerException,jakarta-ee,glassfish,java-ee-7,glassfish-4.1,Jakarta Ee,Glassfish,Java Ee 7,Glassfish 4.1,使用 GlassFish服务器4.1/Java EE 7 具有JPA2.1的EclipseLink 2.6.0 莫哈拉2.3.0-m02 PrimeFaces 5.2最终版本 OmniFaces 2.1决赛 MySQL 5.6.11 jdk8u45 在重新部署应用程序时,偶尔会抛出java.lang.NullPointerException,但不会对应用程序造成任何伤害 Severe: An exception or error occurred in the container dur

使用

  • GlassFish服务器4.1/Java EE 7
  • 具有JPA2.1的EclipseLink 2.6.0
  • 莫哈拉2.3.0-m02
  • PrimeFaces 5.2最终版本
  • OmniFaces 2.1决赛
  • MySQL 5.6.11
  • jdk8u45
在重新部署应用程序时,偶尔会抛出
java.lang.NullPointerException
,但不会对应用程序造成任何伤害

Severe:   An exception or error occurred in the container during the request processing
java.lang.NullPointerException
    at org.glassfish.grizzly.http.util.HttpCodecUtils.parseHost(HttpCodecUtils.java:69)
    at org.glassfish.grizzly.http.HttpRequestPacket.doParseHostHeader(HttpRequestPacket.java:723)
    at org.glassfish.grizzly.http.HttpRequestPacket.parseHostHeader(HttpRequestPacket.java:717)
    at org.glassfish.grizzly.http.HttpRequestPacket.serverName(HttpRequestPacket.java:283)
    at org.glassfish.grizzly.http.server.Request.getServerName(Request.java:1246)
    at org.apache.catalina.connector.Request.getServerName(Request.java:1882)
    at org.apache.catalina.connector.RequestFacade.getServerName(RequestFacade.java:535)
    at com.sun.enterprise.web.connector.coyote.PECoyoteConnector.requestEndEvent(PECoyoteConnector.java:1307)
    at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:422)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:282)
    at com.sun.enterprise.v3.services.impl.ContainerMapper$HttpHandlerCallable.call(ContainerMapper.java:459)
    at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:167)
    at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:201)
    at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:175)
    at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:235)
    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:561)
    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:565)
    at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:545)
    at java.lang.Thread.run(Thread.java:745)

Warning:   GRIZZLY0013: Exception during FilterChain execution
java.lang.NullPointerException
    at org.glassfish.grizzly.attributes.Attribute.remove(Attribute.java:227)
    at org.glassfish.grizzly.http.server.HttpServerFilter.afterService(HttpServerFilter.java:383)
    at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:260)
    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:561)
    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:565)
    at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:545)
    at java.lang.Thread.run(Thread.java:745)

它来自哪里?为什么?我对此异常既没有原因,也没有应用程序的责任。

在我创建了一个专门运行GF的新用户并安装了JDK 1.8的最新版本(我将linux作为我的操作系统运行)之前,我一直存在此问题

我创建了一个用户:
gfadmin

创建新用户:
useradd-d/home/gfadmin-g staff-s/bin/bash gfadmin

然后从oracle下载JDK 1.8.091: (获取适合您的操作系统和硬件的tar.gz文件)

将tar.gz文件放入
/home/gfadmin

压缩并解压缩文件。它应该创建一个目录:

/home/gfadmin/jdk1.8.0_91
编辑gfadmin users
.bash\u profile
文件并添加以下三行:

JAVA_HOME="/home/gfadmin/jdk1.8.0_91"
PATH="$JAVA_HOME/bin:$PATH"
export JAVA_HOME PATH
源.bash_配置文件:

. ./.bash_profile
确认您使用的是刚刚安装的java版本,1.8.0_91:

java -version

我一直有这个问题,直到我创建了一个专门运行GF的新用户并安装了JDK1.8的最新版本(我将linux作为我的操作系统运行)

我创建了一个用户:
gfadmin

创建新用户:
useradd-d/home/gfadmin-g staff-s/bin/bash gfadmin

然后从oracle下载JDK 1.8.091: (获取适合您的操作系统和硬件的tar.gz文件)

将tar.gz文件放入
/home/gfadmin

压缩并解压缩文件。它应该创建一个目录:

/home/gfadmin/jdk1.8.0_91
编辑gfadmin users
.bash\u profile
文件并添加以下三行:

JAVA_HOME="/home/gfadmin/jdk1.8.0_91"
PATH="$JAVA_HOME/bin:$PATH"
export JAVA_HOME PATH
源.bash_配置文件:

. ./.bash_profile
确认您使用的是刚刚安装的java版本,1.8.0_91:

java -version

这是公共服务器吗?您是否维护IP和用户代理的访问日志?你已经确定它更可能是人类还是机器人了吗?例外情况表明HTTP
Host
头丢失或损坏,最有可能是由黑客探测请求查找可漏洞服务器引起的(因为没有一个正常的webbrowser会导致这种情况)。与服务器也不同。它只是在本地计算机上运行一个练习会话,而不是在生产环境中。这是一个公共服务器吗?您是否维护IP和用户代理的访问日志?你已经确定它更可能是人类还是机器人了吗?例外情况表明HTTP
Host
头丢失或损坏,最有可能是由黑客探测请求查找可漏洞服务器引起的(因为没有一个正常的webbrowser会导致这种情况)。与服务器也不同。它只是在本地计算机上运行以进行练习,而不是在生产环境中运行。