[RESOLVIDO] Erro no TomCat 7.0.11

Bom Dia Pessoal,

Estou executando JSF2 + Hibernate + Primfaces e vira e mexe aparece esse erro no tomcat

GRAVE: Exception loading sessions from persistent storage
java.lang.IllegalStateException: unread block data
	at java.io.ObjectInputStream$BlockDataInputStream.setBlockDataMode(ObjectInputStream.java:2377)
	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1361)
	at java.io.ObjectInputStream.readArray(ObjectInputStream.java:1667)
	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1323)
	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
	at java.util.HashMap.readObject(HashMap.java:1030)
	at sun.reflect.GeneratedMethodAccessor18.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:974)
	at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1849)
	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
	at java.util.HashMap.readObject(HashMap.java:1030)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:974)
	at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1849)
	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
	at org.apache.catalina.session.StandardSession.readObject(StandardSession.java:1587)
	at org.apache.catalina.session.StandardSession.readObjectData(StandardSession.java:1060)
	at org.apache.catalina.session.StandardManager.doLoad(StandardManager.java:284)
	at org.apache.catalina.session.StandardManager.load(StandardManager.java:204)
	at org.apache.catalina.session.StandardManager.startInternal(StandardManager.java:470)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5199)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
	at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:812)
	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:787)
	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:607)
	at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:633)
	at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:558)
	at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:468)
	at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1305)
	at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
	at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
	at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:89)
	at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:379)
	at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:324)
	at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1041)
	at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:774)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
	at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1033)
	at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:291)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
	at org.apache.catalina.core.StandardService.startInternal(StandardService.java:443)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
	at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:727)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
	at org.apache.catalina.startup.Catalina.start(Catalina.java:620)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:303)
	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:431)

Edit:Aparece mais esse aqui no log

AVISO: Cannot serialize session attribute com.sun.faces.renderkit.ServerSideStateHelper.LogicalViewMap for session 33AD453FE5BFEE4A16B83655C9C51F51
java.io.NotSerializableException: org.hibernate.transaction.JDBCTransaction
	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1156)
	at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1509)
	at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1474)
	at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)
	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
	at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1509)
	at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1474)
	at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)
	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
	at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)
	at java.util.HashMap.writeObject(HashMap.java:1001)
	at sun.reflect.GeneratedMethodAccessor228.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:945)
	at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1461)
	at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)
	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
	at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1509)
	at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1474)
	at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)
	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
	at java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1338)
	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1146)
	at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)
	at java.util.HashMap.writeObject(HashMap.java:1001)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:945)
	at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1461)
	at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)
	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
	at java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1338)
	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1146)
	at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)
	at java.util.HashMap.writeObject(HashMap.java:1001)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:945)
	at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1461)
	at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)
	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
	at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)
	at java.util.HashMap.writeObject(HashMap.java:1001)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:945)
	at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1461)
	at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)
	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
	at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)
	at org.apache.catalina.session.StandardSession.writeObject(StandardSession.java:1663)
	at org.apache.catalina.session.StandardSession.writeObjectData(StandardSession.java:1077)
	at org.apache.catalina.session.StandardManager.doUnload(StandardManager.java:411)
	at org.apache.catalina.session.StandardManager.unload(StandardManager.java:353)
	at org.apache.catalina.session.StandardManager.stopInternal(StandardManager.java:497)
	at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:225)
	at org.apache.catalina.core.StandardContext$4.call(StandardContext.java:5419)
	at org.apache.catalina.core.StandardContext$4.call(StandardContext.java:5402)
	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
	at java.util.concurrent.FutureTask.run(FutureTask.java:138)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
	at java.lang.Thread.run(Thread.java:619)

Como Solucionar ???

posta o seu código e como você está configurando as sessões, eh nela que está dando problema

Uso todos os beans em ViewScoped, qual a parte do código que vc quer??? um bean por exemplo ?

se você tiver uma tela de autenticação, poste ela primeiro, caso contrário, qualquer bean no qual voc~e faça a requisição ou onde apresente o erro.

ele dá erro quando inicio o tomcat (já limpei os logs)

segue um bean

package br.com.compras.bean;

import br.com.compras.modelo.Usuario;
import br.com.compras.util.Cripto;
import br.com.compras.util.dao.UsuarioDao;
import java.io.Serializable;
import java.util.List;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;

