java 500 error : Oozie web console 4.3

java 500 error : Oozie web console 4.3

我正在尝试在 Ubuntu 16.04 LTS 中配置 Oozie,问题是 oozie 运行 正常,除了在访问 Web 控制台时出现以下错误

Java版本:1.8

Oozie 版本:4.3

Hadoop:2.3.7

错误

HTTP Status 500 - java.lang.NullPointerException

type Exception report

message java.lang.NullPointerException

description The server encountered an internal error that prevented it from fulfilling this request.

exception

org.apache.jasper.JasperException: java.lang.NullPointerException
    org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:542)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:370)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:321)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:723)
    org.apache.oozie.servlet.AuthFilter.doFilter(AuthFilter.java:171)
    org.apache.hadoop.security.authentication.server.AuthenticationFilter.doFilter(AuthenticationFilter.java:594)
    org.apache.hadoop.security.authentication.server.AuthenticationFilter.doFilter(AuthenticationFilter.java:553)
    org.apache.oozie.servlet.AuthFilter.doFilter(AuthFilter.java:176)
    org.apache.oozie.servlet.HostnameFilter.doFilter(HostnameFilter.java:86)

root cause

java.lang.NullPointerException
    org.apache.jsp.index_jsp._jspInit(index_jsp.java:25)
    org.apache.jasper.runtime.HttpJspBase.init(HttpJspBase.java:52)
    org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:164)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:340)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:321)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:723)
    org.apache.oozie.servlet.AuthFilter.doFilter(AuthFilter.java:171)
    org.apache.hadoop.security.authentication.server.AuthenticationFilter.doFilter(AuthenticationFilter.java:594)
    org.apache.hadoop.security.authentication.server.AuthenticationFilter.doFilter(AuthenticationFilter.java:553)
    org.apache.oozie.servlet.AuthFilter.doFilter(AuthFilter.java:176)
    org.apache.oozie.servlet.HostnameFilter.doFilter(HostnameFilter.java:86)

note The full stack trace of the root cause is available in the Apache Tomcat/6.0.47 logs.
Apache Tomcat/6.0.47

这是 Jasper 引擎特有的 class 加载程序问题。实际上,会有两个 JSP-API 文件,一个 jsp-api-2.1.jar 在 WEB-INF/lib 中,另一个jsp-api.jar,也就是在Tomcat/lib。就我而言,两者都在 class 路径中。首先停止oozie服务器。然后,从 WEB-INF/lib 中移动或删除 jsp-api-2.1.jar,以确保 class 加载程序不会选择它。本质上,Tomcat 应该从 Tomcat/lib 中获取它。现在重新启动 oozie 服务器。它应该工作。我遇到了同样的问题,并按照我上面提到的那样进行了操作。 :-)