[jboss-user] [EJB 3.0] - @GeneratedValue(strategy=GenerationType.AUTO) for oracle fai

rkiran81 do-not-reply at jboss.com
Thu May 29 03:24:19 EDT 2008


Hi All, 

My development environment is jboss-4.0.3SP1 server and used jboss-EJB-3.0_RC6-PFD to setup my jboss for ejb3. 
Oracle10g. 

I have two already existing tables for which i have created the beans.
 
  | 
  | Parent table with columns PROFILE_ID(bigint) and PROFILE_NAME(nvarchar(64)) 
  | 
  | Parent Table Bean 
  | @Entity 
  | @Table(name="PROFILES") 
  | public class DomainProfileBean implements Serializable 
  | { 
  | static final long serialVersionUID = 5421650648474888865L; 
  | private long id; 
  | private String profileName; 
  | private Collection rolesProfileBean= new ArrayList(); 
  | 
  | @Id 
  | @Column(name="PROFILE_ID") 
  | public long getId() 
  | { 
  | return id; 
  | } 
  | 
  | public void setId(long id) 
  | { 
  | this.id = id; 
  | } 
  | @Column(name="PROFILE_NAME") 
  | public String getProfileName() 
  | { 
  | return profileName; 
  | } 
  | public void setProfileName(String profileName) 
  | { 
  | this.profileName = profileName; 
  | } 
  | 
  | @OneToMany(cascade = {CascadeType.ALL}) 
  | @JoinColumn(name="PROFILE_ID") 
  | public Collection getRolesProfileBean() 
  | { 
  | return rolesProfileBean; 
  | } 
  | 
  | public void setRolesProfileBean(Collection rolesProfileBean) 
  | { 
  | this.rolesProfileBean= rolesProfileBean; 
  | } 
  | } 
  | ----------------------------------------------------------------------------------- 
  | 
  | Child table with columns ID(bigint),PROFILE_ID(bigint) and ROLE_ID(bigint) 
  | 
  | Child Table Bean 
  | @Entity 
  | @Table(name="LK_PROFILE_QUERY") 
  | public class RolesProfileBean implements Serializable 
  | { 
  | static final long serialVersionUID = 258127495705939407L; 
  | private long id; 
  | private long profileID; 
  | private long roleID; 
  | 
  | @Id 
  | @GeneratedValue(strategy=GenerationType.AUTO) 
  | @Column(name="ID") 
  | public long getId() 
  | { 
  | return id; 
  | } 
  | 
  | public void setId(long id) 
  | { 
  | this.id = id; 
  | } 
  | 
  | @Column(name="PROFILE_ID") 
  | public long getProfileID() 
  | { 
  | return profileID; 
  | } 
  | 
  | public void setProfileID(long profileID) 
  | { 
  | this.profileID = profileID; 
  | } 
  | 
  | @Column(name="ROLE_ID") 
  | public long getRoleID() 
  | { 
  | return roleID; 
  | } 
  | 
  | public void setRoleID(long roleID) 
  | { 
  | this.roleID= roleID; 
  | } 
  | }

