java/HibernateDemo1/HibernateDemo1-war/src/java/cz/frantovo/hibernateDemo1/SeznamCilu.java
author František Kučera <franta-hg@frantovo.cz>
Sat, 14 Mar 2009 23:15:33 +0100
changeset 4 58552ccfe6c8
permissions -rw-r--r--
Hibernate JPA funguje! Na webu se zobrazuje seznam cílů načtený z databáze: JSP → Webová beana → EJB → JPA → Hibernate → PostgreSQL
Jen pozor na správné typy: typ v mapovacím .hbm.xml souboru musí odpovídat typu v databázi, jinak by se aplikace ani nedeploynula
a zároveň musíme mít stejný typ v DTO – jinak aplikace padá (při otevření stránky).
     1 package cz.frantovo.hibernateDemo1;
     2 
     3 import cz.frantovo.hibernateDemo1.CilDAORemote;
     4 import cz.frantovo.hibernateDemo1.dto.Cil;
     5 import java.util.Collection;
     6 import java.util.logging.Level;
     7 import java.util.logging.Logger;
     8 import javax.naming.Context;
     9 import javax.naming.InitialContext;
    10 import javax.naming.NamingException;
    11 
    12 /**
    13  * Webová Beana pro zobrazení seznamu cílů.
    14  * Volá EJB, které tento seznam získá z databáze
    15  * @author fiki
    16  */
    17 public class SeznamCilu {
    18 
    19     private CilDAORemote cilDAO;
    20     private static final Logger log = Logger.getLogger(SeznamCilu.class.getSimpleName());
    21 
    22     public Collection<Cil> getCile() {
    23         return lookupCilDAO().getCile();
    24     }
    25 
    26     private CilDAORemote lookupCilDAO() {
    27         if (cilDAO == null) {
    28             try {
    29                 Context c = new InitialContext();
    30                 cilDAO = (CilDAORemote) c.lookup("cz.frantovo.hibernateDemo1.CilDAORemote");
    31             } catch (NamingException e) {
    32                 log.log(Level.SEVERE, "Chyba při hledání CilDAO", e);
    33                 throw new RuntimeException(e);
    34             }
    35         }
    36         return cilDAO;
    37     }
    38 }