Websockets with Tomcat 9

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Websockets with Tomcat 9

kelcio@jsonar.com
Hi folks,

I have a small project which uses JSF 2.3, CDI and Tomcat 9.0.17.

I am trying to use <f:websocket> for the first time. I am using @Inject @Push in an application scoped bean.

I put an Observer to monitor the WebSocket events and I could realize that the socket is never being opened.

That is what I could realize when I access the page which contains the WebSocket tag:

EndpointImpl class - onOpen method:

config.getUserProperties().get(WebsocketConfigurator.WEBSOCKET_VALID) is always false.

WebsocketConfigurator class - modifyHandshake method:

websocketSessionBean is always being null, therefore WEBSOCKET_VALID is always being false.

I think it is important to mention that when I use javax.faces (from Glassfish) it works perfectly. However, I am working in a huge project which uses MyFaces, so I have to continue using it.

My dependencies in pom.xml are:

myfaces-api: 2.3.3
myfaces-impl: 2.3.3
tomcat-catalina: 9.0.17
weld-servlet-shaded: 3.1.0.Final
cdi-api: 2.0
primefaces: 7.0
javax.websocket-api: 1.1

Any suggestions?

Regards,

Kelcio.
Reply | Threaded
Open this post in threaded view
|

Re: Websockets with Tomcat 9

Thomas Andraschko-4
Hi,

Can you create a issue and provide a reproducer maven sample project +
steps to reproduce? So i can have a Look at it and fix it.

[hidden email] <[hidden email]> schrieb am Fr., 26. Apr. 2019, 01:06:

> Hi folks,
>
> I have a small project which uses JSF 2.3, CDI and Tomcat 9.0.17.
>
> I am trying to use <f:websocket> for the first time. I am using @Inject
> @Push in an application scoped bean.
>
> I put an Observer to monitor the WebSocket events and I could realize that
> the socket is never being opened.
>
> That is what I could realize when I access the page which contains the
> WebSocket tag:
>
> EndpointImpl class - onOpen method:
>
> config.getUserProperties().get(WebsocketConfigurator.WEBSOCKET_VALID) is
> always false.
>
> WebsocketConfigurator class - modifyHandshake method:
>
> websocketSessionBean is always being null, therefore WEBSOCKET_VALID is
> always being false.
>
> I think it is important to mention that when I use javax.faces (from
> Glassfish) it works perfectly. However, I am working in a huge project
> which uses MyFaces, so I have to continue using it.
>
> My dependencies in pom.xml are:
>
> myfaces-api: 2.3.3
> myfaces-impl: 2.3.3
> tomcat-catalina: 9.0.17
> weld-servlet-shaded: 3.1.0.Final
> cdi-api: 2.0
> primefaces: 7.0
> javax.websocket-api: 1.1
>
> Any suggestions?
>
> Regards,
>
> Kelcio.
>
Reply | Threaded
Open this post in threaded view
|

Re: Websockets with Tomcat 9

kelcio@jsonar.com
Hi Thomas, thanks for the quick response.

I have created an issue. This is the link:
https://issues.apache.org/jira/browse/MYFACES-4288

Regards,

Kelcio.

On Thu, Apr 25, 2019 at 4:39 PM Thomas Andraschko <
[hidden email]> wrote:

> Hi,
>
> Can you create a issue and provide a reproducer maven sample project +
> steps to reproduce? So i can have a Look at it and fix it.
>
> [hidden email] <[hidden email]> schrieb am Fr., 26. Apr. 2019,
> 01:06:
>
> > Hi folks,
> >
> > I have a small project which uses JSF 2.3, CDI and Tomcat 9.0.17.
> >
> > I am trying to use <f:websocket> for the first time. I am using @Inject
> > @Push in an application scoped bean.
> >
> > I put an Observer to monitor the WebSocket events and I could realize
> that
> > the socket is never being opened.
> >
> > That is what I could realize when I access the page which contains the
> > WebSocket tag:
> >
> > EndpointImpl class - onOpen method:
> >
> > config.getUserProperties().get(WebsocketConfigurator.WEBSOCKET_VALID) is
> > always false.
> >
> > WebsocketConfigurator class - modifyHandshake method:
> >
> > websocketSessionBean is always being null, therefore WEBSOCKET_VALID is
> > always being false.
> >
> > I think it is important to mention that when I use javax.faces (from
> > Glassfish) it works perfectly. However, I am working in a huge project
> > which uses MyFaces, so I have to continue using it.
> >
> > My dependencies in pom.xml are:
> >
> > myfaces-api: 2.3.3
> > myfaces-impl: 2.3.3
> > tomcat-catalina: 9.0.17
> > weld-servlet-shaded: 3.1.0.Final
> > cdi-api: 2.0
> > primefaces: 7.0
> > javax.websocket-api: 1.1
> >
> > Any suggestions?
> >
> > Regards,
> >
> > Kelcio.
> >
>


--
Best Regards,
Kelcio.