diff --git a/library/.classpath b/library/.classpath index a19c6c8..6d924d7 100644 --- a/library/.classpath +++ b/library/.classpath @@ -6,12 +6,6 @@ - - - - - - diff --git a/library/.settings/org.eclipse.buildship.core.prefs b/library/.settings/org.eclipse.buildship.core.prefs index e889521..e479558 100644 --- a/library/.settings/org.eclipse.buildship.core.prefs +++ b/library/.settings/org.eclipse.buildship.core.prefs @@ -1,2 +1,13 @@ +arguments= +auto.sync=false +build.scans.enabled=false +connection.gradle.distribution=GRADLE_DISTRIBUTION(WRAPPER) connection.project.dir= eclipse.preferences.version=1 +gradle.user.home= +java.home= +jvm.arguments= +offline.mode=false +override.workspace.settings=false +show.console.view=false +show.executions.view=false diff --git a/library/gradle.properties b/library/gradle.properties index c9517d1..84d5af9 100644 --- a/library/gradle.properties +++ b/library/gradle.properties @@ -1 +1 @@ -version=3.0.2 +version=3.0.3 diff --git a/library/src/main/java/com/northconcepts/templatemaster/rest/RequestHolder.java b/library/src/main/java/com/northconcepts/templatemaster/rest/RequestHolder.java index 3fe313d..4bc7849 100644 --- a/library/src/main/java/com/northconcepts/templatemaster/rest/RequestHolder.java +++ b/library/src/main/java/com/northconcepts/templatemaster/rest/RequestHolder.java @@ -78,6 +78,21 @@ public static boolean hasHttpServletRequest() { private static String cachedBaseUrl; + public static String removeUrlQueryParams(String url) { + int index = url.indexOf('?'); + if (index >= 0) { + url = url.substring(0, index); + } + return url; + } + + public static String getBaseUrl(HttpServletRequest request) { + String url = request.getRequestURL().toString(); + url = removeUrlQueryParams(url); + String baseUrl = url.substring(0, url.length() - request.getRequestURI().length()) + request.getContextPath() + "/"; + return baseUrl; + } + public static String getBaseUrl() { HttpServletRequest request = getThreadLocalHttpServletRequest().get(); if (request == null) { @@ -86,8 +101,7 @@ public static String getBaseUrl() { } return cachedBaseUrl; } - String url = request.getRequestURL().toString(); - String baseUrl = url.substring(0, url.length() - request.getRequestURI().length()) + request.getContextPath() + "/"; + String baseUrl = getBaseUrl(request); cachedBaseUrl = baseUrl; return baseUrl; } diff --git a/spring-boot-example/build.gradle b/spring-boot-example/build.gradle index c16d4ef..11f3d7b 100644 --- a/spring-boot-example/build.gradle +++ b/spring-boot-example/build.gradle @@ -22,7 +22,7 @@ dependencies { implementation 'org.apache.logging.log4j:log4j-core:2.11.1' implementation 'org.jboss.resteasy:resteasy-jackson2-provider:6.2.8.Final' implementation 'com.fasterxml.jackson.core:jackson-databind:2.9.7' - implementation 'com.northconcepts:northconcepts-templatemaster:3.0.0' + implementation 'com.northconcepts:northconcepts-templatemaster:3.0.2' implementation 'org.springframework.data:spring-data-commons:2.1.2.RELEASE' //compile fileTree(dir: 'lib', include: ['*.jar'])