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

Invalid git url results in a 500 and a URISyntaxException stacktrace to the client

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Major Major
    • git-plugin
    • None
    • OS X; firefox; latest hudson as of March 9, 2010; git plugin version 0.8

      Steps to reproduce:

      1. Install git plugin
      2. Create new job, choose any name, type free-style
      3. Choose a git source code repository, enter an invalid url, click add
      4. Click save at the bottom, an unhandled exception occurs and a 500 is returned with the stacktrace

      I've noticed that other fields nicely detect errors as soon as they lose focus and show a handy message. Would it be possible to do that here?

      Here are the log messages that get printed to the hudson log. The stack trace is the same as the one that is shown to the user:

      [webapp 2010/03/09 18:36:30] - Error while serving http://localhost:8080/job/argablarg/configSubmit
      java.lang.reflect.InvocationTargetException
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:597)
      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:74)
      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:180)
      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 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.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(Thread.java:637)
      Caused by: hudson.plugins.git.GitException: Error creating repositories
      at hudson.plugins.git.GitSCM$DescriptorImpl.newInstance(GitSCM.java:800)
      at hudson.plugins.git.GitSCM$DescriptorImpl.newInstance(GitSCM.java:730)
      at hudson.model.Descriptor.newInstance(Descriptor.java:396)
      at hudson.scm.SCMS.parseSCM(SCMS.java:66)
      at hudson.model.AbstractProject.submit(AbstractProject.java:1489)
      at hudson.maven.MavenModuleSet.submit(MavenModuleSet.java:702)
      at hudson.model.Job.doConfigSubmit(Job.java:1005)
      at hudson.model.AbstractProject.doConfigSubmit(AbstractProject.java:547)
      ... 35 more
      Caused by: java.net.URISyntaxException: Cannot parse Git URI-ish: invalid
      at org.spearce.jgit.transport.URIish.initializeFromString(URIish.java:115)
      at org.spearce.jgit.transport.URIish.<init>(URIish.java:82)
      at org.spearce.jgit.transport.RemoteConfig.<init>(RemoteConfig.java:149)
      at org.spearce.jgit.transport.RemoteConfig.getAllRemoteConfigs(RemoteConfig.java:106)
      at hudson.plugins.git.GitSCM$DescriptorImpl.newInstance(GitSCM.java:796)
      ... 42 more

      [Winstone 2010/03/09 18:36:30] - Untrapped Error in Servlet
      javax.servlet.ServletException: hudson.plugins.git.GitException: Error creating repositories
      at org.kohsuke.stapler.Stapler.invoke(Stapler.java:554)
      at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:180)
      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 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.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(Thread.java:637)
      Caused by: hudson.plugins.git.GitException: Error creating repositories
      at hudson.plugins.git.GitSCM$DescriptorImpl.newInstance(GitSCM.java:800)
      at hudson.plugins.git.GitSCM$DescriptorImpl.newInstance(GitSCM.java:730)
      at hudson.model.Descriptor.newInstance(Descriptor.java:396)
      at hudson.scm.SCMS.parseSCM(SCMS.java:66)
      at hudson.model.AbstractProject.submit(AbstractProject.java:1489)
      at hudson.maven.MavenModuleSet.submit(MavenModuleSet.java:702)
      at hudson.model.Job.doConfigSubmit(Job.java:1005)
      at hudson.model.AbstractProject.doConfigSubmit(AbstractProject.java:547)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:597)
      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:74)
      at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:30)
      at org.kohsuke.stapler.Stapler.invoke(Stapler.java:519)
      ... 25 more
      Caused by: java.net.URISyntaxException: Cannot parse Git URI-ish: invalid
      at org.spearce.jgit.transport.URIish.initializeFromString(URIish.java:115)
      at org.spearce.jgit.transport.URIish.<init>(URIish.java:82)
      at org.spearce.jgit.transport.RemoteConfig.<init>(RemoteConfig.java:149)
      at org.spearce.jgit.transport.RemoteConfig.getAllRemoteConfigs(RemoteConfig.java:106)
      at hudson.plugins.git.GitSCM$DescriptorImpl.newInstance(GitSCM.java:796)
      ... 42 more

            ndeloof Nicolas De Loof
            jeremyhuiskamp jeremyhuiskamp
            Votes:
            2 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: