Session plötzlich closed?

Diskutiere Session plötzlich closed? im Data Tier Forum; Hallo. Ich habe hier ein komisches Problem und komm nicht weiter. Nutze TomCat 7, JSF2.2, JDK7 und Hibernate 3.6 Ich habe mittlerweile eine...

  1. mario87b
    mario87b Neues Mitglied
    Hallo.

    Ich habe hier ein komisches Problem und komm nicht weiter. Nutze TomCat 7, JSF2.2, JDK7 und Hibernate 3.6

    Ich habe mittlerweile eine kleine Anwendung extra zur Fehlersuche gebaut, hier die wichtigstens Stellen.

    Ersteinmal ein helper für die Hibernate GEschcihte - so wie ich es gelernt habe:
    Code (Text):

    public class FileServiceHelper {
    final static Logger logger = LogManager.getLogger();
    private Session session = null;
       
        public FileServiceHelper () {
            logger.entry();
            this.session = HibernateUtil.getSessionFactory().getCurrentSession();
            logger.info("new Hibernate Session: " + session.isOpen());
        }



    public List getAllActivatedShare() {
            List<Share> shares;
           
            logger.info("Abfrage aller aktiven Shares...");
            session.beginTransaction();
            Query q = session.createQuery("from Share as s where s.isActive=true order by s.bezeichnung");
            shares = (List<Share>)q.list();
            logger.info("...done");
                 
            return shares;
        }


    public void updateDb () {
            org.hibernate.Transaction tx = session.beginTransaction();
            tx.commit();
            logger.info("tx.commit");
            logger.info("Hibernate Session: " + session.isOpen());
        }


    public Session getSession() {
            return session;
        }

        public void setSession(Session session) {
            this.session = session;
        }
    }
     
    Dann eine Bean.

    Code (Text):

    /**
     * ManagedBean zur Hauptseite des Admins.
     *
     * Die Bean ist viewScope. Man beachte das Package ist javax.faces.view nicht javax.faces.bean
     *
     */
    @Named
    //@javax.enterprise.context.SessionScoped
    @javax.faces.view.ViewScoped
    public class AdminController implements java.io.Serializable {

        final Logger logger = LogManager.getLogger();
       
        private final FileServiceHelper helper;
        private DataModel shares;
       
        private int share_count;
       
        /**
         * Creates a new instance of AdminController
         */
        public AdminController () {
            logger.entry();
            helper = new FileServiceHelper ();
         }


    public DataModel getShares() {
            if (shares == null) {
                shares = new ListDataModel (helper.getAllActivatedShare() );
                share_count = shares.getRowCount();
                logger.info( share_count + " Shares");
            }
           
          return shares;
        }


    @PreDestroy
        public void disConnect () {
            if ( helper.getSession().isConnected() ) {
                helper.updateDb();
            }
        }
    }
     
    Diese Fehlersuchanwendung hat zwei JSF Seiten die über eigene Beans Daten holen und anzeigen. Via Links springe ich nun von der einen Seite auf die anderen - immer hin und her.

    Link auf Seite A
    Code (Text):

    /faces/protected/fileServiceAdmin.xhtml?faces-redirect=true
     
    Link auf Seite B
    Code (Text):

    /faces/protected/newShareAdmin.xhtml?faces-redirect=true
     
    Das holen der session funktioniert soweit einwandfrei bis dann plötzlich die session zu ist - Log File ganz unten. Dabei ist das Ereignis willkürlich mal nach zweimal hin und her, mal nach 10x hin und her.

    Hab das Ganze auf zwei separaten Umgebung versucht (Entwicklerrechner mit lokalem Server und Produktivumgebung). Passiert auf beiden, muss also an der Anwendung liegen, ich seh aber leider den Fehler nicht. Google gibt mir nur Ratschläge in Richtung Hibernate Connection, aber das sieht doch alles ok aus, oder?



    Code (Text):

    12:09:10 <init> INFO  fileservice.FileServiceHelper - new Hibernate Session: true
    12:09:10 getAllActivatedShare INFO  fileservice.FileServiceHelper - Abfrage aller aktiven Shares...
    12:09:10 getAllActivatedShare INFO  fileservice.FileServiceHelper - ...done
    12:09:10 getShares INFO  fileservice.controller.AdminController - 2 Shares
    12:09:15 <init> INFO  fileservice.FileServiceHelper - new Hibernate Session: true
    12:09:19 <init> INFO  fileservice.FileServiceHelper - new Hibernate Session: true
    12:09:19 getAllActivatedShare INFO  fileservice.FileServiceHelper - Abfrage aller aktiven Shares...
    12:09:19 getAllActivatedShare INFO  fileservice.FileServiceHelper - ...done
    12:09:19 getShares INFO  fileservice.controller.AdminController - 2 Shares
    12:09:21 <init> INFO  fileservice.FileServiceHelper - new Hibernate Session: true
    12:09:23 <init> INFO  fileservice.FileServiceHelper - new Hibernate Session: true
    12:09:23 getAllActivatedShare INFO  fileservice.FileServiceHelper - Abfrage aller aktiven Shares...
    12:09:23 getAllActivatedShare INFO  fileservice.FileServiceHelper - ...done
    12:09:23 getShares INFO  fileservice.controller.AdminController - 2 Shares
    12:09:24 <init> INFO  fileservice.FileServiceHelper - new Hibernate Session: true
    12:09:25 <init> INFO  fileservice.FileServiceHelper - new Hibernate Session: true
    12:09:25 getAllActivatedShare INFO  fileservice.FileServiceHelper - Abfrage aller aktiven Shares...
    12:09:25 getAllActivatedShare INFO  fileservice.FileServiceHelper - ...done
    12:09:25 getShares INFO  fileservice.controller.AdminController - 2 Shares
    12:09:26 <init> INFO  fileservice.FileServiceHelper - new Hibernate Session: true
    12:09:28 <init> INFO  fileservice.FileServiceHelper - new Hibernate Session: true
    12:09:28 getAllActivatedShare INFO  fileservice.FileServiceHelper - Abfrage aller aktiven Shares...
    12:09:28 getAllActivatedShare INFO  fileservice.FileServiceHelper - ...done
    12:09:28 getShares INFO  fileservice.controller.AdminController - 2 Shares
    12:09:29 <init> INFO  fileservice.FileServiceHelper - new Hibernate Session: true
    12:09:29 <init> INFO  fileservice.FileServiceHelper - new Hibernate Session: true
    12:09:29 getAllActivatedShare INFO  fileservice.FileServiceHelper - Abfrage aller aktiven Shares...
    12:09:29 getAllActivatedShare INFO  fileservice.FileServiceHelper - ...done
    12:09:29 getShares INFO  fileservice.controller.AdminController - 2 Shares
    12:09:30 <init> INFO  fileservice.FileServiceHelper - new Hibernate Session: true
    12:09:31 <init> INFO  fileservice.FileServiceHelper - new Hibernate Session: true
    12:09:31 getAllActivatedShare INFO  fileservice.FileServiceHelper - Abfrage aller aktiven Shares...
    12:09:31 getAllActivatedShare INFO  fileservice.FileServiceHelper - ...done
    12:09:31 getShares INFO  fileservice.controller.AdminController - 2 Shares
    12:09:32 <init> INFO  fileservice.FileServiceHelper - new Hibernate Session: true
    12:09:33 <init> INFO  fileservice.FileServiceHelper - new Hibernate Session: true
    12:09:33 getAllActivatedShare INFO  fileservice.FileServiceHelper - Abfrage aller aktiven Shares...
    12:09:33 getAllActivatedShare INFO  fileservice.FileServiceHelper - ...done
    12:09:33 getShares INFO  fileservice.controller.AdminController - 2 Shares
    12:09:33 <init> INFO  fileservice.FileServiceHelper - new Hibernate Session: true
    12:09:34 <init> INFO  fileservice.FileServiceHelper - new Hibernate Session: true
    12:09:34 getAllActivatedShare INFO  fileservice.FileServiceHelper - Abfrage aller aktiven Shares...
    12:09:34 getAllActivatedShare INFO  fileservice.FileServiceHelper - ...done
    12:09:34 getShares INFO  fileservice.controller.AdminController - 2 Shares
    12:09:35 <init> INFO  fileservice.FileServiceHelper - new Hibernate Session: true
    12:09:36 <init> INFO  fileservice.FileServiceHelper - new Hibernate Session: true
    12:09:36 getAllActivatedShare INFO  fileservice.FileServiceHelper - Abfrage aller aktiven Shares...
    12:09:36 getAllActivatedShare INFO  fileservice.FileServiceHelper - ...done
    12:09:36 getShares INFO  fileservice.controller.AdminController - 2 Shares
    12:09:36 <init> INFO  fileservice.FileServiceHelper - new Hibernate Session: true
    12:09:37 <init> INFO  fileservice.FileServiceHelper - new Hibernate Session: true
    12:09:37 getAllActivatedShare INFO  fileservice.FileServiceHelper - Abfrage aller aktiven Shares...
    12:09:37 getAllActivatedShare INFO  fileservice.FileServiceHelper - ...done
    12:09:37 getShares INFO  fileservice.controller.AdminController - 2 Shares
    12:09:38 <init> INFO  fileservice.FileServiceHelper - new Hibernate Session: true
    12:09:38 <init> INFO  fileservice.FileServiceHelper - new Hibernate Session: false
     
     
  2. Vielleicht hilft dir dieser Kurs hier weiter --> (hier klicken)
Die Seite wird geladen...

Session plötzlich closed? - Ähnliche Themen

Sessions sind null
Sessions sind null im Forum Web Tier
Entitybean direkt in Sessionscoped Bean referenzieren
Entitybean direkt in Sessionscoped Bean referenzieren im Forum Allgemeines EE
Vorhandenen Session-ID Cookie von Firefox, Chrome oder IE in Java verwenden
Vorhandenen Session-ID Cookie von Firefox, Chrome oder IE in Java verwenden im Forum Netzwerkprogrammierung
JSF / Primefaces Session handling
JSF / Primefaces Session handling im Forum Allgemeines EE
Fritz!Box Session ID holen
Fritz!Box Session ID holen im Forum Netzwerkprogrammierung
Thema: Session plötzlich closed?