J'ai l'erreur suivante:nested transaction not suppored
Bean
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 DAO: package project.metier.dao; import java.util.List; import org.hibernate.Criteria; import org.hibernate.Query; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.Transaction; import org.hibernate.criterion.Expression; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Repository; import project.metier.mouse.TypeCarburant; import project.util.HibernateUtil; @Repository("iTypeCarburantHome") public class ITypeCarburantImpl implements ITypeCarburantHome { /* private SessionFactory sessionFactory; @Autowired public void setSessionFactory(SessionFactory factory){ sessionFactory=factory; }*/ @Override public void addTypeCarburant(TypeCarburant tc) { Session session=HibernateUtil.getSessionFactory().getCurrentSession(); session.beginTransaction(); session.save(tc); session.getTransaction().commit(); } @Override public TypeCarburant getTypeCarburant(int idc) { Session session=HibernateUtil.getSessionFactory().getCurrentSession(); session.beginTransaction(); Criteria crit=session.createCriteria(TypeCarburant.class); crit.add(Expression.eq("TypeCarburant", idc)); Object o=crit.uniqueResult(); if(o==null) throw new RuntimeException(" intruvable"); TypeCarburant t=(TypeCarburant) o; return t; } @Override public List<TypeCarburant> getAlltype() { Session session=HibernateUtil.getSessionFactory().getCurrentSession(); session.getTransaction().begin(); Query req=session.createQuery("select r from TypeCarburant r"); return (req.list()); } @Override public List<TypeCarburant> getTypeBy(String mc) { Session session=HibernateUtil.getSessionFactory().getCurrentSession(); session.beginTransaction(); Query req=session.createQuery("select t from TypeCarburant t where t.libelle like :x"); req.setParameter("x","%"+mc+"%"); return req.list(); } @Override public List<TypeCarburant> getTypeByMC(String mc) { Session session=HibernateUtil.getSessionFactory().getCurrentSession(); session.beginTransaction(); Query req=session.createQuery("select t from TypeCarburant t where t.libelle like :x"); req.setParameter("x","%"+mc+"%"); return req.list(); } @Override public TypeCarburant getTypeById(int idc) { Session session=HibernateUtil.getSessionFactory().getCurrentSession(); session.beginTransaction(); TypeCarburant t1=(TypeCarburant) session.get(TypeCarburant.class, idc); return t1; } @Override public void deleteTypeCarburant(TypeCarburant typeCarburant) { // TODO Auto-generated method stub Session session = HibernateUtil.getSessionFactory().getCurrentSession(); Transaction transaction = session.beginTransaction(); try { session.delete(typeCarburant); transaction.commit(); session.clear(); } catch (Exception e) { e.printStackTrace(); transaction.rollback(); // TODO: handle exception } }le Formulaire
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 package project.beans; import java.util.List; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Scope; import org.springframework.stereotype.Component; import project.metier.mouse.TypeCarburant; import project.service.TypeCarburantService; @Component @Scope //@ManagedBean(name="carb") public class TypeCarburantBean { private TypeCarburant typeCarburant; private TypeCarburantService carburantService; public TypeCarburantBean(){ typeCarburant=new TypeCarburant(); } public List<TypeCarburant> getAlltype(){ return carburantService.getAlltype(); } public void addTypeCarburant(){ carburantService.addTypeCarburant(typeCarburant); } public TypeCarburant getTypeCarburant() { return typeCarburant; } public void setTypeCarburant(TypeCarburant typeCarburant) { this.typeCarburant = typeCarburant; } @Autowired public void setCarburantService(TypeCarburantService carburantService) { this.carburantService = carburantService; } }
le code de l'erreur:<!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"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:p="http://primefaces.org/ui">
<ui:composition template="/Views/Template/common.xhtml">
<ui:define name="Edition">
<h:form id="form">
<p:growl id="msgs" />
<p:panel header="Nouveau">
<h:panelGrid columns="2" id="grid">
<h:outputLabel value="ID : *" for="txt_id" />
<p:inputText id="txt_id" value="#{typeCarburantBean.typeCarburant.idCarburant}"
required="true" />
<h:outputLabel value="Libelle : *" for="txt_lib" />
<p:inputText id="txt_lib" value="#{typeCarburantBean.typeCarburant.libelle}"
required="true" />
<h:outputLabel value="prix : *" for="txt_prix" />
<p:inputText id="txt_prix" required="true"
value="#{typeCarburantBean.typeCarburant.prixLitre}" />
<p:commandButton value="Reset" type="reset" />
<p:commandButton id="btn_add" value="AJOUT"
action="#{typeCarburantBean.addTypeCarburant}" />
</h:panelGrid>
</p:panel>
</h:form>
</ui:define>
<ui:define name="Consultation">
<h:form>
<p:outputPanel>
<h:outputText value="Search:" style="Height:30px"/>
<p:inputText id="globalFilter" onkeyup="carsTable.filter()" style="width:150px" />
</p:outputPanel>
<p:dataTable id="dataTable" var="typeCarburant" value="#{typeCarburantBean.alltype}" sortMode="single" rows="5" paginator="true">
<p:column sortBy="#{typeCarburant.idCarburant}" headerText="ID" >
<h:outputText value="#{typeCarburant.idCarburant}" />
</p:column>
<p:column sortBy="#{typeCarburant.libelle}" headerText="Libelle">
<h:outputText value="#{typeCarburant.libelle}" />
</p:column>
<p:column sortBy="#{typeCarburant.prixLitre}" headerText="prix par litre">
<h:outputText value="#{typeCarburant.prixLitre}" />
</p:column>
</p:dataTable>
</h:form>
</ui:define>
</ui:composition>
</html>
09:57:07,942 WARNING [javax.enterprise.resource.webcontainer.jsf.application] (http-localhost-127.0.0.1-8080-1) JSF1064 : Impossible de localiser ou de servir une ressource, global.css, depuis la bibliothèque css.
09:57:08,027 INFO [org.hibernate.cfg.Configuration] (http-localhost-127.0.0.1-8080-1) HHH000043: Configuring from resource: /hibernate.cfg.xml
09:57:08,030 INFO [org.hibernate.cfg.Configuration] (http-localhost-127.0.0.1-8080-1) HHH000040: Configuration resource: /hibernate.cfg.xml
09:57:08,132 WARN [org.hibernate.internal.util.xml.DTDEntityResolver] (http-localhost-127.0.0.1-8080-1) HHH000223: Recognized obsolete hibernate namespace http://hibernate.sourceforge.net/. Use namespace http://www.hibernate.org/dtd/ instead. Refer to Hibernate 3.6 Migration Guide!
09:57:08,189 INFO [org.hibernate.cfg.Configuration] (http-localhost-127.0.0.1-8080-1) HHH000041: Configured SessionFactory: null
09:57:08,196 INFO [org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl] (http-localhost-127.0.0.1-8080-1) HHH000402: Using Hibernate built-in connection pool (not for production use!)
09:57:08,200 INFO [org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl] (http-localhost-127.0.0.1-8080-1) HHH000115: Hibernate connection pool size: 20
09:57:08,204 INFO [org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl] (http-localhost-127.0.0.1-8080-1) HHH000006: Autocommit mode: false
09:57:08,209 INFO [org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl] (http-localhost-127.0.0.1-8080-1) HHH000401: using driver [com.microsoft.sqlserver.jdbc.SQLServerDriver] at URL [jdbc:sqlserver://SACKYHARREY-HP\MSSQLSERVER2;DatabaseName=park_auto;SelectMethod=cursor]
09:57:08,215 INFO [org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl] (http-localhost-127.0.0.1-8080-1) HHH000046: Connection properties: {user=sacky, password=****}
09:57:08,320 INFO [org.hibernate.dialect.Dialect] (http-localhost-127.0.0.1-8080-1) HHH000400: Using dialect: org.hibernate.dialect.SQLServerDialect
09:57:08,836 INFO [org.hibernate.engine.transaction.internal.TransactionFactoryInitiator] (http-localhost-127.0.0.1-8080-1) HHH000399: Using default transaction strategy (direct JDBC transactions)
09:57:08,841 INFO [org.hibernate.hql.internal.ast.ASTQueryTranslatorFactory] (http-localhost-127.0.0.1-8080-1) HHH000397: Using ASTQueryTranslatorFactory
09:57:10,035 INFO [stdout] (http-localhost-127.0.0.1-8080-1) Hibernate: select typecarbur0_.ID_CARBURANT as ID1_13_, typecarbur0_.LIBELLE as LIBELLE2_13_, typecarbur0_.PRIX_LITRE as PRIX3_13_ from park_auto.dbo.TYPE_CARBURANT typecarbur0_
09:57:10,425 SEVERE [javax.enterprise.resource.webcontainer.jsf.application] (http-localhost-127.0.0.1-8080-1) Error Rendering View[/Views/Carburant/FuelEdit.xhtml]: javax.el.ELException: /Views/Carburant/FuelEdit.xhtml @38,138 value="#{typeCarburantBean.alltype}": org.hibernate.TransactionException: nested transactions not supported
at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:114) [jsf-impl-2.1.5-jbossorg-1.jar:2.1.5-SNAPSHOT]
at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:194) [jboss-jsf-api_2.1_spec-2.0.0.Final.jar:2.0.0.Final]
at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:182) [jboss-jsf-api_2.1_spec-2.0.0.Final.jar:2.0.0.Final]
at javax.faces.component.UIData.getValue(UIData.java:731) [jboss-jsf-api_2.1_spec-2.0.0.Final.jar:2.0.0.Final]
at org.primefaces.component.datatable.DataTable.getValue(DataTable.java:867) [primefaces-3.5.jar:]
at org.primefaces.component.api.UIData.getDataModel(UIData.java:579) [primefaces-3.5.jar:]
at javax.faces.component.UIData.isRowAvailable(UIData.java:343) [jboss-jsf-api_2.1_spec-2.0.0.Final.jar:2.0.0.Final]
at org.primefaces.component.api.UIData.setRowModel(UIData.java:422) [primefaces-3.5.jar:]
at org.primefaces.component.api.UIData.setRowIndex(UIData.java:401) [primefaces-3.5.jar:]
at org.primefaces.component.datatable.DataTableRenderer.encodeTbody(DataTableRenderer.java:683) [primefaces-3.5.jar:]
at org.primefaces.component.datatable.DataTableRenderer.encodeRegularTable(DataTableRenderer.java:234) [primefaces-3.5.jar:]
at org.primefaces.component.datatable.DataTableRenderer.encodeMarkup(DataTableRenderer.java:196) [primefaces-3.5.jar:]
at org.primefaces.component.datatable.DataTableRenderer.encodeEnd(DataTableRenderer.java:82) [primefaces-3.5.jar:]
at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:875) [jboss-jsf-api_2.1_spec-2.0.0.Final.jar:2.0.0.Final]
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1764) [jboss-jsf-api_2.1_spec-2.0.0.Final.jar:2.0.0.Final]
at javax.faces.render.Renderer.encodeChildren(Renderer.java:168) [jboss-jsf-api_2.1_spec-2.0.0.Final.jar:2.0.0.Final]
at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:845) [jboss-jsf-api_2.1_spec-2.0.0.Final.jar:2.0.0.Final]
at org.primefaces.renderkit.CoreRenderer.renderChild(CoreRenderer.java:59) [primefaces-3.5.jar:]
at org.primefaces.renderkit.CoreRenderer.renderChildren(CoreRenderer.java:47) [primefaces-3.5.jar:]
at org.primefaces.extensions.component.layout.LayoutPaneRenderer.encodeBegin(LayoutPaneRenderer.java:148) [primefaces-extensions-0.7.1.jar:0.7.1]
at javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:820) [jboss-jsf-api_2.1_spec-2.0.0.Final.jar:2.0.0.Final]
at org.primefaces.renderkit.CoreRenderer.renderChild(CoreRenderer.java:56) [primefaces-3.5.jar:]
at org.primefaces.renderkit.CoreRenderer.renderChildren(CoreRenderer.java:47) [primefaces-3.5.jar:]
at org.primefaces.extensions.component.layout.LayoutPaneRenderer.encodeBegin(LayoutPaneRenderer.java:152) [primefaces-extensions-0.7.1.jar:0.7.1]
at javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:820) [jboss-jsf-api_2.1_spec-2.0.0.Final.jar:2.0.0.Final]
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1755) [jboss-jsf-api_2.1_spec-2.0.0.Final.jar:2.0.0.Final]
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1760) [jboss-jsf-api_2.1_spec-2.0.0.Final.jar:2.0.0.Final]
at javax.faces.render.Renderer.encodeChildren(Renderer.java:168) [jboss-jsf-api_2.1_spec-2.0.0.Final.jar:2.0.0.Final]
at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:845) [jboss-jsf-api_2.1_spec-2.0.0.Final.jar:2.0.0.Final]
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1757) [jboss-jsf-api_2.1_spec-2.0.0.Final.jar:2.0.0.Final]
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1760) [jboss-jsf-api_2.1_spec-2.0.0.Final.jar:2.0.0.Final]
at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:402) [jsf-impl-2.1.5-jbossorg-1.jar:2.1.5-SNAPSHOT]
at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:131) [jsf-impl-2.1.5-jbossorg-1.jar:2.1.5-SNAPSHOT]
at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:121) [jsf-impl-2.1.5-jbossorg-1.jar:2.1.5-SNAPSHOT]
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101) [jsf-impl-2.1.5-jbossorg-1.jar:2.1.5-SNAPSHOT]
at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139) [jsf-impl-2.1.5-jbossorg-1.jar:2.1.5-SNAPSHOT]
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:594) [jboss-jsf-api_2.1_spec-2.0.0.Final.jar:2.0.0.Final]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:329) [jbossweb-7.0.10.Final.jar:]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248) [jbossweb-7.0.10.Final.jar:]
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:275) [jbossweb-7.0.10.Final.jar:]
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:161) [jbossweb-7.0.10.Final.jar:]
at org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:154) [jboss-as-web-7.1.0.Final.jar:7.1.0.Final]
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:155) [jbossweb-7.0.10.Final.jar:]
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) [jbossweb-7.0.10.Final.jar:]
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) [jbossweb-7.0.10.Final.jar:]
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:368) [jbossweb-7.0.10.Final.jar:]
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:877) [jbossweb-7.0.10.Final.jar:]
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:671) [jbossweb-7.0.10.Final.jar:]
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:930) [jbossweb-7.0.10.Final.jar:]
at java.lang.Thread.run(Unknown Source) [rt.jar:1.7.0_21]
Caused by: org.hibernate.TransactionException: nested transactions not supported
at org.hibernate.engine.transaction.spi.AbstractTransactionImpl.begin(AbstractTransactionImpl.java:152) [hibernate-core-4.2.2.Final.jar:4.2.2.Final]
at project.metier.dao.ITypeCarburantImpl.getAlltype(ITypeCarburantImpl.java:56) [classes:]
at project.service.TypeCarburantServiceImpl.getAlltype(TypeCarburantServiceImpl.java:39) [classes:]
at project.beans.TypeCarburantBean.getAlltype(TypeCarburantBean.java:25) [classes:]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.7.0_21]
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) [rt.jar:1.7.0_21]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) [rt.jar:1.7.0_21]
at java.lang.reflect.Method.invoke(Unknown Source) [rt.jar:1.7.0_21]
at javax.el.BeanELResolver.getValue(BeanELResolver.java:302) [jboss-el-api_2.2_spec-1.0.0.Final.jar:1.0.0.Final]
at com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176) [jsf-impl-2.1.5-jbossorg-1.jar:2.1.5-SNAPSHOT]
at com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:203) [jsf-impl-2.1.5-jbossorg-1.jar:2.1.5-SNAPSHOT]
at org.apache.el.parser.AstValue.getValue(AstValue.java:169) [jbossweb-7.0.10.Final.jar:]
at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:189) [jbossweb-7.0.10.Final.jar:]
at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:109) [jsf-impl-2.1.5-jbossorg-1.jar:2.1.5-SNAPSHOT]
... 49 more
[/quote]
est que quelqu'un a une idée de ce que c'est??
Partager