dataTable, link para alterar, está alterando todo o banco

1 resposta
Deluxe

galera
tenho um dataTable onde lista todos os dados do banco, e gera um link 'Alterar' para cada dado..
eu cliko em alterar, ele chama a pagina de edição, eu altero e cliko no botão Alterar.. após isso...
todo o banco é alterado, todo os dados com o mesmo nome.. era so pra alterar o dado de onde eu cliquei no link..

Pagina que lista:

<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
<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="#{usuarios.lista}" var="usuarios">


			<h:column>
				Login: |<h:outputText value="#{usuarios.nome}"/>
			</h:column>
			
			<h:column>
				 Nome:<h:outputText value="#{usuarios.login}"/>
			</h:column>
				
			<h:column>
				<h:form>
				<h:commandLink value="Alterar" action="alterar">
				<f:param name="nome" value="#{usuarios.nome}"></f:param>
				<f:param name="login" value="#{usuarios.login}"></f:param>
				</h:commandLink>
			</h:form></h:column>
			
		</h:dataTable>
		</f:view>
</div>
</body>
</HTML>

Pagina Que altera

<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %> 
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %> 
<html> 
    <head>
        <title>JSF</title>
        <link href="estilo.css" type="text/css" rel="stylesheet">
    </head>
    <body> 
        <f:view> 
            <h:form>
                <center><h2> Alterar Dados </h2></center>
                <table align="center">
                    
                 
                        <tr>
                        <td>Nome:</td>
                        <td><h:inputText value="#{usuarios.nome}"/></td>
                    </tr>
                    
                         <tr>
                        <td>Login:</td>
                        <td><h:inputText value="#{usuarios.login}"/></td>
                    </tr>
                 
			
			 <tr>
                    <tr><td colspan="2" align="center">
                            <h:commandButton value="Alterar" action="#{usuarios.altera}"/>
                        </td>
                    </tr>
                    <tr>
                        <td colspan="2">
                            <h:outputText id="resultado" value="#{usuarios.status}" />
                        </td>
                    </tr>
                </table>
            </h:form>

            
        </f:view> 
    </body> 
</html>

Pq ele ta atualizando todo o banco e não só a linha que eu escolhi?

1 Resposta

Kamikaze

Será que nao falta o id para a alteração?
algo que identifique esse registro!

Criado 28 de maio de 2008
Ultima resposta 28 de mai. de 2008
Respostas 1
Participantes 2