Frage

Ich habe ein EJB 3.1 -Buch durchlaufen (O'Reilly, Andrew Lee Rubinger und Bill Burke). Dort erwähnt der Autor, dass (dies sind nicht die genauen Worte im Buch, dies ist mein eigenes Verständnis des Textes):

In SFSB werden serialisierte Objekte im Gegensatz zu ihrer ursprünglichen Norm nicht garantiert, wenn es aktiviert wird (nachdem sie aus dem Passivpool herausgekommen ist), im Gegensatz zu ihrer ursprünglichen Norm nicht garantiert, dass Null garantiert wird, nicht garantiert.

Ist mein Verständnis richtig? Wenn es wahr ist, warum hat EJB dieses Verhalten?

Originalbeitrag auf http://www.coderanch.com/t/546765/java-ejb-scbcd/certification/why-serialization-unpredictable-sfsb#2481285

War es hilfreich?

Lösung

Pro Spezifikation, das nur für Transientenfelder anwendbar ist.

Aus den Spezifikationen - O'Reilly hat EJBs nicht gestaltet (nur ...):

"Während der Behälter ist nicht erforderlich, um das Serialisierungsprotokoll zu verwenden für die Java -Programmiersprache, um den Zustand einer passivierten Sitzungsinstanz zu speichern, Es muss das äquivalente Ergebnis erzielen. Die eine Ausnahme ist dass Behälter nicht erforderlich sind, um den Wert von zurückzusetzen transiente Felder während der Aktivierung [12]. Die Erklärung der Felder der Sitzungsbean als vorübergehend im Allgemeinen entmutigt. “[EJB 3.1 - 4.2.1 - Hervorhebung meiner]

bearbeiten:

Übrigens ist die Antwort auf Ihre Frage auch in der EJB -Spezifikation:

"Die Einschränkungen für die Verwendung von Transientenfeldern stellen sicher, dass Container während der Passivierung und Aktivierung die Java -Serialisierung verwenden können."

EJB 3.1 Spezifikation (Spiegel/PDF)

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top