Ver Mensaje Individual
  #1 (permalink)  
Antiguo 29/11/2011, 16:52
Avatar de gianfranc
gianfranc
 
Fecha de Ingreso: octubre-2011
Ubicación: san isidro-peru
Mensajes: 21
Antigüedad: 12 años, 6 meses
Puntos: 0
Exclamación struts login con bd mysql

ola amigos quisiera que por favor me pudieran ayudar en que es lo que e hecho mal en un login de struts el cual accede a base de datos mysql...este es el codigo:

struts-config:
<action input="/usuarioLogin.jsp" name="UsuarioActionForm" path="/login" scope="session" type="Actions.UsuarioAction">
<forward name="si_pasa" path="/usuarioOK.jsp"/>
<forward name="no_pasa" path="/usuarioNoOK.jsp"/>
</action>


usuarioLogin.jsp

<html:form action="login" >

<table align="center">
<tr><td colspan="2">
<p>

<html:img src="images/key1.gif" />

</p>

</td>
</tr>

<tr>
<td>
<bean:message key="usuario.nick" />:
</td>
<td>
<html:text property="nick" size="11" maxlength="10" />

</td>
</tr>
<tr>
<td>
<bean:message key="usuario.password" />:
</td>
<td>
<html:password property="pasword" size="11" maxlength="10" />
</td>
</tr>
<tr>
<th colspan="2">
<html:errors />
</th>
</tr>
<tr>
<th align="center" colspan="2"><br/>
<html:submit>
<bean:message key="boton.enviar" />
</html:submit>
</th>
</tr>

</table>
</html:form>


usuarioactionform:

private int codigo;
private String nick;
private String nombre;
private String pasword;



public String getNick() {
return nick;
}

public void setNick(String nick) {
this.nick = nick;
}

public String getPasword() {
return pasword;
}

public void setPasword(String pasword) {
this.pasword = pasword;
}

public int getCodigo() {
return codigo;
}

public void setCodigo(int codigo) {
this.codigo = codigo;
}

public String getNombre() {
return nombre;
}

public void setNombre(String nombre) {
this.nombre = nombre;
}



public UsuarioActionForm(int codigo,String nick,String nombre, String pasword ) {

this.codigo = codigo;
this.nick = nick;
this.nombre = nombre;
this.pasword = pasword;

}



public UsuarioActionForm() {
super();
// TODO Auto-generated constructor stub
}

usuarioaction:

private static final String SIPASA = "si_pasa";
private static final String NOPASA = "no_pasa";

public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {


UsuarioActionForm usuario=(UsuarioActionForm) form;

UsuarioActionForm rep= new UsuarioDAO().autenticarUsuario(usuario.getNick(),u suario.getPasword());

if ( rep!=null){
return mapping.findForward(SIPASA);

} else{
return mapping.findForward(NOPASA);
}

UsuarioDAO:

public UsuarioActionForm autenticarUsuario(String usuario,String clave) throws Exception
{
Connection cn = null;
UsuarioActionForm respuesta = null;
try {
cn = new ConectaDB().getConexion();
PreparedStatement pt = cn.prepareStatement("select * from usuario where usuario=? and" + " clave=?");
pt.setString(1, usuario);
pt.setString(2, clave);
ResultSet rs = pt.executeQuery();
if (rs.next())
{
respuesta = new UsuarioActionForm(rs.getInt("codigo"),usuario,rs.g etString("nombre"),clave);
}
rs.close();
pt.close();
} catch (Exception err){
throw err;
}
cn.close();
return respuesta;
}


la tabla de mysql la cual se llama usuario contiene:
codigo,usuario,nombre,clave.

el problema es que cuando pasa el login me tiene que abrir una pagina del succes si pasa..

en esa pagina me trae los valores de la bd con un bean.write. la cual solo me trae el nombre de usuario y la contraseña mas no el codigo ni el nombre....

table>
<tr>
<td>
<bean:message key="usuario.nick" />:
</td>
<td>
<bean:write name="UsuarioActionForm" property="nick" />
</td>
</tr>
<tr>
<td>
<bean:message key="usuario.password" />:
</td>
<td>
<bean:write name="UsuarioActionForm" property="pasword" />
</td>
</tr>
<tr>
<td>nombre:</td>


<td>
<bean:write name="UsuarioActionForm" property="nombre" />
</td>
</tr>
<tr>
<td>codigo:</td>


<td>
<bean:write name="UsuarioActionForm" property="codigo" />
</td>
</tr>

quisiera que por favor me ayuden ...gracias a todos...=)