Thanks for the input Roberts, actually upgrade request fails for an http request made. For ws:// request I am seeing connection failed. Do I need to add websocket-jetty related configuration in jetty.xml configuration file?
Can some please share a snippet of the configuration to be added ? Thanks, Yash Sharma From: Lachlan Roberts <lach...@webtide.com> Sent: Monday, March 11, 2024 12:52 PM To: JETTY user mailing list <jetty-users@eclipse.org> Cc: Yash Sharma <ysha...@egain.com> Subject: EXTERNAL- Re: [jetty-users] websocket-jetty-server not able to upgrade request to websocket CAUTION: This email originated from outside eGain. Do not click links or open attachments unless you can verify the sender and know the content is safe. These two lines do exactly the same thing btw, so might want to remove one factory.register(MySocket.class); factory.addMapping("/", (req,res)->new MySocket()); Can you look at the HTTP response to the websocket upgrade request. You also can enable Jetty debug logging for websocket and see exactly what is happening. On Fri, Mar 8, 2024 at 5:14 PM Yash Sharma via jetty-users <jetty-users@eclipse.org<mailto:jetty-users@eclipse.org>> wrote: Hi All, I am trying to make websocket connection using html and javascript. My client is as follows: const socketUrl = "ws://host:port/example"; const socket = new WebSocket(socketUrl);[ And I have Servlet as follows @WebServlet(name = "WebSocket Servlet", urlPatterns = { "/example" }) public class MyWSServlet extends JettyWebSocketServlet { @Override public void configure(JettyWebSocketServletFactory factory) { factory.setIdleTimeout(Duration.ofSeconds(1000)); factory.register(MySocket.class); factory.addMapping("/", (req,res)->new MySocket()); } } @WebSocket public class MySocket{ @OnWebSocketConnect public void onConnect(Session session) { System.out.println("Connect: " + session.getRemoteAddress()); } } I am using websocket-jetty-server dependency in pom.xml When I try to hit the ws api, at server side I see that in upgradeRequest() validateNegotiation returns false and hence request is not upgraded to websocket. As per chat gpt negotiateHeaders() is responsible to add Upgrade:websocket in request headers. But I do not see that happening in jetty. I have attached stack trace for reference. Can someone please help me with this problem to establish a websocket connection using jetty? The message that I see in browser console is “connection to 'ws://host:port/example' failed:” Thanks, Yash Sharma _______________________________________________ jetty-users mailing list jetty-users@eclipse.org<mailto:jetty-users@eclipse.org> To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/jetty-users
_______________________________________________ jetty-users mailing list jetty-users@eclipse.org To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/jetty-users