Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Blocker Blocker
    • Resolution: Fixed
    • Affects Version/s: 0.5.0
    • Fix Version/s: 0.5.0
    • Component/s: Scripts, User Interface
    • Labels:
      None
    • Environment:

      Hadoop 1.0.0
      Hbase 0.92.0
      Zookeeper 3.4.3

      Description

      After executing command "bin/chukwa hicc", 500 error returned when access "http://<ip>:4080"
      The error info is:

      HTTP ERROR 500

      Problem accessing /hicc/. Reason:

      STANDARD_IMPORTS
      Caused by:

      java.lang.NoSuchFieldError: STANDARD_IMPORTS
      at org.apache.jasper.compiler.PageInfo.<init>(PageInfo.java:101)
      at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:108)
      at org.apache.jasper.compiler.Compiler.compile(Compiler.java:296)
      at org.apache.jasper.compiler.Compiler.compile(Compiler.java:277)
      at org.apache.jasper.compiler.Compiler.compile(Compiler.java:265)
      at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:564)
      at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:299)
      at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:315)
      at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
      at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
      at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:401)
      at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
      at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
      at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:766)
      at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:450)
      at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:327)
      at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:126)
      at org.mortbay.jetty.servlet.DefaultServlet.doGet(DefaultServlet.java:503)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
      at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
      at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:401)
      at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
      at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
      at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:766)
      at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:450)
      at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230)
      at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
      at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
      at org.mortbay.jetty.Server.handle(Server.java:326)
      at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
      at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:928)
      at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:549)
      at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
      at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
      at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:410)
      at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)

      The console also have error info like below:

      Feb 28, 2012 1:34:40 P M com.sun.jersey.api.core.PackagesResourceConfig init
      INFO: Scanning for root resource and provider classes in the packages:
      org.apache.hadoop.chukwa.rest.resource
      org.apache.hadoop.chukwa.hicc.rest
      Feb 28, 2012 1:34:40 PM com.sun.jersey.api.core.ScanningResourceConfig logClasses
      INFO: Root resource classes found:
      class org.apache.hadoop.chukwa.hicc.rest.MetricsController
      class org.apache.hadoop.chukwa.rest.resource.UserResource
      class org.apache.hadoop.chukwa.rest.resource.WidgetResource
      class org.apache.hadoop.chukwa.rest.resource.ViewResource
      class org.apache.hadoop.chukwa.rest.resource.ClientTrace
      Feb 28, 2012 1:34:40 PM com.sun.jersey.api.core.ScanningResourceConfig logClasses
      INFO: Provider classes found:
      class org.apache.hadoop.chukwa.rest.resource.WidgetContextResolver
      class org.apache.hadoop.chukwa.rest.resource.ViewContextResolver
      Feb 28, 2012 1:34:40 PM com.sun.jersey.server.impl.application.WebAppli cationImpl _initiate
      INFO: Initiating Jersey application, version 'Jersey: 1.4 09/11/2010 10 :30 PM'
      Feb 28, 2012 1:34:41 PM com.sun.jersey.spi.inject.Errors processErrorMe ssages
      SEVERE: The following errors and warnings have been detected with resou rce and/or provider classes:
      SEVERE: Method, public java.util.List org.apache.hadoop.chukwa.rest.r esource.ClientTrace.getTrace(), annotated with GET of resource, class o rg.apache.hadoop.chukwa.rest.resource.ClientTrace, is not recognized as valid resource method.
      SEVERE: Method, public org.apache.hadoop.chukwa.rest.bean.UserBean or g.apache.hadoop.chukwa.rest.resource.UserResource.getProfile(java.lang. String), annotated with GET of resource, class org.apache.hadoop.chukwa .rest.resource.UserResource, is not recognized as valid resource method .
      SEVERE: Method, public java.lang.String org.apache.hadoop.chukwa.rest .resource.UserResource.getUserList(), annotated with GET of resource, c lass org.apache.hadoop.chukwa.rest.resource.UserResource, is not recogn ized as valid resource method.
      SEVERE: Method, public org.apache.hadoop.chukwa.rest.bean.ReturnCodeB ean org.apache.hadoop.chukwa.rest.resource.UserResource.setProfile(org. apache.hadoop.chukwa.rest.bean.UserBean), annotated with PUT of resourc e, class org.apache.hadoop.chukwa.rest.resource.UserResource, is not re cognized as valid resource method.
      SEVERE: Method, public org.apache.hadoop.chukwa.rest.bean.ReturnCodeB ean org.apache.hadoop.chukwa.rest.resource.ViewResource.deleteView(java x.servlet.http.HttpServletRequest,java.lang.String,java.lang.String), a nnotated with DELETE of resource, class org.apache.hadoop.chukwa.rest.r esource.ViewResource, is not recognized as valid resource method.
      SEVERE: Method, public org.apache.hadoop.chukwa.rest.bean.ViewBean or g.apache.hadoop.chukwa.rest.resource.ViewResource.getView(javax.servlet .http.HttpServletRequest,java.lang.String), annotated with GET of resou rce, class org.apache.hadoop.chukwa.rest.resource.ViewResource, is not recognized as valid resource method.
      SEVERE: Method, public org.apache.hadoop.chukwa.rest.bean.ReturnCodeB ean org.apache.hadoop.chukwa.rest.resource.ViewResource.changeViewPermi ssion(javax.servlet.http.HttpServletRequest,java.lang.String,java.lang. String,java.lang.String), annotated with POST of resource, class org.ap ache.hadoop.chukwa.rest.resource.ViewResource, is not recognized as val id resource method.
      SEVERE: Method, public java.lang.String org.apache.hadoop.chukwa.rest .resource.ViewResource.getUserViewList(javax.servlet.http.HttpServletRe quest), annotated with GET of resource, class org.apache.hadoop.chukwa. rest.resource.ViewResource, is not recognized as valid resource method.
      SEVERE: Method, public org.apache.hadoop.chukwa.rest.bean.ReturnCodeB ean org.apache.hadoop.chukwa.rest.resource.ViewResource.setView(javax.s ervlet.http.HttpServletRequest,org.apache.hadoop.chukwa.rest.bean.ViewB ean), annotated with PUT of resource, class org.apache.hadoop.chukwa.re st.resource.ViewResource, is not recognized as valid resource method.
      SEVERE: Method, public org.apache.hadoop.chukwa.rest.bean.ReturnCodeB ean org.apache.hadoop.chukwa.rest.resource.ViewResource.changeView(java x.servlet.http.HttpServletRequest,java.lang.String,java.lang.String,jav a.lang.String), annotated with POST of resource, class org.apache.hadoo p.chukwa.rest.resource.ViewResource, is not recognized as valid resourc e method.
      SEVERE: Method, public org.apache.hadoop.chukwa.rest.bean.WidgetBean org.apache.hadoop.chukwa.rest.resource.WidgetResource.getProfile(java.l ang.String), annotated with GET of resource, class org.apache.hadoop.ch ukwa.rest.resource.WidgetResource, is not recognized as valid resource method.
      SEVERE: Method, public org.apache.hadoop.chukwa.rest.bean.CatalogBean org.apache.hadoop.chukwa.rest.resource.WidgetResource.getWidgetCatalog (), annotated with GET of resource, class org.apache.hadoop.chukwa.rest .resource.WidgetResource, is not recognized as valid resource method.
      SEVERE: Method, public org.apache.hadoop.chukwa.rest.bean.ReturnCodeB ean org.apache.hadoop.chukwa.rest.resource.WidgetResource.saveWidget(or g.apache.hadoop.chukwa.rest.bean.WidgetBean), annotated with PUT of res ource, class org.apache.hadoop.chukwa.rest.resource.WidgetResource, is not recognized as valid resource method.
      SEVERE: Method, public java.lang.String org.apache.hadoop.chukwa.hicc .rest.MetricsController.getSeries(javax.servlet.http.HttpServletRequest ,java.lang.String,java.lang.String,java.lang.String,java.lang.String,ja va.lang.String,java.lang.String), annotated with GET of resource, class org.apache.hadoop.chukwa.hicc.rest.MetricsController, is not recognize d as valid resource method.
      SEVERE: Method, public java.lang.String org.apache.hadoop.chukwa.hicc .rest.MetricsController.getSeriesBySessionAttribute(javax.servlet.http. HttpServletRequest,java.lang.String,java.lang.String,java.lang.String,j ava.lang.String,java.lang.String), annotated with GET of resource, clas s org.apache.hadoop.chukwa.hicc.rest.MetricsController, is not recogniz ed as valid resource method.
      SEVERE: Method, public java.lang.String org.apache.hadoop.chukwa.hicc .rest.MetricsController.getTables(), annotated with GET of resource, cl ass org.apache.hadoop.chukwa.hicc.rest.MetricsController, is not recogn ized as valid resource method.
      SEVERE: Method, public java.lang.String org.apache.hadoop.chukwa.hicc .rest.MetricsController.getFamilies(java.lang.String), annotated with G ET of resource, class org.apache.hadoop.chukwa.hicc.rest.MetricsControl ler, is not recognized as valid resource method.
      SEVERE: Method, public java.lang.String org.apache.hadoop.chukwa.hicc .rest.MetricsController.getColumnNames(javax.servlet.http.HttpServletRe quest,java.lang.String,java.lang.String,java.lang.String,java.lang.Stri ng,boolean), annotated with GET of resource, class org.apache.hadoop.ch ukwa.hicc.rest.MetricsController, is not recognized as valid resource m ethod.
      SEVERE: Method, public java.lang.String org.apache.hadoop.chukwa.hicc .rest.MetricsController.getRowNames(javax.servlet.http.HttpServletReque st,java.lang.String,java.lang.String,java.lang.String,java.lang.String, java.lang.String,boolean), annotated with GET of resource, class org.ap ache.hadoop.chukwa.hicc.rest.MetricsController, is not recognized as va lid resource method.
      SEVERE: Method, public synchronized javax.ws.rs.core.Response com.sun .jersey.server.impl.wadl.WadlResource.getWadl(javax.ws.rs.core.UriInfo) , annotated with GET of resource, class com.sun.jersey.server.impl.wadl .WadlResource, is not recognized as valid resource method.

      I saw the email "Does chukwa-0.5.0's HICC work with hbase-0.92.0?", which is quite similar to the issue I met. However, I tried to replace the jar to the correct version from hbase, it still doesn't work.

        Activity

        Hide
        Eric Yang added a comment -

        I just committed this.

        Show
        Eric Yang added a comment - I just committed this.
        Hide
        Eric Yang added a comment -

        Tested with HBase 0.92.0, by using maven, it was able to resolve dependency properly.

        There might be a hidden problem that Jersey version are different between HBase and Chukwa, which can cause conflict in the class path in IBM jdk.

        What version and vendor of Java was used for this to occur?

        Show
        Eric Yang added a comment - Tested with HBase 0.92.0, by using maven, it was able to resolve dependency properly. There might be a hidden problem that Jersey version are different between HBase and Chukwa, which can cause conflict in the class path in IBM jdk. What version and vendor of Java was used for this to occur?
        Hide
        Eric Yang added a comment -

        The proper method is to rebuild chukwa source code with hbase-0.92.0.
        Edit pom.xml, and change hbase dependency to version 0.92.0, then run:

        mvn package -DskipTests

        After the war file has been created, place hicc.war into your CHUKWA_HOME/share/chukwa/webapps directory.
        This will ensure that HBase dependencies are setup correctly.

        Show
        Eric Yang added a comment - The proper method is to rebuild chukwa source code with hbase-0.92.0. Edit pom.xml, and change hbase dependency to version 0.92.0, then run: mvn package -DskipTests After the war file has been created, place hicc.war into your CHUKWA_HOME/share/chukwa/webapps directory. This will ensure that HBase dependencies are setup correctly.

          People

          • Assignee:
            Eric Yang
            Reporter:
            Mingze Xu
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development