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

Jelly form control f:validateButton giving a warning popup in IE irrespective of whether validation is successfull

    Details

    • Type: Bug
    • Status: Resolved (View Workflow)
    • Priority: Blocker
    • Resolution: Fixed
    • Component/s: core
    • Labels:
    • Environment:
      Windows 2008 R2 64 bit , Internet Explorer (8 and 9)
    • Similar Issues:

      Description

      Getting warning message in a popup saying "Failed to evaluate. Invalid arguments" for jelly form control validateButton. I am getting this pop up irrespective of actual result of validation.

      This is happening only in Internet Explorer(8 and 9). This is not getting reproduced when running jenkins using "mvn hpi:run" but
      getting reproduced when running jenkins using command "java -jar jenkins.war" and then manually importing hpi file from advanced tab.

      For complete details , refer to discussion in
      https://groups.google.com/forum/#!topic/jenkinsci-dev/h4vlO8SkA60

      Sample to reproduce this issue is available in my github
      https://github.com/sureshreddygithub/jenkinssamples.git

      or alternatively you can install https://wiki.jenkins-ci.org/display/JENKINS/SCTMExecutor plugin and try to validate in global configuration in IE.

      Root cause:

      For validate button form control , implementation is available @ scripts/hudson-behavior.js

      In validate function , we are using a custom function geval which is causing the issue.

      If i replace geval with eval i see that everything works as expected in IE as well.

      I will be submitting the fix in git shortly

        Attachments

          Issue Links

            Activity

            Hide
            dogfood dogfood added a comment -

            Integrated in jenkins_main_trunk #2274

            Result = SUCCESS

            Show
            dogfood dogfood added a comment - Integrated in jenkins_main_trunk #2274 Result = SUCCESS
            Hide
            scm_issue_link SCM/JIRA link daemon added a comment -

            Code changed in jenkins
            User: Kohsuke Kawaguchi
            Path:
            changelog.html
            war/src/main/webapp/scripts/hudson-behavior.js
            http://jenkins-ci.org/commit/jenkins/3f48eff1ee39e772bd0c1c097ff99fb62786e69f
            Log:
            [FIXED JENKINS-16561]

            eval("") is no-op in IE but window.execScript("") isn't.
            So bring the uniformity outside


            You received this message because you are subscribed to the Google Groups "Jenkins Commits" group.
            To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-commits+unsubscribe@googlegroups.com.
            For more options, visit https://groups.google.com/groups/opt_out.

            Show
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Kohsuke Kawaguchi Path: changelog.html war/src/main/webapp/scripts/hudson-behavior.js http://jenkins-ci.org/commit/jenkins/3f48eff1ee39e772bd0c1c097ff99fb62786e69f Log: [FIXED JENKINS-16561] eval("") is no-op in IE but window.execScript("") isn't. So bring the uniformity outside – You received this message because you are subscribed to the Google Groups "Jenkins Commits" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-commits+unsubscribe@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out .
            Hide
            kohsuke Kohsuke Kawaguchi added a comment -

            Confirmed. In script console,

            > eval("")
            undefined
            > window.execScript("")
            (x) "Invalid argument."
            
            Show
            kohsuke Kohsuke Kawaguchi added a comment - Confirmed. In script console, > eval("") undefined > window.execScript("") (x) "Invalid argument."
            Hide
            kohsuke Kohsuke Kawaguchi added a comment -

            This also explains why this bug depends on the servlet container. Jetty must be handlin addHeader("script",null) as removing the header while Winstone must be treating it like addHeader("script","");

            Show
            kohsuke Kohsuke Kawaguchi added a comment - This also explains why this bug depends on the servlet container. Jetty must be handlin addHeader("script",null) as removing the header while Winstone must be treating it like addHeader("script","");
            Hide
            kohsuke Kohsuke Kawaguchi added a comment -

            So what script fragment is causing "invalid argument"? It seems like the root cause is that there's an empty value in the script header, not the use of geval.

            I'm fixing this by adding s!="" check.

            Show
            kohsuke Kohsuke Kawaguchi added a comment - So what script fragment is causing "invalid argument"? It seems like the root cause is that there's an empty value in the script header, not the use of geval . I'm fixing this by adding s!="" check.
            Hide
            snallami suresh nallamilli added a comment -

            I was asked my Jesse Glick to mark this issue as "blocking" JENKINS-15617 to capture the relationship.
            I am not sure how to do that. Can some one take care of this

            Show
            snallami suresh nallamilli added a comment - I was asked my Jesse Glick to mark this issue as "blocking" JENKINS-15617 to capture the relationship. I am not sure how to do that. Can some one take care of this

              People

              • Assignee:
                snallami suresh nallamilli
                Reporter:
                snallami suresh nallamilli
              • Votes:
                0 Vote for this issue
                Watchers:
                5 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: