[keycloak-user] Error while linking 2 Identity Providers

Marek Posolda mposolda at redhat.com
Mon Jan 11 15:56:25 EST 2016


This is known issue in 1.7 and should be already fixed : 
https://issues.jboss.org/browse/KEYCLOAK-2229 . AFAIK it happens just in 
environment like Keycloak running on Wildfly or EAP 6.4, not with 
KeycloakServer (which is what I tested and hence didn't find it before :( )

I will doublecheck it works in 1.8.

As workaround for 1.7, you can get rid of this error by adding the line :

<module name="org.keycloak.keycloak-broker-core"/>

into "modules" section into file 
$KEYCLOAK_HOME//modules/system/layers/base/org/keycloak/keycloak-login-freemarker/main/module.xml

Marek

On 11/01/16 20:10, Stian Thorgersen wrote:
> Works fine here. How did you install it (standalone, into existing 
> WildFly/EAP, etc.)? Did you do an upgrade from previous release?
>
> On 11 January 2016 at 19:52, Helder dos S. Alves 
> <helder.jaspion at gmail.com <mailto:helder.jaspion at gmail.com>> wrote:
>
>     Hi.
>
>     I'm using Keycloak 1.7.0.Final and I'm having some troubles:
>     I logged in using my Facebook account, but when I try to log in
>     using my Google account (whose email is the same as Facebook's) I
>     am getting the error:
>
>     16:36:58,870 ERROR [io.undertow.request] (default task-54)
>     UT005023: Exception handling request to
>     /auth/realms/GJC-Websites/login-actions/first-broker-login:
>     java.lang.RuntimeException: request path:
>     /auth/realms/GJC-Websites/login-actions/first-broker-login
>
>     at
>     org.keycloak.services.filters.KeycloakSessionServletFilter.doFilter(KeycloakSessionServletFilter.java:75)
>
>     at
>     io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:60)
>
>     at
>     io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:132)
>
>     at
>     io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:85)
>
>     at
>     io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
>
>     at
>     io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
>
>     at
>     org.wildfly.extension.undertow.security.SecurityContextAssociationHandler.handleRequest(SecurityContextAssociationHandler.java:78)
>
>     at
>     io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
>
>     at
>     io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:131)
>
>     at
>     io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
>
>     at
>     io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
>
>     at
>     io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
>
>     at
>     io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
>
>     at
>     io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:58)
>
>     at
>     io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:72)
>
>     at
>     io.undertow.security.handlers.NotificationReceiverHandler.handleRequest(NotificationReceiverHandler.java:50)
>
>     at
>     io.undertow.security.handlers.SecurityInitialHandler.handleRequest(SecurityInitialHandler.java:76)
>
>     at
>     io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
>
>     at
>     org.wildfly.extension.undertow.security.jacc.JACCContextIdHandler.handleRequest(JACCContextIdHandler.java:61)
>
>     at
>     io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
>
>     at
>     io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
>
>     at
>     io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:282)
>
>     at
>     io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:261)
>
>     at
>     io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:80)
>
>     at
>     io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:172)
>
>     at
>     io.undertow.server.Connectors.executeRootHandler(Connectors.java:199)
>
>     at
>     io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:774)
>
>     at
>     java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
>
>     at
>     java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
>
>     at java.lang.Thread.run(Thread.java:745)
>
>     Caused by: org.jboss.resteasy.spi.UnhandledException:
>     java.lang.NoClassDefFoundError:
>     org/keycloak/broker/provider/BrokeredIdentityContext
>
>     at
>     org.jboss.resteasy.core.ExceptionHandler.handleApplicationException(ExceptionHandler.java:76)
>
>     at
>     org.jboss.resteasy.core.ExceptionHandler.handleException(ExceptionHandler.java:212)
>
>     at
>     org.jboss.resteasy.core.SynchronousDispatcher.writeException(SynchronousDispatcher.java:149)
>
>     at
>     org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:372)
>
>     at
>     org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:179)
>
>     at
>     org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:220)
>
>     at
>     org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:56)
>
>     at
>     org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:51)
>
>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
>
>     at
>     io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:86)
>
>     at
>     io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:130)
>
>     at
>     org.keycloak.services.filters.KeycloakSessionServletFilter.doFilter(KeycloakSessionServletFilter.java:61)
>
>     ... 29 more
>
>     Caused by: java.lang.NoClassDefFoundError:
>     org/keycloak/broker/provider/BrokeredIdentityContext
>
>     at
>     org.keycloak.login.freemarker.FreeMarkerLoginFormsProvider.createResponse(FreeMarkerLoginFormsProvider.java:290)
>
>     at
>     org.keycloak.login.freemarker.FreeMarkerLoginFormsProvider.createIdpLinkConfirmLinkPage(FreeMarkerLoginFormsProvider.java:467)
>
>     at
>     org.keycloak.authentication.authenticators.broker.IdpConfirmLinkAuthenticator.authenticateImpl(IdpConfirmLinkAuthenticator.java:43)
>
>     at
>     org.keycloak.authentication.authenticators.broker.AbstractIdpAuthenticator.authenticate(AbstractIdpAuthenticator.java:57)
>
>     at
>     org.keycloak.authentication.DefaultAuthenticationFlow.processFlow(DefaultAuthenticationFlow.java:155)
>
>     at
>     org.keycloak.authentication.DefaultAuthenticationFlow.processFlow(DefaultAuthenticationFlow.java:97)
>
>     at
>     org.keycloak.authentication.AuthenticationProcessor.authenticate(AuthenticationProcessor.java:652)
>
>     at
>     org.keycloak.services.resources.LoginActionsService.processFlow(LoginActionsService.java:301)
>
>     at
>     org.keycloak.services.resources.LoginActionsService.firstBrokerLogin(LoginActionsService.java:528)
>
>     at
>     org.keycloak.services.resources.LoginActionsService.firstBrokerLoginGet(LoginActionsService.java:487)
>
>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>
>     at
>     sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>
>     at
>     sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>
>     at java.lang.reflect.Method.invoke(Method.java:497)
>
>     at
>     org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:137)
>
>     at
>     org.jboss.resteasy.core.ResourceMethodInvoker.invokeOnTarget(ResourceMethodInvoker.java:296)
>
>     at
>     org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:250)
>
>     at
>     org.jboss.resteasy.core.ResourceLocatorInvoker.invokeOnTargetObject(ResourceLocatorInvoker.java:140)
>
>     at
>     org.jboss.resteasy.core.ResourceLocatorInvoker.invoke(ResourceLocatorInvoker.java:103)
>
>     at
>     org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:356)
>
>     ... 37 more
>
>
>
>     Thanks in advance.
>
>     Helder S. Alves
>
>     _______________________________________________
>     keycloak-user mailing list
>     keycloak-user at lists.jboss.org <mailto:keycloak-user at lists.jboss.org>
>     https://lists.jboss.org/mailman/listinfo/keycloak-user
>
>
>
>
> _______________________________________________
> keycloak-user mailing list
> keycloak-user at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/keycloak-user

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/keycloak-user/attachments/20160111/1c73e3ed/attachment.html 


More information about the keycloak-user mailing list