Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
Clear All
new posts

    top-level exception java.lang.Exception: Non-RPC request ignored.

    Hi , I am getting "top-level exception java.lang.Exception: Non-RPC request ignored" after upgrading from smartclient 12.1-p20210821 to 12.1-p20211102

    at com.isomorphic.rpc.RPCManager.parseRequest(RPCManager.java:2483) ~[com.isomorphic.smartclient.pro-isomorphic-core-rpc-12.1-p20211102.jar:?]
    at com.isomorphic.rpc.RPCManager.<init>(RPCManager.java:435) ~[com.isomorphic.smartclient.pro-isomorphic-core-rpc-12.1-p20211102.jar:?]
    at com.isomorphic.rpc.RPCManager.<init>(RPCManager.java:415) ~[com.isomorphic.smartclient.pro-isomorphic-core-rpc-12.1-p20211102.jar:?]
    at com.isomorphic.servlet.IDACall.processRequest(IDACall.java:147) [com.isomorphic.smartclient.pro-isomorphic-core-rpc-12.1-p20211102.jar:?]
    at com.isomorphic.servlet.IDACall._processRequest(IDACall.java:119) [com.isomorphic.smartclient.pro-isomorphic-core-rpc-12.1-p20211102.jar:?]
    at com.isomorphic.servlet.IDACall.doPost(IDACall.java:79) [com.isomorphic.smartclient.pro-isomorphic-core-rpc-12.1-p20211102.jar:?]
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:650) [servlet-api.jar:?]
    at com.isomorphic.servlet.BaseServlet.service(BaseServlet.java:178) [com.isomorphic.smartclient.pro-isomorphic-core-rpc-12.1-p20211102.jar:?]
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:731) [servlet-api.jar:?]
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) [catalina.jar:7.0.93]
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.93]
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) [tomcat7-websocket.jar:7.0.93]
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) [catalina.jar:7.0.93]
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.93]


    #2
    This indicates that an HTTP request was sent to the IDACall servlet which was not in the expected format (dataProtocol:"scServer"). You can use your browser developer tools to look at what the request was.

    You will likely find that the underlying problem is that you accidentally overwrote or changed some kind of configuration file during the upgrade process.

    Comment


      #3
      Thanks for the reply. Also I am getting this below WARN. I see this stack trace when RPCManager is calling a getDSRequest() with skipwarning set to false and I bypassed this warn message by calling parameterized getDSRequest() with boolean flag set to true.

      1. Do I need to worry about suppressing this warn message?
      2. Is there any other way to fix this warn message?

      WARN (ajp-bio-8009-exec-5) [com.isomorphic.rpc.RPCManager] getDSRequest() on multiop RPC (50 requests pending)
      java.lang.Exception: null
      at com.isomorphic.rpc.RPCManager.getDSRequest(RPCManager.java:589) [com.isomorphic.smartclient.pro-isomorphic-core-rpc-12.1-p20211102.jar:?]
      at com.isomorphic.rpc.RPCManager.getDSRequest(RPCManager.java:577) [com.isomorphic.smartclient.pro-isomorphic-core-rpc-12.1-p20211102.jar:?]
      at com.isomorphic.servlet.IDACall.processRequest(IDACall.java:148) [com.isomorphic.smartclient.pro-isomorphic-core-rpc-12.1-p20211102.jar:?]
      at com.isomorphic.servlet.IDACall._processRequest(IDACall.java:119) [com.isomorphic.smartclient.pro-isomorphic-core-rpc-12.1-p20211102.jar:?]
      at com.isomorphic.servlet.IDACall.doPost(IDACall.java:79) [com.isomorphic.smartclient.pro-isomorphic-core-rpc-12.1-p20211102.jar:?]
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:650) [servlet-api.jar:?]
      at com.isomorphic.servlet.BaseServlet.service(BaseServlet.java:178) [com.isomorphic.smartclient.pro-isomorphic-core-rpc-12.1-p20211102.jar:?]
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:731) [servlet-api.jar:?]
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) [catalina.jar:7.0.93]
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.93]
      at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) [tomcat7-websocket.jar:7.0.93]
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) [catalina.jar:7.0.93]
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.93]
      at org.apache.logging.log4j.web.Log4jServletFilter.doFilter(Log4jServletFilter.java:71) [log4j-web-2.17.1.jar:2.17.1]
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) [catalina.jar:7.0.93]
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.93]
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219) [catalina.jar:7.0.93]
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:110) [catalina.jar:7.0.93]
      at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:494) [catalina.jar:7.0.93]
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169) [catalina.jar:7.0.93]
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104) [catalina.jar:7.0.93]
      at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:1025) [catalina.jar:7.0.93]
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) [catalina.jar:7.0.93]
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:445) [catalina.jar:7.0.93]
      at org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:190) [tomcat-coyote.jar:7.0.93]
      at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:637) [tomcat-coyote.jar:7.0.93]
      at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:317) [tomcat-coyote.jar:7.0.93]
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_202]
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_202]
      at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-coyote.jar:7.0.93]
      at java.lang.Thread.run(Thread.java:748) [?:1.8.0_202]
      Last edited by vreddy525; 15 Mar 2022, 18:40.

      Comment


        #4
        The getDSRequest() API is documented as:

        Convenience method for getting a single DSRequest when you know this request only contains one DSRequest. If more than one DSRequest was actually sent by the client, this method returns the first one and logs a warning.
        Your partial logs indicate that 50 requests are being sent. If your code is written to expect just one request, it is almost certainly just flawed code, and rather than suppressing the warning, you should try to figure out why there are 50 requests but the code seems to have been written expecting just one.

        Comment


          #5
          I've searched in my project and found no reference to getDSRequest We are running a subclass of IDACall that overrides handleDSRequest(), but nothing that calls getDSRequest(). These messages only started appearing after updating to the latest version 12.1-p20211102

          Comment


            #6
            There appears to be a direct call to getDSRequest() from your code, shown in the stack above.

            at com.isomorphic.rpc.RPCManager.getDSRequest(RPCManager.java:577) [com.isomorphic.smartclient.pro-isomorphic-core-rpc-12.1-p20211102.jar:?]
            at com.verisign.nrd.util.NRDIDACall.processRPCTransaction(NRDIDACall.java:77) [classes/:?]
            Although, this is a little odd since it says "com.verisign". So perhaps you are incorporating some code from Verisign that is based on SmartClient Pro, and that's why you don't have this particular line of code in your project?

            Regardless, this is not the SmartClient server making the incorrect call - it's code external to our framework.

            Also, can you please post from your licensed account? You seem to be posting from a generic account - you don't show as licensed, and you don't even show a valid email (your email appears to have been deleted from your account??).

            Comment

            Working...
            X