Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-6424

JavaScript RangeError: Maximum recursion depth exceeded

    • Icon: Bug Bug
    • Resolution: Postponed
    • Icon: Critical Critical
    • other
    • None
    • Windows XP, Hudson 1.355, Opera 10.53
      Fedora 12, Hudson 1.343 with HUDSON-6424 patch, Opera 10.60
      Windows 7 64-bit, Opera 10.63, Hudson 1.382

      When trying to edit an simple Job with 4 windows batch scripts, I get the error "JavaScript RangeError: Maximum recursion depth exceeded" when running Hudson with Opera 10.53.

      The error happens, when I try to add another windows batch script. The error is easy reproducable, the content of the batch scripts are not even important. I even got it with such simple scripts as cls (script 1), echo 1 (script 2), echo 2 (script 3), echo 3 (script 4).

      After an pop-up with the error message "JavaScript RangeError: Maximum recursion depth exceeded", I get the following error message:

      {{Status Code: 500
      Exception:
      Stacktrace:
      net.sf.json.JSONException: A JSONObject text must begin with '

      {' at character 1 of init at net.sf.json.util.JSONTokener.syntaxError(JSONTokener.java:512) at net.sf.json.JSONObject._fromJSONTokener(JSONObject.java:839) at net.sf.json.JSONObject._fromString(JSONObject.java:1060) at net.sf.json.JSONObject.fromObject(JSONObject.java:176) at net.sf.json.JSONObject.fromObject(JSONObject.java:147) at org.kohsuke.stapler.RequestImpl.getSubmittedForm(RequestImpl.java:711) at hudson.model.Job.doConfigSubmit(Job.java:1026) at hudson.model.AbstractProject.doConfigSubmit(AbstractProject.java:555) at sun.reflect.GeneratedMethodAccessor429.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:169) at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:101) at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:54) at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:75) at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:30) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:519) at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:181) at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:30) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:519) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:435) at org.kohsuke.stapler.Stapler.service(Stapler.java:123) at javax.servlet.http.HttpServlet.service(HttpServlet.java:45) at winstone.ServletConfiguration.execute(ServletConfiguration.java:249) at winstone.RequestDispatcher.forward(RequestDispatcher.java:335) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:378) at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:94) at net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:330) at org.jvnet.hudson.plugins.monitoring.HudsonMonitoringFilter.doFilter(HudsonMonitoringFilter.java:31) at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:97) at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:86) at winstone.FilterConfiguration.execute(FilterConfiguration.java:195) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368) at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:47) at winstone.FilterConfiguration.execute(FilterConfiguration.java:195) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84) at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:166) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:173) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249) at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:66) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76) at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164) at winstone.FilterConfiguration.execute(FilterConfiguration.java:195) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368) at winstone.RequestDispatcher.forward(RequestDispatcher.java:333) at winstone.RequestHandlerThread.processRequest(RequestHandlerThread.java:244) at winstone.RequestHandlerThread.run(RequestHandlerThread.java:150) at java.lang.Thread.run(Unknown Source)}

      }

          [JENKINS-6424] JavaScript RangeError: Maximum recursion depth exceeded

          Alan Harder added a comment -

          please clear all browser caches to ensure the latest javascript is used.. do you still see an error? If so, please check the error console for any javascript errors and post them here. The "500" error is expected, as a javascript problem will cause invalid form data to be submitted.

          Alan Harder added a comment - please clear all browser caches to ensure the latest javascript is used.. do you still see an error? If so, please check the error console for any javascript errors and post them here. The "500" error is expected, as a javascript problem will cause invalid form data to be submitted.

          bl_80 added a comment -

          I get no JavaScript errors in the error console. Clearing the browser cache didn't change anything, the error still occurs.

          bl_80 added a comment - I get no JavaScript errors in the error console. Clearing the browser cache didn't change anything, the error still occurs.

          Alan Harder added a comment -

          Looks like Hudson's form processing javascript exceeds some new limit in Opera.
          According to this thread it is only a problem since Opera 10.52, so you might try downgrading to 10.51.

          Alan Harder added a comment - Looks like Hudson's form processing javascript exceeds some new limit in Opera. According to this thread it is only a problem since Opera 10.52, so you might try downgrading to 10.51.

          Alan Harder added a comment -

          dug a little further.. it's the Object.toJSON(form.formDom) call in buildFormTree that triggers the error. This function is defined in prototype.js

          Alan Harder added a comment - dug a little further.. it's the Object.toJSON(form.formDom) call in buildFormTree that triggers the error. This function is defined in prototype.js

          Alan Harder added a comment -

          Object.toJSON defined in prototype.js has this line:
          if (object.toJSON) return object.toJSON();

          For some reason, Opera 10.53 (and 10.52 too, according to the above linked forum post) can sometimes get false here when the toJSON function is actually defined on the object. Even stranger, simply rechecking the exact same attribute again seems to then return true.

          if (object.toJSON || object.toJSON) return object.toJSON();

          This works!?

          Alan Harder added a comment - Object.toJSON defined in prototype.js has this line: if (object.toJSON) return object.toJSON(); For some reason, Opera 10.53 (and 10.52 too, according to the above linked forum post) can sometimes get false here when the toJSON function is actually defined on the object. Even stranger, simply rechecking the exact same attribute again seems to then return true. if (object.toJSON || object.toJSON) return object.toJSON(); This works!?

          Alan Harder added a comment -

          typeof(object.toJSON) exhibits the same behavior. The first call gets undefined and the next call gets function, even when both of these calls are after 2 references to object.toJSON in boolean contexts.

          Alan Harder added a comment - typeof(object.toJSON) exhibits the same behavior. The first call gets undefined and the next call gets function , even when both of these calls are after 2 references to object.toJSON in boolean contexts.

          Code changed in hudson
          User: : mindless
          Path:
          trunk/hudson/main/war/resources/scripts/prototype.js
          trunk/www/changelog.html
          http://jenkins-ci.org/commit/30716
          Log:
          [FIXED JENKINS-6424] Add workaround for Opera 10.52/53 bug causing
          error in saving job configuration.

          SCM/JIRA link daemon added a comment - Code changed in hudson User: : mindless Path: trunk/hudson/main/war/resources/scripts/prototype.js trunk/www/changelog.html http://jenkins-ci.org/commit/30716 Log: [FIXED JENKINS-6424] Add workaround for Opera 10.52/53 bug causing error in saving job configuration.

          Code changed in hudson
          User: : drulli
          Path:
          trunk/hudson/plugins/warnings/src/main/java/hudson/plugins/warnings/parser/AntEclipseParser.java
          trunk/hudson/plugins/warnings/src/test/java/hudson/plugins/warnings/parser/AntEclipseParserTest.java
          trunk/hudson/plugins/warnings/src/test/resources/hudson/plugins/warnings/parser/issue6427.txt
          http://jenkins-ci.org/commit/30822
          Log:
          [FIXED JENKINS-6424] Fixed regexp of Eclipse parser if the build log does not use ant task prefixes.

          SCM/JIRA link daemon added a comment - Code changed in hudson User: : drulli Path: trunk/hudson/plugins/warnings/src/main/java/hudson/plugins/warnings/parser/AntEclipseParser.java trunk/hudson/plugins/warnings/src/test/java/hudson/plugins/warnings/parser/AntEclipseParserTest.java trunk/hudson/plugins/warnings/src/test/resources/hudson/plugins/warnings/parser/issue6427.txt http://jenkins-ci.org/commit/30822 Log: [FIXED JENKINS-6424] Fixed regexp of Eclipse parser if the build log does not use ant task prefixes.

          Ulli Hafner added a comment -

          Uups, wrong issue. Please ignore the scm link comment, I had a typo in the commit message.

          Ulli Hafner added a comment - Uups, wrong issue. Please ignore the scm link comment, I had a typo in the commit message.

          pgweiss added a comment -

          I still see this error in 1.362.

          pgweiss added a comment - I still see this error in 1.362.

          Alan Harder added a comment -

          pgweiss, please provide full details of the issue you see (your server/browser env details, steps to see the problem).

          Alan Harder added a comment - pgweiss, please provide full details of the issue you see (your server/browser env details, steps to see the problem).

          Karel Piwko added a comment -

          The same issue is present after the patch was applied (we're using 1.343 based version with custom patches) with Opera 10.60, build 6386).

          Steps to reproduce:
          1/ Have a job with multiple build steps (e.g. Ant targets)
          2/ Click on "Advanced" for 2 or more of them
          3/ Save the configuration (no modification is necessary)
          4/ You'll get the error described in current issue

          Karel Piwko added a comment - The same issue is present after the patch was applied (we're using 1.343 based version with custom patches) with Opera 10.60, build 6386). Steps to reproduce: 1/ Have a job with multiple build steps (e.g. Ant targets) 2/ Click on "Advanced" for 2 or more of them 3/ Save the configuration (no modification is necessary) 4/ You'll get the error described in current issue

          Alan Harder added a comment -

          I was not able to see any error with above steps using Hudson 1.358 and Opera 10.60 (build 3445) on winxp.

          Alan Harder added a comment - I was not able to see any error with above steps using Hudson 1.358 and Opera 10.60 (build 3445) on winxp.

          Alan Harder added a comment -

          Any further details anyone can provide, or shall we close this issue again?

          Alan Harder added a comment - Any further details anyone can provide, or shall we close this issue again?

          Alan Harder added a comment -

          No response, so reclosing.
          If anyone still sees this issue, please reopen and provide full environment details and steps to reproduce the issue, thanks.

          Alan Harder added a comment - No response, so reclosing. If anyone still sees this issue, please reopen and provide full environment details and steps to reproduce the issue, thanks.

          dangthill added a comment -

          This issue has been affecting me for the last several months. Currently, I can reproduce it on:

          Windows XP-64 SP2
          Hudson 1.374 (running as a service)
          Opera 10.61

          For me, if I go to /configure, scroll to the bottom (not making any changes) and click Save. It also occurs frequently in other locations, but I can't consistently reproduce it.

          dangthill added a comment - This issue has been affecting me for the last several months. Currently, I can reproduce it on: Windows XP-64 SP2 Hudson 1.374 (running as a service) Opera 10.61 For me, if I go to /configure, scroll to the bottom (not making any changes) and click Save. It also occurs frequently in other locations, but I can't consistently reproduce it.

          jmmckinnon added a comment -

          This issue is still very much alive for me. It can be hard to reproduce consistently, but seems to happen almost every time I am clicking save on a job page or at the /configure page when at work. Sadly, much less often when I'm trying to reproduce for this issue page...

          Current system info: Windows 7 64-bit, Opera 10.63. Hudson 1.382

          I can post hardware environment details if that would be interesting.

          All of my jobs are free-style jobs, though this also happens at the general configuration pages and new job page.

          I can get it to happen with a standard, fresh Hudson 1.382 (java -jar hudson.war) running locally, even at the very first attempt to create a job (type x for job name, click a radio button, click OK). That case is not reliably reproducible, but shows how simple of a form can cause this.

          It's happened with both Winstone (java -jar hudson.war) and with Tomcat as the container.

          I have tried fully clearing my Opera cache.

          I usually cannot see any errors in the error console. Problem is harder to reproduce (general case not reproducible?) when opera dragonfly is running. Dragonfly is Opera's built in developer javascript debugger/DOM explorer/etc - type Ctrl+Shift+I to launch it. The best I could do after an hour of trying to get a javascript error console entry or more info using dragonfly was to reproduce without dragonfly,. Whenever the issue happens - clicking OK then clicking Save again makes it happen again...so I made it happen, enabled dragonfly (Ctrl+Shift+I), then clicked Save again and got an error 500 page like one of the others. Here is what winstone logged:

          [webapp 2010/10/26 00:40:09] - Error while serving http://localhost:8080/configS
          ubmit
          java.lang.reflect.InvocationTargetException
          at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
          java:39)
          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
          sorImpl.java:25)
          at java.lang.reflect.Method.invoke(Method.java:597)
          at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:25
          9)
          at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:126)
          at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.j
          ava:65)
          at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:79)
          at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.
          java:30)
          at org.kohsuke.stapler.Stapler.invoke(Stapler.java:537)
          at org.kohsuke.stapler.Stapler.invoke(Stapler.java:453)
          at org.kohsuke.stapler.Stapler.service(Stapler.java:135)
          at javax.servlet.http.HttpServlet.service(HttpServlet.java:45)
          at winstone.ServletConfiguration.execute(ServletConfiguration.java:249)
          at winstone.RequestDispatcher.forward(RequestDispatcher.java:335)
          at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:378)
          at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:9
          4)
          at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:86)

          at winstone.FilterConfiguration.execute(FilterConfiguration.java:195)
          at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368)
          at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:47)
          at winstone.FilterConfiguration.execute(FilterConfiguration.java:195)
          at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368)
          at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.
          java:84)
          at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.ja
          va:76)
          at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164)
          at winstone.FilterConfiguration.execute(FilterConfiguration.java:195)
          at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368)
          at winstone.RequestDispatcher.forward(RequestDispatcher.java:333)
          at winstone.RequestHandlerThread.processRequest(RequestHandlerThread.jav
          a:244)
          at winstone.RequestHandlerThread.run(RequestHandlerThread.java:150)
          at java.lang.Thread.run(Thread.java:619)
          Caused by: net.sf.json.JSONException: JSONObject["globalMavenOpts"] not found.
          at net.sf.json.JSONObject.getString(JSONObject.java:1789)
          at hudson.maven.MavenModuleSet$DescriptorImpl.configure(MavenModuleSet.j
          ava:822)
          at hudson.model.Hudson.configureDescriptor(Hudson.java:2467)
          at hudson.model.Hudson.doConfigSubmit(Hudson.java:2424)
          ... 32 more

          [Winstone 2010/10/26 00:40:09] - Untrapped Error in Servlet
          javax.servlet.ServletException: net.sf.json.JSONException: JSONObject["globalMav
          enOpts"] not found.
          at org.kohsuke.stapler.Stapler.invoke(Stapler.java:572)
          at org.kohsuke.stapler.Stapler.invoke(Stapler.java:453)
          at org.kohsuke.stapler.Stapler.service(Stapler.java:135)
          at javax.servlet.http.HttpServlet.service(HttpServlet.java:45)
          at winstone.ServletConfiguration.execute(ServletConfiguration.java:249)
          at winstone.RequestDispatcher.forward(RequestDispatcher.java:335)
          at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:378)
          at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:9
          4)
          at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:86)

          at winstone.FilterConfiguration.execute(FilterConfiguration.java:195)
          at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368)
          at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:47)
          at winstone.FilterConfiguration.execute(FilterConfiguration.java:195)
          at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368)
          at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.
          java:84)
          at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.ja
          va:76)
          at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164)
          at winstone.FilterConfiguration.execute(FilterConfiguration.java:195)
          at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368)
          at winstone.RequestDispatcher.forward(RequestDispatcher.java:333)
          at winstone.RequestHandlerThread.processRequest(RequestHandlerThread.jav
          a:244)
          at winstone.RequestHandlerThread.run(RequestHandlerThread.java:150)
          at java.lang.Thread.run(Thread.java:619)
          Caused by: net.sf.json.JSONException: JSONObject["globalMavenOpts"] not found.
          at net.sf.json.JSONObject.getString(JSONObject.java:1789)
          at hudson.maven.MavenModuleSet$DescriptorImpl.configure(MavenModuleSet.j
          ava:822)
          at hudson.model.Hudson.configureDescriptor(Hudson.java:2467)
          at hudson.model.Hudson.doConfigSubmit(Hudson.java:2424)
          at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
          java:39)
          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
          sorImpl.java:25)
          at java.lang.reflect.Method.invoke(Method.java:597)
          at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:25
          9)
          at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:126)
          at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.j
          ava:65)
          at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:79)
          at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.
          java:30)
          at org.kohsuke.stapler.Stapler.invoke(Stapler.java:537)
          ... 22 more

          Given that Firefox is unaffected by this, I am inclined to think it's an Opera issue but I'm not sure how to gather further data for a proper bug report with them.

          jmmckinnon added a comment - This issue is still very much alive for me. It can be hard to reproduce consistently, but seems to happen almost every time I am clicking save on a job page or at the /configure page when at work. Sadly, much less often when I'm trying to reproduce for this issue page... Current system info: Windows 7 64-bit, Opera 10.63. Hudson 1.382 I can post hardware environment details if that would be interesting. All of my jobs are free-style jobs, though this also happens at the general configuration pages and new job page. I can get it to happen with a standard, fresh Hudson 1.382 (java -jar hudson.war) running locally, even at the very first attempt to create a job (type x for job name, click a radio button, click OK). That case is not reliably reproducible, but shows how simple of a form can cause this. It's happened with both Winstone (java -jar hudson.war) and with Tomcat as the container. I have tried fully clearing my Opera cache. I usually cannot see any errors in the error console. Problem is harder to reproduce (general case not reproducible?) when opera dragonfly is running. Dragonfly is Opera's built in developer javascript debugger/DOM explorer/etc - type Ctrl+Shift+I to launch it. The best I could do after an hour of trying to get a javascript error console entry or more info using dragonfly was to reproduce without dragonfly,. Whenever the issue happens - clicking OK then clicking Save again makes it happen again...so I made it happen, enabled dragonfly (Ctrl+Shift+I), then clicked Save again and got an error 500 page like one of the others. Here is what winstone logged: [webapp 2010/10/26 00:40:09] - Error while serving http://localhost:8080/configS ubmit java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces sorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:25 9) at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:126) at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.j ava:65) at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:79) at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher. java:30) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:537) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:453) at org.kohsuke.stapler.Stapler.service(Stapler.java:135) at javax.servlet.http.HttpServlet.service(HttpServlet.java:45) at winstone.ServletConfiguration.execute(ServletConfiguration.java:249) at winstone.RequestDispatcher.forward(RequestDispatcher.java:335) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:378) at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:9 4) at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:86) at winstone.FilterConfiguration.execute(FilterConfiguration.java:195) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368) at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:47) at winstone.FilterConfiguration.execute(FilterConfiguration.java:195) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter. java:84) at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.ja va:76) at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164) at winstone.FilterConfiguration.execute(FilterConfiguration.java:195) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368) at winstone.RequestDispatcher.forward(RequestDispatcher.java:333) at winstone.RequestHandlerThread.processRequest(RequestHandlerThread.jav a:244) at winstone.RequestHandlerThread.run(RequestHandlerThread.java:150) at java.lang.Thread.run(Thread.java:619) Caused by: net.sf.json.JSONException: JSONObject ["globalMavenOpts"] not found. at net.sf.json.JSONObject.getString(JSONObject.java:1789) at hudson.maven.MavenModuleSet$DescriptorImpl.configure(MavenModuleSet.j ava:822) at hudson.model.Hudson.configureDescriptor(Hudson.java:2467) at hudson.model.Hudson.doConfigSubmit(Hudson.java:2424) ... 32 more [Winstone 2010/10/26 00:40:09] - Untrapped Error in Servlet javax.servlet.ServletException: net.sf.json.JSONException: JSONObject["globalMav enOpts"] not found. at org.kohsuke.stapler.Stapler.invoke(Stapler.java:572) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:453) at org.kohsuke.stapler.Stapler.service(Stapler.java:135) at javax.servlet.http.HttpServlet.service(HttpServlet.java:45) at winstone.ServletConfiguration.execute(ServletConfiguration.java:249) at winstone.RequestDispatcher.forward(RequestDispatcher.java:335) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:378) at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:9 4) at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:86) at winstone.FilterConfiguration.execute(FilterConfiguration.java:195) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368) at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:47) at winstone.FilterConfiguration.execute(FilterConfiguration.java:195) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter. java:84) at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.ja va:76) at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164) at winstone.FilterConfiguration.execute(FilterConfiguration.java:195) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368) at winstone.RequestDispatcher.forward(RequestDispatcher.java:333) at winstone.RequestHandlerThread.processRequest(RequestHandlerThread.jav a:244) at winstone.RequestHandlerThread.run(RequestHandlerThread.java:150) at java.lang.Thread.run(Thread.java:619) Caused by: net.sf.json.JSONException: JSONObject ["globalMavenOpts"] not found. at net.sf.json.JSONObject.getString(JSONObject.java:1789) at hudson.maven.MavenModuleSet$DescriptorImpl.configure(MavenModuleSet.j ava:822) at hudson.model.Hudson.configureDescriptor(Hudson.java:2467) at hudson.model.Hudson.doConfigSubmit(Hudson.java:2424) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces sorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:25 9) at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:126) at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.j ava:65) at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:79) at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher. java:30) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:537) ... 22 more Given that Firefox is unaffected by this, I am inclined to think it's an Opera issue but I'm not sure how to gather further data for a proper bug report with them.

          jmmckinnon added a comment -

          I enabled the Opera Error Log and captured a current error stacktrace (Opera 10.63). It may just be extra noise though, so I am omitting it for now.

          When I examined prototype.js to find the line number, I noticed it's version 1.5.1.1, which was released June 19, 2007. (plus with the original JENKINS-6424 patch)

          Prototype 1.6.1 is the current stable release, and was released Sept 1, 2009.

          I am investigating whether a drop in of prototype.js 1.6.1 fixes the issues on Opera - if it does (initial testing looks like it does, but I want to really give it a good workout), could Hudson just rev to a newer release of prototype.js?

          jmmckinnon added a comment - I enabled the Opera Error Log and captured a current error stacktrace (Opera 10.63). It may just be extra noise though, so I am omitting it for now. When I examined prototype.js to find the line number, I noticed it's version 1.5.1.1, which was released June 19, 2007. (plus with the original JENKINS-6424 patch) Prototype 1.6.1 is the current stable release, and was released Sept 1, 2009. I am investigating whether a drop in of prototype.js 1.6.1 fixes the issues on Opera - if it does (initial testing looks like it does, but I want to really give it a good workout), could Hudson just rev to a newer release of prototype.js?

          Alan Harder added a comment -

          possibly, but check our local changes and try to reapply in 1.6.1 where applicable.. svn diff -r 4567:HEAD war/src/main/webapp/scripts/prototype.js

          Alan Harder added a comment - possibly, but check our local changes and try to reapply in 1.6.1 where applicable.. svn diff -r 4567:HEAD war/src/main/webapp/scripts/prototype.js

          jmmckinnon added a comment - - edited

          Will do - I have a personal vendetta against this issue at this point... here's to hoping. Should have more time to continue tomorrow...

          EDIT: Ahh yes...there's been numerous modifications, not just the one workaround. Still, first few revisions look OK as the function in question wasn't modified through 1.6.1...I'll go through them all.

          jmmckinnon added a comment - - edited Will do - I have a personal vendetta against this issue at this point... here's to hoping. Should have more time to continue tomorrow... EDIT: Ahh yes...there's been numerous modifications, not just the one workaround. Still, first few revisions look OK as the function in question wasn't modified through 1.6.1...I'll go through them all.

          Alan Harder added a comment -

          reopen if anyone still sees this

          Alan Harder added a comment - reopen if anyone still sees this

            mindless Alan Harder
            bl_80 bl_80
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: