1. OpenJPA
  2. OPENJPA-1722

Problem serializing DistinctResultList when EntityManager is closed


    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.0.0
    • Fix Version/s: 2.0.1, 2.1.0
    • Component/s: kernel
    • Labels:


      A client application that worked earlier is now failing in 2.10, relating to the serialization of the DistinctResultList. It does a distinct query followed by a getResultList(). A DistinctResultList is returned from the query, where a DelegatingResultList used to be returned. The EntityManager is closed before the serialization occurs. It fails with the exception: org.apache.openjpa.persistence.InvalidStateException: The context has been closed.

      Here's what is happening: The DistinctResultList contains a RuntimeExceptionTranslator object which contains the closed EntityManager. The writeObject() in the enclosed BrokerImpl does an assertOpen(), which issues the exception.

      The DelegatingResultList also contains the RuntimeExceptionTranslator. But, it contains a writeResult() method which is called during serialization. This only attempts to write the ResultList object, not the RuntimeExceptionTranslator object.

      So, I will add the writeResult() method to the DistinctResultList class. In this case, it will write an ArrayList instead of a ResultList object. This should be ok since the method signature is for a List.


        Michael Dick made changes -
        Status Resolved [ 5 ] Closed [ 6 ]
        Donald Woods made changes -
        Resolution Fixed [ 1 ]
        Status In Progress [ 3 ] Resolved [ 5 ]
        Michael Dick made changes -
        Fix Version/s 2.0.1 [ 12314532 ]
        Affects Version/s 2.0.0 [ 12314019 ]
        Affects Version/s 2.1.0 [ 12314542 ]
        Dianne Richards made changes -
        Field Original Value New Value
        Status Open [ 1 ] In Progress [ 3 ]
        Dianne Richards created issue -


          • Assignee:
            Dianne Richards
            Dianne Richards
          • Votes:
            0 Vote for this issue
            0 Start watching this issue


            • Created: