Uploaded image for project: 'Derby'
  1. Derby
  2. DERBY-62

TableName not serializable

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 10.1.1.0
    • SQL
    • None

    Description

      I'm not sure how, but sometimes an EmbedSQLException can hold on to a TableName. Since TableName is not serializable we can not ship derby exceptions to remote clients. It is common usage for EJB applications to simply pass exceptions through to remote clients.

      This is the exception I get when I try to serialize an EmbededSQLException... sorry this is not much help on what is causing EmbededSQLException to hold onto a table name but Java Serialization doesn't throw nice exceptions.

      15:34:41,161 FATAL [EjbRequestHandler] Invocation result object is not serializable: org.apache.derby.impl.jdbc.EmbedSQLException
      java.io.NotSerializableException: org.apache.derby.impl.sql.compile.TableName
      at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1054)
      at java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1224)
      at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1050)
      at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1332)
      at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1304)
      at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1247)
      at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1052)
      at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:278)
      at org.openejb.client.EJBResponse.writeExternal(EJBResponse.java:159)
      at org.openejb.server.ejbd.EjbRequestHandler.processRequest(EjbRequestHandler.java:248)
      at org.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java:134)
      at org.openejb.server.ejbd.EjbServer.service(EjbServer.java:76)
      at org.openejb.server.ServiceLogger.service(ServiceLogger.java:108)
      at org.openejb.server.ServiceAccessController.service(ServiceAccessController.java:84)
      at org.openejb.server.ServicePool$1.run(ServicePool.java:105)
      at java.lang.Thread.run(Thread.java:552)

      Attachments

        Activity

          People

            djd Daniel John Debrunner
            dain Dain Sundstrom
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: