Bonjour,
J'ai un problème pour injecter les beans correctement.
Le package ma.tpmichemin._model contient 4 fichiers :
Article.java
Marque.java
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79 package ma.tpmichemin._model; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.FetchType; import javax.persistence.GeneratedValue; import static javax.persistence.GenerationType.IDENTITY; import javax.persistence.Id; import javax.persistence.OneToOne; import javax.persistence.Table; @Entity @Table(name = "article", catalog = "tp_michemin") public class Article implements java.io.Serializable { private Integer idArticle; private String libArticle; private String descArticle; private Integer prixArticle; private Marque marque; public Article() { } public Article(String libArticle, String descArticle, Integer prixArticle, Marque marque) { this.libArticle = libArticle; this.descArticle = descArticle; this.prixArticle = prixArticle; this.marque = marque; } @Id @GeneratedValue(strategy = IDENTITY) @Column(name = "ID_ARTICLE", unique = true, nullable = false) public Integer getIdArticle() { return this.idArticle; } public void setIdArticle(Integer idArticle) { this.idArticle = idArticle; } @Column(name = "LIB_ARTICLE", length = 30) public String getLibArticle() { return this.libArticle; } public void setLibArticle(String libArticle) { this.libArticle = libArticle; } @Column(name = "DESC_ARTICLE", length = 100) public String getDescArticle() { return this.descArticle; } public void setDescArticle(String descArticle) { this.descArticle = descArticle; } @Column(name = "PRIX_ARTICLE") public Integer getPrixArticle() { return this.prixArticle; } public void setPrixArticle(Integer prixArticle) { this.prixArticle = prixArticle; } @OneToOne(fetch = FetchType.LAZY, mappedBy = "article") public Marque getMarque() { return this.marque; } public void setMarque(Marque marque) { this.marque = marque; } }
Article.hbm.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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64 package ma.tpmichemin._model; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.FetchType; import javax.persistence.GeneratedValue; import javax.persistence.Id; import javax.persistence.OneToOne; import javax.persistence.PrimaryKeyJoinColumn; import javax.persistence.Table; import org.hibernate.annotations.GenericGenerator; import org.hibernate.annotations.Parameter; @Entity @Table(name = "marque", catalog = "tp_michemin") public class Marque implements java.io.Serializable { private Integer idMarque; private Article article; private String libMarque; public Marque() { } public Marque(Article article) { this.article = article; } public Marque(Article article, String libMarque) { this.article = article; this.libMarque = libMarque; } @GenericGenerator(name = "generator", strategy = "foreign", parameters = @Parameter(name = "property", value = "article")) @Id @GeneratedValue(generator = "generator") @Column(name = "ID_MARQUE", unique = true, nullable = false) public Integer getIdMarque() { return this.idMarque; } public void setIdMarque(Integer idMarque) { this.idMarque = idMarque; } @OneToOne(fetch = FetchType.LAZY) @PrimaryKeyJoinColumn public Article getArticle() { return this.article; } public void setArticle(Article article) { this.article = article; } @Column(name = "LIB_MARQUE", length = 30) public String getLibMarque() { return this.libMarque; } public void setLibMarque(String libMarque) { this.libMarque = libMarque; } }
Le package ma.tpmichemin.dao.Article contient 2 fichiers :
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
40
41 <?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <!-- Generated 30 juin 2008 08:03:25 by Hibernate Tools 3.4.0.CR1 --> <hibernate-mapping> <class name="ma.tpmichemin._model.Article" table="article" catalog="tp_michemin"> <id name="idArticle" type="java.lang.Integer"> <column name="ID_ARTICLE" /> <generator class="identity" /> </id> <property name="libArticle" type="string"> <column name="LIB_ARTICLE" length="30" /> </property> <property name="descArticle" type="string"> <column name="DESC_ARTICLE" length="100" /> </property> <property name="prixArticle" type="java.lang.Integer"> <column name="PRIX_ARTICLE" /> </property> <one-to-one name="marque" class="ma.tpmichemin._model.Marque"></one-to-one> </class> </hibernate-mapping> [/QUOTE]Marque.hbm.xml [quote]<?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <!-- Generated 30 juin 2008 08:03:25 by Hibernate Tools 3.4.0.CR1 --> <hibernate-mapping> <class name="ma.tpmichemin._model.Marque" table="marque" catalog="tp_michemin"> <id name="idMarque" type="java.lang.Integer"> <column name="ID_MARQUE" /> <generator class="foreign"> <param name="property">article</param> </generator> </id> <one-to-one name="article" class="ma.tpmichemin._model.Article" constrained="true"></one-to-one> <property name="libMarque" type="string"> <column name="LIB_MARQUE" length="30" /> </property> </class> </hibernate-mapping>
IArticle.javaArticleDao.java
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 package ma.tpmichemin.dao.Article; import java.util.List; import ma.tpmichemin._model.Article; public interface IArticle { public boolean Ajouter(Article m) throws Exception; public boolean modifier(int id,Article m) throws Exception; public boolean Supprimer(int id) throws Exception; public List<Article> Rechercher(Article m); public List<Article> Lister(); }le package ma.tpmichemin.metier.Article contient 2 fichiers:
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127 package ma.tpmichemin.dao.Article; import java.util.List; import ma.tpmichemin._model.Article; import org.hibernate.Criteria; import org.hibernate.Query; import org.hibernate.Session; import org.hibernate.Transaction; import org.hibernate.criterion.Example; import org.springframework.orm.hibernate3.support.HibernateDaoSupport; import org.springframework.stereotype.Repository; @Repository public class ArticleDao extends HibernateDaoSupport implements IArticle { // public ArticleDao() { // // TODO Auto-generated constructor stub // } @Override public boolean Ajouter(Article m) throws Exception { logger.info("Ajouter Article" + m.getLibArticle() + ""); Session session = getHibernateTemplate().getSessionFactory() .getCurrentSession(); Transaction tx = null; try { tx = session.beginTransaction(); session.save(m); tx.commit(); session.close(); } catch (Exception e) { if (tx != null) { tx.rollback(); return false; } throw e; } return true; // try { // getHibernateTemplate().save(m); // }catch (Exception e) { // return false; // } // return true; } @Override public boolean modifier(int id, Article m) throws Exception { logger.info("modifier Article" + m.getLibArticle() + ""); Session session = getHibernateTemplate().getSessionFactory() .getCurrentSession(); Transaction tx = null; try { tx = session.beginTransaction(); Article article=(Article)session.load(Article.class,new Integer(id)); if(m.getLibArticle()!=null) article.setLibArticle(m.getLibArticle()); if(m.getDescArticle()!=null) article.setDescArticle(m.getDescArticle()); session.update(article); tx.commit(); session.close(); } catch (Exception e) { if (tx != null) { tx.rollback(); return false; } throw e; } return true; } @Override public boolean Supprimer(int id) throws Exception { logger.info("Supprimer Article"); Session session = getHibernateTemplate().getSessionFactory() .getCurrentSession(); Transaction tx = null; try { tx = session.beginTransaction(); Article article=(Article)session.load(Article.class,new Integer(id)); session.delete(article); tx.commit(); session.close(); } catch (Exception e) { if (tx != null) { tx.rollback(); return false; } throw e; } return true; } @SuppressWarnings("unchecked") @Override public List<Article> Rechercher(Article m) { Session session = getHibernateTemplate().getSessionFactory() .getCurrentSession(); Criteria crit=session.createCriteria(Article.class); crit.add(Example.create(m)); return ((List<Article>)crit.list()); } @SuppressWarnings("unchecked") @Override public List<Article> Lister() { System.out.println("debut lister dao"); Session session =getSessionFactory().getCurrentSession(); Query q=session.createQuery("from Article"); //return getHibernateTemplate().find(q); System.out.println("fin lister dao"); return (List<Article>)q.list(); } }
IArticleManager.java
ArticleManager.java
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 package ma.tpmichemin.metier.Article; import java.util.List; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; import ma.tpmichemin._model.Article; @Transactional (readOnly=false, propagation=Propagation.REQUIRED) public interface IArticleManager { public boolean Ajouter(Article m) throws Exception; public boolean modifier(int id,Article m) throws Exception; public boolean Supprimer(int id) throws Exception; public List<Article> Rechercher(Article m); public List<Article> Lister(); }
le package ma.tpmichemin.presentation.Article contient l'action struts 2:
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
40
41
42
43
44
45
46
47
48
49
50
51
52 package ma.tpmichemin.metier.Article; import java.util.List; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import ma.tpmichemin._model.Article; import ma.tpmichemin.dao.Article.ArticleDao; import ma.tpmichemin.dao.Article.IArticle; @Service("article") public class ArticleManager implements IArticleManager{ @Autowired private IArticle article; public void setArticle(IArticle article) { this.article = article; } public IArticle getArticle() { return article; } @Override public boolean Ajouter(Article m) throws Exception { return article.Ajouter(m); } @Override public boolean modifier(int id, Article m) throws Exception { return article.modifier(id, m); } @Override public boolean Supprimer(int id) throws Exception { return article.Supprimer(id); } @Override public List<Article> Rechercher(Article m) { return article.Rechercher(m); } @Override public List<Article> Lister() { System.out.println("debut lister manager"); System.out.println("taille liste"+article.Lister().size()); return article.Lister(); } }
ArticleAction.java
le package pl contient :
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116 package ma.tpmichemin.presentation.Article; import java.util.List; import org.springframework.beans.factory.annotation.Autowired; import com.opensymphony.xwork2.ModelDriven; import ma.tpmichemin._model.Article; import ma.tpmichemin._model.Marque; import ma.tpmichemin.metier.Article.ArticleManager; import ma.tpmichemin.metier.Article.IArticleManager; import ma.tpmichemin.presentation.service.BaseAction; public class ArticleAction extends BaseAction { private String libArticle; private String descArticle; private Integer prixArticle; private Marque marque; private List<Article> listArticle; @Autowired private IArticleManager articlemanager; public void setLibArticle(String libArticle) { this.libArticle = libArticle; } public String getDescArticle() { return descArticle; } public void setDescArticle(String descArticle) { this.descArticle = descArticle; } public Integer getPrixArticle() { return prixArticle; } public void setPrixArticle(Integer prixArticle) { this.prixArticle = prixArticle; } public Marque getMarque() { return marque; } public void setMarque(Marque marque) { this.marque = marque; } public String Ajouter() { try { Article a = new Article(); a.setDescArticle(descArticle); a.setLibArticle(libArticle); a.setMarque(marque); a.setPrixArticle(prixArticle); articlemanager.Ajouter(a); } catch (Exception e) { return "erreur"; } return "success"; } public String Modifier() { try { } catch (Exception e) { return "erreur"; } return "success"; } public String Rechercher() { try { } catch (Exception e) { return "erreur"; } return "success"; } public String Supprimer() { try { } catch (Exception e) { return "erreur"; } return "success"; } public String Lister(){ System.out.println("debut Liste de ArticleAction"); //articlemanager=new ArticleManager(); if(articlemanager==null) System.out.println("articlemanager est null"); else { System.out.println("non null "+articlemanager.toString()); if((articlemanager.Lister()).size()>0) { listArticle=articlemanager.Lister(); System.out.println("la taille de la liste d'article:"+listArticle.size()); } } return "success"; } }
InitConfig.java (il me sert dans index.jsp pr lancer l'action)
la partie importante de mon fichier struts.xml :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 package pl; public class InitConfig { public String execute(){ return "success"; } }
Mon fichier ApplicationContextDAO.xml
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <package name="pl" namespace="/" extends="struts-default"> <action name="execute" class="pl.InitConfig"> <result name="success" type="redirect">lister.action</result> </action> <action name="lister" class="ma.tpmichemin.presentation.Article.ArticleAction" method="Lister"> <result name="success">/WEB-INF/vues/VuesArticle/ListerArticle.jsp</result> </action> </package>
le Web.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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans <a href="http://www.springframework.org/schema/beans/spring-beans-2.5.xsd" target="_blank">http://www.springframework.org/schem...-beans-2.5.xsd</a> <a href="http://www.springframework.org/schema/context" target="_blank">http://www.springframework.org/schema/context</a> http://www.springframework.org/schema/context/spring-context-2.5.xsd"> <context:component-scan base-package="ma.tpmichemin.dao.Article" /> <!-- Application context DAO layer --> <!-- General --> <bean id="article" class="ma.tpmichemin.dao.Article.ArticleDao"> <property name="hibernateTemplate"> <ref bean="hibernateTemplate" /> </property> </bean> <bean id="marque" class="ma.tpmichemin.dao.Marque.MarqueDao"> <property name="hibernateTemplate"> <ref bean="hibernateTemplate" /> </property> </bean> <!-- Hibernate Template --> <bean id="hibernateTemplate" class="org.springframework.orm.hibernate3.HibernateTemplate"> <property name="sessionFactory"> <ref bean="sessionFactory" /> </property> </bean> <!-- --> <!-- sessionFactory --> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="configLocation"> <value>classpath:hibernate.cfg.xml</value> </property> <!-- <property name="configurationClass"> <value>org.hibernate.cfg.AnnotationConfiguration</value> </property> --> <property name="mappingResources"> <list> <value>ma/tpmichemin/_model/Article.hbm.xml</value> <value>ma/tpmichemin/_model/Marque.hbm.xml</value> </list> </property> </bean> <!-- Gestion des transactions --> <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"> <property name="sessionFactory" ref="sessionFactory" /> </bean> <bean id="transactionProxy" abstract="true" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean"> <property name="transactionManager"> <ref bean="transactionManager" /> </property> <property name="transactionAttributes"> <props> <prop key="insert*">PROPAGATION_REQUIRED</prop> <prop key="update*">PROPAGATION_REQUIRED</prop> <prop key="save*">PROPAGATION_REQUIRED</prop> <prop key="*">PROPAGATION_REQUIRED, readOnly</prop> </props> </property> </bean> <bean id="articlemanager" class="ma.tpmichemin.metier.Article.ArticleManager"> <property name="article"> <ref bean="article" /> </property> </bean> <bean id="marquemanager" class="ma.tpmichemin.metier.Marque.MarqueManager"> <property name="marque"> <ref bean="marque" /> </property> </bean> <bean id="IArticleManagerTarget" class="ma.tpmichemin.metier.Article.ArticleManager"> <property name="article"> <ref bean="article" /> </property> </bean> <bean id="IArticleManager" parent="transactionProxy"> <property name="target"> <ref bean="IArticleManagerTarget" /> </property> <property name="transactionAttributeSource"> <bean class="org.springframework.transaction.annotation.AnnotationTransactionAttributeSource" /> </property> </bean> <bean id="IMarqueManagerTarget" class="ma.tpmichemin.metier.Marque.MarqueManager"> <property name="marque"> <ref bean="marque" /> </property> </bean> <bean id="IMarqueManager" parent="transactionProxy"> <property name="target"> <ref bean="IMarqueManagerTarget" /> </property> <property name="transactionAttributeSource"> <bean class="org.springframework.transaction.annotation.AnnotationTransactionAttributeSource" /> </property> </bean> </beans> <!-- Remarque:pour les annotations: <property name="configurationClass"> <value>org.hibernate.cfg.AnnotationConfiguration </value> </property> -->
La page index.jsp :
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 <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5"> <display-name>TP_MICHEMIN</display-name> <!-- Chargement des fichiers de spring --> <context-param> <param-name>contextConfigLocation</param-name> <param-value> <!--/WEB-INF/ApplicationContextMetier.xml /WEB-INF/ApplicationContext.xml --> /WEB-INF/ApplicationContextDao.xml </param-value> </context-param> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <!-- fin de chargement --> <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class> </filter> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>*.action</url-pattern> </filter-mapping> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> </web-app>
La vue ListeArticle.jsp :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <META HTTP-EQUIV="Refresh" CONTENT="0;URL=execute.action"> <title>Insert title here</title> </head> <body> </body> </html>
Après exécution je reçois :
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
40 <?xml version="1.0" encoding="ISO-8859-1" ?> <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <%@ taglib prefix="s" uri="/struts-tags" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /> <title>Lister Article</title> </head> <body> <center><h2 style="FONT-SIZE: x-large; FONT-FAMILY: 'Times New Roman';"><b><i><u style="height:25px;text-align:center;color:#0080FF;width:25px;border-style:solid;border-color:#0080C0;margin:10px;border-width:thick;padding:10px;">Liste des articles</u></i></b></h2></center> <s:if test="listArticle.size() > 0"> <table border="2px" cellpadding="12px" style="FONT-WEIGHT: bold; FONT-SIZE: large; FONT-FAMILY: 'Times New Roman';"> <tr> <th style="FONT-STYLE: italic; background-color:#0080FF;">Libellé Article</th> <th style="FONT-STYLE: italic; background-color:#0080FF;">Description</th> <th style="FONT-STYLE: italic; background-color:#0080FF;">Prix</th> <th style="FONT-STYLE: italic; background-color:#0080FF;">Marque</th> </tr> <s:iterator value="listArticle"> <tr> <td><s:property value="libArticle"/></td> <td><s:property value="descArticl" /></td> <td><s:property value="prixArticle" /></td> <td><s:property value="marque" /></td> </tr> </s:iterator> </table> </s:if> <s:else> <center><h2><i><b style="FONT-FAMILY: 'Times New Roman'; FONT-SIZE: xx-large; COLOR: #ff0080;">La liste ne contient pas d'articles</b></i></h2></center> </s:else> <br/> <br/> </body> </html>
Quelqu'un saurait-il m'expliquer d'où peut venir le problème ?4 janv. 2012 01:45:01 org.apache.catalina.core.AprLifecycleListener init
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\Java\jre7\bin;.;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:/Program Files/Java/jdk1.7.0/bin/../jre/bin/client;C:/Program Files/Java/jdk1.7.0/bin/../jre/bin;C:/Program Files/Java/jdk1.7.0/bin/../jre/lib/i386;C:\Program Files\Java\jdk1.7.0\bin;C:\PROGRA~1\RATIONAL\RATION~1\NUTCROOT\bin;C:\PROGRA~1\RATIONAL\RATION~1\NUTCROOT\bin\x11;C:\PROGRA~1\RATIONAL\RATION~1\NUTCROOT\mksnt;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\Rational\common;C:\Program Files\Rational\ClearQuest;C:\Program Files\Rational\Rose\TopLink\;C:\Program Files\Rational\Rational Test;C:\Program Files\Nmap;C:\Program Files\Nmap;C:\eclipse;
4 janv. 2012 01:45:02 org.apache.tomcat.util.digester.SetPropertiesRule begin
WARNING: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:TP_MICHEMIN82' did not find a matching property.
4 janv. 2012 01:45:02 org.apache.tomcat.util.digester.SetPropertiesRule begin
WARNING: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:TP_MICHEMIN' did not find a matching property.
4 janv. 2012 01:45:02 org.apache.coyote.http11.Http11Protocol init
INFO: Initialisation de Coyote HTTP/1.1 sur http-8080
4 janv. 2012 01:45:02 org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 883 ms
4 janv. 2012 01:45:02 org.apache.catalina.core.StandardService start
INFO: Démarrage du service Catalina
4 janv. 2012 01:45:02 org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/6.0.29
4 janv. 2012 01:45:02 org.apache.catalina.core.ApplicationContext log
INFO: Initializing Spring root WebApplicationContext
4 janv. 2012 01:45:02 org.springframework.web.context.ContextLoader initWebApplicationContext
INFO: Root WebApplicationContext: initialization started
4 janv. 2012 01:45:03 org.springframework.context.support.AbstractApplicationContext prepareRefresh
INFO: Refreshing org.springframework.web.context.support.XmlWebApplicationContext@4e63f9: display name [Root WebApplicationContext]; startup date [Wed Jan 04 01:45:03 WET 2012]; root of context hierarchy
4 janv. 2012 01:45:03 org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
INFO: Loading XML bean definitions from ServletContext resource [/WEB-INF/ApplicationContextDao.xml]
4 janv. 2012 01:45:03 org.springframework.context.support.AbstractApplicationContext obtainFreshBeanFactory
INFO: Bean factory for application context [org.springframework.web.context.support.XmlWebApplicationContext@4e63f9]: org.springframework.beans.factory.support.DefaultListableBeanFactory@823177
4 janv. 2012 01:45:03 org.springframework.beans.factory.support.DefaultListableBeanFactory preInstantiateSingletons
INFO: Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@823177: defining beans [articleDao,org.springframework.context.annotation.internalPersistenceAnnotationProcessor,org.springframework.context.annotation.internalCommonAnnotationProcessor,org.springframework.context.annotation.internalAutowiredAnnotationProcessor,org.springframework.context.annotation.internalRequiredAnnotationProcessor,article,marque,hibernateTemplate,sessionFactory,transactionManager,transactionProxy,articlemanager,marquemanager,IArticleManagerTarget,IArticleManager,IMarqueManagerTarget,IMarqueManager]; root of factory hierarchy
4 janv. 2012 01:45:04 org.springframework.beans.factory.support.DefaultSingletonBeanRegistry destroySingletons
INFO: Destroying singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@823177: defining beans [articleDao,org.springframework.context.annotation.internalPersistenceAnnotationProcessor,org.springframework.context.annotation.internalCommonAnnotationProcessor,org.springframework.context.annotation.internalAutowiredAnnotationProcessor,org.springframework.context.annotation.internalRequiredAnnotationProcessor,article,marque,hibernateTemplate,sessionFactory,transactionManager,transactionProxy,articlemanager,marquemanager,IArticleManagerTarget,IArticleManager,IMarqueManagerTarget,IMarqueManager]; root of factory hierarchy
4 janv. 2012 01:45:04 org.springframework.web.context.ContextLoader initWebApplicationContext
SEVERE: Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'articleDao' defined in file [C:\workspaces\.metadata\.plugins\org.eclipse.wst.server.core\tmp3\wtpwebapps\TP_MICHEMIN\WEB-INF\classes\ma\tpmichemin\dao\Article\ArticleDao.class]: Invocation of init method failed; nested exception is java.lang.IllegalArgumentException: 'sessionFactory' or 'hibernateTemplate' is required
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1338)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:473)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
at java.security.AccessController.doPrivileged(Native Method)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:429)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:728)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:380)
at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:255)
at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:199)
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:45)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4135)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4630)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:785)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:445)
at org.apache.catalina.core.StandardService.start(StandardService.java:519)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalina.java:581)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
Caused by: java.lang.IllegalArgumentException: 'sessionFactory' or 'hibernateTemplate' is required
at org.springframework.orm.hibernate3.support.HibernateDaoSupport.checkDaoConfig(HibernateDaoSupport.java:117)
at org.springframework.dao.support.DaoSupport.afterPropertiesSet(DaoSupport.java:44)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1369)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1335)
... 30 more
4 janv. 2012 01:45:04 org.apache.catalina.core.StandardContext listenerStart
SEVERE: Exception lors de l'envoi de l'évènement contexte initialisé (context initialized) à l'instance de classe d'écoute (listener) org.springframework.web.context.ContextLoaderListener
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'articleDao' defined in file [C:\workspaces\.metadata\.plugins\org.eclipse.wst.server.core\tmp3\wtpwebapps\TP_MICHEMIN\WEB-INF\classes\ma\tpmichemin\dao\Article\ArticleDao.class]: Invocation of init method failed; nested exception is java.lang.IllegalArgumentException: 'sessionFactory' or 'hibernateTemplate' is required
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1338)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:473)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
at java.security.AccessController.doPrivileged(Native Method)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:429)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:728)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:380)
at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:255)
at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:199)
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:45)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4135)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4630)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:785)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:445)
at org.apache.catalina.core.StandardService.start(StandardService.java:519)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalina.java:581)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
Caused by: java.lang.IllegalArgumentException: 'sessionFactory' or 'hibernateTemplate' is required
at org.springframework.orm.hibernate3.support.HibernateDaoSupport.checkDaoConfig(HibernateDaoSupport.java:117)
at org.springframework.dao.support.DaoSupport.afterPropertiesSet(DaoSupport.java:44)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1369)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1335)
... 30 more
4 janv. 2012 01:45:04 org.apache.catalina.core.StandardContext start
SEVERE: Error listenerStart
4 janv. 2012 01:45:04 org.apache.catalina.core.StandardContext start
SEVERE: Erreur de démarrage du contexte [/TP_MICHEMIN] suite aux erreurs précédentes
4 janv. 2012 01:45:04 org.apache.catalina.core.ApplicationContext log
INFO: Closing Spring root WebApplicationContext
4 janv. 2012 01:45:04 org.apache.catalina.loader.WebappClassLoader clearReferencesJdbc
SEVERE: The web application [/TP_MICHEMIN] registered the JBDC driver [com.mysql.jdbc.Driver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.
log4j:WARN No appenders could be found for logger (org.springframework.web.context.ContextLoader).
log4j:WARN Please initialize the log4j system properly.
Merci d'avance pour votre aide.
Partager