Domanda

I stava attraversando un EJB 3.1 libro (O'Reilly, Andrew Lee Rubinger e Bill Burke), c'è l'autore è ricordare che (queste non sono le parole esatte del libro, questa è la mia comprensione del testo) :

in SFSB quando il suo divenire attivata (dopo l'uscita di passivato piscina), oggetti serializzati, a differenza di loro norma originaria, non restituirà i valori predefiniti come int non garantito per il ritorno 0 e oggetto non è garantita a return null

E 'la mia comprensione corretta? Se è vero, perché EJB hanno questo comportamento?

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

È stato utile?

Soluzione

Per specifica che è applicabile solo ai campi transitori.

Dalle specifiche - O'Reilly non ha progettato gli EJB (solo dicendo ...):

"mentre il contenitore non è necessario per utilizzare il protocollo di serializzazione per il linguaggio di programmazione Java per memorizzare lo stato di un'istanza sessione di passivato, deve raggiungere il risultato equivalente . l'unica eccezione è che i contenitori non sono tenuti a ripristinare il valore della campi transitori durante l'attivazione [12]. Dichiarare campi del bean sessione come transitoria è, in generale, scoraggiati ". [EJB 3.1 - 4.2.1 - sottolineatura mia ]

modifica:

A proposito, la risposta alla tua domanda è anche nella specifica EJB:

"Le restrizioni sull'uso di campi transitori assicurano che i contenitori possono utilizzare Java serializzazione durante passivazione e l'attivazione".

EJB 3.1 spec (mirror / pdf)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top