- java.lang.Object
-
- javax.rmi.PortableRemoteObject
-
public class PortableRemoteObject extends Object
Server implementation objects may either inherit from javax.rmi.PortableRemoteObject or they may implement a remote interface and then use the exportObject method to register themselves as a server object. The toStub method takes a server implementation and returns a stub that can be used to access that server object. The connect method makes a Remote object ready for remote communication. The unexportObject method is used to deregister a server object, allowing it to become available for garbage collection. The narrow method takes an object reference or abstract interface type and attempts to narrow it to conform to the given interface. If the operation is successful the result will be an object of the specified type, otherwise an exception will be thrown.
-
-
Constructor Summary
Constructors Modifier Constructor and Description protected
PortableRemoteObject()
Initializes the object by callingexportObject(this)
.
-
Method Summary
Methods Modifier and Type Method and Description static void
connect(Remote target, Remote source)
Makes a Remote object ready for remote communication.static void
exportObject(Remote obj)
Makes a server object ready to receive remote calls.static Object
narrow(Object narrowFrom, Class narrowTo)
Checks to ensure that an object of a remote or abstract interface type can be cast to a desired type.static Remote
toStub(Remote obj)
Returns a stub for the given server object.static void
unexportObject(Remote obj)
Deregisters a server object from the runtime, allowing the object to become available for garbage collection.
-
-
-
Constructor Detail
-
PortableRemoteObject
protected PortableRemoteObject() throws RemoteException
Initializes the object by callingexportObject(this)
.- Throws:
RemoteException
- if export fails.
-
-
Method Detail
-
exportObject
public static void exportObject(Remote obj) throws RemoteException
Makes a server object ready to receive remote calls. Note that subclasses of PortableRemoteObject do not need to call this method, as it is called by the constructor.- Parameters:
obj
- the server object to export.- Throws:
RemoteException
- if export fails.
-
toStub
public static Remote toStub(Remote obj) throws NoSuchObjectException
Returns a stub for the given server object.- Parameters:
obj
- the server object for which a stub is required. Must either be a subclass of PortableRemoteObject or have been previously the target of a call toexportObject(java.rmi.Remote)
.- Returns:
- the most derived stub for the object.
- Throws:
NoSuchObjectException
- if a stub cannot be located for the given server object.
-
unexportObject
public static void unexportObject(Remote obj) throws NoSuchObjectException
Deregisters a server object from the runtime, allowing the object to become available for garbage collection.- Parameters:
obj
- the object to unexport.- Throws:
NoSuchObjectException
- if the remote object is not currently exported.
-
narrow
public static Object narrow(Object narrowFrom, Class narrowTo) throws ClassCastException
Checks to ensure that an object of a remote or abstract interface type can be cast to a desired type.- Parameters:
narrowFrom
- the object to check.narrowTo
- the desired type.- Returns:
- an object which can be cast to the desired type.
- Throws:
ClassCastException
- if narrowFrom cannot be cast to narrowTo.
-
connect
public static void connect(Remote target, Remote source) throws RemoteException
Makes a Remote object ready for remote communication. This normally happens implicitly when the object is sent or received as an argument on a remote method call, but in some circumstances it is useful to perform this action by making an explicit call. See theStub.connect(org.omg.CORBA.ORB)
method for more information.- Parameters:
target
- the object to connect.source
- a previously connected object.- Throws:
RemoteException
- ifsource
is not connected or iftarget
is already connected to a different ORB thansource
.
-
-
Nederlandse vertaling
U hebt gevraagd om deze site in het Nederlands te bezoeken. Voor nu wordt alleen de interface vertaald, maar nog niet alle inhoud.Als je me wilt helpen met vertalingen, is je bijdrage welkom. Het enige dat u hoeft te doen, is u op de site registreren en mij een bericht sturen waarin u wordt gevraagd om u toe te voegen aan de groep vertalers, zodat u de gewenste pagina's kunt vertalen. Een link onderaan elke vertaalde pagina geeft aan dat u de vertaler bent en heeft een link naar uw profiel.
Bij voorbaat dank.
Document heeft de 11/06/2005 gemaakt, de laatste keer de 04/03/2020 gewijzigd
Bron van het afgedrukte document:https://www.gaudry.be/nl/java-api-rf-javax/rmi/PortableRemoteObject.html
De infobrol is een persoonlijke site waarvan de inhoud uitsluitend mijn verantwoordelijkheid is. De tekst is beschikbaar onder CreativeCommons-licentie (BY-NC-SA). Meer info op de gebruiksvoorwaarden en de auteur.
Referenties
Deze verwijzingen en links verwijzen naar documenten die geraadpleegd zijn tijdens het schrijven van deze pagina, of die aanvullende informatie kunnen geven, maar de auteurs van deze bronnen kunnen niet verantwoordelijk worden gehouden voor de inhoud van deze pagina.
De auteur Deze site is als enige verantwoordelijk voor de manier waarop de verschillende concepten, en de vrijheden die met de referentiewerken worden genomen, hier worden gepresenteerd. Vergeet niet dat u meerdere broninformatie moet doorgeven om het risico op fouten te verkleinen.