Ciao a tutti,
sto perdendo 20 kg di capelli cercando di capire un errore in un programma java!
Ho fatto una pagina jsp che utilizza un tag personalizzato. Il problema è che quando vado a chiamarla mi da questo errore:

codice:
type Exception report

message 

description The server encountered an internal error () that prevented it from fulfilling this request.

exception 

org.apache.jasper.JasperException: /index.jsp(135,2) Unable to load tag handler class "mieiTag.PannelloTag" for tag "security:pannello"
	org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40)
	org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407)
	org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:198)
	org.apache.jasper.compiler.Parser.parseCustomTag(Parser.java:1242)
	org.apache.jasper.compiler.Parser.parseElements(Parser.java:1467)
	org.apache.jasper.compiler.Parser.parse(Parser.java:138)
	org.apache.jasper.compiler.ParserController.doParse(ParserController.java:216)
	org.apache.jasper.compiler.ParserController.parse(ParserController.java:103)
	org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:154)
	org.apache.jasper.compiler.Compiler.compile(Compiler.java:315)
	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)


note The full stack trace of the root cause is available in the Apache Tomcat/6.0.18 logs.
il file tld è questo: --sicurezza.tld--
codice:
<?xml version="1.0" encoding="ISO-8859-1" ?> 
<!DOCTYPE taglib 
        PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN" 
 "http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd">

<taglib>
	<tlibversion>1.0</tlibversion>
	<jspversion>1.1</jspversion>
	<shortname>prova</shortname>
	<info>prova2</info>
	
	<tag>
		<name>login</name>
		<tagclass>mieiTag.LoginTag</tagclass>
		<bodycontent>empty</bodycontent>
		<attribute>
			<name> loginPage </name>
			<required> true </required>
			<rtexprvalue> true </rtexprvalue>
		</attribute>
		<attribute>
			<name> errorPage </name>
			<required> false </required>
			<rtexprvalue> true </rtexprvalue>
		</attribute>
	</tag>
	<tag>
		<name>pannello</name>
		<tagclass>mieiTag.PannelloTag</tagclass>
		<bodycontent>JSP</bodycontent>
	</tag>
</taglib>
situato in .../context-root/tld


questa è la classe handler del tag
codice:
//PannelloTag.java

package mieiTag;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.jsp.*;
import javax.servlet.jsp.tagext.*;
import java.util.*;
import java.io.*;

public class PannelloTag extends TagSupport {

	public int doStartTag()  {
		HttpSession session = pageContext.getSession();
		if (session.getAttribute("user") == null) {
			return (SKIP_BODY);
		}
		else {
			int tipo = Integer.parseInt(session.getAttribute("tipoUtente").toString());
			if (tipo > 1){
				return (EVAL_BODY_INCLUDE);
			}
			else
				return (SKIP_BODY);
		}
	}


	public int doEndTag() {
		HttpSession session = pageContext.getSession();
		if ( session.getAttribute("user") == null) {
			return(SKIP_PAGE);
		}
		else {
			int tipo = Integer.parseInt (session.getAttribute("tipoUtente").toString());
			if (tipo > 2){
				return (EVAL_PAGE);
			}
			else
				return (SKIP_PAGE);
		}
	}
}
situata in .../context-root/web-inf/classes/mieiTag

e nella jsp il tag viene così chiamato chiamato:

<%@ taglib uri= "/tld/sicurezza.tld" prefix = "security" %>

<securityannello>
...blablabla...
</securityannello>



Ho provato a cambiare cartelle e percorsi del tdl, del .class e mille altre cavolate ma il problema resta uguale,
qualcuno sa dove devo mettere le mani?

grazie mille a tutti