Pessoal,
Estou fazendo um projeto usando Hibernate e Struts… eu acredito que o meu arquivo struts-config.xml esteja correto, mas quando rodo a aplicação no Tomcat dá o seguinte erro:
javax.servlet.jsp.JspException: Cannot find ActionMappings or ActionFormBeans collection
Já vi no web.xml se os parâmetros necessários estão presentes, os tags e tags.
Tô achando que tem alguma coisa na classe ActionForm.
Vou passar os arquivos abaixo:
struts-config.xml
…
<action path="/LoginSubmit"
type="pacote.LoginAction"
name="usuario"
scope="request"
validate="true"
input="/pages/login.jsp">
<forward
name="success"
path="/pages/main.jsp"/></action>
<action path="/Logoff"
type="pacote.LogoffAction"
name="usuario"
scope="request"
validate="false"
input="/pages/teste.jsp"></action>
No arquivo web.xml
action
org.apache.struts.action.ActionServlet
…
action
*.do
…
No arquivo LoginAction
package pacote;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpSession;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionError;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import pacote.Constantes;
import pacote.UsuarioDAO;
import pacote.Usuario;
public final class LoginAction extends Action
{
private Long id_usuario;
public ActionForward perform(ActionMapping mapping,
ActionForm form,
javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response)
throws IOException, ServletException {
String login = ((Usuario)form).getLogin();
String senha = ((Usuario)form).getSenha();
Usuario user = UsuarioDAO.findByLogin(login);
boolean confirmado = checaSenha (user,senha);
if(!confirmado)
{
//Usuário/senha não correspondem
ActionErrors errors = new ActionErrors();
errors.add(ActionErrors.GLOBAL_ERROR,
new ActionError("error.login.denied"));
saveErrors(request,errors);
// return to input page
return (new ActionForward(mapping.getInput()));
}
HttpSession httpSession = request.getSession();
httpSession.setAttribute(Constantes.USER_KEY, user);
httpSession.setAttribute("id_usuario", id_usuario);
return (mapping.findForward(Constantes.SUCCESS));
}
public boolean checaSenha(Usuario user, String senha)
{
if (user != null )
{
if (user.isFuncional() && user.getSenha().equals(senha))
{
id_usuario = user.getId_usuario();
return true; // senha confere com o login
}
}
return false; // senha não corresponde ao login ou login não existe
}
}
Agradeceria se alguém pudesse dar “uma luz” se tem algo errado em algum lugar…
Obrigada