CAPTCHA failing on Linux systems

This issue is archived. You can view it, but you can't modify it. Learn more

XMLWordPrintable

      I just upgraded to the latest Hudson (1.185). I cannot do much with security
      enabled because the "Sign up" screen appears to be broken on Linux.

      The image (http://localhost/hudson/securityRealm/captcha) that is required to
      "Enter text" is not there. Just the usual icon for "missing image". I've
      reproduced this behavior running the hudson.war standalone on Ubuntu 7.10, SLES
      10 (sp1). My original configuration was on Ubuntu deploying hudson.war to Tomcat
      running behind Apache. So, I shut that down and tried to reproduce it standalone
      (java -jar hudson.war). Same issue on Ubuntu. Tried standalone again on the
      SLES box, same issue. Tried standalone on Windows, no issue, works as expected.

      I searched the list but did not see anyone having this issue. If I go ahead and
      attempt to sign up anyway, I get an exception (pasted below). (looks like it
      can't find the class to generate the image file). More configuration (jdk
      1.6.0_04, httpd 2.2.8, tomcat 6) (though as mentioned the tomcat and apache
      versions don't seem to matter).

      type Exception report

      message

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

      exception

      javax.servlet.ServletException: java.lang.NoClassDefFoundError: Could not
      initialize class hudson.security.SecurityRealm$CaptchaService

      org.kohsuke.stapler.Stapler.invoke(Stapler.java:370)
      org.kohsuke.stapler.MetaClass$7.doDispatch(MetaClass.java:208)
      org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:30)
      org.kohsuke.stapler.Stapler.invoke(Stapler.java:361)

      org.kohsuke.stapler.Stapler.invoke(Stapler.java:298)
      org.kohsuke.stapler.Stapler.service(Stapler.java:98)
      javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:52)

      hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:28)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:55)
      org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:166)

      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:55)
      org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:55)

      org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:55)
      org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:135)

      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:55)
      org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:173)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:55)

      org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:55)
      hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:44)

      hudson.security.HudsonFilter.doFilter(HudsonFilter.java:85)

      root cause

      java.lang.NoClassDefFoundError: Could not initialize class
      hudson.security.SecurityRealm$CaptchaService
      hudson.security.SecurityRealm.validateCaptcha(SecurityRealm.java:134)

      hudson.security.HudsonPrivateSecurityRealm.doCreateAccount(HudsonPrivateSecurityRealm.java:60)
      sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

      sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      java.lang.reflect.Method.invoke(Method.java:597)
      org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:103)
      org.kohsuke.stapler.Function.bindAndinvoke(Function.java:59)

      org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:63)
      org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:30)
      org.kohsuke.stapler.Stapler.invoke(Stapler.java:361)
      org.kohsuke.stapler.MetaClass$7.doDispatch(MetaClass.java:208)

      org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:30)
      org.kohsuke.stapler.Stapler.invoke(Stapler.java:361)
      org.kohsuke.stapler.Stapler.invoke(Stapler.java:298)
      org.kohsuke.stapler.Stapler.service(Stapler.java:98)

      javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:52)
      hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:28)

      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:55)
      org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:166)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:55)

      org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:55)
      org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)

      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:55)
      org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:135)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:55)

      org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:173)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:55)
      org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)

      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:55)
      hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:44)
      hudson.security.HudsonFilter.doFilter(HudsonFilter.java:85)

            Assignee:
            Unassigned
            Reporter:
            smarmit
            Archiver:
            Jenkins Service Account

              Created:
              Updated:
              Resolved:
              Archived: