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

Empty error dialog appears when git job definition applied with no values in fields (Git plugin 2.0 beta)

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Major Major
    • git-plugin
    • Jenkins 1.509.2 slave on Windows Server 2008 R2 wih JDK 1.7.0_25

      While using the Git plugin 2.0 beta, I see an empty error dialog when I:

      • Define a new job
      • Select Git SCM (and set no other values)
      • Apply the definition

      If I use "no" SCM, I can apply without the empty error box. If I insert a value in the repository URL, then I can apply the job definition.

          [JENKINS-19037] Empty error dialog appears when git job definition applied with no values in fields (Git plugin 2.0 beta)

          don't you have any error reported in jenkins log ?
          can you save (not apply) this job configuration form ?

          Nicolas De Loof added a comment - don't you have any error reported in jenkins log ? can you save (not apply) this job configuration form ?

          Mark Waite added a comment -

          When I attempt to create a new job using the Git plugin 2.0 beta on my Jenkins 1.509.2 installation, it fails. I think this is a different behavior than I saw the first time I reported this issue. It now reports a stack trace:

          Status Code: 500

          Exception: java.lang.RuntimeException: Failed to instantiate class hudson.plugins.git.GitSCM from {"value":"2","userRemoteConfigs":

          {"url":"","name":"","refspec":""}

          ,"branches":

          {"name":""}

          ,"gitTool":"jgit","":"auto"}
          Stacktrace:
          javax.servlet.ServletException: java.lang.RuntimeException: Failed to instantiate class hudson.plugins.git.GitSCM from {"value":"2","userRemoteConfigs":

          {"url":"","name":"","refspec":""}

          ,"branches":

          {"name":""}

          ,"gitTool":"jgit","":"auto"}
          at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:719)
          at org.kohsuke.stapler.Stapler.invoke(Stapler.java:770)
          at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:241)
          at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
          at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:677)
          at org.kohsuke.stapler.Stapler.invoke(Stapler.java:770)
          at org.kohsuke.stapler.Stapler.invoke(Stapler.java:583)
          at org.kohsuke.stapler.Stapler.service(Stapler.java:214)
          at javax.servlet.http.HttpServlet.service(HttpServlet.java:45)
          at winstone.ServletConfiguration.execute(ServletConfiguration.java:248)
          at winstone.RequestDispatcher.forward(RequestDispatcher.java:333)
          at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:376)
          at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:95)
          at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:87)
          at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
          at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
          at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:48)
          at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
          at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
          at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
          at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
          at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164)
          at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
          at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
          at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:50)
          at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
          at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
          at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81)
          at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
          at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
          at winstone.RequestDispatcher.forward(RequestDispatcher.java:331)
          at winstone.RequestHandlerThread.processRequest(RequestHandlerThread.java:227)
          at winstone.RequestHandlerThread.run(RequestHandlerThread.java:150)
          at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
          at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
          at java.util.concurrent.FutureTask.run(FutureTask.java:166)
          at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77)
          at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
          at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
          at java.lang.Thread.run(Thread.java:724)
          Caused by: java.lang.RuntimeException: Failed to instantiate class hudson.plugins.git.GitSCM from {"value":"2","userRemoteConfigs":

          {"url":"","name":"","refspec":""}

          ,"branches":

          {"name":""}

          ,"gitTool":"jgit","":"auto"}
          at hudson.model.Descriptor.newInstance(Descriptor.java:602)
          at hudson.plugins.git.GitSCM$DescriptorImpl.newInstance(GitSCM.java:1073)
          at hudson.plugins.git.GitSCM$DescriptorImpl.newInstance(GitSCM.java:977)
          at hudson.scm.SCMS.parseSCM(SCMS.java:63)
          at hudson.model.AbstractProject.submit(AbstractProject.java:1935)
          at hudson.model.Project.submit(Project.java:195)
          at hudson.model.Job.doConfigSubmit(Job.java:1076)
          at hudson.model.AbstractProject.doConfigSubmit(AbstractProject.java:753)
          at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
          at java.lang.reflect.Method.invoke(Method.java:606)
          at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:288)
          at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:151)
          at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:90)
          at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:111)
          at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
          at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:677)
          ... 39 more
          Caused by: hudson.plugins.git.GitException: Error creating repositories
          at hudson.plugins.git.GitSCM$DescriptorImpl.createRepositoryConfigurations(GitSCM.java:1152)
          at hudson.plugins.git.GitSCM.updateFromUserData(GitSCM.java:207)
          at hudson.plugins.git.GitSCM.<init>(GitSCM.java:160)
          at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
          at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
          at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
          at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
          at org.kohsuke.stapler.RequestImpl.invokeConstructor(RequestImpl.java:438)
          at org.kohsuke.stapler.RequestImpl.access$200(RequestImpl.java:76)
          at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:594)
          at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:391)
          at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:387)
          at hudson.model.Descriptor.newInstance(Descriptor.java:593)
          ... 56 more
          Caused by: java.net.URISyntaxException: Cannot parse Git URI-ish: The uri was empty or null
          at org.eclipse.jgit.transport.URIish.<init>(URIish.java:205)
          at org.eclipse.jgit.transport.RemoteConfig.<init>(RemoteConfig.java:174)
          at org.eclipse.jgit.transport.RemoteConfig.getAllRemoteConfigs(RemoteConfig.java:124)
          at hudson.plugins.git.GitSCM$DescriptorImpl.createRepositoryConfigurations(GitSCM.java:1150)
          ... 68 more

          Generated by Stapler at Tue Sep 10 08:05:00 MDT 2013

          Mark Waite added a comment - When I attempt to create a new job using the Git plugin 2.0 beta on my Jenkins 1.509.2 installation, it fails. I think this is a different behavior than I saw the first time I reported this issue. It now reports a stack trace: Status Code: 500 Exception: java.lang.RuntimeException: Failed to instantiate class hudson.plugins.git.GitSCM from {"value":"2","userRemoteConfigs": {"url":"","name":"","refspec":""} ,"branches": {"name":""} ,"gitTool":"jgit","":"auto"} Stacktrace: javax.servlet.ServletException: java.lang.RuntimeException: Failed to instantiate class hudson.plugins.git.GitSCM from {"value":"2","userRemoteConfigs": {"url":"","name":"","refspec":""} ,"branches": {"name":""} ,"gitTool":"jgit","":"auto"} at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:719) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:770) at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:241) at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53) at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:677) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:770) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:583) at org.kohsuke.stapler.Stapler.service(Stapler.java:214) at javax.servlet.http.HttpServlet.service(HttpServlet.java:45) at winstone.ServletConfiguration.execute(ServletConfiguration.java:248) at winstone.RequestDispatcher.forward(RequestDispatcher.java:333) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:376) at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:95) at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:87) at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:48) at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84) at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76) at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164) at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:50) at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81) at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) at winstone.RequestDispatcher.forward(RequestDispatcher.java:331) at winstone.RequestHandlerThread.processRequest(RequestHandlerThread.java:227) at winstone.RequestHandlerThread.run(RequestHandlerThread.java:150) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) at java.util.concurrent.FutureTask.run(FutureTask.java:166) at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:724) Caused by: java.lang.RuntimeException: Failed to instantiate class hudson.plugins.git.GitSCM from {"value":"2","userRemoteConfigs": {"url":"","name":"","refspec":""} ,"branches": {"name":""} ,"gitTool":"jgit","":"auto"} at hudson.model.Descriptor.newInstance(Descriptor.java:602) at hudson.plugins.git.GitSCM$DescriptorImpl.newInstance(GitSCM.java:1073) at hudson.plugins.git.GitSCM$DescriptorImpl.newInstance(GitSCM.java:977) at hudson.scm.SCMS.parseSCM(SCMS.java:63) at hudson.model.AbstractProject.submit(AbstractProject.java:1935) at hudson.model.Project.submit(Project.java:195) at hudson.model.Job.doConfigSubmit(Job.java:1076) at hudson.model.AbstractProject.doConfigSubmit(AbstractProject.java:753) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:288) at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:151) at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:90) at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:111) at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53) at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:677) ... 39 more Caused by: hudson.plugins.git.GitException: Error creating repositories at hudson.plugins.git.GitSCM$DescriptorImpl.createRepositoryConfigurations(GitSCM.java:1152) at hudson.plugins.git.GitSCM.updateFromUserData(GitSCM.java:207) at hudson.plugins.git.GitSCM.<init>(GitSCM.java:160) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:526) at org.kohsuke.stapler.RequestImpl.invokeConstructor(RequestImpl.java:438) at org.kohsuke.stapler.RequestImpl.access$200(RequestImpl.java:76) at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:594) at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:391) at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:387) at hudson.model.Descriptor.newInstance(Descriptor.java:593) ... 56 more Caused by: java.net.URISyntaxException: Cannot parse Git URI-ish: The uri was empty or null at org.eclipse.jgit.transport.URIish.<init>(URIish.java:205) at org.eclipse.jgit.transport.RemoteConfig.<init>(RemoteConfig.java:174) at org.eclipse.jgit.transport.RemoteConfig.getAllRemoteConfigs(RemoteConfig.java:124) at hudson.plugins.git.GitSCM$DescriptorImpl.createRepositoryConfigurations(GitSCM.java:1150) ... 68 more Generated by Stapler at Tue Sep 10 08:05:00 MDT 2013

          Mark Waite added a comment -

          So, the behavior on this specific system has changed. Previously, it would show an empty error box. Now it shows that stack trace. Unfortunately, I don't think I'll have more time to experiment with the failure for several days.

          Mark Waite added a comment - So, the behavior on this specific system has changed. Previously, it would show an empty error box. Now it shows that stack trace. Unfortunately, I don't think I'll have more time to experiment with the failure for several days.

          Code changed in jenkins
          User: Jesse Glick
          Path:
          src/main/java/hudson/plugins/git/GitSCM.java
          src/test/java/hudson/plugins/git/GitSCMTest.java
          http://jenkins-ci.org/commit/git-plugin/42f15d870ec87fbd404f3a4b673ee068b9a5e6ad
          Log:
          [FIXED JENKINS-19037] Ugly stack trace when saving configuration with a missing repository URL.

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: src/main/java/hudson/plugins/git/GitSCM.java src/test/java/hudson/plugins/git/GitSCMTest.java http://jenkins-ci.org/commit/git-plugin/42f15d870ec87fbd404f3a4b673ee068b9a5e6ad Log: [FIXED JENKINS-19037] Ugly stack trace when saving configuration with a missing repository URL.

          Mark Waite added a comment -

          Verified fixed in git plugin 2.0 and git client plugin 1.4.6, probably already fixed in earlier versions as well.

          Mark Waite added a comment - Verified fixed in git plugin 2.0 and git client plugin 1.4.6, probably already fixed in earlier versions as well.

            jglick Jesse Glick
            markewaite Mark Waite
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: