Index: src/main/java/edu/gjoko/schedlr/config/AppAuthenticationSuccessHandler.java
===================================================================
--- src/main/java/edu/gjoko/schedlr/config/AppAuthenticationSuccessHandler.java	(revision 950fa0d7a6b439770e79c885947e9b7d6058b424)
+++ 	(revision )
@@ -1,67 +1,0 @@
-package edu.gjoko.schedlr.config;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.springframework.security.core.Authentication;
-import org.springframework.security.core.GrantedAuthority;
-import org.springframework.security.web.DefaultRedirectStrategy;
-import org.springframework.security.web.RedirectStrategy;
-import org.springframework.security.web.WebAttributes;
-import org.springframework.security.web.authentication.AuthenticationSuccessHandler;
-
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import javax.servlet.http.HttpSession;
-import java.io.IOException;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.Map;
-
-public class AppAuthenticationSuccessHandler implements AuthenticationSuccessHandler {
-
-    protected Log logger = LogFactory.getLog(this.getClass());
-    private final RedirectStrategy redirectStrategy = new DefaultRedirectStrategy();
-
-    @Override
-    public void onAuthenticationSuccess(HttpServletRequest request, HttpServletResponse response, Authentication authentication) throws IOException, ServletException {
-        handle(request, response, authentication);
-        clearAuthenticationAttributes(request);
-    }
-
-    protected void handle(HttpServletRequest request,
-                          HttpServletResponse response,
-                          Authentication authentication) throws IOException {
-        String targetUrl = determineTargetUrl(authentication);
-
-        if (response.isCommitted()) {
-            logger.debug("Response has already been committed. Unable to redirect to " +
-                    targetUrl);
-            return;
-        }
-        redirectStrategy.sendRedirect(request, response, targetUrl);
-    }
-
-    protected String determineTargetUrl(final Authentication authentication) {
-        Map<String, String> roleTargetUrlMap = new HashMap<>();
-        roleTargetUrlMap.put("DATE", "/date");
-        roleTargetUrlMap.put("GUESS_NUMBER", "/number");
-
-        final Collection<? extends GrantedAuthority> authorities = authentication.getAuthorities();
-        for (final GrantedAuthority grantedAuthority : authorities) {
-            String authorityName = grantedAuthority.getAuthority();
-            if (roleTargetUrlMap.containsKey(authorityName)) {
-                return roleTargetUrlMap.get(authorityName);
-            }
-        }
-        throw new IllegalStateException();
-    }
-
-    protected void clearAuthenticationAttributes(HttpServletRequest request) {
-        HttpSession session = request.getSession(false);
-        if (session == null) {
-            return;
-        }
-        session.removeAttribute(WebAttributes.AUTHENTICATION_EXCEPTION);
-    }
-}
Index: src/main/java/edu/gjoko/schedlr/config/AppConfig.java
===================================================================
--- src/main/java/edu/gjoko/schedlr/config/AppConfig.java	(revision 950fa0d7a6b439770e79c885947e9b7d6058b424)
+++ src/main/java/edu/gjoko/schedlr/config/AppConfig.java	(revision 77205be723c8b2ffd1ee5618a05e1d12b1cee44a)
@@ -15,8 +15,4 @@
     }
 
-    @Bean
-    public AuthenticationSuccessHandler appAuthenticationSuccessHandler() {
-        return new AppAuthenticationSuccessHandler();
-    }
 
     @Bean
Index: src/main/java/edu/gjoko/schedlr/config/AppFilter.java
===================================================================
--- src/main/java/edu/gjoko/schedlr/config/AppFilter.java	(revision 950fa0d7a6b439770e79c885947e9b7d6058b424)
+++ src/main/java/edu/gjoko/schedlr/config/AppFilter.java	(revision 77205be723c8b2ffd1ee5618a05e1d12b1cee44a)
@@ -64,5 +64,9 @@
                             break;
                         case "CUSTOMER":
-                            page = "/homepage";
+                            if ("/customer_admin".equals(httpServletRequest.getRequestURI())) {
+                                page = "/customer_admin";
+                            } else {
+                                page = "/homepage";
+                            }
                             break;
                         case "BUSINESS_OWNER":
Index: src/main/java/edu/gjoko/schedlr/config/AppSecurityConfig.java
===================================================================
--- src/main/java/edu/gjoko/schedlr/config/AppSecurityConfig.java	(revision 950fa0d7a6b439770e79c885947e9b7d6058b424)
+++ src/main/java/edu/gjoko/schedlr/config/AppSecurityConfig.java	(revision 77205be723c8b2ffd1ee5618a05e1d12b1cee44a)
@@ -32,6 +32,4 @@
     private final BCryptPasswordEncoder passwordEncoder;
 
-    private final AuthenticationSuccessHandler authenticationSuccessHandler;
-
     private final AuthenticationFailureHandler authenticationFailureHandler;
 
@@ -57,7 +55,6 @@
                 .loginPage("/login")
                 .loginProcessingUrl("/login")
-                .successHandler(authenticationSuccessHandler)
                 .failureHandler(authenticationFailureHandler)
-                .defaultSuccessUrl("/homepage")
+                .defaultSuccessUrl("/login")
                 .and()
                 .logout(logout -> logout
Index: src/main/java/edu/gjoko/schedlr/config/ExceptionHandlerAdvice.java
===================================================================
--- src/main/java/edu/gjoko/schedlr/config/ExceptionHandlerAdvice.java	(revision 77205be723c8b2ffd1ee5618a05e1d12b1cee44a)
+++ src/main/java/edu/gjoko/schedlr/config/ExceptionHandlerAdvice.java	(revision 77205be723c8b2ffd1ee5618a05e1d12b1cee44a)
@@ -0,0 +1,19 @@
+package edu.gjoko.schedlr.config;
+
+import edu.gjoko.schedlr.exceptions.BlockingTimeException;
+import org.springframework.http.HttpHeaders;
+import org.springframework.http.HttpStatus;
+import org.springframework.http.ResponseEntity;
+import org.springframework.web.bind.annotation.ControllerAdvice;
+import org.springframework.web.bind.annotation.ExceptionHandler;
+import org.springframework.web.context.request.WebRequest;
+import org.springframework.web.servlet.mvc.method.annotation.ResponseEntityExceptionHandler;
+
+@ControllerAdvice
+public class ExceptionHandlerAdvice extends ResponseEntityExceptionHandler {
+
+    @ExceptionHandler(value = BlockingTimeException.class)
+    protected ResponseEntity<Object> handleConflict(RuntimeException ex, WebRequest request) {
+        return handleExceptionInternal(ex, ex.getMessage(), new HttpHeaders(), HttpStatus.CONFLICT, request);
+    }
+}
Index: src/main/java/edu/gjoko/schedlr/config/MvcConfig.java
===================================================================
--- src/main/java/edu/gjoko/schedlr/config/MvcConfig.java	(revision 950fa0d7a6b439770e79c885947e9b7d6058b424)
+++ src/main/java/edu/gjoko/schedlr/config/MvcConfig.java	(revision 77205be723c8b2ffd1ee5618a05e1d12b1cee44a)
@@ -16,4 +16,5 @@
         registry.addViewController("/admin").setViewName("admin");
         registry.addViewController("/business_admin").setViewName("business_admin");
+        registry.addViewController("/customer_admin").setViewName("customer_admin");
     }
 }