when am trying to persist (creating new record) my parent table bean am also populating the child table beans, but it is failing. Please check the stack trace12:44:30,027 INFO  [Http11Protocol] Starting Coyote HTTP/1.1 on http-0.0.0.0-8081
  | 12:44:30,105 INFO  [Server] JBoss (MX MicroKernel) [4.0.3SP1 (build: CVSTag=JBoss_4_0_3_SP1 date=200510231054)] Started
  | in 1m:41s:459ms
  | 12:47:58,657 INFO  [FieldsManager] FieldsManager in use = org.jboss.serial.classmetamodel.UnsafeFieldsManager
  | 12:47:59,978 WARN  [JDBCExceptionReporter] SQL Error: 1, SQLState: 23000
  | 12:47:59,978 ERROR [JDBCExceptionReporter] ORA-00001: unique constraint (MPUSERS.SYS_C0031176) violated
  | 
  | 12:47:59,978 WARN  [JDBCExceptionReporter] SQL Error: 1, SQLState: 23000
  | 12:47:59,978 ERROR [JDBCExceptionReporter] ORA-00001: unique constraint (MPUSERS.SYS_C0031176) violated
  | 
  | 12:47:59,978 ERROR [AbstractFlushingEventListener] Could not synchronize database state with session
  | org.hibernate.exception.ConstraintViolationException: could not insert: [com.bis.dbservices.domainprofiledao.RolesProfil
  | eBean]
  |         at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:71)
  |         at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
  |         at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2140)
  |         at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2503)
  |         at org.hibernate.action.EntityInsertAction.execute(EntityInsertAction.java:51)
  |         at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:248)
  |         at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:232)
  |         at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:139)
  |         at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:29
  | 7)
  |         at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
  |         at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:988)
  |         at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:337)
  |         at org.hibernate.ejb.AbstractEntityManagerImpl$1.beforeCompletion(AbstractEntityManagerImpl.java:473)
  |         at org.jboss.tm.TransactionImpl.doBeforeCompletion(TransactionImpl.java:1473)
  |         at org.jboss.tm.TransactionImpl.beforePrepare(TransactionImpl.java:1092)
  |         at org.jboss.tm.TransactionImpl.commit(TransactionImpl.java:306)
  |         at org.jboss.tm.TxManager.commit(TxManager.java:224)
  |         at org.jboss.ejb.EnterpriseContext$UserTransactionImpl.commit(EnterpriseContext.java:605)
  |         at com.bis.dbservices.domainprofiledao.DomainProfileSLBean.createDomainProfile(DomainProfileSLBean.java:209)
  |         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  |         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  |         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  |         at java.lang.reflect.Method.invoke(Method.java:585)
  |         at org.jboss.invocation.Invocation.performCall(Invocation.java:345)
  |         at org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:214)
  |         at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:149)
  | 
  |         at org.jboss.webservice.server.ServiceEndpointInterceptor.invoke(ServiceEndpointInterceptor.java:54)
  |         at org.jboss.ejb.plugins.CallValidationInterceptor.invoke(CallValidationInterceptor.java:48)
  |         at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:106)
  |         at org.jboss.ejb.plugins.AbstractTxInterceptorBMT.invokeNext(AbstractTxInterceptorBMT.java:158)
  |         at org.jboss.ejb.plugins.TxInterceptorBMT.invoke(TxInterceptorBMT.java:62)
  |         at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:154
  | )
  |         at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:153)
  |         at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:192)
  |         at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:122)
  |         at org.jboss.ejb.SessionContainer.internalInvoke(SessionContainer.java:624)
  |         at org.jboss.ejb.Container.invoke(Container.java:873)
  |         at sun.reflect.GeneratedMethodAccessor92.invoke(Unknown Source)
  |         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  |         at java.lang.reflect.Method.invoke(Method.java:585)
  |         at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
  |         at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
  |         at org.jboss.mx.server.Invocation.invoke(Invocation.java:72)
  |         at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:245)
  |         at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:644)
  |         at org.jboss.invocation.local.LocalInvoker$MBeanServerAction.invoke(LocalInvoker.java:155)
  |         at org.jboss.invocation.local.LocalInvoker.invoke(LocalInvoker.java:104)
  |         at org.jboss.invocation.InvokerInterceptor.invokeLocal(InvokerInterceptor.java:179)
  |         at org.jboss.invocation.InvokerInterceptor.invoke(InvokerInterceptor.java:165)
  |         at org.jboss.proxy.TransactionInterceptor.invoke(TransactionInterceptor.java:46)
  |         at org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor.java:55)
  |         at org.jboss.proxy.ejb.StatelessSessionInterceptor.invoke(StatelessSessionInterceptor.java:97)
  |         at org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:86)
  |         at $Proxy89.createDomainProfile(Unknown Source)
  |         at com.bis.dbservices.domainprofiledao.DomainProfileHandler.createDomainProfile(DomainProfileHandler.java:106)
  |         at com.bis.sysadmintool.domain.servlets.DADomainProfileCreateServlet.service(DADomainProfileCreateServlet.java:1
  | 99)
  |         at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
  |         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
  |         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
  |         at com.bis.userauthentication.windows.AuthenticationFilter.doFilter(AuthenticationFilter.java:227)
  |         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
  |         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
  |         at com.bis.commonclasses.RequestEncodingFilter.doFilter(RequestEncodingFilter.java:87)
  |         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
  |         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
  |         at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81)
  |         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
  |         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
  |         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
  |         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
  |         at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:39)
  |         at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:159)
  |         at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:59)
  |         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
  |         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
  |         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
  |         at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
  |         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
  |         at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
  |         at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
  |         at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
  |         at java.lang.Thread.run(Thread.java:595)
  | Caused by: java.sql.BatchUpdateException: ORA-00001: unique constraint (MPUSERS.SYS_C0031176) violated
  | 
  |         at oracle.jdbc.driver.DatabaseError.throwBatchUpdateException(DatabaseError.java:343)
  |         at oracle.jdbc.driver.OraclePreparedStatement.executeBatch(OraclePreparedStatement.java:10657)
  |         at org.jboss.resource.adapter.jdbc.WrappedStatement.executeBatch(WrappedStatement.java:487)
  |         at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:58)
  |         at org.hibernate.jdbc.BatchingBatcher.addToBatch(BatchingBatcher.java:34)
  |         at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2120)
  |         ... 79 more

Can anybody please suggest on this ASAP.

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4154147#4154147

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4154147



More information about the jboss-user mailing list