Error making 2nd web socket connection


  • Hi,

    I am using java SDK version smartapi-java-2.2.5.jar to connect to Websocket. The code opens two web socket connections to stream depth20 data for Nifty 50 stocks. 25 stocks for each connection, since one connection can have less than 50 depth50 subscriptions. This was working until yesterday. However, today I am getting the attached error while making second connection (Line 39).

    Screenshot 2024-11-28 at 2.02.25 PM.png

    Log below:
    13:56:42.559 [restartedMain] INFO c.a.s.http.SmartAPIRequestHandler - headers : {"sourceID":"WEB","clientPublicIP":"49.36.58.44","macAddress":"06-4C-72-DF-87-85","userType":"USER","clientLocalIP":"127.0.0.1","accept":"application/json"}
    13:56:42.713 [restartedMain] INFO c.a.s.http.SmartAPIResponseHandler - ***************************
    13:56:42.714 [restartedMain] INFO c.angelbroking.smartapi.SmartConnect - login result: {"data":{"feedToken":"eyJhbGciOiJIUzUxMiJ9.eyJ1c2VybmFtZSI6IkFBQUE5NDY1OTYiLCJpYXQiOjE3MzI3ODI0MDIsImV4cCI6MTczMjg2ODgwMn0.Pu8zqACsGbOEgH68U9JvJf1cH8cjgdfVM7LdSJQ4G9IYkymGeSTZdGOL95oil3TW8LwJXpEgXx1cgj2sSGUMYA","jwtToken":"eyJhbGciOiJIUzUxMiJ9.eyJ1c2VybmFtZSI6IkFBQUE5NDY1OTYiLCJyb2xlcyI6MCwidXNlcnR5cGUiOiJVU0VSIiwidG9rZW4iOiJleUpoYkdjaU9pSlNVekkxTmlJc0luUjVjQ0k2SWtwWFZDSjkuZXlKMWMyVnlYM1I1Y0dVaU9pSmpiR2xsYm5RaUxDSjBiMnRsYmw5MGVYQmxJam9pZEhKaFpHVmZZV05qWlhOelgzUnZhMlZ1SWl3aVoyMWZhV1FpT2pnc0luTnZkWEpqWlNJNklqTWlMQ0prWlhacFkyVmZhV1FpT2lJMVlUSTBNMlU1TUMwek1qWTFMVE13TURFdE9UUmhPQzFtWmpreVpUSTNOR0U0T0RVaUxDSnJhV1FpT2lKMGNtRmtaVjlyWlhsZmRqRWlMQ0p2Ylc1bGJXRnVZV2RsY21sa0lqbzRMQ0p3Y205a2RXTjBjeUk2ZXlKa1pXMWhkQ0k2ZXlKemRHRjBkWE1pT2lKaFkzUnBkbVVpZlgwc0ltbHpjeUk2SW5SeVlXUmxYMnh2WjJsdVgzTmxjblpwWTJVaUxDSnpkV0lpT2lKQlFVRkJPVFEyTlRrMklpd2laWGh3SWpveE56TXlPRFk0T0RBeUxDSnVZbVlpT2pFM016STNPREl5TWpJc0ltbGhkQ0k2TVRjek1qYzRNakl5TWl3aWFuUnBJam9pWVROaU1EZ3lNekF0WTJabFl5MDBNR0UzTFdKaFpUTXRZV1V5TkRRek1XTTJOR0poSWl3aVZHOXJaVzRpT2lJaWZRLlBwUmYwem1TRUowcmtsZzZRWEJqZUpXcWpDdVhZTFpzOEFIbjZlRnNuQ0hfNktwRFNid0s2RXF3UUJ5dWZFVmRLRUtUUi1EWjFqR2I2YThWM3RQbzE3LVI5Tkk3MnR3bm9WU0wwckROaE5seG9pcWV2aVN4blJValEwdlN3cUJsa25tT3FNZGRJdG4tWmhSYTBPUUhpclU2cTFhUlItMnJIY1lNdUQ2dkJDWSIsIkFQSS1LRVkiOiJCMjVTU1FCWSIsImlhdCI6MTczMjc4MjQwMiwiZXhwIjoxNzMyODY4ODAyfQ.90TUZlJV5BOPG5LFZ-ADvaDVdCpY_7Xqd0FSR4doFnZao2wnUgQZATHVB6wab9HHkcupdKcUxZohLrJbhIlrcw","state":null,"refreshToken":"eyJhbGciOiJIUzUxMiJ9.eyJ0b2tlbiI6IlJFRlJFU0gtVE9LRU4iLCJSRUZSRVNILVRPS0VOIjoiZXlKaGJHY2lPaUpTVXpJMU5pSXNJblI1Y0NJNklrcFhWQ0o5LmV5SjFjMlZ5WDNSNWNHVWlPaUpqYkdsbGJuUWlMQ0owYjJ0bGJsOTBlWEJsSWpvaWRISmhaR1ZmY21WbWNtVnphRjkwYjJ0bGJpSXNJbWR0WDJsa0lqb3dMQ0p6YjNWeVkyVWlPaUl6SWl3aVpHVjJhV05sWDJsa0lqb2lOV0V5TkRObE9UQXRNekkyTlMwek1EQXhMVGswWVRndFptWTVNbVV5TnpSaE9EZzFJaXdpYTJsa0lqb2lkSEpoWkdWZmEyVjVYM1l4SWl3aWIyMXVaVzFoYm1GblpYSnBaQ0k2TUN3aWFYTnpJam9pYkc5bmFXNWZjMlZ5ZG1salpTSXNJbk4xWWlJNklrRkJRVUU1TkRZMU9UWWlMQ0psZUhBaU9qRTNNekk1TlRVeU1ESXNJbTVpWmlJNk1UY3pNamM0TWpJeU1pd2lhV0YwSWpveE56TXlOemd5TWpJeUxDSnFkR2tpT2lKak9HTTROV05pT1MwelpEZzBMVFJsWkdFdE9EWTVNaTFsWWpVMU5HUmlZVGMwTm1FaUxDSlViMnRsYmlJNklpSjkuYUpRaXk2MkFZLWdxWDV3TGhodW9sME03d1hraXZwdm0wSWZrV05PQ0JNdDVuSGk4RUtLRXU5LTd2ZTRwZm1yaXNRTXBuX1BSN2pXWUtIbVk3b3VlN1lpazlaVlNGaG5Fd3lIWVRnVWpMb1A2V1ZmZUJnQW53LTNoYjVBblozNWs0WE9feVUyU2pJSVF0QXc0blU0Z2g3SlBxcFk0OUtuQjZnT0NGTHdRVjNzIiwiaWF0IjoxNzMyNzgyNDAyfQ.ApDPwtQ8gfCTn4JoD9Kx66KDauh_GeBMYQjo-gkC3CdnOqGkWMFu8iAZVAOWdHvBF2jMq4FN4QAnYEoFx7S9PQ"},"message":"SUCCESS","errorcode":"","status":true}
    13:56:42.738 [restartedMain] INFO c.a.s.http.SmartAPIResponseHandler - ***************************
    getMarketData called
    Access Token: eyJhbGciOiJIUzUxMiJ9.eyJ1c2VybmFtZSI6IkFBQUE5NDY1OTYiLCJyb2xlcyI6MCwidXNlcnR5cGUiOiJVU0VSIiwidG9rZW4iOiJleUpoYkdjaU9pSlNVekkxTmlJc0luUjVjQ0k2SWtwWFZDSjkuZXlKMWMyVnlYM1I1Y0dVaU9pSmpiR2xsYm5RaUxDSjBiMnRsYmw5MGVYQmxJam9pZEhKaFpHVmZZV05qWlhOelgzUnZhMlZ1SWl3aVoyMWZhV1FpT2pnc0luTnZkWEpqWlNJNklqTWlMQ0prWlhacFkyVmZhV1FpT2lJMVlUSTBNMlU1TUMwek1qWTFMVE13TURFdE9UUmhPQzFtWmpreVpUSTNOR0U0T0RVaUxDSnJhV1FpT2lKMGNtRmtaVjlyWlhsZmRqRWlMQ0p2Ylc1bGJXRnVZV2RsY21sa0lqbzRMQ0p3Y205a2RXTjBjeUk2ZXlKa1pXMWhkQ0k2ZXlKemRHRjBkWE1pT2lKaFkzUnBkbVVpZlgwc0ltbHpjeUk2SW5SeVlXUmxYMnh2WjJsdVgzTmxjblpwWTJVaUxDSnpkV0lpT2lKQlFVRkJPVFEyTlRrMklpd2laWGh3SWpveE56TXlPRFk0T0RBeUxDSnVZbVlpT2pFM016STNPREl5TWpJc0ltbGhkQ0k2TVRjek1qYzRNakl5TWl3aWFuUnBJam9pWVROaU1EZ3lNekF0WTJabFl5MDBNR0UzTFdKaFpUTXRZV1V5TkRRek1XTTJOR0poSWl3aVZHOXJaVzRpT2lJaWZRLlBwUmYwem1TRUowcmtsZzZRWEJqZUpXcWpDdVhZTFpzOEFIbjZlRnNuQ0hfNktwRFNid0s2RXF3UUJ5dWZFVmRLRUtUUi1EWjFqR2I2YThWM3RQbzE3LVI5Tkk3MnR3bm9WU0wwckROaE5seG9pcWV2aVN4blJValEwdlN3cUJsa25tT3FNZGRJdG4tWmhSYTBPUUhpclU2cTFhUlItMnJIY1lNdUQ2dkJDWSIsIkFQSS1LRVkiOiJCMjVTU1FCWSIsImlhdCI6MTczMjc4MjQwMiwiZXhwIjoxNzMyODY4ODAyfQ.90TUZlJV5BOPG5LFZ-ADvaDVdCpY_7Xqd0FSR4doFnZao2wnUgQZATHVB6wab9HHkcupdKcUxZohLrJbhIlrcw
    User ID: AAAA946596
    connected successfully
    13:56:46.965 [http-nio-8081-exec-2] INFO c.a.s.s.ticker.SmartStreamTicker - connected to uri: wss://smartapisocket.angelone.in/smart-stream
    com.neovisionaries.ws.client.WebSocketException: The status line of the opening handshake response is empty.
    at com.neovisionaries.ws.client.HandshakeReader.readStatusLine(HandshakeReader.java:99)
    at com.neovisionaries.ws.client.HandshakeReader.readHandshake(HandshakeReader.java:48)
    at com.neovisionaries.ws.client.WebSocket.readHandshake(WebSocket.java:3440)
    at com.neovisionaries.ws.client.WebSocket.shakeHands(WebSocket.java:3319)
    at com.neovisionaries.ws.client.WebSocket.connect(WebSocket.java:2354)
    at com.angelbroking.smartapi.smartstream.ticker.SmartStreamTicker.connect(SmartStreamTicker.java:383)
    at com.neesol.angelOne.service.AngelOneService.dataExtract(AngelOneService.java:39)
    at com.neesol.angelOne.controller.AngelOneController.getMarketData(AngelOneController.java:29)
    at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
    at java.base/java.lang.reflect.Method.invoke(Method.java:580)
    at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:255)
    at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:188)
    at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118)
    at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:926)
    at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:831)
    at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
    at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1089)
    at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:979)
    at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014)
    at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:903)
    at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:564)
    at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885)
    at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:195)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140)
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140)
    at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140)
    at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140)
    at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344)
    at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:384)
    at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
    at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:905)
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741)
    at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
    at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190)
    at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63)
    at java.base/java.lang.Thread.run(Thread.java:1575)