[java-idp-testbed] branch master updated: Fix CAS integration tests
Tom Zeller
tzeller at dragonacea.biz
Mon Aug 29 16:38:57 EDT 2016
This is an automated email from the git hooks/post-receive script.
tzeller pushed a commit to branch master
in repository java-idp-testbed.
View the commit online:
http://git.shibboleth.net/view/?p=java-idp-testbed.git;a=commit;h=b75eac7190c41524e82785046ae3adbfccfc42a1
The following commit(s) were added to refs/heads/master by this push:
new b75eac7 Fix CAS integration tests
b75eac7 is described below
commit b75eac7190c41524e82785046ae3adbfccfc42a1
Author: Tom Zeller <tzeller at dragonacea.biz>
AuthorDate: Mon Aug 29 15:38:55 2016 -0500
Fix CAS integration tests
We need the raw CAS ticket not decoded by Spring or the Servlet
container.
---
src/main/java/sp/CASController.java | 17 ++++++++++++++++-
1 file changed, 16 insertions(+), 1 deletion(-)
diff --git a/src/main/java/sp/CASController.java b/src/main/java/sp/CASController.java
index 1c46608..920c259 100644
--- a/src/main/java/sp/CASController.java
+++ b/src/main/java/sp/CASController.java
@@ -35,6 +35,7 @@ import org.springframework.web.bind.annotation.RequestMethod;
import net.shibboleth.idp.cas.protocol.ProtocolParam;
import net.shibboleth.utilities.java.support.collection.Pair;
import net.shibboleth.utilities.java.support.net.HttpServletSupport;
+import net.shibboleth.utilities.java.support.net.URISupport;
import net.shibboleth.utilities.java.support.net.URLBuilder;
@Controller
@@ -93,7 +94,7 @@ public class CASController {
final URLBuilder urlBuilder = new URLBuilder(endpointURL);
- final String ticket = servletRequest.getParameter(ProtocolParam.Ticket.id());
+ final String ticket = getRawParamValue(servletRequest, ProtocolParam.Ticket.id());
final List<Pair<String, String>> queryParams = urlBuilder.getQueryParams();
queryParams.add(new Pair<String, String>(ProtocolParam.Service.id(), baseUrl + casSPServicePath));
@@ -126,4 +127,18 @@ public class CASController {
return "http://localhost:8080";
}
}
+
+ /**
+ * Get raw parameter value from query string.
+ *
+ * @param servletRequest
+ * @param paramName parameter name
+ * @return the raw parameter value
+ */
+ private String getRawParamValue(HttpServletRequest servletRequest, String paramName) {
+ final String queryString = servletRequest.getQueryString();
+ final String rawParam = URISupport.getRawQueryStringParameter(queryString, paramName);
+ final String[] params = rawParam.split("=", 2);
+ return params[1];
+ }
}
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the commits
mailing list