Problema con directica de JSP

Lilian
18 de Octubre del 2004
Hola gracias de antemano por su ayuda.

Tengo el siguiete JSP, que manda llamar a otro JSP, mi codigo es el siguiente
<%@ page contentType="text/html; charset=iso-8859-1" language="java" import="java.sql.*" errorPage="" %>
<%@ package "jspcr.forward"%>
<%@ page import='java.io.*' %>
<%@ page import='java.sql.*' %>
<%@ page import='java.util.*' %>
<%@ page import='jspcr.forward.*' %>
<%
// Cargar la clase driver y establecer una conexión
ResultSet rs=null;
String dbURL="jdbc:odbc:Acessautores";
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection conn = DriverManager.getConnection(dbURL,"","");
Statement s = conn.createStatement();
rs=s.executeQuery("select Codigo, Descripción from productos");
// Guardar el resultado como una lista de objetos
List fglist= new ArrayList();

while(rs.next())
{//inicio de while
String code= rs.getString(1);// problemas por el tipo de datos
String desc= rs.getString(2);
FoodGroup fg= new FoodGroup(code, desc);
fglist.add(fg);
}//fin de while

//Guardar la lista como un atributo de petición
request.setAttribute("jspcr.forward.FoodGroups, fglist");
//Ahora reenvia la petición
%><jsp:forward page="/ShowFoodGroups.jsp" />


pero me menda el siguiente error:

org.apache.jasper.JasperException: /cat/GetFoodGroups.jsp(2,4) Directiva no válida
org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:39)
org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:409)
org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:90)
org.apache.jasper.compiler.Parser.parseDirective(Parser.java:506)
org.apache.jasper.compiler.Parser.parseElements(Parser.java:1539)
org.apache.jasper.compiler.Parser.parse(Parser.java:126)
org.apache.jasper.compiler.ParserController.doParse(ParserController.java:220)
org.apache.jasper.compiler.ParserController.parse(ParserController.java:101)
org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:203)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:470)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:451)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:439)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:511)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:295)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)


nota La traza completa de la causa de este error se encuentra en los archivos de diario de Apache

Alguien me puede decir que podra estar pasando

loronne
18 de Octubre del 2004

Mira a ver lo del SetAttribure, por que creo que lo tienes mal:
request.setAttribute("jspcr.forward.FoodGroups, fglist");

Para empezar tienes todos lo argumentos dentro de la misma cadena : "jspcr.forward.FoodGroups, fglist"
y debería ser "jspcr.forward.FoodGroups"," fglist" (en el caso de que susieras meter como atributo la cadena, " fglist")
ademas mira en orden de los atriburtos de la función.
setAttribute(java.lang.String name,
java.lang.Object o)
el primero de el nombre del atributo y el segundo en el objeto que deseas meter en el atributo.
No te olvides de hacer un cast en a la hora de obtener el atributo con getAttribute.
Suerte.