1
Vote

SVNBridge: 500 Internal Server Error

description

Environment as follows:
-TFS site, https://aq2tech.visualstudio.com/, that I want to point Tortoise SVN to using SVN Bridge
-TortoiseSVN v1.7.9, build 23248
-SVNBridge v6.2

Steps:
installed Tortoise
installed SVNBridge

In SVNBridge, I set fields as follows:
Bridge Port: 8081
Tfs Proxy: <left blank>
Http Proxy: <left blank>
Port: 81
unchecked: Use Default Credentials
Username: <left blank>
Password: <left blank>

Issue: When I run Repo Browser and point it to, 'http://localhost:8081', I get the following error in the viewer.

Unable to connect to a repository at URL 'htt;://localhost:8081' OPTIONS of 'http://localhost: 8081' could not connect to server (http://localhost:8081) This error appears in the log file.

</log><log level="Error">
<message><![CDATA[Error on handling request. Error id: 43621816-d930-4b43-95dd-be56505b2058
System.InvalidOperationException: Could not find server url in the url (http://localhost:8081/). Not valid when using the RequestBasePathParser
at SvnBridge.PathParsing.PathParserServerAndProjectInPath.GetUrlFromRequest(Uri requestUrl)
at SvnBridge.PathParsing.PathParserServerAndProjectInPath.GetServerUrl(IHttpRequest request, ICredentials credentials)
at SvnBridge.Net.HttpContextDispatcher.Dispatch(IHttpContext connection)
at SvnBridge.Net.Listener.Process(TcpClient tcpClient)]]></message>
<exception><![CDATA[System.InvalidOperationException: Could not find server url in the url (http://localhost:8081/). Not valid when using the RequestBasePathParser
at SvnBridge.PathParsing.PathParserServerAndProjectInPath.GetUrlFromRequest(Uri requestUrl)
at SvnBridge.PathParsing.PathParserServerAndProjectInPath.GetServerUrl(IHttpRequest request, ICredentials credentials)
at SvnBridge.Net.HttpContextDispatcher.Dispatch(IHttpContext connection)
at SvnBridge.Net.Listener.Process(TcpClient tcpClient)]]></exception>

</log>

I've adjusted the settings In SVNBridge as follows to no avail:
Bridge Port: 8081
Tfs Proxy: https://aq2tech.visualstudio.com
Http Proxy: <left blank>
Port: 81
unchecked: Use Default Credentials
Username: <left blank>

Password: <left blank>

I've too combinations to list here of the SVNBridge settings and paths to point to in the Repo Browser and always get the same error. I expect I'm missing something so simple.

I could really use some help.

Thank You,
CTenney

comments

am42 wrote Jan 13, 2015 at 8:19 PM

AFAICS it's simply that this is the wrong SVN URL to be used for a desktop SvnBridge installation.
IIRC the usual format of the SVN equivalent project URL in the case of desktop SvnBridge installations is
http://desktop_svnbridge_host:8081/tfs_server_host:8081/TFSTeamProj
(which would be using "localhost" for all cases - all sane cases! - where the desktop SvnBridge port is bound to local interface only i.e. not externally reachable).
I.e., a pretty standard case of "RTFM" (if there is as much available as a FM - not entirely sure...).

I have to "admit" though that there are several annoyingly weak copy&paste code parts within SvnBridge's URL path parsing code, which causes much more trouble (especially with newer /tfs/DefaultCollection/TeamProj URL format) than there should be (I eradicated several weaknesses in some local modifications, which I intend to post upstream real soonish).

[OT comment following] Oh, and the newer "SvnBridge2" TFS2013 web service protocol upgrade commit was an atrocity committed to humanity ("commit my *ss"). Can you spell "forensics" or "autopsy"? It's rather positive though that there is a web service protocol upgrade commit indeed available, though (and I'm quite sure not having that commit available would have been rather more work to get things going).