/**
 *
 * @author mpolverini
 */
@ManagedBean
@ViewScoped
public class UsuarioBean implements Serializable {

    private Usuario usuario = new Usuario();
    private long id;
    private UsuarioDao dao = new UsuarioDao();
    private String campo;
    private String valorConsulta;
    private List<Usuario> listUsuario;
    private boolean validate = false;

    public void reInit() {
        usuario = new Usuario();
    }

    public void consulta() {
        try {
            listUsuario = dao.consultaUsuario(campo, valorConsulta);
        } catch (Exception ex) {
            ex.printStackTrace();
        }
    }

    public void save() {
        try {
            usuario.setSenha(Cripto.Md5(usuario.getSenha()));
            dao.save(usuario);
            AlertBean.msg(1, "Sucesso", "Cadastro efetuado com sucesso !");
            reInit();
        } catch (Exception ex) {
            AlertBean.msg(3, "Erro", "Cadastro não efetuado, Verifique se o cadastro já existe !");
        }
    }

    public void update() {
        try {
            dao.update(usuario);
            AlertBean.msg(1, "Sucesso", "Dados atualizados com sucesso !");
            reInit();
        } catch (Exception ex) {
            AlertBean.msg(3, "Erro", "Dados não atualizados !");
        }
    }

    public void verificaLogin() {
        if (usuario.getSenha().length() < 6) {
            validate = false;
            AlertBean.msg(3, "Senha", "A senha deve Conter no minimo 6 digitos e no máximo 12");
        } else {
            try {
                Usuario temp;
                temp = usuario;
                verificaRe(temp);
                temp = dao.consultaLogin(temp.getLogin());
                if (temp == null) {
                } else {
                    //verificaRe(temp);
                    AlertBean.msg(2, "Login", "Login já cadastrado !");
                    reInit();
                }
            } catch (Exception ex) {
            }
        }
    }

    public void verificaRe(Usuario us) {
        if (usuario.getRe() <= 0) {
            validate = false;
            AlertBean.msg(3, "R.E.", "Número do R.E. inválido !");
        } else {
            try {
                validate = false;
                us = dao.consultaRe(us.getRe());
                if (us == null) {
                    validate = true;
                } else {
                    AlertBean.msg(2, "RE", "R.E. já foi cadastrado !");
                    reInit();
                }
            } catch (Exception ex) {
            }
        }
    }

    public void carregaRe() {
        try {
            int re = usuario.getRe();
            usuario = dao.consultaRe(re);
            if (usuario == null) {
                reInit();
                AlertBean.msg(2, "RE", "Usuário não Localizado");
            }
        } catch (Exception ex) {
        }
    }

    public List<Usuario> getListUsuario() {
        return listUsuario;
    }

    public void setListUsuario(List<Usuario> listUsuario) {
        this.listUsuario = listUsuario;
    }

    public long getId() {
        return id;
    }

    public void setId(long id) {
        this.id = id;
    }

    public Usuario getUsuario() {
        return usuario;
    }

    public void setUsuario(Usuario usuario) {
        this.usuario = usuario;
    }

    public String getValorConsulta() {
        return valorConsulta;
    }

    public void setValorConsulta(String valorConsulta) {
        this.valorConsulta = valorConsulta;
    }

    public String getCampo() {
        return campo;
    }

    public void setCampo(String campo) {
        this.campo = campo;
    }

    public boolean isValidate() {
        return validate;
    }

    public void setValidate(boolean validate) {
        this.validate = validate;
    }
}

Hum,

Acho que isso é uma issue do JSF.

Quando você está mechendo na sua app e reinicia o tomcat, ele não consegue remontar a árvore de componentes da tela que estava sendo apresentada anteriormente. Basta dar clean no tomcat e reiniciá-lo, aí abra o sistema e outra aba (uma bosta n?).

Não tenho certeza se é isso mesmo, alguém me corrija se eu estiver errado…

tbm acho uma porcaria mais logo apos limpar os logs ele para de aparecer o erro (até eu reiniciar a app), isso nao causa nenhum problema para a app ???

É, problema na app acho q n dá n…

Mas eu estou em dúvida com a minha própria explicação.Heheheh foi mal aí.

sussa

vlw