keycloak-aplcache

Details

diff --git a/events/api/src/main/java/org/keycloak/events/Errors.java b/events/api/src/main/java/org/keycloak/events/Errors.java
index e3933c0..1d74a7a 100755
--- a/events/api/src/main/java/org/keycloak/events/Errors.java
+++ b/events/api/src/main/java/org/keycloak/events/Errors.java
@@ -36,11 +36,8 @@ public interface Errors {
 
     String SOCIAL_PROVIDER_NOT_FOUND = "social_provider_not_found";
     String SOCIAL_ID_IN_USE = "social_id_in_use";
-    String STATE_PARAM_NOT_FOUND = "state_param_not_found";
     String SSL_REQUIRED = "ssl_required";
 
-    String USER_NOT_LOGGED_IN = "user_not_logged_in";
     String USER_SESSION_NOT_FOUND = "user_session_not_found";
 
-
 }
diff --git a/services/src/main/java/org/keycloak/protocol/oidc/OpenIDConnectService.java b/services/src/main/java/org/keycloak/protocol/oidc/OpenIDConnectService.java
index 44b876c..f0cc1a7 100755
--- a/services/src/main/java/org/keycloak/protocol/oidc/OpenIDConnectService.java
+++ b/services/src/main/java/org/keycloak/protocol/oidc/OpenIDConnectService.java
@@ -758,11 +758,6 @@ public class OpenIDConnectService {
             }
 
             clientSession = null;
-            if (state == null) {
-                event.error(Errors.STATE_PARAM_NOT_FOUND);
-                return Flows.forwardToSecurityFailurePage(session, realm, uriInfo, "Invalid state param.");
-
-            }
             ClientModel client = realm.findClient(clientId);
             if (client == null) {
                 event.error(Errors.CLIENT_NOT_FOUND);
diff --git a/testsuite/integration/src/test/java/org/keycloak/testsuite/oauth/AuthorizationCodeTest.java b/testsuite/integration/src/test/java/org/keycloak/testsuite/oauth/AuthorizationCodeTest.java
index 8376978..330d0bc 100755
--- a/testsuite/integration/src/test/java/org/keycloak/testsuite/oauth/AuthorizationCodeTest.java
+++ b/testsuite/integration/src/test/java/org/keycloak/testsuite/oauth/AuthorizationCodeTest.java
@@ -177,16 +177,18 @@ public class AuthorizationCodeTest {
     @Test
     public void authorizationRequestNoState() throws IOException {
         oauth.state(null);
-        oauth.openLoginForm();
-        Assert.assertTrue(errorPage.isCurrent());
-
-        events.expect(EventType.LOGIN_ERROR)
-                .error(Errors.STATE_PARAM_NOT_FOUND)
-                .detail(Details.RESPONSE_TYPE, "code")
-                .detail(Details.REDIRECT_URI, oauth.getRedirectUri())
-                .user((String)null)
-                .assertEvent();
-        //assertCode(codeId, response.getCode());
+
+        AuthorizationCodeResponse response = oauth.doLogin("test-user@localhost", "password");
+
+        Assert.assertTrue(response.isRedirected());
+        Assert.assertNotNull(response.getCode());
+        Assert.assertNull(response.getState());
+        Assert.assertNull(response.getError());
+
+        keycloakRule.verifyCode(response.getCode());
+
+        String codeId = events.expectLogin().assertEvent().getDetails().get(Details.CODE_ID);
+        assertCode(codeId, response.getCode());
     }
 
     private void assertCode(String expectedCodeId, String actualCode) {