Buongiorno a tutti,premetto che ho cominciato veramente da poco ad utilizzare Ajax. Passo a descrivere quale è il mio problema: ho un form (banale e statico) dal quale invocavo una servlet e a cui passavo le valorizzazioni degli input fatte dall'utente. Adesso vorrei un pò spostarmi con le conoscenze ed applicare a tutto questo il framework Ajax. A tal proposito ho provato a fare qualcosa del genere:Pagina del form:
codice:
Form d'inserimento username e passwordForm Inserimento Username / Password    Inserisci il tuo username:             
Inserisci la tua password:     
Accedi comeUtenteAmministratore
E per completezza la Servlet è (in logica vecchio form):
codice:
package servlet;import dataAccessObject.*;import java.io.IOException;import java.text.SimpleDateFormat;import java.util.Date;import java.util.GregorianCalendar;import javax.servlet.ServletException;import javax.servlet.ServletRequest;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;import dbmUtility.*;import entity.*;/** * Servlet implementation class UserController */@WebServlet(urlPatterns = { "/UserController" })public class UserController extends HttpServlet {	private static final long serialVersionUID = 1L;		/**	 * @see HttpServlet#HttpServlet()	 */	public UserController() {		super();	}	/**	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse	 *      response)	 */	protected void doGet(HttpServletRequest request, HttpServletResponse response)			throws ServletException, IOException {		// TODO Auto-generated method stub		response.getWriter().append("Served at: ").append(request.getContextPath());	}	/**	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse	 *      response)	 */	protected void doPost(HttpServletRequest request, HttpServletResponse response)			throws ServletException, IOException {		HttpSession session = request.getSession(true);		try {			// Recupero i campi del form			String username = request.getParameter("username");			String password = request.getParameter("password");			int roletype = Integer.parseInt(request.getParameter("usertype"));			// Se sono stati compilati tutti i campi			if (username.equals("") || password.equals("")) {				// Reinderizzo alla pagina di mancata compilazione di tutti i				// campi				this.getServletContext().getRequestDispatcher("/loginErrorCampiVuoti.jsp").forward(request, response);				return;			}			// Pagina Amministratore			if (username.equals("admin") && (password.equals("admin")) && (roletype == 1)) {				session.setAttribute("admin", "admin");				this.getServletContext().getRequestDispatcher("/adminIndex.jsp").forward(request, response);				return;			}			if ((!username.equals("")) && (!password.equals(""))) {				UserDao dao= new UserDao();				//Mi faccio tornare il ruolo dell'Utente				int ruolo=dao.getUserRoleByUsernamePassword(username, password,roletype);								if (ruolo==0) {										String id =dao.getUserIdByUsernamePassword(username, password);					if(dao.getDeletedByUsernamePassword(username, password, ruolo)==1){						this.getServletContext().getRequestDispatcher("/userDeletedNoAccess.jsp").forward(request, response);						return;					}					else					//Setto la sessione dell'Utente calcolando il suo orario di accesso					session.setAttribute("utente", id);					GregorianCalendar data=new GregorianCalendar();					SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");					String accesso =sdf.format( data.getTime());					dao.setUltimoAccessoUser(id, accesso );					this.getServletContext().getRequestDispatcher("/userIndex.jsp").forward(request, response);					return;				}				if (ruolo==1) {											this.getServletContext().getRequestDispatcher("/adminIndex.jsp").forward(request, response);					return;				}				else {					this.getServletContext().getRequestDispatcher("/loginErrorNessunUtente.jsp").forward(request,							response);					return;				}			}		} catch (Exception e) {			e.printStackTrace();			this.getServletContext().getRequestDispatcher("/error.jsp").forward(request,					response);			return;		}	}}
Quello che vorrei fare (in parte pensavo di averlo fatto con il codice inserito nella pagina d'inserimento) è: una volta che l'utente immette i dovuti campi e sceglie il ruolo (in precedenza tali credenziali, compreso il ruolo, sono state decise da un admin superiore) avere per intanto un messaggio di corretto/incorretto login. Dopo avere: nel primo caso un dispatcher alla pagina dell'utenza con messaggio di OK, nel secondo caso avere solo un messaggio di errore.Provando il codice postato la visualizzazione è ferma alla pagina d'inserimento (la prima). Prima, caso di form statico (senza ajax), ovviamente il tutto funzionava. So che la Servlet non dovrebbe più contenere i vari dispatcher alle pagine di messaggi di corretto/incorretto login, ma come posso fare? O dove sto sbagliando?Grazie a chi si interesserà!