Newsgroup: it.comp.java
Titolo: Semplice pagina JSP che si connette ad un database

Ho provato a creare una semplicissima pagina html dalla quale si sceglie il
nome di un file e alla fine viene visualizzato il percorso del file in
un'altra pagina html.
Io ho provato a fare il tutto in questo modo ma mi vengono dati degli
errori, qualcuno puņ aiutarmi a capire dove sbaglio?
Qua vi allego il codice della pagina html e della pagina jsp.
Grazie.
first.htm
<html><head>
 <title>Sondaggio</title>
</head>
<body>
<b><big>Domanda:</big></b>
<form action="first.jsp">
<input name="risposta" type="radio" value="0">prova<br>
<input name="risposta" type="radio" value="1">prova<br>
<input name="risposta" type="radio" value="2">prova<br>
<input name="risposta" type="radio" value="3">prova<br>
<input type="submit" value="vota">
</form>
</font>
</body>
</html>
first.jsp
<%@ page contentType="text/html; charset=" language="java"
import="java.sql.*" errorPage="" %>
<html>
<head>
<title>Sondaggio</title>
</head>
<body>
<font face="verdana" color="#3300ff" size="2">
<%
    Connection conn = null;
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    conn = DriverManager.getConnection("jdbc:odbc:file","","");
 String final;
 String preferenza = new String (request.getParameter("risposta"));
    Statement st = conn.createStatement();
 ResultSet rs = st.executeQuery("SELECT Path FROM Disponibili WHERE
NomeFile=" + risposta);
 rs.next();
 final=rs.getString("Path");
 out.print(final);
    st.close();
    conn.close();
 %>
<br><br>
<a href="risultati.jsp">Visualizza i risultati parziali</a>
</font>
</body>
</html>

  String final;
[...]
Ti consiglio di cambiare il nome della variabile 'final' (č una parola 
riservata del linguaggio).
Popix.

 ha scritto nel messaggio
news:bt3osg$42t$1...@newsreader.mailgate.org...

Ho cambiato il nome della variabile ed ora mi viene dato un altro errore:
type Exception report
message
description The server encountered an internal error () that prevented it
from fulfilling this request.
exception
org.apache.jasper.JasperException: Unsupported encoding:
org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.
java:94)
org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:406
)
org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:151
)
	org.apache.jasper.compiler.JspUtil.getReader(JspUtil.java:1062)
org.apache.jasper.compiler.ParserController.parse(ParserController.java:241)
org.apache.jasper.compiler.ParserController.parse(ParserController.java:146)
org.apache.jasper.compiler.ParserController.parse(ParserController.java:132)
	org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:245)
	org.apache.jasper.compiler.Compiler.compile(Compiler.java:453)
	org.apache.jasper.compiler.Compiler.compile(Compiler.java:439)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:5
55)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:3
00)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:293)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:240)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
note The full stack trace of the root cause is available in the Tomcat logs.
Come posso risolverlo?
Grazie.

 org.apache.jasper.JasperException: Unsupported encoding:
Nel codice del primo post:
 > String preferenza = new String (request.getParameter("risposta"));
 > Statement st = conn.createStatement();
 > ResultSet rs = st.executeQuery("SELECT Path FROM Disponibili WHERE 
NomeFile=" + risposta);
 > rs.next();
 > final=rs.getString("Path");
 > out.print(final);
io farei un paio di modifiche:
...
String preferenza = (request.getParameter("risposta") != null) ? 
(String)request.getParameter("risposta") : "";
PreparedStatement st = conn.prepareStatement("SELECT Path FROM 
Disponibili WHERE NomeFile = ?");
st.setString(1,preferenza);
ResultSet rs = st.executeQuery();
if (rs.next()) out.print(rs.getString("Path"));
else out.print("nessun record trovato");
...
Prova cosě,
Popix.

 errori, qualcuno puņ aiutarmi a capire dove sbaglio?
Come ti hanno gią detto cambia final in qualcos'altro poi nella costruzione
della stringa della query usi una variabile "risposta" che non esiste,
credo che dovresti mettere "preferenza"
ResultSet rs = st.executeQuery("SELECT Path FROM Disponibili WHERE
NomeFile=" + preferenza);
Saluti