realmente! o problema de antes(do começo do topico) ja foi resolvido retirando o codigo jsp da pagina home.jsp!!!
soh q surgiu este agora!!!!
creio que alguma configuração esta faltando fazer... lembre q estou usando struts 2 juntamente com hibernate 3.
Nao sei c copiei todos .jars necessários!??!?!
de uma olhada nas libs do meu classpath...
commons-logging-1.0.4.jar
ejb3-persistence.jar
firebirdsql-full.jar
freemarker-2.3.8.jar
hibernate3.jar
hibernate-annotations.jar
hibernate-entitymanager.jar
ognl-2.6.11.jar
struts2-core-2.0.6.jar
xwork-2.0.1.jar
vou postar tb o cod. da minha action e demais classes envolvidas:
LoginAction.class:
package net.sytes.tsda.zeuswebserver.action;
import java.util.Map;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
import net.sytes.tsda.zeuswebserver.bean.Usuario;
import net.sytes.tsda.zeuswebserver.dao.DaoFactory;
import net.sytes.tsda.zeuswebserver.logic.UsuarioLogic;
public class LoginAction extends ActionSupport
{
private static final long serialVersionUID = 1L;
private String username;
private String password;
private DaoFactory daoFactory;
private UsuarioLogic usuarioLogic;
private Usuario usuario;
private Map<String, Object> session;
@SuppressWarnings("unchecked")
public String checkLogin()
{
if(this.isInvalid(this.username) || this.isInvalid(this.password))
return "invalid";
else
{
if(this.findUser())
{
this.session = ActionContext.getContext().getSession();
this.session.put("Usuario", usuario);
return "valid";
}
return "invalid";
}
}
private boolean isInvalid(String value)
{
return(value == null || value.length() == 0);
}
private boolean findUser()
{
this.daoFactory = new DaoFactory();
this.usuarioLogic = new UsuarioLogic(this.daoFactory);
this.usuario = new Usuario();
this.usuario.setUsername(this.username);
this.usuario.setPassword(this.password);
return this.usuarioLogic.procura(this.usuario);
}
public final String getUsername()
{
return username;
}
public final void setUsername(String username)
{
this.username = username;
}
public final String getPassword()
{
return password;
}
public final void setPassword(String password)
{
this.password = password;
}
}
DaoFactory.class:
package net.sytes.tsda.zeuswebserver.dao;
import javax.persistence.RollbackException;
import net.sytes.tsda.zeuswebserver.bean.*;
import net.sytes.tsda.zeuswebserver.util.HibernateUtil;
import org.hibernate.Session;
import org.hibernate.Transaction;
public class DaoFactory
{
private final Session session;
private Transaction transaction;
public DaoFactory()
{
this.session = HibernateUtil.getSession();
}
public void beginTransaction()
{
this.transaction = (Transaction) session.beginTransaction();
}
public void commit()
{
try
{
this.transaction.commit();
}
catch (RollbackException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
this.transaction = null;
}
public boolean hasTransaction()
{
return this.transaction != null;
}
public void rollback()
{
try
{
this.transaction.rollback();
}
catch (IllegalStateException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
this.transaction = null;
}
public void closeSession()
{
this.session.close();
}
public Dao<Usuario> getUsuarioDao()
{
return new Dao<Usuario>(this.session, Usuario.class);
}
public Dao<Abrigo> getAbrigoDao()
{
return new Dao<Abrigo>(this.session, Abrigo.class);
}
public Dao<Remota> getRemotaDao()
{
return new Dao<Remota>(this.session, Remota.class);
}
public Dao<LogSistema> getLogSistemaDao()
{
return new Dao<LogSistema>(this.session, LogSistema.class);
}
public Dao<UltimoAcesso> getUltimoAcesso()
{
return new Dao<UltimoAcesso>(this.session, UltimoAcesso.class);
}
}
HibernateUtil.class:
package net.sytes.tsda.zeuswebserver.util;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.AnnotationConfiguration;
import org.hibernate.cfg.Configuration;
public class HibernateUtil
{
private static SessionFactory sessionFactory;
static
{
Configuration configuration = new AnnotationConfiguration();
configuration.configure();
sessionFactory = configuration.buildSessionFactory();
}
public static Session getSession()
{
return sessionFactory.openSession();
}
}
Dao.class:
package net.sytes.tsda.zeuswebserver.dao;
import java.util.List;
import org.hibernate.Session;
public class Dao<E>
{
private final Session session;
private final Class<E> classe;
public Dao(Session session, Class<E> classe)
{
this.session = session;
this.classe = classe;
}
@SuppressWarnings("unchecked")
public List<E> lista()
{
return this.session.createCriteria(this.classe).list();
}
@SuppressWarnings("unchecked")
public E procura(long id)
{
return (E) this.session.load(this.classe, id);
}
@SuppressWarnings("unchecked")
public E procura(String str)
{
return (E) this.session.load(this.classe, str);
}
}
UsuarioLogic.class:
package net.sytes.tsda.zeuswebserver.logic;
import net.sytes.tsda.zeuswebserver.bean.Usuario;
import net.sytes.tsda.zeuswebserver.dao.DaoFactory;
public class UsuarioLogic
{
private final DaoFactory daoFactory;
private Usuario usuario;
public UsuarioLogic(DaoFactory daoFactory)
{
this.daoFactory = daoFactory;
}
public void lista()
{
this.daoFactory.beginTransaction();
this.daoFactory.getUsuarioDao().lista();
this.daoFactory.commit();
}
public boolean procura(Usuario usuario)
{
this.daoFactory.beginTransaction();
this.usuario = this.daoFactory.getUsuarioDao().procura(usuario.getUsername());
this.daoFactory.commit();
if(this.usuario.getUsername().equals(usuario.getUsername()) && this.usuario.getPassword().equals(usuario.getPassword()))
return true;
return false;
}
}
obs.: esta nova msm de erro eh exibida quando executo a linha 49 da LoginAction, quando instancio o classe DaoFactory...