Author: tchemit Date: 2013-09-12 00:11:55 +0200 (Thu, 12 Sep 2013) New Revision: 421 Url: http://nuiton.org/projects/jredmine/repository/revisions/421 Log: fixes #2836: jredmine client assumes redmine's context root is / (improve Modified: trunk/jredmine-client/src/main/java/org/nuiton/jredmine/client/RedmineClient.java Modified: trunk/jredmine-client/src/main/java/org/nuiton/jredmine/client/RedmineClient.java =================================================================== --- trunk/jredmine-client/src/main/java/org/nuiton/jredmine/client/RedmineClient.java 2013-09-11 20:57:58 UTC (rev 420) +++ trunk/jredmine-client/src/main/java/org/nuiton/jredmine/client/RedmineClient.java 2013-09-11 22:11:55 UTC (rev 421) @@ -68,7 +68,6 @@ import java.io.InputStream; import java.net.URI; import java.net.URISyntaxException; -import java.net.URL; import java.util.List; import java.util.Map; @@ -90,7 +89,7 @@ protected final HttpClient client; - protected final URL serverUrl; + protected final URI serverURI; protected final HttpContext clientContext; @@ -113,7 +112,12 @@ // Bind custom cookie store to the local context clientContext.setAttribute(ClientContext.COOKIE_STORE, cookieStore); - serverUrl = configuration.getUrl(); + // Get server uri + try { + serverURI = configuration.getUrl().toURI(); + } catch (URISyntaxException e) { + throw new IllegalStateException("Could not get uri from " + configuration.getUrl()); + } // set encoding (will then encode parameters fine) client.getParams().setParameter( @@ -311,13 +315,7 @@ protected <T> String getRequestUrl(RedmineRequest<T> request) { - String result = null; - try { - String uri = serverUrl.toURI().toString(); - result = request.toPath(uri); - } catch (URISyntaxException e) { - throw new IllegalStateException(e); - } + String result = request.toPath(serverURI.toString()); return result; }