Credo di aver capito. Praticamente tu con queste righe di codice:
codice:
<jsp:useBean id="u" scope="session" class="cinema.Utente"/>
jsp:setProperty name="u" property="nickname" value"=<%=request.getParameter("nickname")%>" />
<jsp:setProperty name="u" property="password" value="<%=request.getParameter("password")%>" />
<jsp:setProperty name="u" property="budget" value="<%=utn.getBudget()%>"/>
<jsp:setProperty name="u" property="elenco" value="<%=application.getAttribute("elencoutenti")%>" />
recuperi un oggetto utente da una lista e con i suoi dati ne crei un altro.
Quindi avrai un oggetto A (quello presente nella lista) e un oggetto B (la copia creata con i dati di A) con gli stessi dati ma cmq rimangono due oggetti distinti.
Poi crei un oggetto Acquisto passandogli il nome di B (che è uguale a quello di A) e ricava dall'elenco l'oggetto A, a questo punto le modifiche vengono effettuate su A mentre B rimane identico. Sulla pagina tu stampi i dati di B che nn ha subito nessuna modifica durante la transazione.
Quindi se vuoi stampare a video i dati correnti dell'utente devi recuperare l'oggetto Utente desiderato dall'elenco contenuto in acquisto.
Poi avrei un dubbio su questa riga, l'oggetto elencoUtenti è lo stesso dell'oggetto Acquisto che usi per la transazione?
codice:
<%if(elencoutenti.cercaUtente(request.getParameter("nickname"),request.getParameter("password"))){ %>
Fammi sapere se è tutto chiaro e corretto