Announcement

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

    Exception in BuiltInDS SuperDevMode after .ds.xml change

    Hi Isomorphic,

    retesting a bug I noticed an issue I had before with BuiltInDS (now using v12.1p_2022-12-06, Eclipse 4.15, Win10, SuperDevMode with built in Webserver).

    When I change a .ds.xml file (add an attribute to a field for example) it needs to be reparsed (OK). Sometimes this reparsing does not work with the error below, pointing to a different problem I assume. After stopping and restarting SuperDevMode everything is OK again. Also I have never seen this problem in my application, where I use Apache Tomcat + SuperDevMode.

    This is the exception (please note that the stack trace also slightly differs, XML.parseXML(XML.java:295) vs XML.parseXML(XML.java:216)).

    Before this log entry everything was OK, then I changed the file and the next request fails because of the parsing problem (the XML is OK of course).
    Does this ClassCastException and error message mean anything to you?

    Thank you & Best regards
    Blama

    Code:
    === 2023-01-31 16:04:37,722 [0-50] INFO RequestContext - URL: '/builtinds/sc/IDACall', User-Agent: 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/109.0': Moz (Gecko) with Accept-Encoding header
    === 2023-01-31 16:04:37,819 [0-50] DEBUG XML - An exception was thrown while setting feature strings to prevent loading a DTD:
    java.lang.ClassCastException: org.apache.xerces.parsers.XIncludeAwareParserConfiguration cannot be cast to org.apache.xerces.xni.parser.XMLParserConfiguration
        at org.apache.xerces.parsers.DOMParser.<init>(Unknown Source)
        at org.apache.xerces.parsers.DOMParser.<init>(Unknown Source)
        at org.apache.xerces.jaxp.DocumentBuilderImpl.<init>(Unknown Source)
        at org.apache.xerces.jaxp.DocumentBuilderImpl.<init>(Unknown Source)
        at org.apache.xerces.jaxp.DocumentBuilderFactoryImpl.setFeature(Unknown Source)
        at com.isomorphic.xml.XML.parseXML(XML.java:216)
        at com.isomorphic.xml.XML.parseRestrictedXML(XML.java:149)
        at com.isomorphic.xml.XML.toDSRecords(XML.java:497)
        at com.isomorphic.xml.XML.toDSRecords(XML.java:493)
        at com.isomorphic.rpc.RPCManager.parseRequest(RPCManager.java:2591)
        at com.isomorphic.rpc.RPCManager.<init>(RPCManager.java:435)
        at com.isomorphic.rpc.RPCManager.<init>(RPCManager.java:415)
        at com.isomorphic.servlet.IDACall.processRequest(IDACall.java:147)
        at com.isomorphic.servlet.IDACall._processRequest(IDACall.java:119)
        at com.isomorphic.servlet.IDACall.doPost(IDACall.java:79)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:648)
        at com.isomorphic.servlet.BaseServlet.service(BaseServlet.java:178)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
        at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:812)
        at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1669)
        at com.isomorphic.servlet.CompressionFilter._doFilter(CompressionFilter.java:263)
        at com.isomorphic.servlet.BaseFilter.doFilter(BaseFilter.java:91)
        at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
        at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585)
        at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
        at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577)
        at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
        at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
        at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
        at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
        at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
        at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
        at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
        at org.eclipse.jetty.server.handler.RequestLogHandler.handle(RequestLogHandler.java:95)
        at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
        at org.eclipse.jetty.server.Server.handle(Server.java:499)
        at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311)
        at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
        at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544)
        at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
        at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
        at java.lang.Thread.run(Unknown Source)
    === 2023-01-31 16:04:37,824 [0-50] ERROR IDACall - com.isomorphic.servlet.IDACall top-level exception
    java.lang.ClassCastException: org.apache.xerces.parsers.XIncludeAwareParserConfiguration cannot be cast to org.apache.xerces.xni.parser.XMLParserConfiguration
        at org.apache.xerces.parsers.DOMParser.<init>(Unknown Source)
        at org.apache.xerces.parsers.DOMParser.<init>(Unknown Source)
        at org.apache.xerces.jaxp.DocumentBuilderImpl.<init>(Unknown Source)
        at org.apache.xerces.jaxp.DocumentBuilderFactoryImpl.newDocumentBuilder(Unknown Source)
        at com.isomorphic.xml.XML.parseXML(XML.java:295)
        at com.isomorphic.xml.XML.parseRestrictedXML(XML.java:149)
        at com.isomorphic.xml.XML.toDSRecords(XML.java:497)
        at com.isomorphic.xml.XML.toDSRecords(XML.java:493)
        at com.isomorphic.rpc.RPCManager.parseRequest(RPCManager.java:2591)
        at com.isomorphic.rpc.RPCManager.<init>(RPCManager.java:435)
        at com.isomorphic.rpc.RPCManager.<init>(RPCManager.java:415)
        at com.isomorphic.servlet.IDACall.processRequest(IDACall.java:147)
        at com.isomorphic.servlet.IDACall._processRequest(IDACall.java:119)
        at com.isomorphic.servlet.IDACall.doPost(IDACall.java:79)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:648)
        at com.isomorphic.servlet.BaseServlet.service(BaseServlet.java:178)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
        at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:812)
        at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1669)
        at com.isomorphic.servlet.CompressionFilter._doFilter(CompressionFilter.java:263)
        at com.isomorphic.servlet.BaseFilter.doFilter(BaseFilter.java:91)
        at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
        at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585)
        at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
        at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577)
        at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
        at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
        at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
        at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
        at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
        at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
        at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
        at org.eclipse.jetty.server.handler.RequestLogHandler.handle(RequestLogHandler.java:95)
        at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
        at org.eclipse.jetty.server.Server.handle(Server.java:499)
        at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311)
        at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
        at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544)
        at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
        at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
        at java.lang.Thread.run(Unknown Source)
    [ERROR] 500 - POST /builtinds/sc/IDACall?isc_rpc=1&isc_v=v12.1p_2022-12-06&isc_xhr=1 (127.0.0.1) 4255 bytes
       Request headers
          Host: 127.0.0.1:8080
          User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/109.0
          Accept: */*
          Accept-Language: en-US,en;q=0.8,de-DE;q=0.5,de;q=0.3
          Accept-Encoding: gzip, deflate, br
          Content-Type: application/x-www-form-urlencoded; charset=UTF-8
          Content-Length: 1095
          Origin: http://127.0.0.1:8080
          Connection: keep-alive
          Referer: http://127.0.0.1:8080/BuiltInDS.html
          Cookie: isc_cState="ready"; JSESSIONID=l61jjy9kjf2y4ol9qge9nimr; GLog=%7B%0A%20%20%20%20trackRPC%3Afalse%0A%7D
          Sec-Fetch-Dest: empty
          Sec-Fetch-Mode: cors
          Sec-Fetch-Site: same-origin
       Response headers
          Date: Tue, 31 Jan 2023 15:04:37 GMT
          Content-Type: text/html; charset=ISO-8859-1

    #2
    See the section titled "Extra Step Required for GWT 2.8+" in the SmartGWT documentation here. Does that address your issue?

    Comment


      #3
      Hi Isomorphic,

      yes, that seems to fix the problem.

      Thanks a lot & Best regards
      Blama

      Comment

      Working...
      X