Foros del Web » Programación para mayores de 30 ;) » Java »

tags de struts

Estas en el tema de tags de struts en el foro de Java en Foros del Web. hola, resulta que una aplicaciòn: - importo los tags de struts en la jsp pertinente - los agrego en el web.xml - los tengo en ...
  #1 (permalink)  
Antiguo 14/03/2006, 10:54
 
Fecha de Ingreso: febrero-2006
Mensajes: 57
Antigüedad: 18 años, 3 meses
Puntos: 0
tags de struts

hola, resulta que una aplicaciòn:
- importo los tags de struts en la jsp pertinente
- los agrego en el web.xml
- los tengo en la carpeta WEB-INF (tengo al logic, html, bean, etc)

sin embargo cuando hago click en el jsp, desde el tomcat, aparece:

Estado HTTP 500 -

type Informe de Excepción

mensaje

descripción El servidor encontró un error interno () que hizo que no pudiera rellenar este requerimiento.

excepción

org.apache.jasper.JasperException: No se puede cargar la clase TagExtraInfo llamada: org.apache.struts.taglib.logic.IterateTei
org.apache.jasper.compiler.DefaultErrorHandler.jsp Error(DefaultErrorHandler.java:50)
org.apache.jasper.compiler.ErrorDispatcher.dispatc h(ErrorDispatcher.java:407)
org.apache.jasper.compiler.ErrorDispatcher.jspErro r(ErrorDispatcher.java:279)
org.apache.jasper.compiler.TagLibraryInfoImpl.crea teTagInfo(TagLibraryInfoImpl.java:422)
org.apache.jasper.compiler.TagLibraryInfoImpl.pars eTLD(TagLibraryInfoImpl.java:248)
org.apache.jasper.compiler.TagLibraryInfoImpl.<ini t>(TagLibraryInfoImpl.java:162)
org.apache.jasper.compiler.Parser.parseTaglibDirec tive(Parser.java:423)
org.apache.jasper.compiler.Parser.parseDirective(P arser.java:492)
org.apache.jasper.compiler.Parser.parseElements(Pa rser.java:1552)
org.apache.jasper.compiler.Parser.parse(Parser.jav a:126)
org.apache.jasper.compiler.ParserController.doPars e(ParserController.java:211)
org.apache.jasper.compiler.ParserController.parse( ParserController.java:100)
org.apache.jasper.compiler.Compiler.generateJava(C ompiler.java:146)
org.apache.jasper.compiler.Compiler.compile(Compil er.java:286)
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:563)
org.apache.jasper.servlet.JspServletWrapper.servic e(JspServletWrapper.java:293)
org.apache.jasper.servlet.JspServlet.serviceJspFil e(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspSe rvlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet .java:802)


causa raíz

java.lang.ClassCastException: org.apache.struts.taglib.logic.IterateTei
org.apache.jasper.compiler.TagLibraryInfoImpl.crea teTagInfo(TagLibraryInfoImpl.java:420)
org.apache.jasper.compiler.TagLibraryInfoImpl.pars eTLD(TagLibraryInfoImpl.java:248)
org.apache.jasper.compiler.TagLibraryInfoImpl.<ini t>(TagLibraryInfoImpl.java:162)
org.apache.jasper.compiler.Parser.parseTaglibDirec tive(Parser.java:423)
org.apache.jasper.compiler.Parser.parseDirective(P arser.java:492)
org.apache.jasper.compiler.Parser.parseElements(Pa rser.java:1552)
org.apache.jasper.compiler.Parser.parse(Parser.jav a:126)
org.apache.jasper.compiler.ParserController.doPars e(ParserController.java:211)
org.apache.jasper.compiler.ParserController.parse( ParserController.java:100)
org.apache.jasper.compiler.Compiler.generateJava(C ompiler.java:146)
org.apache.jasper.compiler.Compiler.compile(Compil er.java:286)
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:563)
org.apache.jasper.servlet.JspServletWrapper.servic e(JspServletWrapper.java:293)
org.apache.jasper.servlet.JspServlet.serviceJspFil e(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspSe rvlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet .java:802)


- Mi action (de struts) està hecha con el eclipse


"web.xml dice:"

<taglib>
<taglib-uri>/WEB-INF/struts-bean.tld</taglib-uri>
<taglib-location>/WEB-INF/struts-bean.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/WEB-INF/struts-html.tld</taglib-uri>
<taglib-location>/WEB-INF/struts-html.tld</taglib-location>
</taglib>

<jsp-config>
<taglib>
<taglib-uri>"/WEB-INF/app.tld"</taglib-uri>
<taglib-location>/WEB-INF/app.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/WEB-INF/struts-logic.tld</taglib-uri>
<taglib-location>/WEB-INF/struts-logic.tld</taglib-location>
</taglib>
</jsp-config>


"en el archivo .jsp dice":

<%@ page language="java" %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/app.tld" prefix="app" %>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>

No sè que està pasando

Muchas gracias desde ya.
Saludos
  #2 (permalink)  
