Eaí moçada?
Estou usando struts 2 como camada de controle da minha aplicação e estou tendo dificuldades com alguns erros que deparo!
A seguinte mensagem de erro é exibida no browser quando executo meu projeto:
É como se o servidor não encontrase a action “abrigoAction”, mas a primeira vista está tudo definido corretamente:
jsp:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<title>TSDA - Tecnologia e Soluções Digitais Aplicadas</title>
<link href="<s:url value="/zeuswebserver/recursos/estilos/corpo.css"/>" rel="stylesheet" type="text/css" />
<link href="<s:url value="/zeuswebserver/recursos/estilos/logomarca.css"/>" rel="stylesheet" type="text/css" />
<link href="<s:url value="/zeuswebserver/recursos/estilos/jumpmenu.css"/>" rel="stylesheet" type="text/css" />
<link href="<s:url value="/zeuswebserver/recursos/estilos/menu.css"/>" rel="stylesheet" type="text/css" />
<link href="<s:url value="/zeuswebserver/recursos/estilos/links.css"/>" rel="stylesheet" type="text/css" />
<link href="<s:url value="/zeuswebserver/recursos/estilos/usuario.css"/>" rel="stylesheet" type="text/css" />
<link href="<s:url value="/zeuswebserver/recursos/estilos/data.css"/>" rel="stylesheet" type="text/css" />
<link href="<s:url value="/zeuswebserver/recursos/estilos/abrigos.css"/>" rel="stylesheet" type="text/css" />
<s:head theme="ajax"/>
</head>
<body>
<s:div id="abrigos" href="/abrigoAction!listAbrigosUsuario.action" notifyTopics="listMedidasTopic" theme="ajax"> </s:div>
<!-- <s:div id="medidas" href="/medidasAction!getAbrigoCorrente.action" theme="ajax" listenTopics="listMedidasTopic"></s:div> -->
</body>
</html>
struts.xml:
<?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>
<include file="struts-default.xml" />
<package name="default" extends="struts-default">
<action name="loginAction!*" method="{1}" class="net.sytes.tsda.zeuswebserver.action.LoginAction">
<result name="invalid">/error_login.jsp</result>
<result name="valid">/teste.jsp</result>
</action>
<action name="abrigoAction!*" method="{1}" class="net.sytes.tsda.zeuswebserver.action.AbrigoAction">
<result name="listAbrigos">/abrigos.jsp</result>
</action>
<action name="medidaAction!*" method="{1}" class="net.sytes.tsda.zeuswebserver.action.MedidaAction">
<result name="listMedidas">/medidas.jsp</result>
</action>
</package>
</struts>
AbrigoAction.java:
package net.sytes.tsda.zeuswebserver.action;
import java.util.Collection;
import net.sytes.tsda.zeuswebserver.bean.Abrigo;
import net.sytes.tsda.zeuswebserver.bean.AbrigosUsuario;
import net.sytes.tsda.zeuswebserver.dao.DaoFactory;
import net.sytes.tsda.zeuswebserver.logic.AbrigoLogic;
import net.sytes.tsda.zeuswebserver.logic.AbrigosUsuarioLogic;
import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.Preparable;
public class AbrigoAction extends ActionSupport implements Preparable
{
private static final long serialVersionUID = 1L;
private DaoFactory daoFactory;
private Collection<AbrigosUsuario> abrigosUsuario;
private Collection<Abrigo> abrigos;
private AbrigosUsuarioLogic abrigosUsuarioLogic;
private AbrigoLogic abrigoLogic;
public String listAbrigosUsuario()
{
this.daoFactory = new DaoFactory();
this.abrigosUsuarioLogic = new AbrigosUsuarioLogic(this.daoFactory);
this.abrigosUsuarioLogic.carrega();
this.getAbrigosDesc();
return "listAbrigos";
}
public void getAbrigosDesc()
{
this.daoFactory = new DaoFactory();
this.abrigoLogic = new AbrigoLogic(this.daoFactory);
this.abrigoLogic.carregaAbrigosDesc();
}
public void prepare() throws Exception
{
// TODO Auto-generated method stub
this.abrigosUsuario = abrigosUsuarioLogic.getAbrigosUsuario();
this.abrigos = abrigoLogic.getAbrigos();
}
public final Collection<AbrigosUsuario> getAbrigosUsuario()
{
return abrigosUsuario;
}
public final void setAbrigosUsuario(Collection<AbrigosUsuario> abrigosUsuario)
{
this.abrigosUsuario = abrigosUsuario;
}
public final Collection<Abrigo> getAbrigos()
{
return abrigos;
}
public final void setAbrigos(Collection<Abrigo> abrigos)
{
this.abrigos = abrigos;
}
}
Alguém pode me dizer oq está acontecendo?
Obrigado.