You are here

Elvis žije, přinejmenším deserializovaný přes RMI IIOP

Elvis a jeho zjevování popsal Josh Bloch ve své knížce Effective Java. RMI IIOP může být využito k vytvoření nových instancí třídy Elvis Enum na SUN Java 5.0 a 6.0 (Bug ID: 6277781) i na IBM JDK implementaci J9. Josh radí použít readResolve(), ale na Enum třídách to bohužel nepomůže. Tato metoda je ignorována jak je popsáno v Javadoc, Proces jakým jsou enum konstanty serializovány nemůže být změněn .... readResolve metody definované pro enum typy jsou ignorovány během serializace a deserializace.

RMI je standard firmy SUN pro volání vzdálených metod nativně implementovaný na platformě Java a nemá s enum třídami problém. RMI-IIP (čti RMI přes IIOP) přináší možnosti distribuovaných systémů CORBA na Java 2 platformu ale naneštěstí též přinásí problémy s Enum typy.

Porovnání RMI a CORBA (a DCOM) implementací

Java RMI & CORBA comparison
Detailed Comparison of CORBA, DCOM and Java/RMI