[keycloak-dev] Keycloak on Wildfly 10

Marko Strukelj mstrukel at redhat.com
Thu Jan 21 10:25:33 EST 2016


What do I have to do to trigger this?

>>> java.lang.NoSuchMethodError: io.undertow.server.Connectors.ungetRequestBytes(Lio/undertow/server/HttpServerExchange;[Lorg/xnio/Pooled;)V
>>>         at org.keycloak.adapters.undertow.SavedRequest.tryRestoreRequest(SavedRequest.java:112)
>>>         at org.keycloak.adapters.undertow.ServletSessionTokenStore.restoreRequest(ServletSessionTokenStore.java:119)
>>>         at org.keycloak.adapters.undertow.ServletSessionTokenStore.isCached(ServletSessionTokenStore.java:67)
>>>         at org.keycloak.adapters.RequestAuthenticator.authenticate(RequestAuthenticator.java:88)
>>>         at org.keycloak.adapters.undertow.AbstractUndertowKeycloakAuthMech.keycloakAuthenticate(AbstractUndertowKeycloakAuthMech.java:110)
>>>         at org.keycloak.adapters.undertow.ServletKeycloakAuthMech.authenticate(ServletKeycloakAuthMech.java:92)


Our testing procedure is inadequate if we are unable to detect this error.


On Thu, Jan 21, 2016 at 4:20 PM, Christian Beikov
<christian.beikov at gmail.com> wrote:
> Because you probably didn't hit the code that is binary incompatible. As you
> can see in the stacktrace, the ungetRequestBytes method has a different
> signature in Undertow 1.3.x
>
>
> Am 21.01.2016 um 16:19 schrieb Stian Thorgersen:
>
> It depends on what the actual problem is though, because we have tested it
> on WF10 and we didn't discover any issues
>
> On 21 January 2016 at 16:18, Stian Thorgersen <sthorger at redhat.com> wrote:
>>
>> If the adapter is broken for WF10, we need to fix for 1.8 as well
>>
>> On 21 January 2016 at 16:15, Bill Burke <bburke at redhat.com> wrote:
>>>
>>> Log a jira and schedule for 1.9.  I'll either create a new adapter or
>>> find a workaround that is backward compatible.
>>>
>>> On 1/21/2016 10:09 AM, Stian Thorgersen wrote:
>>>
>>> What is your problem when you are actually using the adapter?
>>>
>>> As I said we need the adapter to compile against multiple versions, we
>>> can not maintain one per version of WildFly.
>>>
>>> On 21 January 2016 at 16:07, Christian Beikov
>>> <christian.beikov at gmail.com> wrote:
>>>>
>>>> As I wrote, when you change the Undertow version in the parent pom, a
>>>> build will generate a compilation error when using the Undertow version that
>>>> is used in Wildfly 10 which would be 1.3.x.
>>>>
>>>> I encountered the following exception in the Undertow adapters because
>>>> of binary incompatibilities between Undertow 1.2.x and 1.3.x:
>>>>
>>>> java.lang.NoSuchMethodError:
>>>> io.undertow.server.Connectors.ungetRequestBytes(Lio/undertow/server/HttpServerExchange;[Lorg/xnio/Pooled;)V
>>>>         at
>>>> org.keycloak.adapters.undertow.SavedRequest.tryRestoreRequest(SavedRequest.java:112)
>>>>         at
>>>> org.keycloak.adapters.undertow.ServletSessionTokenStore.restoreRequest(ServletSessionTokenStore.java:119)
>>>>         at
>>>> org.keycloak.adapters.undertow.ServletSessionTokenStore.isCached(ServletSessionTokenStore.java:67)
>>>>         at
>>>> org.keycloak.adapters.RequestAuthenticator.authenticate(RequestAuthenticator.java:88)
>>>>         at
>>>> org.keycloak.adapters.undertow.AbstractUndertowKeycloakAuthMech.keycloakAuthenticate(AbstractUndertowKeycloakAuthMech.java:110)
>>>>         at
>>>> org.keycloak.adapters.undertow.ServletKeycloakAuthMech.authenticate(ServletKeycloakAuthMech.java:92)
>>>>
>>>>
>>>> Regards,
>>>> Christian
>>>>
>>>>
>>>> Am 21.01.2016 um 16:00 schrieb Stian Thorgersen:
>>>>
>>>> When we tested it, it worked. So I need more details from you to
>>>> reproduce this.
>>>>
>>>> On 21 January 2016 at 14:50, Christian Beikov
>>>> <christian.beikov at gmail.com> wrote:
>>>>>
>>>>> I deploy the adapter by overlaying/copying the adapter modules into my
>>>>> Wildfly.
>>>>>
>>>>> I understand that you support older Wildfly versions too, but I guess
>>>>> you have to create a separate adapter for Wildfly 10 then.
>>>>> You can easily see that there are incompatibilities between Undertow
>>>>> 1.2.x and 1.3.x which will result in a failed compilation if you change the
>>>>> Undertow version in the parent pom for testing purposes.
>>>>>
>>>>> Regards,
>>>>> Christian
>>>>>
>>>>>
>>>>> Am 21.01.2016 um 14:44 schrieb Stian Thorgersen:
>>>>>
>>>>> BTW we support older versions of WildFly as well as 10, so it's not as
>>>>> simple as upgrading the undertow version
>>>>>
>>>>> On 21 January 2016 at 14:43, Stian Thorgersen <sthorger at redhat.com>
>>>>> wrote:
>>>>>>
>>>>>> How are you deploying the adapter and what adapter are you using? We
>>>>>> have tested the adapter with WildFly 10 (Keycloak 1.8.0.CR1 was tested on
>>>>>> 10.0.0.CR5) and it worked fine.
>>>>>>
>>>>>> On 21 January 2016 at 14:30, Christian Beikov
>>>>>> <christian.beikov at gmail.com> wrote:
>>>>>>>
>>>>>>> Hello,
>>>>>>>
>>>>>>> I am trying to deploy Keycloak 1.8.0.CR1 to Wildfly 10.0.0.CR4 but
>>>>>>> there
>>>>>>> are some problems with that.
>>>>>>> You are compiling against Undertow 1.1.1.Final but Wildfly 10.0.0.CR4
>>>>>>> comes with 1.3.3.Final and there are some binary incompatibilities in
>>>>>>> io.undertow.server.Connectors of which
>>>>>>> org.keycloak.adapters.undertow.SavedRequest is affected.
>>>>>>> You are using io.undertow.util.ImmediatePooled instead of the
>>>>>>> expected
>>>>>>> type io.undertow.connector.PooledByteBuffer which leads to method not
>>>>>>> found exceptions.
>>>>>>> I suggest you update the undertow version in the parent pom.xml to
>>>>>>> make
>>>>>>> sure everything is binary compatible if you are going to support
>>>>>>> Wildfly
>>>>>>> 10 as you announced.
>>>>>>>
>>>>>>> Regards,
>>>>>>> Christian
>>>>>>> _______________________________________________
>>>>>>> keycloak-dev mailing list
>>>>>>> keycloak-dev at lists.jboss.org
>>>>>>> https://lists.jboss.org/mailman/listinfo/keycloak-dev
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> keycloak-dev mailing list
>>> keycloak-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/keycloak-dev
>>>
>>>
>>> --
>>> Bill Burke
>>> JBoss, a division of Red Hat
>>> http://bill.burkecentral.com
>>>
>>>
>>> _______________________________________________
>>> keycloak-dev mailing list
>>> keycloak-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/keycloak-dev
>>
>>
>
>
>
> _______________________________________________
> keycloak-dev mailing list
> keycloak-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/keycloak-dev
>
>
>
> _______________________________________________
> keycloak-dev mailing list
> keycloak-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/keycloak-dev


More information about the keycloak-dev mailing list