Deletar um item do dataTable

0 respostas
Deluxe

Galera ta dando um erro estranho...
meu datatable lista so os nomes do banco e gera um link Excluir do lado para excluir o nome..

a pagina
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>


<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">

<HTML>
<HEAD>
<title>Lista de Usuarios</title> 
<LINK href="estilo.css" type="text/css" rel="stylesheet">
</HEAD>


<body bgcolor="white">
<center><h2>LISTA DE USUARIOS</h2></center>

<div align=center>	
	<f:view><br><h:dataTable value="#{usuarioBean.todos}"  var="usuario">


			<h:column>
				Nome: |<h:outputText value="#{usuario.nome}"/>
			</h:column>
			
 	 	<h:column>
				<h:form id="del">
					<h:commandLink value="#{usuario.idusuario}" action="#{usuarioBean.remove}">
					<f:param name="#{usuarioBean.usuarioPojo.idusuario}" value="#{usuario.idusuario}" ></f:param>
						<h:outputText value="Excluir"></h:outputText>
					</h:commandLink>
						</h:form>				
				</h:column>	
		 	
		</h:dataTable>
		
		 <h:form id="dummy" >
		 <h:commandButton id="novoUsuario" value="Novo Usuario"  action="#{usuarioBean.novoUsuario}" />    
		 </h:form>
		</f:view>
</div>
</body>
</HTML>

Metodo Excluir

public void excluir(UsuarioPojo usuarioPojo) throws UsuarioDAOException {
       
    	PreparedStatement ps = null;
        Connection conn = null;
        
        if(usuarioPojo == null)
            throw new UsuarioDAOException("O Valor passado não pode ser lido");
        try {
        	
            String sql = "delete from usuarios where idusuario = ?";
            conn = this.conn;
            ps = conn.prepareStatement(sql);
            
            ps.setInt(1, usuarioPojo.getIdusuario());
          
          
            ps.executeUpdate();

        } catch (Exception sqle) {
        	
        throw new UsuarioDAOException("Erro ao inserir dados" + sqle);

        }finally{
            ConexaoBancoDeDados.closeConnection(conn, ps);
     
        }  
}

E o Erro

HTTP Status 500 - 

--------------------------------------------------------------------------------

type Exception report

message 

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

exception 

org.apache.jasper.JasperException: javax.servlet.ServletException: javax.servlet.jsp.JspException: java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String
	org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:522)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:398)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:337)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
	com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:322)
	com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:130)
	com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:87)
	com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:200)
	com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:117)
	javax.faces.webapp.FacesServlet.service(FacesServlet.java:198)


root cause 

javax.servlet.ServletException: javax.servlet.jsp.JspException: java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String
	org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:846)
	org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:779)
	org.apache.jsp.mostrar_jsp._jspService(mostrar_jsp.java:110)
	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:337)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
	com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:322)
	com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:130)
	com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:87)
	com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:200)
	com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:117)
	javax.faces.webapp.FacesServlet.service(FacesServlet.java:198)


root cause 

java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String
	javax.faces.component.UIParameter.getName(UIParameter.java:96)
	com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.getParamList(HtmlBasicRenderer.java:526)
	com.sun.faces.renderkit.html_basic.CommandLinkRenderer.encodeBegin(CommandLinkRenderer.java:192)
	javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:683)
	com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:433)
	com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:440)
	com.sun.faces.renderkit.html_basic.TableRenderer.encodeChildren(TableRenderer.java:257)
	javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:701)
	javax.faces.webapp.UIComponentTag.encodeChildren(UIComponentTag.java:607)
	javax.faces.webapp.UIComponentTag.doEndTag(UIComponentTag.java:544)
	com.sun.faces.taglib.html_basic.DataTableTag.doEndTag(DataTableTag.java:491)
	org.apache.jsp.mostrar_jsp._jspx_meth_h_005fdataTable_005f0(mostrar_jsp.java:188)
	org.apache.jsp.mostrar_jsp._jspx_meth_f_005fview_005f0(mostrar_jsp.java:134)
	org.apache.jsp.mostrar_jsp._jspService(mostrar_jsp.java:99)
	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:337)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
	com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:322)
	com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:130)
	com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:87)
	com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:200)
	com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:117)
	javax.faces.webapp.FacesServlet.service(FacesServlet.java:198)


note The full stack trace of the root cause is available in the Apache Tomcat/6.0.16 logs.


--------------------------------------------------------------------------------

Apache Tomcat/6.0.16

tem alguma coisa errada ai?
alguem tem um exemplo de como excluir um item em um datatable

Criado 2 de junho de 2008
Respostas 0
Participantes 1