SEC-2547: Fix sample after updating CAS client version

This commit is contained in:
Rob Winch 2014-04-15 07:35:27 -05:00
parent d9e87d8222
commit 7ea0d3d42f
3 changed files with 9 additions and 3 deletions

View File

@ -5525,7 +5525,7 @@ protected void doGet(HttpServletRequest request, HttpServletResponse response)
// Make a remote call using the proxy ticket
final String serviceUrl = targetUrl+"?ticket="+URLEncoder.encode(proxyTicket, "UTF-8");
String proxyResponse = CommonUtils.getResponseFromServer(serviceUrl, "UTF-8");
String proxyResponse = CommonUtils.getResponseFromServer(new URL(serviceUrl), connectionFactory, "UTF-8");
...
}
----

View File

@ -19,6 +19,7 @@ import org.apache.commons.httpclient.HttpClient
import org.apache.commons.httpclient.methods.GetMethod
import org.jasig.cas.client.jaas.CasLoginModule;
import org.jasig.cas.client.proxy.Cas20ProxyRetriever
import org.jasig.cas.client.ssl.HttpsURLConnectionFactory
import org.springframework.security.samples.cas.pages.*
import spock.lang.*
@ -36,7 +37,7 @@ class CasSampleProxyTests extends AbstractCasTests {
HttpClient client = new HttpClient()
@Shared String casServerUrl = LoginPage.url.replaceFirst('/login','')
@Shared JettyCasService service = new JettyCasService().init(casServerUrl)
@Shared Cas20ProxyRetriever retriever = new Cas20ProxyRetriever(casServerUrl,'UTF-8')
@Shared Cas20ProxyRetriever retriever = new Cas20ProxyRetriever(casServerUrl,'UTF-8', new HttpsURLConnectionFactory())
@Shared String pt
def cleanupSpec() {

View File

@ -17,6 +17,7 @@ package org.springframework.security.samples.cas.web;
import java.io.IOException;
import java.io.PrintWriter;
import java.net.URL;
import java.net.URLEncoder;
import javax.servlet.ServletException;
@ -24,6 +25,8 @@ import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.jasig.cas.client.ssl.HttpURLConnectionFactory;
import org.jasig.cas.client.ssl.HttpsURLConnectionFactory;
import org.jasig.cas.client.util.CommonUtils;
import org.springframework.security.cas.authentication.CasAuthenticationToken;
@ -42,6 +45,8 @@ public final class ProxyTicketSampleServlet extends HttpServlet {
* This is the URL that will be called and authenticate a proxy ticket.
*/
private String targetUrl;
private HttpURLConnectionFactory connectionFactory = new HttpsURLConnectionFactory();
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
@ -53,7 +58,7 @@ public final class ProxyTicketSampleServlet extends HttpServlet {
// Make a remote call to ourself. This is a bit silly, but it works well to demonstrate how to use proxy tickets.
final String serviceUrl = targetUrl+"?ticket="+URLEncoder.encode(proxyTicket, "UTF-8");
String proxyResponse = CommonUtils.getResponseFromServer(serviceUrl, "UTF-8");
String proxyResponse = CommonUtils.getResponseFromServer(new URL(serviceUrl), connectionFactory, "UTF-8");
// modify the response and write it out to inform the user that it was obtained using a proxy ticket.
proxyResponse = proxyResponse.replaceFirst("Secure Page", "Secure Page using a Proxy Ticket");