Good, I went to 
https://github.com/apache/cxf/tree/master/distribution/src/main/release/samples/jax_rs/websocket_osgi
 and added the missing cxf-transports-websocket-server feature.

Things get better :) ... now I get NoClassDefFoundError: 
org/apache/cxf/transport/http_jetty/JettyHTTPServerEngineFactory.

Well, starting from a Karaf basic custom assembly, what features am I expected 
to add as bootFeatures in order to get CXF+WebSockets running?

Regards,
JP

-----Message d'origine-----
De : Sergey Beryozkin [mailto:[email protected]] 
Envoyé : mercredi 27 juillet 2016 15:07
À : [email protected]
Objet : Re: Error during WebSocket handshake: Unexpected response code

Look at the websocket_osgi demo done by Aki

Sergey

On 27/07/16 15:55, CLEMENT Jean-Philippe wrote:
> Haha, it seems I'm in the "servlet container mode" and not the "Jetty 
> embedded mode"... so I would have, as far as I understood, set both the 
> address as a path and the transportId to 
> http://cxf.apache.org/transports/websocket.
>
> I did try but I get the following exception:
> BusException: No DestinationFactory was found for the namespace 
> http://cxf.apache.org/transports/websocket
>
> What should I add to get rid of this exception?
>
> Regards,
> JP
>
> -----Message d'origine-----
> De : CLEMENT Jean-Philippe 
> [mailto:[email protected]]
> Envoyé : mercredi 27 juillet 2016 14:44 À : [email protected] Objet 
> : RE: Error during WebSocket handshake: Unexpected response code
>
> I don't find the issue but something is strange; the /cxf page displays:
>       Endpoint address: http://localhost:8181/cxfws://localhost/socket
>
> My blueprint is:
>       <jaxrs:server id="something" address="ws://localhost/socket">
>
> The address parsing seems strange isn't it?
>
> Regards,
> JP
>
> -----Message d'origine-----
> De : Sergey Beryozkin [mailto:[email protected]] Envoyé : mercredi 
> 27 juillet 2016 14:35 À : [email protected] Objet : Re: Error 
> during WebSocket handshake: Unexpected response code
>
> I've run a demo which Aki did and it works fine.
> Yes make sure 'ws:' (or wss:) is used, it enables the loading of the 
> CXF WebSocket transport which can support both WebSocket and 'plain' 
> HTTP
>
> Cheers, Sergey
> On 27/07/16 13:49, CLEMENT Jean-Philippe wrote:
>> Hi Sergey,
>>
>> I added "socket.binaryType= 'arraybuffer';" but I get the same error. I'm 
>> not too sure if it is used or not as I don't know when WebSocket tries to 
>> connect, and setting socket.binaryType or socket.binarytype or 
>> socket.whatEver does not display any error.
>>
>> Also, I'm wondering about the CXF configuration, is the binding to a 
>> separate server configured with a "ws://..." (the "ws" part) address 
>> mandatory?
>>
>> Regards,
>> JP
>>
>> -----Message d'origine-----
>> De : Sergey Beryozkin [mailto:[email protected]] Envoyé : mercredi
>> 27 juillet 2016 12:34 À : [email protected] Objet : Re: Error 
>> during WebSocket handshake: Unexpected response code
>>
>> Hi
>> On 27/07/16 12:26, CLEMENT Jean-Philippe wrote:
>>> Dear CXF experts,
>>>
>>> I'm trying to connect a web client to a CXF WebSocket. The browser logs the 
>>> error "WebSocket connection failed: Error during WebSocket handshake: 
>>> Unexpected response code: XXX". The XXX response code changes depending on 
>>> the @Produces annotation: 200 when text/plain, 406 when text/*.
>>>
>> 406 with text/* can be explained by the fact the websocket client 
>> does not know what HTTP Accept is and the spec requires that when the 
>> final response type has a wildcard subtype (with the only exception 
>> being
>> application/*) then it is 406.
>>> The server Java looks like this:
>>> @GET
>>> @Path("monitor")
>>> @Produces("text/*")
>>> public StreamingOutput greetMonitor() {
>>>     return stream -> {
>>>      stream.write("Ok".getBytes());
>>>      stream.flush();
>>>     };
>>> }
>>>
>>> The client Javascript looks like this:
>>> var socket= new
>>> WebSocket("ws://myurlwithsameportaswebservice/cxf/test/monitor");
>>>
>>> socket.onmessage= function(e) { console.log(e.data); };
>>>
>>> What's wrong?
>> Can you please look at
>> https://github.com/apache/cxf/blob/master/distribution/src/main/relea
>> s e/samples/jax_rs/websocket/src/main/resources/index.html
>>
>> may be you need to set a socket type
>>
>> Cheers, Sergey
>>
>>>
>>> Regards,
>>> JP
>>>
>>
>>
>> --
>> Sergey Beryozkin
>>
>> Talend Community Coders
>> http://coders.talend.com/
>>
>
>
> --
> Sergey Beryozkin
>
> Talend Community Coders
> http://coders.talend.com/
>


--
Sergey Beryozkin

Talend Community Coders
http://coders.talend.com/

Reply via email to