Pagina 1 di 1

passaggio di model fra servlet

Inviato: giovedì 26 aprile 2012, 22:03
da Alessio89
Come diavolo faccio a passare un object model in java fra una servlet ed un altra?

In pratica ho una servlet di login, perfettamente funzionante, che in base ai dati del database istanza un determinato model di utente, e lo passa alla sessione tipo:

Codice: Seleziona tutto

User admin = UserBean.getUser( Administrator.factory ); //è una semplice factory
admin.setID( userBean.getID( ) ); //è una semplice operaizone di scrittura nel model
HttpSession session = request.getSession( true ); //creo una nuova sessione
session.setAttribute( "currentSessionUser", admin ); //passo il model alla sessione
response.sendRedirect( "administratorHome.jsp" ); //semplice redirect alla pagina successiva
poi faccio il redirect alla pagina jsp che voglio farli caricare dopo il login, e fino a qui tutto bene.
Nella pagina jsp ho un form che chiama un'altra servlet per fare delle operazioni (delle ricerche nel database, scrittura, lettura o qualsiasi cosa, non importa)
come faccio nella servlet che chiamo con questo form a recuperare la handle del model che ho istanziato nel login?

Dentro un blocco try catch ho

Codice: Seleziona tutto

//prendo dalla pagina jsp il valore della textarea
String searchParameter = request.getParameter( "studentID" );
			
// prendo il dao della sessione
Administrator administrator = ( Administrator )request.getAttribute( "currentSessionUser" );
			
ecc..
Il problema sembra stare nella seconda riga che invece del model istanziato con la servlet del login mi da un puntatore a null :|
Il cast l'ho messo perché lo passa come object, eppure non capisco perché non lo da :\

Re: passaggio di model fra servlet

Inviato: giovedì 26 aprile 2012, 23:45
da dino
Secondo me stai sbagliando approccio



Codice: Seleziona tutto

//prendo dalla pagina jsp il valore della textarea
String searchParameter = request.getParameter( "studentID" );
         
// prendo il dao della sessione
HttpSession session = request.getSession();
User admin = (User)session.getAttribute( "currentSessionUser" );

admin.get... etc etc

Re: passaggio di model fra servlet

Inviato: venerdì 27 aprile 2012, 0:21
da Alessio89
mmm domani provo..

Re: passaggio di model fra servlet

Inviato: venerdì 27 aprile 2012, 8:08
da dino
E poi una domanda... Come è fatta la struttura? Hai un model che gestisce lo strato di persistenza (o più semplicemente fa da interfaccia con la base dati) ed un controller che chiede i servizi al model e mostra i risultati? I bean come li hai fatti?

Re: passaggio di model fra servlet

Inviato: venerdì 27 aprile 2012, 15:19
da Alessio89
allora come hai dettu tu sembra funzionare.

Per rispondere a quelle domande invece: è tutto codice naive, non ho la più pallida idea :asd: L'importante che funzioni, in fondo il corso di web application non lo abbiamo ancora fatto :asd:

Re: passaggio di model fra servlet

Inviato: venerdì 27 aprile 2012, 15:27
da dino
Si ho capito ma quella roba l'avrai scritta tu... O no? :U Volevo solo capire meglio ;)

Re: passaggio di model fra servlet

Inviato: venerdì 27 aprile 2012, 16:16
da Alessio89
sì sì l'ho scritta io, non usiamo alcun framework, anche perché non abbiamo le nozioni di web programming e quando ci serve un concetto o qualcosa cerchiamo in rete :rotfl:

tuttavia per ora abbiamo ricevuto apprezzamenti su come stiamo strutturando la cosa, quindi alla fine va bene, ora deve solo funzionare xD

Re: passaggio di model fra servlet

Inviato: venerdì 27 aprile 2012, 18:43
da dino
Ok, Se hai bisogno d'altro fammi sapere ;)

Re: passaggio di model fra servlet

Inviato: venerdì 27 aprile 2012, 19:25
da Alessio89
Sicuro! :asd:

Per ora è tutto ok, sembra funzionare tutto (che è la cosa più importante), questo CMS per la scuola di phd sembra prendere forma XD

Pensa, un paio di settimane fa avevamo fatto dei bordelli talmente allucinanti con svn che mi è toccato fare il reset della repo :rotfl:

Re: passaggio di model fra servlet

Inviato: domenica 29 aprile 2012, 7:16
da dino
Ahahaha!!!