Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/08/2009, 10:37
cancha
 
Fecha de Ingreso: junio-2007
Mensajes: 75
Antigüedad: 17 años, 9 meses
Puntos: 1
error en tag personalizado mensaje: cannot be resolved to a type

hola... tengo el siguiente problema en un principio lo que quiero es generar una tabla pasando como parametro un arrayList en el tag <jhct:grilla dato="<%=tabla%>" /> la variable tabla ya esta definida y contiene datos... pero como me salia error solo quice imprimir un hola desde la etiqueta y tambien de = manera me dispara el mismo menasaje... a que se debe... estos son los archivos y el mensaje de error....

index.jsp....
Código:
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@page import="java.util.*"%> %>
<%@taglib uri="www.cancha.tk" prefix="jhct" %>%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">
<%
   ArrayList tabla=new ArrayList();
   ArrayList fila = new ArrayList();
   fila.add("a1");
   fila.add("a2");
   fila.add("a3");
   fila.add("a4");
   fila.add("a5");
   tabla.add(fila);
%>

<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>JSP Page</title>
    </head>
    <body>
        <jhct:grilla />
    </body>
</html>
archivo tld...
Código:
<?xml version="1.0" encoding="UTF-8"?>
<taglib version="2.0" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee web-jsptaglibrary_2_0.xsd">
  <tlib-version>1.0</tlib-version>
  <short-name>cancha</short-name>
  <uri>www.cancha.tk</uri>

  <tag>
    <name>grilla</name>
    <tag-class>getGrilla</tag-class>
    <body-content>scriptless</body-content>
   <!--<attribute>
      <name>dato</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
      <type>java.lang.Object</type>
    </attribute>-->
  </tag>
</taglib>
tag Handler...
Código:
import java.awt.List;
import java.util.ArrayList;
import javax.servlet.jsp.JspWriter;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.tagext.JspFragment;
import javax.servlet.jsp.tagext.SimpleTagSupport;

public class getGrilla extends SimpleTagSupport {
    //private Object dato;

 
    @Override
    public void doTag() throws JspException {
        JspWriter out = getJspContext().getOut();

        try {
            /*ArrayList tabla = (ArrayList)dato;
            ArrayList colum = new ArrayList();
            String grilla="<table>";

            for(int i=0; i < tabla.size(); i++)
            {
                grilla += "<tr>";
                for(int c=0; c < colum.size(); c++)
                {
                    grilla += "<td>";
                                    colum.get(c);
                    grilla += "<td>";
                }
                grilla += "</tr>";
            }
            grilla +="</table>";*/

            out.print("holaa");
            //JspFragment f = getJspBody();
           // if (f != null) f.invoke(out);

            // TODO: insert code to write html after writing the body content.
            // e.g.:
            //
            // out.println("    </blockquote>");

        } catch (java.io.IOException ex) {
            throw new JspException("Error in getGrilla tag"+ ex.getMessage());
        }
    }

    /*public void setDato(Object dato) {
        this.dato = dato;
    }*/

}
pagina de error....
Código:
Ha tenido lugar un error en la l�nea: 29 en el archivo jsp: /index.jsp
getGrilla cannot be resolved to a type
26:         <title>JSP Page</title>
27:     </head>
28:     <body>
29:         <jhct:grilla />
30:     </body>
31: </html>


Stacktrace:
	org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:92)
	org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330)
	org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:423)
	org.apache.jasper.compiler.Compiler.compile(Compiler.java:317)
	org.apache.jasper.compiler.Compiler.compile(Compiler.java:295)
	org.apache.jasper.compiler.Compiler.compile(Compiler.java:282)
	org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:586)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)
hay algo inadecuado en el archivo tld... cual es el problema... gracias de antemanoo..