In breve, ho la classe articolo e la classe inventario.
Ho nel database una tabella popolata di tuple di articoli, lo scopo della classe inventario e prendere tutte queste tuple e visualizzarle.
Qualcuno trova errori nel codice? Perchè mi da errore nella visualizzazione della pagina jsp. Naturalmente le varie librerie sono opportunamente importate.
Codice:
public class Inventario {
public Inventario(){
}
public Collection<Articolo> visualizzaInventario(){
Vector<Articolo> coll =new Vector<Articolo>();
ConnessioneDB connessione = new ConnessioneDB();
try {
Statement st = connessione.connetti().createStatement();
String query = "SELECT * FROM articolo";
ResultSet rs = st.executeQuery(query);
int i = 0;
while(rs.next()){
String nome = rs.getString(1);
Integer articleId = rs.getInt(2);
Integer quant = rs.getInt(3);
String posizione = rs.getString(4);
Integer scadenza = rs.getInt(5);
Articolo art = new Articolo(nome, articleId, quant,
posizione, scadenza);
coll.add(art);
i++;
}
st.close();
connessione.disconnetti();
}
catch (SQLException s) {
System.out.println("Errore SQL: " + s.toString() + " "
+ s.getErrorCode() + " " + s.getSQLState());
}
catch (Exception e) {
System.out.println("Error " + e.toString() + e.getMessage());
}
return coll;
}
}
Codice:
public class Articolo {
private String nome;
private int id;
private int quant;
private String posizione;
private int scadenza;
public Articolo(String nome, int id, int quant, String posizione, int scadenza){
this.nome = new String(nome);
this.id = id;
this.quant = quant;
this.posizione = posizione;
this.scadenza = scadenza;
}
public String getNome(){
return this.nome;
}
public int getId(){
return this.id;
}
public int getQuant(){
return this.quant;
}
public String getPosizione(){
return this.posizione;
}
public int getScadenza(){
return this.scadenza;
}
public void setNome(String nome){
this.nome = nome;
}
public void setId(int s){
this.id = s;
}
public void setQuant(int q){
this.quant = q;
}
public void setPosizione(String s){
this.posizione = s;
}
public void setScadenza(int r){
this.scadenza = r;
}
public String toString(){
return "Codice: " + getId() + " Nome: " + getNome() + " Quantità: " + getQuant() + " Posizione: " + getPosizione() + " Scadenza: " + getScadenza();
}
}
Codice:
...CODICE HTML...
<%
Inventario inv = new Inventario();
java.util.Collection<Articolo> coll = inv.visualizzaInventario();
for(Articolo a : coll){
System.out.println(a);
%>
...CODICE HTML...
Errori:
org.apache.jasper.JasperException: Unable to compile class for JSP
An error occurred at line: 29 in the jsp file: /gestioneMagazzino.jsp
Generated servlet error:
Syntax error on token "<", invalid AssignmentOperator
An error occurred at line: 29 in the jsp file: /gestioneMagazzino.jsp
Generated servlet error:
Syntax error on token "=", != expected
An error occurred at line: 29 in the jsp file: /gestioneMagazzino.jsp
Generated servlet error:
Syntax error on token(s), misplaced construct(s)
An error occurred at line: 29 in the jsp file: /gestioneMagazzino.jsp
Generated servlet error:
Syntax error on token ")", : expected
org.apache.jasper.compiler.DefaultErrorHandler.jav acError(DefaultErrorHandler.java:84)
org.apache.jasper.compiler.ErrorDispatcher.javacEr ror(ErrorDispatcher.java:328)
org.apache.jasper.compiler.JDTCompiler.generateCla ss(JDTCompiler.java:397)
org.apache.jasper.compiler.Compiler.compile(Compil er.java:288)
org.apache.jasper.compiler.Compiler.compile(Compil er.java:267)
org.apache.jasper.compiler.Compiler.compile(Compil er.java:255)
org.apache.jasper.JspCompilationContext.compile(Js pCompilationContext.java:556)
org.apache.jasper.servlet.JspServletWrapper.servic e(JspServletWrapper.java:293)
org.apache.jasper.servlet.JspServlet.serviceJspFil e(JspServlet.java:291)
org.apache.jasper.servlet.JspServlet.service(JspSe rvlet.java:241)
javax.servlet.http.HttpServlet.service(HttpServlet .java:802)