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

After entering and authenticating with SSL cert, repository location isn't persisted

    XMLWordPrintable

    Details

    • Similar Issues:

      Description

      Reproduction steps:
      1) Create a new job using Subversion and set the Repository URL to a repository which requires SSL authentication
      2) See the error message under the Repository URL field:
      "Unable to access [svn repository] : svn: Unknown error (show details) (Maybe you need to enter credential?)"
      3) Click on "enter credential"
      4) Select the "HTTPS client certificate" radio button, browse to the certificate file on your local filesystem, enter its password, click OK
      5) View message "Authentication was successful. Information is stored in Hudson now." (thanks to the fix for http://issues.jenkins-ci.org/browse/JENKINS-5230, this part works correctly now)
      6) Navigate back to the job configure page for the job you just created
      7) See that "Source Code Management" is set to "None" and the repository URL you entered was not saved

      Expected results:
      After entering SSL cert and password and successfully authenticating with the svn repository, the repository URL should be saved for that job.

        Attachments

          Issue Links

            Activity

            Hide
            awixted awixted added a comment - - edited

            Kohsuke - Here's the full div, without truncating the exception:

             
            <div class="error"><img width="1" height="16" src="/static/1ea8ce3d/images/none.gif">Unable to access  [svn repository] : svn: Unknown error <a onclick="javascript:document.getElementById(&quot;svnerror&quot;).style.display=&quot;block&quot;;document.getElementById(&quot;svnerrorlink&quot;).style.display=&quot;none&quot;;return false;" id="svnerrorlink" href="#">(show details)</a><pre style="display: none;" id="svnerror">org.tmatesoft.svn.core.SVNException: svn: Unknown error
            	at org.tmatesoft.svn.core.internal.io.dav.http.HTTPSSLKeyManager.acknowledgeAndClearAuthentication(HTTPSSLKeyManager.java:231)
            	at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:368)
            	at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:273)
            	at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:261)
            	at org.tmatesoft.svn.core.internal.io.dav.DAVConnection.exchangeCapabilities(DAVConnection.java:516)
            	at org.tmatesoft.svn.core.internal.io.dav.DAVConnection.open(DAVConnection.java:98)
            	at org.tmatesoft.svn.core.internal.io.dav.DAVRepository.openConnection(DAVRepository.java:1001)
            	at org.tmatesoft.svn.core.internal.io.dav.DAVRepository.testConnection(DAVRepository.java:97)
            	at hudson.scm.SubversionSCM$DescriptorImpl.checkRepositoryPath(SubversionSCM.java:1701)
            	at hudson.scm.SubversionSCM$DescriptorImpl.doCheckRemote(SubversionSCM.java:1644)
            	at sun.reflect.GeneratedMethodAccessor361.invoke(Unknown Source)
            	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:185)
            	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:500)
            	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:500)
            	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:500)
            	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:416)
            	at org.kohsuke.stapler.Stapler.service(Stapler.java:122)
            	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.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(Thread.java:619)
            Caused by: java.lang.NullPointerException
            	at java.io.FileInputStream.<init>(FileInputStream.java:103)
            	at org.tmatesoft.svn.core.auth.SVNSSLAuthentication.<init>(SVNSSLAuthentication.java:46)
            	at org.tmatesoft.svn.core.internal.wc.DefaultSVNAuthenticationManager$PersistentAuthenticationProvider.requestClientAuthentication(DefaultSVNAuthenticationManager.java:502)
            	at org.tmatesoft.svn.core.internal.wc.DefaultSVNAuthenticationManager.getFirstAuthentication(DefaultSVNAuthenticationManager.java:159)
            	at hudson.scm.FilterSVNAuthenticationManager.getFirstAuthentication(FilterSVNAuthenticationManager.java:38)
            	at org.tmatesoft.svn.core.internal.io.dav.http.HTTPSSLKeyManager.initialize(HTTPSSLKeyManager.java:255)
            	at org.tmatesoft.svn.core.internal.io.dav.http.HTTPSSLKeyManager.initializeNoException(HTTPSSLKeyManager.java:237)
            	at org.tmatesoft.svn.core.internal.io.dav.http.HTTPSSLKeyManager.chooseClientAlias(HTTPSSLKeyManager.java:131)
            	at com.sun.net.ssl.internal.ssl.AbstractWrapper.chooseClientAlias(SSLContextImpl.java:262)
            	at com.sun.net.ssl.internal.ssl.ClientHandshaker.serverHelloDone(ClientHandshaker.java:500)
            	at com.sun.net.ssl.internal.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:197)
            	at com.sun.net.ssl.internal.ssl.Handshaker.processLoop(Handshaker.java:516)
            	at com.sun.net.ssl.internal.ssl.Handshaker.process_record(Handshaker.java:454)
            	at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:884)
            	at com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1096)
            	at com.sun.net.ssl.internal.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:623)
            	at com.sun.net.ssl.internal.ssl.AppOutputStream.write(AppOutputStream.java:59)
            	at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:65)
            	at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:123)
            	at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.sendData(HTTPConnection.java:226)
            	at org.tmatesoft.svn.core.internal.io.dav.http.HTTPRequest.dispatch(HTTPRequest.java:166)
            	at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:345)
            	... 60 more
            </init></init></pre> (Maybe you need to <a href="/scm/SubversionSCM/enterCredential? [svn repository]" target="_new">enter credential</a>?)<br></div>
            

            Because of the target="_new" that doesn't actually open the credentials page in a new tab (at least, not in Firefox), I tried opening it in a new tab manually and entering the creds, successfully authenticating. Then I went back to the configure page and clicked Save, but this did not actually cause the certfile & password to save.

            Show
            awixted awixted added a comment - - edited Kohsuke - Here's the full div, without truncating the exception: <div class="error"><img width="1" height="16" src="/static/1ea8ce3d/images/none.gif">Unable to access [svn repository] : svn: Unknown error <a onclick="javascript:document.getElementById(&quot;svnerror&quot;).style.display=&quot;block&quot;;document.getElementById(&quot;svnerrorlink&quot;).style.display=&quot;none&quot;;return false;" id="svnerrorlink" href="#">(show details)</a><pre style="display: none;" id="svnerror">org.tmatesoft.svn.core.SVNException: svn: Unknown error at org.tmatesoft.svn.core.internal.io.dav.http.HTTPSSLKeyManager.acknowledgeAndClearAuthentication(HTTPSSLKeyManager.java:231) at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:368) at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:273) at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:261) at org.tmatesoft.svn.core.internal.io.dav.DAVConnection.exchangeCapabilities(DAVConnection.java:516) at org.tmatesoft.svn.core.internal.io.dav.DAVConnection.open(DAVConnection.java:98) at org.tmatesoft.svn.core.internal.io.dav.DAVRepository.openConnection(DAVRepository.java:1001) at org.tmatesoft.svn.core.internal.io.dav.DAVRepository.testConnection(DAVRepository.java:97) at hudson.scm.SubversionSCM$DescriptorImpl.checkRepositoryPath(SubversionSCM.java:1701) at hudson.scm.SubversionSCM$DescriptorImpl.doCheckRemote(SubversionSCM.java:1644) at sun.reflect.GeneratedMethodAccessor361.invoke(Unknown Source) 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:185) 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:500) 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:500) 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:500) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:416) at org.kohsuke.stapler.Stapler.service(Stapler.java:122) 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.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(Thread.java:619) Caused by: java.lang.NullPointerException at java.io.FileInputStream.<init>(FileInputStream.java:103) at org.tmatesoft.svn.core.auth.SVNSSLAuthentication.<init>(SVNSSLAuthentication.java:46) at org.tmatesoft.svn.core.internal.wc.DefaultSVNAuthenticationManager$PersistentAuthenticationProvider.requestClientAuthentication(DefaultSVNAuthenticationManager.java:502) at org.tmatesoft.svn.core.internal.wc.DefaultSVNAuthenticationManager.getFirstAuthentication(DefaultSVNAuthenticationManager.java:159) at hudson.scm.FilterSVNAuthenticationManager.getFirstAuthentication(FilterSVNAuthenticationManager.java:38) at org.tmatesoft.svn.core.internal.io.dav.http.HTTPSSLKeyManager.initialize(HTTPSSLKeyManager.java:255) at org.tmatesoft.svn.core.internal.io.dav.http.HTTPSSLKeyManager.initializeNoException(HTTPSSLKeyManager.java:237) at org.tmatesoft.svn.core.internal.io.dav.http.HTTPSSLKeyManager.chooseClientAlias(HTTPSSLKeyManager.java:131) at com.sun.net.ssl.internal.ssl.AbstractWrapper.chooseClientAlias(SSLContextImpl.java:262) at com.sun.net.ssl.internal.ssl.ClientHandshaker.serverHelloDone(ClientHandshaker.java:500) at com.sun.net.ssl.internal.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:197) at com.sun.net.ssl.internal.ssl.Handshaker.processLoop(Handshaker.java:516) at com.sun.net.ssl.internal.ssl.Handshaker.process_record(Handshaker.java:454) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:884) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1096) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:623) at com.sun.net.ssl.internal.ssl.AppOutputStream.write(AppOutputStream.java:59) at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:65) at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:123) at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.sendData(HTTPConnection.java:226) at org.tmatesoft.svn.core.internal.io.dav.http.HTTPRequest.dispatch(HTTPRequest.java:166) at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:345) ... 60 more </init></init></pre> (Maybe you need to <a href="/scm/SubversionSCM/enterCredential? [svn repository]" target="_new">enter credential</a>?)<br></div> Because of the target="_new" that doesn't actually open the credentials page in a new tab (at least, not in Firefox), I tried opening it in a new tab manually and entering the creds, successfully authenticating. Then I went back to the configure page and clicked Save, but this did not actually cause the certfile & password to save.
            Hide
            kohsuke Kohsuke Kawaguchi added a comment -

            Got it, mindless — so the problem at hand is whether target="_new" is taking effect or not.

            Show
            kohsuke Kohsuke Kawaguchi added a comment - Got it, mindless — so the problem at hand is whether target="_new" is taking effect or not.
            Hide
            mindless Alan Harder added a comment -

            will try _blank instead of _new (reference)

            Show
            mindless Alan Harder added a comment - will try _blank instead of _new ( reference )
            Hide
            scm_issue_link SCM/JIRA link daemon added a comment -

            Code changed in hudson
            User: : mindless
            Path:
            trunk/hudson/plugins/subversion/src/main/java/hudson/scm/SubversionSCM.java
            trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/SubversionSCM/DescriptorImpl/url-help.properties
            trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/SubversionSCM/DescriptorImpl/url-help_fr.properties
            trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/SubversionSCM/DescriptorImpl/url-help_ja.properties
            trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/SubversionSCM/help-excludedRegions.html
            trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/SubversionSCM/help-excludedRegions_de.html
            trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/SubversionSCM/help-excludedRegions_fr.html
            trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/SubversionSCM/help-excludedRegions_ja.html
            trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/SubversionSCM/help-excludedRevprop.html
            trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/SubversionSCM/help-local.html
            trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/SubversionSCM/help-local_de.html
            trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/SubversionSCM/help-local_fr.html
            trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/SubversionSCM/help-local_ja.html
            trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/SubversionSCM/help-local_pt_BR.html
            trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/SubversionSCM/help-local_ru.html
            trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/SubversionSCM/help-local_tr.html
            trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/SubversionSCM/help.html
            trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/SubversionSCM/help_ja.html
            trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/subversion/Messages.properties
            http://jenkins-ci.org/commit/26613
            Log:
            [FIXED JENKINS-5348] use target="_blank" for all links from help text, to avoid
            leaving the config page when there are likely unsaved changes, like the svn URL.
            Also made a few messages localizable, and avoid showing "/null" in one message
            when it tries to suggest a possible path but doesn't find a match.

            Show
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in hudson User: : mindless Path: trunk/hudson/plugins/subversion/src/main/java/hudson/scm/SubversionSCM.java trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/SubversionSCM/DescriptorImpl/url-help.properties trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/SubversionSCM/DescriptorImpl/url-help_fr.properties trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/SubversionSCM/DescriptorImpl/url-help_ja.properties trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/SubversionSCM/help-excludedRegions.html trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/SubversionSCM/help-excludedRegions_de.html trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/SubversionSCM/help-excludedRegions_fr.html trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/SubversionSCM/help-excludedRegions_ja.html trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/SubversionSCM/help-excludedRevprop.html trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/SubversionSCM/help-local.html trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/SubversionSCM/help-local_de.html trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/SubversionSCM/help-local_fr.html trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/SubversionSCM/help-local_ja.html trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/SubversionSCM/help-local_pt_BR.html trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/SubversionSCM/help-local_ru.html trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/SubversionSCM/help-local_tr.html trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/SubversionSCM/help.html trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/SubversionSCM/help_ja.html trunk/hudson/plugins/subversion/src/main/resources/hudson/scm/subversion/Messages.properties http://jenkins-ci.org/commit/26613 Log: [FIXED JENKINS-5348] use target="_blank" for all links from help text, to avoid leaving the config page when there are likely unsaved changes, like the svn URL. Also made a few messages localizable, and avoid showing "/null" in one message when it tries to suggest a possible path but doesn't find a match.
            Hide
            mindless Alan Harder added a comment -

            Note: I marked the issue as fixed, though I can't be 100% sure it will resolve the problem for you.. when Subversion plugin 1.10 comes out (I'll release it soon), please give it a try.. reopen this issue if you still see a problem, thanks. FYI, upgrade to Hudson 1.340 or newer if you haven't already, so you can use this new release of subversion plugin.

            Show
            mindless Alan Harder added a comment - Note: I marked the issue as fixed, though I can't be 100% sure it will resolve the problem for you.. when Subversion plugin 1.10 comes out (I'll release it soon), please give it a try.. reopen this issue if you still see a problem, thanks. FYI, upgrade to Hudson 1.340 or newer if you haven't already, so you can use this new release of subversion plugin.

              People

              • Assignee:
                mindless Alan Harder
                Reporter:
                awixted awixted
              • Votes:
                0 Vote for this issue
                Watchers:
                0 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: