IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Spring Java Discussion :

HibernateDaoSupport getHibernateTemplate retourne null [Data]


Sujet :

Spring Java

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut HibernateDaoSupport getHibernateTemplate retourne null
    Bonjour,

    Je tente (vainement) de configurer un dao avec Spring et Hibernate. Mais lorsque je demande le HibernateTemplate je reçoit un null :

    Voci mon dao :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    public class SpringHibernateStudentDao extends HibernateDaoSupport implements StudentDao {
     
        public Student getStudent(int id) throws DataAccessException {
            HibernateTemplate hibtemp = getHibernateTemplate();
            System.out.println("HibernateTemplate : " + hibtemp);
            Student student = (Student) hibtemp.get(Student.class, id);
            System.out.println("Student : " + student);
            return student;
        }
     
    }
    Mon manager, service :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    public class StudentManager {
     
        private DAOFactory daoFactory;
     
        public StudentManager(DAOFactory daoFactory) {
            this.daoFactory = daoFactory;
        }
     
        public Student getStudent(int id) {
            Student student = daoFactory.getStudentDao().getStudent(id);
            System.out.println("Student : " + student);
            return student;
        }
     
    }
    Mon applicationContext.xml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    ...
        <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
            <property name="driverClassName"><value>org.postgresql.Driver</value></property>
            <property name="url"><value>jdbc:postgresql://localhost:5432/MADB</value></property>
            <property name="username"><value>user</value></property>
            <property name="password"><value>admin</value></property>
        </bean>
     
        <!-- Hibernate SessionFactory -->
        <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
            <property name="dataSource"><ref local="dataSource"/></property>
            <property name="mappingResources">
                <list>
                    <value>Student.hbm.xml</value>
                </list>
            </property>
            <property name="hibernateProperties">
                <props>
                    <prop key="hibernate.dialect">org.hibernate.dialect.PostgreSQLDialect</prop>
                    <prop key="hibernate.hbm2ddl.auto">create</prop>
                </props>
            </property>
        </bean>
     
        <!-- Transaction manager for a single Hibernate SessionFactory (alternative to JTA) -->
        <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
            <property name="sessionFactory"><ref local="sessionFactory"/></property>
        </bean>
     
        <bean id="studentDAO" class="dao.impl.spring.hibernate.SpringHibernateStudentDao">
            <property name="sessionFactory"><ref local="sessionFactory"/></property>
        </bean>
     
        <bean id="daoFactory" class="dao.impl.spring.hibernate.SpringHibernateDaoFactory" />
     
        <bean id="studentManager" class="manager.StudentManager">
            <constructor-arg><ref bean="daoFactory" /></constructor-arg>
        </bean>
    ...
    Et ma classe d'entrée :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    public class StudentManagerTest {
     
        /** Creates a new instance of StudenteManagerTest */
        public StudentManagerTest() {
        }
     
        public static void main(String[] args) {
     
            ApplicationContext ctx = 
                    new FileSystemXmlApplicationContext("applicationContext.xml");
            StudentManager mngr = (StudentManager) ctx.getBean("studentManager");
     
            System.out.println("Student Manager :" + mngr);
            mngr.getStudent(3);
     
        }
    }
    et le résultat à la console (les logs d'hibrenate ne me sortent aucunes erreurs, que des TRACE, DEBUG et INFO) :
    Student Manager :manager.StudentManager@5e222e
    HibernateTemplate : null
    Exception in thread "main" java.lang.NullPointerException
    Je soupçone le fait de ne jamais injecter mon "HibernateTemplate" mais dans tous les fichiers de config que je trouve, je en vois jamais cette injection et je ne sais pas comment la créer.

    Merci de m'éclairer
    Dernière modification par Robin56 ; 05/08/2013 à 21h35. Motif: Ajout du préfixe

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Findcontrol retourne null
    Par Kiwi_violet dans le forum ASP.NET
    Réponses: 1
    Dernier message: 13/04/2007, 12h21
  2. TTF_OpenFont() retournant NULL
    Par FabaCoeur dans le forum SDL
    Réponses: 4
    Dernier message: 11/04/2007, 16h30
  3. GetDC retourne NULL Oo
    Par Groove dans le forum OpenGL
    Réponses: 3
    Dernier message: 02/03/2007, 17h46
  4. Réponses: 3
    Dernier message: 02/03/2007, 11h41
  5. opérateur + dans SELECT retourne null ?
    Par david_chardonnet dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 19/01/2007, 10h47

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo