Ho la seguente sessione di ambito di fagioli:Impossibile deserializzare sessione primaverile con ambito di fagioli
@ManagedBean
@Component
@Scope(proxyMode= ScopedProxyMode.TARGET_CLASS, value="session")
public class SessionData implements Serializable {}
e memorizzare le sessioni di Tomcat in un database. Il problema è che, quando l'applicazione tenta di deserializzare una sessione memorizzata, ricevo il seguente errore:
org.apache.catalina.session.PersistentManagerBase.swapIn Error deserializing Session EE913D2ACAD49EB55EDA657A54DFA2CB: {1}
java.lang.ClassNotFoundException: de.myproject.SessionData$$EnhancerBySpringCGLIB$$768b59b9
Sembra che serializzato in realtà tutto il contesto primavera, e, ovviamente, non esiste una classe de.myproject.SessionData$$EnhancerBySpringCGLIB$$768b59b9
dopo riavvio del server , quindi ricevo l'eccezione di cui sopra.
C'è un modo per evitare questo, in modo che il bean con scope di sessione sia serializzato correttamente?
AGGIORNAMENTO: C'è un numero issue per quanto riguarda ciò che è contrassegnato come risolto senza commenti, tuttavia lo devo ancora affrontare.
Come si memorizzano i dati di sessione nel DB? –
Ho configurato il server Tomcat per archiviare le sessioni nel DB. – vtor
Confuso: @ManagedBean è annotazione JSF, perché hai sia annotazioni JSF e Spring su un singolo bean? –