Ciao a tutti, devo fare un progretto universitario tramite utilizzo di servlet e pattern MVC.
Ho guardato guide online e ho provato intanto a fare un lavoretto semplice, solo che dopo aver fatto il deploy su tomcat, al momento di premere INVIA, la seconda parte (di elaborazione e intabellamento dati) non viene trovata.
Vi allego il codice:
questo è il file java che elabora i dati (SimpleController)
codice:
package controller;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.RequestDispatcher;
import business.User;
import dati.UserIO;
/**
* Servlet implementation class for Servlet: SimpleController
*
*/
public class SimpleController extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet
{
/**
*
*/
private static final long serialVersionUID = 1L;
/* (non-Java-doc)
* @see javax.servlet.http.HttpServlet#HttpServlet()
*/
public SimpleController()
{
super();
}
/* (non-Java-doc)
* @see javax.servlet.http.HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{
String nome = request.getParameter("nome");
String cognome = request.getParameter("cognome");
String eta = request.getParameter("eta");
User user = new User();
user.setNome(nome);
user.setCognome(cognome);
user.setEta(eta);
// Ricordarsi di creare la directory etc specificata!
UserIO.addItem( user, "./webapps/MySimpleWebApplication/WEB-INF/etc/users.txt");
HttpSession session = request.getSession();
session.setAttribute("user", user);
RequestDispatcher dispatcher;
dispatcher = getServletContext().getRequestDispatcher(
"/ShowUser.jsp");
dispatcher.forward(request,response);
}
/* (non-Java-doc)
* @see javax.servlet.http.HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{
this.doGet(request, response);
}
}
Mentre questo è il file html del form
codice:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Inserimento Utente</title>
</head>
<body>
<h1>Inserimento utente</h1>
Per inserire un utente riempire i campi sottostanti.
Al termine,cliccare sul pulsante Invia.</p>
<form action="SimpleController" method="get">
<table cellspacing="5" border="0">
<tr>
<td align="right">Nome:</td>
<td><input type="text" name="nome" /></td>
</tr>
<tr>
<td align="right">Cognome:</td>
<td><input type="text" name="cognome" /></td>
</tr>
<tr>
<td align="right">Età:</td>
<td><input type="text" name="eta" /></td>
</tr>
<tr>
<td></td>
<td>
<input type="submit" value="Invia" /></td>
</tr>
</table>
</form>
</body>
</html>
non ho postato gli altri file perchè l'errore risiede nella comunicazione tra questi due... lo stesso Eclipse mi da errore alla riga dell'action del form, dicendo che SimpleController non esiste (ho provato con e senza estensioni)... ho provato ad usare un indirizzo assoluto a partire da C:/bla bla fino al file (ho provato a puntare sia al file java.class che al .java (quali dei 2 bisogna linkare?)) e ho anche provato a copiarli entrambi nella stessa cartella dove è presente il file html... ma nada de nada... eclipse continua a darmi errore, e sebbene riesca a generare il file .war per il deploy, nel momento del submit non parte la seconda parte!!!
Qualche idea? Grazie mille per l'aiuto =)