Newsgroup: it.comp.java
Titolo: Configurazione Tomcat

Sto provando a far andare una pagina HTML con una form del tipo <FORM
action=HelloWorld> che cerca di richiamare, dopo aver acquisito dall'utente
un certo numero di parametri (tramite tag INPUT), la servlet chiamata
appunto HelloWorld.
Quando premo sul pulsante di "SUBMIT" ottengo perň: "Non si dispone
dell'autorizzazione per visualizzare la pagina (errore 403 - Accesso
negato)". Per quale ragione? Ho l'impressione che debba scrivere qualcosa in
web.xml (che non ho neppure creato, visto che funzionava tutto cmq...). Cosa
si scrive in questi casi?
Riporto la pagina HTML:
<HTML>
<BODY BGCOLOR="lightblue">
<H4><B>(CentroDX) &nbsp;&nbsp; Pagina di prova per far partire una
servlet.</B></H2><BR>
<FORM action="..\WEB-INF\classes\Prova">
AnnoProduzione:<BR>
<INPUT type="text" name="anno_produzione"><BR>
Genere:<BR>
<SELECT name="genere">
  <OPTION> Pop
  <OPTION> Electric
  <OPTION> Rock
  <OPTION> Rap
</SELECT><BR><BR>
Doppio:<BR>
<INPUT type="checkbox" name="doppio"><BR><BR><BR><BR><BR>
<INPUT type="submit" value="  Inoltra  ">
</FORM><BR>
</BODY>
<HTML>
Ed ecco la servlet:
import java.io.*;
import java.sql.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;
import org.apache.ecs.*;
import org.apache.ecs.html.*;
public class Prova extends HttpServlet
{
  public void init(ServletConfig conf) throws ServletException
 {
  }
 public void doGet(HttpServletRequest request, HttpServletResponse response)
  throws ServletException, IOException
 {
    ServletOutputStream out;
    ResultSet resultSet;
    Document doc  = new Document();
    Table    tbl  = new Table();
    TR       riga;
    String titolo  = new String("default"),
           artista = new String("default"),
           testo   = new String("default_testo");
    try
    {
      Class.forName("com.mysql.jdbc.Driver").newInstance();
      Connection connection =
        DriverManager.getConnection("jdbc:mysql://localhost:3306/CasaMia");
      Statement statement = connection.createStatement();
      response.setContentType("text/html");
      doc.appendTitle("Select personalizzata da utente")
         .appendBody(new H2("La select con valori scelti dall'utente č in
corso..."));
      String a_p, gen, dop;
      a_p = request.getParameter("anno_produzione");
      gen = request.getParameter("genere");
      dop = request.getParameter("doppio");
      resultSet = statement.executeQuery
      (
        "SELECT A.Codice, Titolo "                       +
        "FROM   Albums A "                               +
        "WHERE  (A.AnnoProduzione = " + a_p + ") AND "   +
        "       (A.Genere         = '" + gen + "') AND " +
        "       (A.Doppio         = " + dop + ");"
      );
      doc.appendBody(new Center(tbl))
         .appendBody(new H5("Fine dell'interrogazione"))
         .appendBody(new H5("Ecco i risultati:"));
      tbl = new Table();
      while (resultSet.next())
      {
        riga = new TR();
        riga.addElement(new TD(resultSet.getString("Codice")));
        riga.addElement(new TD(resultSet.getString("Titolo")));
        tbl.addElement(riga);
      }
      doc.appendBody(new Center(tbl));
    }
    catch (Exception e) { doc.appendBody("ERRORE_DI_CODICE_MHAXX: " +
e.toString()); };
    doc.output(response.getWriter());
  }
}
Spero qualcuno possa aiutarmi...
Ciao, Mhaxx


Scusa...ma se non configuri correttamente web.xml come fa Tomcat a sapere
quale servlet richiamare????
Appena posso ti posto un esempio (ma non ti avevo già detto qualcosa in
proposito?!?).

 proposito?!?).
No, mai sentiti prima di ora...
Se potessi farmi avere un esempio di web.xml in grado di risolvere il mio
problema di accesso te ne sarei enormemente grato.
Aspetto ansioso...
Ciao e grazie,
Mhaxx