Interface HandleDelegate


  • public interface HandleDelegate
    The HandleDelegate interface is implemented by the enterprise bean container. It is used by portable implementations of jakarta.ejb.Handle and jakarta.ejb.HomeHandle. It is not used by enterprise bean components or by client components. It provides methods to serialize and deserialize EJBObject and EJBHome references to streams.

    The HandleDelegate object is obtained by JNDI lookup at the reserved name "java:comp/HandleDelegate".

    Since:
    EJB 2.0
    • Method Detail

      • writeEJBObject

        void writeEJBObject​(EJBObject ejbObject,
                            ObjectOutputStream ostream)
                     throws IOException
        Serialize the EJBObject reference corresponding to a Handle.

        This method is called from the writeObject method of portable Handle implementation classes. The ostream object is the same object that was passed in to the Handle class's writeObject method.

        Parameters:
        ejbObject - The EJBObject reference to be serialized.
        ostream - The output stream.
        Throws:
        IOException - The EJBObject could not be serialized because of a system-level failure.
      • readEJBObject

        EJBObject readEJBObject​(ObjectInputStream istream)
                         throws IOException,
                                ClassNotFoundException
        Deserialize the EJBObject reference corresponding to a Handle.

        The readEJBObject method is called from the readObject method of portable Handle implementation classes. The istream object is the same object that was passed in to the Handle class's readObject method. WhenreadEJBObject is called, istream must point to the location in the stream at which the EJBObject reference can be read. The container must ensure that the EJBObject reference is capable of performing invocations immediately after deserialization.

        Parameters:
        istream - The input stream.
        Returns:
        The deserialized EJBObject reference.
        Throws:
        IOException - The EJBObject could not be deserialized because of a system-level failure.
        ClassNotFoundException - The EJBObject could not be deserialized because some class could not be found.
      • writeEJBHome

        void writeEJBHome​(EJBHome ejbHome,
                          ObjectOutputStream ostream)
                   throws IOException
        Serialize the EJBHome reference corresponding to a HomeHandle.

        This method is called from the writeObject method of portable HomeHandle implementation classes. The ostream object is the same object that was passed in to the Handle class's writeObject method.

        Parameters:
        ejbHome - The EJBHome reference to be serialized.
        ostream - The output stream.
        Throws:
        IOException - The EJBObject could not be serialized because of a system-level failure.
      • readEJBHome

        EJBHome readEJBHome​(ObjectInputStream istream)
                     throws IOException,
                            ClassNotFoundException
        Deserialize the EJBHome reference corresponding to a HomeHandle.

        The readEJBHome method is called from the readObject method of portable HomeHandle implementation classes. The istream object is the same object that was passed in to the HomeHandle class's readObject method. When readEJBHome is called, istream must point to the location in the stream at which the EJBHome reference can be read. The container must ensure that the EJBHome reference is capable of performing invocations immediately after deserialization.

        Parameters:
        istream - The input stream.
        Returns:
        The deserialized EJBHome reference.
        Throws:
        IOException - The EJBHome could not be deserialized because of a system-level failure.
        ClassNotFoundException - The EJBHome could not be deserialized because some class could not be found.