Pessoal,
Bom dia.
Eu preciso de ajuda em resolvef a seguinte questão :
Estou usando struts 2 + spring + hibernate para desenvolver um artigo web.
Utilizei o tutorial em http://struts.apache.org/2.x/docs/struts-2-spring-2-jpa-ajax.html para me basear.
Bem o que preciso é enviar uma mensagem de erro apra a tag actionerror da pagina index.jsp:
<body>
<s:form action="doLogin" method="POST" validate="true">
<tr>
<td colspan="2">
Login
</td>
</tr>
<tr>
<td colspan="2">
<s:actionerror />
<s:fielderror />
</td>
</tr>
<s:textfield name="login" label="Login"/>
<s:password name="senha" label="Senha"/>
<s:submit value="Login" align="center"/>
</s:form>
</body>
import java.util.List;
import model.Usuario;
import service.UsuarioService;
import com.opensymphony.xwork2.Action;
import com.opensymphony.xwork2.Preparable;
public class UsuarioAction implements Preparable {
private UsuarioService service;
private List<Usuario> usuarios;
private Usuario usuario;
private Integer id;
private String senha;
private String login;
public UsuarioAction(UsuarioService service) {
this.service = service;
}
public String execute() {
this.usuarios = service.findAll();
return Action.SUCCESS;
}
public String save() {
this.service.save(usuario);
this.usuario = new Usuario();
return execute();
}
public String remove() {
service.remove(id);
return execute();
}
public String loga () {
if (service.loga(this.getLogin(),this.getSenha())) {
return Action.SUCCESS;
} else
{
return Action.ERROR;
}
}
public List<Usuario> getUsuarios() {
return usuarios;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public void prepare() throws Exception {
if (id != null)
usuario = service.find(id);
}
public Usuario getUsuario() {
return usuario;
}
public void setUsuario(Usuario usuario) {
this.usuario = usuario;
}
public String getSenha() {
return senha;
}
public void setSenha(String senha) {
this.senha = senha;
}
public String getLogin() {
return login;
}
public void setLogin(String login) {
this.login = login;
}
}
public boolean loga(String login, String senha) {
// System.err.println("Login :" + login + " Senha : " + senha);
Query query = getEntityManager().createQuery("select p FROM Usuario p where p.login = :login and p.senha = :senha");
query.setParameter("login", login);
query.setParameter("senha", senha);
List<Usuario> usuario = query.getResultList();
if (usuario.size() > 0) {
Map session = ActionContext.getContext().getSession();
session.put("logado","true");
return true;
} else {
return false;
}
}
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<constant name="struts.objectFactory" value="spring" />
<constant name="struts.devMode" value="true" />
<package name="usuario" extends="struts-default">
<action name="list" method="execute" class="usuarioAction">
<result>pages/list.jsp</result>
<result name="input">pages/list.jsp</result>
</action>
<action name="remove" class="usuarioAction" method="remove">
<result>pages/list.jsp</result>
<result name="input">pages/list.jsp</result>
</action>
<action name="save" class="usuarioAction" method="save">
<result>pages/list.jsp</result>
<result name="input">pages/list.jsp</result>
</action>
<action name="doLogin" class="action.UsuarioAction" method="loga">
<result name="input">index.jsp</result>
<result name="error">index.jsp</result>
<result>loginsuccess.jsp</result>
</action>
</package>
</struts>
Alguém pode me ajudar?
Muito obrigado,