I'll need to dig down to it again,
Afaik I added the parser for the websocket stuff ... :D

regards, Achim


Am Mi., 26. Juni 2019 um 13:25 Uhr schrieb Jean-Baptiste Onofré <
[email protected]>:

> +1 to reuse PAXWEB-1027, and happy to work with you on this one ;)
>
> Regards
> JB
> On 26/06/2019 11:33, Stephan Siano wrote:
>
> Hi,
>
> I did some further work on the topic. Here are my results:
>
> 1. I have some changes that are required to get the tests working at all.
> There is some heavy use of service loaders in the websocket API, which
> doesn't play too well with OSGi, so some tricks with ThreadContext class
> loaders are needed.
> 2. With these changes the tests works with the jetty container (I don't
> know who parses these Annotations, but obviously something in Jetty does).
> 3. I did some change to the sample bundle to have it register itself
> programatically (as an option). With this change, the test will work on
> Tomcat, so the runtime does work in tomcat but the automatic registration
> doesn't. In order to make that working, I needed to register an additional
> ServletContainerInitializer in pax-web-tomcat.
> 4. I could not get it working with the Undertow container (the
> registration, the test does work but returns a 404 when trying to upgrade
> the websocket), which means that the endpoint is not registered.
>
> I think I should contribute what I have now because it will bring us a
> working test for websockets on Jetty and at least partially working
> websocket support on Tomcat. Do I create a new JIRA item for that or do I
> re-use PAXWEB-1027, which is still open?
>
> Does anybody know how the websocket endpoint annotation parsing works in
> pax-web-jetty (and maybe how we can get the same functionality with Tomcat
> and Undertow)?
>
> Best regards
> Stephan
>
> Am Dienstag, 25. Juni 2019 17:45:03 UTC+2 schrieb Achim Nierbeck:
>>
>> Hi,
>>
>> when I first started to look into websockets, there needed to be extra
>> Bundles installed for Jetty.
>> That's about 4 to 5 years ago :)
>> But I haven't looked into the annotations, as far as I can remember.
>>
>> Regards, Achim
>>
>>
>> Am Di., 25. Juni 2019 um 16:49 Uhr schrieb Jean-Baptiste Onofré <
>> [email protected]>:
>>
>>> I mean that it's a similar pattern we use for other "connector".
>>>
>>> By the way, did you take a look on the websocket example in Karaf ?
>>>
>>> Regards
>>> JB
>>> On 25/06/2019 16:22, Stephan Siano wrote:
>>>
>>> Hi,
>>>
>>> I'm not so sure whether this is easy. I couldn't find anything about the
>>> web socket annotations in the War extender (plus the annotation scanner in
>>> the War extender creates some kind of dummy web.xml structure from the
>>> scanned annotations, but there are no web.xml entries for websockets).
>>>
>>> Nevertheless, are you interested in my changes to the tests? I think
>>> with these changes the tests start again (at least on Tomcat and Undertow),
>>> but the tests fail. I also tried to register the Websocket programatically
>>> with a ContextListener but there I couldn't get the ServerContainer from
>>> the ServletContext (AFAIK this should work via servletContext.
>>> getAttribute("javax.websocket.server.ServerContainer");). There is
>>> probably all the websocket infrastructure missing in the Pax-Web classes.
>>>
>>> Best regards
>>> Stephan
>>>
>>> On Tuesday, June 25, 2019 at 3:40:22 PM UTC+2, Jean-Baptiste Onofré
>>> wrote:
>>>>
>>>> Hi,
>>>>
>>>> AFAIR, it's not yet fully supported.
>>>>
>>>> But easy to add/fix, I will tackle that.
>>>>
>>>> Regards
>>>> JB
>>>> On 25/06/2019 15:25, Stephan Siano wrote:
>>>>
>>>> Hi,
>>>>
>>>> I have a question concerning web sockets in Pax-Web:
>>>>
>>>> A colleague of mine is trying to deploy a war on a Pax-Web container
>>>> that contains some annotated websocket server endpoints. This works with
>>>> other web containers but not on Pax web (he is getting a 404 response when
>>>> he is trying to upgrade the connection).
>>>>
>>>> I looked into the Pax-Web integration tests and it turned out that
>>>> there is an integration test for a very similar scenario
>>>> WebSocketIntegrationTest,testWebSocket() which uses the websocket-jsr356
>>>> sample bundle.
>>>>
>>>> However, this test was disabled. Even worse, it did not work anymore
>>>> after the test client was moved from the jetty http client to the apache
>>>> http client (because it currently uses a jetty websocket client which
>>>> relies on the jetty http client).
>>>>
>>>> I changed the test infrastructure to use a jsr356 client (with the
>>>> container specific implementation) and with some hassle around the class
>>>> loading because of the pax-exam infrastructure I could likely get this
>>>> running (at least with tomcat and undertow). However on both containers I
>>>> get a 404 response code when upgrading the connection (as my colleague got
>>>> with his websocket endpoint.
>>>>
>>>> Did this ever work in Pax-Web? I couldn't find any coding that is
>>>> parsing for the ServerEndpoint annotation (only Servlet and other stuff).
>>>> Or is this still unimplemented?
>>>>
>>>> Best regards
>>>> Stephan
>>>> --
>>>> --
>>>> ------------------
>>>> OPS4J - http://www.ops4j.org - [email protected]
>>>>
>>>> ---
>>>> You received this message because you are subscribed to the Google
>>>> Groups "OPS4J" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>> an email to [email protected].
>>>> To view this discussion on the web visit
>>>> https://groups.google.com/d/msgid/ops4j/1baaf72c-d85f-423f-a9f3-91974ca72ba4%40googlegroups.com
>>>> <https://groups.google.com/d/msgid/ops4j/1baaf72c-d85f-423f-a9f3-91974ca72ba4%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>> .
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>> --
>>> --
>>> ------------------
>>> OPS4J - http://www.ops4j.org - [email protected]
>>>
>>> ---
>>> You received this message because you are subscribed to the Google
>>> Groups "OPS4J" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to [email protected].
>>> To view this discussion on the web visit
>>> https://groups.google.com/d/msgid/ops4j/919b3351-ea5e-46e7-8e3c-310970cb71b1%40googlegroups.com
>>> <https://groups.google.com/d/msgid/ops4j/919b3351-ea5e-46e7-8e3c-310970cb71b1%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>> --
>>> --
>>> ------------------
>>> OPS4J - http://www.ops4j.org - [email protected]
>>>
>>> ---
>>> You received this message because you are subscribed to the Google
>>> Groups "OPS4J" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to [email protected].
>>> To view this discussion on the web visit
>>> https://groups.google.com/d/msgid/ops4j/0d56e6d8-2bad-fec5-f7e5-ccf6ba007882%40gmail.com
>>> <https://groups.google.com/d/msgid/ops4j/0d56e6d8-2bad-fec5-f7e5-ccf6ba007882%40gmail.com?utm_medium=email&utm_source=footer>
>>> .
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>>
>> --
>>
>> Apache Member
>> Apache Karaf <http://karaf.apache.org/> Committer & PMC
>> OPS4J Pax Web <http://wiki.ops4j.org/display/paxweb/Pax+Web/> Committer
>> & Project Lead
>> blog <http://notizblog.nierbeck.de/>
>> Co-Author of Apache Karaf Cookbook <http://bit.ly/1ps9rkS>
>>
>> Software Architect / Project Manager / Scrum Master
>>
>> --
> --
> ------------------
> OPS4J - http://www.ops4j.org - [email protected]
>
> ---
> You received this message because you are subscribed to the Google Groups
> "OPS4J" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/ops4j/dccc6d6f-202c-431c-8780-96b9b9b3c29d%40googlegroups.com
> <https://groups.google.com/d/msgid/ops4j/dccc6d6f-202c-431c-8780-96b9b9b3c29d%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
> For more options, visit https://groups.google.com/d/optout.
>
> --
> --
> ------------------
> OPS4J - http://www.ops4j.org - [email protected]
>
> ---
> You received this message because you are subscribed to the Google Groups
> "OPS4J" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/ops4j/92c00a0c-9a19-904a-4439-dcd1d4cea815%40gmail.com
> <https://groups.google.com/d/msgid/ops4j/92c00a0c-9a19-904a-4439-dcd1d4cea815%40gmail.com?utm_medium=email&utm_source=footer>
> .
> For more options, visit https://groups.google.com/d/optout.
>


-- 

Apache Member
Apache Karaf <http://karaf.apache.org/> Committer & PMC
OPS4J Pax Web <http://wiki.ops4j.org/display/paxweb/Pax+Web/> Committer &
Project Lead
blog <http://notizblog.nierbeck.de/>
Co-Author of Apache Karaf Cookbook <http://bit.ly/1ps9rkS>

Software Architect / Project Manager / Scrum Master

-- 
-- 
------------------
OPS4J - http://www.ops4j.org - [email protected]

--- 
You received this message because you are subscribed to the Google Groups 
"OPS4J" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ops4j/CAD0r13fQgHbHdUHE0W07dRnmL1kzbD6bTVFeg9AX5ZjztUUdNg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to