Antiguo 14/03/2006, 12:10
msi
 
Fecha de Ingreso: marzo-2005
Mensajes: 70
Antigüedad: 19 años, 2 meses
Puntos: 0
Por decirte algo, prueba a quitar <jsp-config> y las ":

<jsp-config>
<taglib>
<taglib-uri>"/WEB-INF/app.tld"</taglib-uri>
<taglib-location>/WEB-INF/app.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/WEB-INF/struts-logic.tld</taglib-uri>
<taglib-location>/WEB-INF/struts-logic.tld</taglib-location>
</taglib>
</jsp-config>

Suerte.
  #3 (permalink)  
Antiguo 16/03/2006, 05:08
 
Fecha de Ingreso: marzo-2006
Mensajes: 5
Antigüedad: 18 años, 1 mes
Puntos: 0
a mi no me funciona

yo tengo un error parecido con una tag, aunque no uso struts en esta aplicación. El caso es que la cosa empeora si saco la declaración de la tag de <jsp-config>, ya que en tal caso, no es que ya no encuentre el manejador con el método doStartag, si no que la JSP ni se entera de que existe el tld.

saludos
  #4 (permalink)  
Antiguo 10/12/2007, 11:52
 
Fecha de Ingreso: diciembre-2007
Mensajes: 36
Antigüedad: 16 años, 5 meses
Puntos: 0
Re: tags de struts

A mi tambien me sale el error http500, estos son mi jsp y mi clase:
validarUsuario.jsp
Código:
<%@page language="java" contentType="text/html"; charset=utf-8 pageEncoding="utf-8" %>
<jsp:useBean id="validadorUsuario" scope="session" class="com.mercosuronline.accesoabase.ValidadorUsuario"/>
<jsp:setProperty name="validadorUsuario" property="*">
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<%boolean mostrarFormulario = false; %>
<%boolean mostrarError = false; %>
<%
	if(validadorUsuario.getUsuario() == null){
		mostrarFormulario = true;
	} else {
		mostrarFormulario = !validadorUsuario.isValid();
		mostrarError = mostrarFormulario;
	}
%>

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Loguin de usuario</title>
</head>
<body>
<%
if (mostrarFormulario) {
	%>
	<form name="formulario" method="post" action="validarUsuario.jsp">
		<input type="text" name="usuario">
		<input type="password" name="password">
		<input type="submit" name="Ingresar">
	</form>
	<%
	if (validadorUsuario.isError()) {
		%>
            <h1>Un problema en nuestros servidores impidió procesar su ingreso.</h1>
            <h1>Por favor, contáctese con el Administrador del sitio.</h1>		<%
	} else if(mostrarError) {
		%>
		<h1>El nombre y/o la contraseña ingresados son invalidos</h1>
		<%
	}
} else {
	%>
	<h1>Bievenido <jsp:getProperty name="validadorUsuario" property="usuario"></h1>
	<%
}
%>
</body>
</html>
ValidadorUsuario.java
Código:
package com.mercosuronline.accesoabase;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

public class ValidadorUsuario {
	
	private String usuario;
	private String password;
	private String nombre;
	private boolean valido = false;
	private boolean hayError = false;
	
	private boolean buscarElUsuarioYLaPass() throws SQLException{
        Connection coneccion = null;
        PreparedStatement sentencia = null;
        ResultSet resultado = null;
       
        String DRIVER = "org.apache.derby.jdbc.EmbeddedDriver";
        String URL = "jdbc:derby:e:\\Usuarios";
        String QUERY = "SELECT PASSWORD, NOMBRE FROM USUARIOS.LOGIN WHERE USUARIOID=?";
       
        boolean existe = false;
       
        try {
            Class.forName(DRIVER);
            coneccion = DriverManager.getConnection(URL);
            sentencia = coneccion.prepareStatement (QUERY);
            sentencia.setString( 1, usuario);
            resultado = sentencia.executeQuery(QUERY);
            
            if (resultado.next()&& password.equals(resultado.getString(1))){
            	nombre = resultado.getString(2);
            	existe = true;
            }
        } catch (Exception e) {
                e.printStackTrace();
        } finally {
        	if (resultado != null) resultado.close();
            if (sentencia != null) sentencia.close();
            if (coneccion != null) coneccion.close();
        }
        return existe;
    }
	
	//Getters y Setters
	public String getUsuario(){
		return usuario;
	}
	
	public void setUsuario(String u){
		usuario = u;
	}
	
	public void setPassword(String u){
		password = u;
	}
	
	public String getNombre(){
		return nombre;
	}
	
	public boolean isValid(){
		if(valido) return true;
		try{
			valido = buscarElUsuarioYLaPass();
			hayError = false;
		}catch(Exception e){
			valido = false;
			hayError = true;
		}
		return valido;
	}
	
	public boolean isError(){
		return hayError;
	}
}
si alguien sabe porque pasa esto me chifla que quiero resolverlo, tengo Eclipse 3.2 con WTP all.in.one y apache tomcat 5.5.25
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:08.