diff --git a/assembly.xml b/assembly.xml index f640d7a..3bf2928 100644 --- a/assembly.xml +++ b/assembly.xml @@ -19,66 +19,66 @@ --> - release - - zip - tar.gz - - true - - - unix - true - false - ${basedir} - - - *.xml - *.txt - - - - - - - - - - src - src - unix - true - + release + + zip + tar.gz + + true + + + unix + true + false + ${basedir} + + + *.xml + *.txt + + + + + + + + + + src + src + unix + true + - - unix - true - - *.xml - - + + unix + true + + *.xml + + - - unix - target/site/apidocs/ - true - docs - - **/* - - - + + unix + target/site/apidocs/ + true + docs + + **/* + + + - true - true - - - modules - true - false - true - - - - + true + true + + + modules + true + false + true + + + + \ No newline at end of file diff --git a/cas-client-core/src/main/java/org/jasig/cas/client/authentication/AuthenticationFilter.java b/cas-client-core/src/main/java/org/jasig/cas/client/authentication/AuthenticationFilter.java index 38d16f4..2e73556 100644 --- a/cas-client-core/src/main/java/org/jasig/cas/client/authentication/AuthenticationFilter.java +++ b/cas-client-core/src/main/java/org/jasig/cas/client/authentication/AuthenticationFilter.java @@ -18,21 +18,16 @@ */ package org.jasig.cas.client.authentication; +import java.io.IOException; +import javax.servlet.*; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.servlet.http.HttpSession; import org.jasig.cas.client.util.AbstractCasFilter; import org.jasig.cas.client.util.CommonUtils; import org.jasig.cas.client.util.ReflectUtils; import org.jasig.cas.client.validation.Assertion; -import javax.servlet.FilterChain; -import javax.servlet.FilterConfig; -import javax.servlet.ServletException; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import javax.servlet.http.HttpSession; -import java.io.IOException; - /** * Filter implementation to intercept all requests and attempt to authenticate * the user by redirecting them to CAS (unless the user has a ticket). @@ -66,7 +61,7 @@ public class AuthenticationFilter extends AbstractCasFilter { * Whether to send the gateway request or not. */ private boolean gateway = false; - + private GatewayResolver gatewayStorage = new DefaultGatewayResolverImpl(); private AuthenticationRedirectStrategy authenticationRedirectStrategy = new DefaultAuthenticationRedirectStrategy(); @@ -87,7 +82,8 @@ public class AuthenticationFilter extends AbstractCasFilter { this.gatewayStorage = ReflectUtils.newInstance(gatewayStorageClass); } - final String authenticationRedirectStrategyClass = getPropertyFromInitParams(filterConfig, "authenticationRedirectStrategyClass", null); + final String authenticationRedirectStrategyClass = getPropertyFromInitParams(filterConfig, + "authenticationRedirectStrategyClass", null); if (authenticationRedirectStrategyClass != null) { this.authenticationRedirectStrategy = ReflectUtils.newInstance(authenticationRedirectStrategyClass); @@ -100,7 +96,8 @@ public class AuthenticationFilter extends AbstractCasFilter { CommonUtils.assertNotNull(this.casServerLoginUrl, "casServerLoginUrl cannot be null."); } - public final void doFilter(final ServletRequest servletRequest, final ServletResponse servletResponse, final FilterChain filterChain) throws IOException, ServletException { + public final void doFilter(final ServletRequest servletRequest, final ServletResponse servletResponse, + final FilterChain filterChain) throws IOException, ServletException { final HttpServletRequest request = (HttpServletRequest) servletRequest; final HttpServletResponse response = (HttpServletResponse) servletResponse; final HttpSession session = request.getSession(false); @@ -130,9 +127,10 @@ public class AuthenticationFilter extends AbstractCasFilter { modifiedServiceUrl = serviceUrl; } - logger.debug("Constructed service url: {}", modifiedServiceUrl); + logger.debug("Constructed service url: {}", modifiedServiceUrl); - final String urlToRedirectTo = CommonUtils.constructRedirectUrl(this.casServerLoginUrl, getServiceParameterName(), modifiedServiceUrl, this.renew, this.gateway); + final String urlToRedirectTo = CommonUtils.constructRedirectUrl(this.casServerLoginUrl, + getServiceParameterName(), modifiedServiceUrl, this.renew, this.gateway); logger.debug("redirecting to \"{}\"", urlToRedirectTo); this.authenticationRedirectStrategy.redirect(request, response, urlToRedirectTo); @@ -149,8 +147,8 @@ public class AuthenticationFilter extends AbstractCasFilter { public final void setCasServerLoginUrl(final String casServerLoginUrl) { this.casServerLoginUrl = casServerLoginUrl; } - + public final void setGatewayStorage(final GatewayResolver gatewayStorage) { - this.gatewayStorage = gatewayStorage; + this.gatewayStorage = gatewayStorage; } } diff --git a/cas-client-core/src/main/java/org/jasig/cas/client/validation/AbstractTicketValidationFilter.java b/cas-client-core/src/main/java/org/jasig/cas/client/validation/AbstractTicketValidationFilter.java index f2480d3..58f57c4 100644 --- a/cas-client-core/src/main/java/org/jasig/cas/client/validation/AbstractTicketValidationFilter.java +++ b/cas-client-core/src/main/java/org/jasig/cas/client/validation/AbstractTicketValidationFilter.java @@ -60,7 +60,7 @@ public abstract class AbstractTicketValidationFilter extends AbstractCasFilter { private boolean redirectAfterValidation = true; /** Determines whether an exception is thrown when there is a ticket validation failure. */ - private boolean exceptionOnValidationFailure = true; + private boolean exceptionOnValidationFailure = false; /** * Specify whether the Assertion should be stored in a session @@ -126,7 +126,7 @@ public abstract class AbstractTicketValidationFilter extends AbstractCasFilter { protected void initInternal(final FilterConfig filterConfig) throws ServletException { setExceptionOnValidationFailure(parseBoolean(getPropertyFromInitParams(filterConfig, - "exceptionOnValidationFailure", "true"))); + "exceptionOnValidationFailure", "false"))); logger.trace("Setting exceptionOnValidationFailure parameter: {}", this.exceptionOnValidationFailure); setRedirectAfterValidation(parseBoolean(getPropertyFromInitParams(filterConfig, "redirectAfterValidation", "true"))); @@ -221,8 +221,7 @@ public abstract class AbstractTicketValidationFilter extends AbstractCasFilter { return; } } catch (final TicketValidationException e) { - response.setStatus(HttpServletResponse.SC_FORBIDDEN); - logger.warn(e.getMessage(), e); + logger.debug(e.getMessage(), e); onFailedValidation(request, response); @@ -230,7 +229,7 @@ public abstract class AbstractTicketValidationFilter extends AbstractCasFilter { throw new ServletException(e); } - response.sendError(HttpServletResponse.SC_FORBIDDEN); + response.sendError(HttpServletResponse.SC_FORBIDDEN, e.getMessage()); return; } diff --git a/cas-client-core/src/test/java/org/jasig/cas/client/authentication/AuthenticationFilterTests.java b/cas-client-core/src/test/java/org/jasig/cas/client/authentication/AuthenticationFilterTests.java index 2a615ab..396c536 100644 --- a/cas-client-core/src/test/java/org/jasig/cas/client/authentication/AuthenticationFilterTests.java +++ b/cas-client-core/src/test/java/org/jasig/cas/client/authentication/AuthenticationFilterTests.java @@ -18,27 +18,20 @@ */ package org.jasig.cas.client.authentication; +import static org.junit.Assert.*; import java.io.IOException; import java.lang.reflect.Field; import java.net.URLEncoder; - import javax.servlet.FilterChain; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; - import org.jasig.cas.client.util.AbstractCasFilter; import org.jasig.cas.client.validation.AssertionImpl; import org.junit.After; import org.junit.Before; import org.junit.Test; -import org.springframework.mock.web.MockFilterConfig; -import org.springframework.mock.web.MockHttpServletRequest; -import org.springframework.mock.web.MockHttpServletResponse; -import org.springframework.mock.web.MockHttpSession; -import org.springframework.mock.web.MockServletContext; - -import static org.junit.Assert.*; +import org.springframework.mock.web.*; /** * Tests for the AuthenticationFilter. @@ -77,8 +70,7 @@ public final class AuthenticationFilterTests { final MockHttpServletResponse response = new MockHttpServletResponse(); final FilterChain filterChain = new FilterChain() { - public void doFilter(ServletRequest arg0, ServletResponse arg1) - throws IOException, ServletException { + public void doFilter(ServletRequest request, ServletResponse response) throws IOException, ServletException { // nothing to do } }; @@ -86,9 +78,8 @@ public final class AuthenticationFilterTests { request.setSession(session); this.filter.doFilter(request, response, filterChain); - assertEquals(CAS_LOGIN_URL + "?service=" - + URLEncoder.encode(CAS_SERVICE_URL, "UTF-8"), response - .getRedirectedUrl()); + assertEquals(CAS_LOGIN_URL + "?service=" + URLEncoder.encode(CAS_SERVICE_URL, "UTF-8"), + response.getRedirectedUrl()); } @Test @@ -101,8 +92,7 @@ public final class AuthenticationFilterTests { request.setSecure(true); final FilterChain filterChain = new FilterChain() { - public void doFilter(ServletRequest arg0, ServletResponse arg1) - throws IOException, ServletException { + public void doFilter(ServletRequest request, ServletResponse response) throws IOException, ServletException { // nothing to do } }; @@ -117,11 +107,12 @@ public final class AuthenticationFilterTests { this.filter.doFilter(request, response, filterChain); - assertEquals(CAS_LOGIN_URL - + "?service=" - + URLEncoder.encode("https://localhost:8443" - + request.getRequestURI() + "?" + request.getQueryString(), - "UTF-8"), response.getRedirectedUrl()); + assertEquals( + CAS_LOGIN_URL + + "?service=" + + URLEncoder.encode( + "https://localhost:8443" + request.getRequestURI() + "?" + request.getQueryString(), + "UTF-8"), response.getRedirectedUrl()); } @Test @@ -131,15 +122,13 @@ public final class AuthenticationFilterTests { final MockHttpServletResponse response = new MockHttpServletResponse(); final FilterChain filterChain = new FilterChain() { - public void doFilter(ServletRequest arg0, ServletResponse arg1) - throws IOException, ServletException { + public void doFilter(ServletRequest request, ServletResponse response) throws IOException, ServletException { // nothing to do } }; request.setSession(session); - session.setAttribute(AbstractCasFilter.CONST_CAS_ASSERTION, - new AssertionImpl("test")); + session.setAttribute(AbstractCasFilter.CONST_CAS_ASSERTION, new AssertionImpl("test")); this.filter.doFilter(request, response, filterChain); assertNull(response.getRedirectedUrl()); @@ -152,8 +141,7 @@ public final class AuthenticationFilterTests { final MockHttpServletResponse response = new MockHttpServletResponse(); final FilterChain filterChain = new FilterChain() { - public void doFilter(ServletRequest arg0, ServletResponse arg1) - throws IOException, ServletException { + public void doFilter(ServletRequest request, ServletResponse response) throws IOException, ServletException { // nothing to do } }; @@ -173,8 +161,7 @@ public final class AuthenticationFilterTests { final MockHttpServletResponse response = new MockHttpServletResponse(); final FilterChain filterChain = new FilterChain() { - public void doFilter(ServletRequest arg0, ServletResponse arg1) - throws IOException, ServletException { + public void doFilter(ServletRequest request, ServletResponse response) throws IOException, ServletException { // nothing to do } }; @@ -226,7 +213,8 @@ public final class AuthenticationFilterTests { final MockServletContext context = new MockServletContext(); context.addInitParameter("casServerLoginUrl", "https://cas.example.com/login"); context.addInitParameter("service", "https://localhost:8443/service"); - context.addInitParameter("authenticationRedirectStrategyClass", "org.jasig.cas.client.authentication.FacesCompatibleAuthenticationRedirectStrategy"); + context.addInitParameter("authenticationRedirectStrategyClass", + "org.jasig.cas.client.authentication.FacesCompatibleAuthenticationRedirectStrategy"); f.init(new MockFilterConfig(context)); } } diff --git a/cas-client-core/src/test/resources/cas20ProxyTicketValidator.xml b/cas-client-core/src/test/resources/cas20ProxyTicketValidator.xml index 3a069da..579ecba 100644 --- a/cas-client-core/src/test/resources/cas20ProxyTicketValidator.xml +++ b/cas-client-core/src/test/resources/cas20ProxyTicketValidator.xml @@ -23,23 +23,23 @@ xmlns:p="http://www.springframework.org/schema/p" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd"> - - - - - test test2 test3 test4 test5 - mytest mytest1 mytest2 mytest3 - proxy1 proxy2 proxy3 - - - - + + + + + test test2 test3 test4 test5 + mytest mytest1 mytest2 mytest3 + proxy1 proxy2 proxy3 + + + + + + + + - - - - \ No newline at end of file diff --git a/src/licensing/header-definitions.xml b/src/licensing/header-definitions.xml index 39fb559..2792dce 100644 --- a/src/licensing/header-definitions.xml +++ b/src/licensing/header-definitions.xml @@ -1,12 +1,12 @@ - - /* - * - */ - ( |\t)*/\*( |\t)*$ - ( |\t)*\*/( |\t)*$ - true - true - + + /* + * + */ + ( |\t)*/\*( |\t)*$ + ( |\t)*\*/( |\t)*$ + true + true + \ No newline at end of file