Stateful Session Beans ne reçoivent pas les valeurs par défaut après la désérialisation

StackOverflow https://stackoverflow.com/questions/6831751

  •  27-10-2019
  •  | 
  •  

Question

Je traversais un livre EJB 3.1 (O'Reilly, Andrew Lee Rubinger et Bill Burke), il est l'auteur de mentionner que (ce ne sont pas les mots exacts dans le livre, c'est ma propre compréhension du texte) :

SFSB lorsque son devenir activé (après la sortie de passivé piscine), objets sérialisés, contrairement à leur norme d'origine, ne reviendra pas les valeurs par défaut comme int ne garanti à rendement 0 et objet n'est pas garanti à null retour

est ma compréhension correcte? S'il est vrai, pourquoi EJB ont ce comportement?

Original post sur http : //www.coderanch.com/t/546765/java-EJB-SCBCD/certification/why-serialization-unpredictable-SFSB#2481285

Était-ce utile?

La solution

Par spécification qui est applicable uniquement aux champs transitoires.

D'après les spécifications - O'Reilly n'a pas conçu (EJBs Il suffit de dire ...):

"Alors que le conteneur n'est pas nécessaire d'utiliser le protocole de sérialisation pour le langage de programmation Java pour stocker l'état d'une instance de la session passivé, il doit obtenir le résultat équivalent . la seule exception est que les récipients ne sont pas nécessaires pour remettre à zéro la valeur de champs transitoires lors de l'activation [12]. Déclarant comme est transitoire les champs du haricot de session, en général, découragé « . [EJB 3.1 - 4.2.1 - Souligné par l'auteur ]

edit:

BTW, la réponse à votre question est également dans la spécification EJB:

« Les restrictions sur l'utilisation de champs transitoires en sorte que les conteneurs peuvent utiliser Java sérialisation pendant la passivation et l'activation. »

EJB 3.1 spec (miroir / pdf)

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top