Sounds like you are using @Push but the server does not have websockets enabled for one reason or another. Or you have a proxy in between which does not support websockets.
yes, we use @Push.
our server also has 2 endpoints for websocket (wss). One for device connects to server, one is javascript we load to browser.
and third one is Vaadin push.
only thing is our server only enables to listern wss at port 8443. we are using pivotal web service.
how to config for Vaadin push understand wss port 8443 ?
if we test at localhost, it is fine.
here is our wss you can try:
wss://neonplatform-grumpy-hippopotamus.cfapps.io:8443/services/usersession/8643bd72b7dc46cdaa8359a686a1e4c1
Vaadin uses the server features to add websocket endpoints so any configuration related to that would need to happen in the server. If you have changed the address through a proxy or similar, you can force your Vaadin app to use a given URL for push using getUI().getPushConfiguration().setPushUrl("...") but that will not change the URL that websocket endpoints are deployed to
let say my domain is: neonplatform-grumpy-hippopotamus.cfapps.io
and i only want Vaadin push using wss at port 8443, which param do i need to set to setPushUrl(" ???") ?
before establishing websocket, vaadinpush.js called XMLHttpRequest.
why vaadinpush.js needs a XMLHttpRequest request if we already set transport for it is websocket ?
in case if vaadinpush.js still needs do a XMLHttpRequest, it should not use entire of the url was set on getPushConfiguration().setPushUrl.
i think this is a problem on vaadinpush.js implementation, that is if we set custom url in getPushConfiguration().setPushUrl(), then all request either https or wss will come to this URL. so if we set:
then https also called to wss://neonplatform-grumpy-hippopotamus.cfapps.io:8443. => this is a bug.
we need to change this implementation.
vaadinpush.js still requests to https://neonplatform-grumpy-hippopotamus.cfapps.io for a XMLHttpRequest.
and only requests to wss://neonplatform-grumpy-hippopotamus.cfapps.io:8443 for websocket.