-->
These old forums are deprecated now and set to read-only. We are waiting for you on our new forums!
More modern, Discourse-based and with GitHub/Google/Twitter authentication built-in.

All times are UTC - 5 hours [ DST ]



Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 3 posts ] 
Author Message
 Post subject: Insert/Update-Problem bei MAP-Collection
PostPosted: Tue Nov 06, 2007 6:59 am 
Newbie

Joined: Tue Nov 06, 2007 6:48 am
Posts: 2
Problem: Meinem Benutzerobjekt weise ich ein neues Theme zu. Wird auch korrekt gespeichert. Wenn Hibernate sich dann aber der Map zuwendet, versucht Hibernate die Einträge der Map in der DB zu spiechern. Dort existieren die Einträge aber bereits. Ich habe die Einträge in der Map auch nicht geändert, ergänzt oder gelöscht.
Warum erkennt Hibernate nicht, dass es keine Änderungen gab?
Das Problem existiert ebenfalls, wenn ich den Benutzer aus der DB hole und gleich wieder speichere, ohne dass ich überhaupt etwas ändere.

Hibernate version: 2.1.2

Mapping documents:
<class name="com.jquick.webservices.components.um.domain.Benutzer" table="BENUTZER">
<id name="id" type="java.lang.Long" column="ID" unsaved-value="null">
<generator class="sequence">
<param name="sequence">benutzer_seq</param>
</generator>
</id>

<!-- associations -->
<!-- HashMap fuer zusaetzliche Key/Value Paare, die in der Tabelle BENUTZER_DATA liegen. -->
<map name="extraData" table="BENUTZER_DATEN" lazy="false" inverse="false">
<key column="BENUTZER_ID" />
<index column="SCHLUESSEL" type="java.lang.String" />
<element column="WERT" type="java.lang.String" />
</map>

<many-to-one name="orgGruppe" class="com.jquick.webservices.components.um.domain.Gruppe" column="GRUPPE_ID" not-null="true" />

<many-to-one name="theme" class="com.jquick.webservices.components.extrainfo.domain.Theme" column="THEME_ID" />

<!-- simple properties -->
<property name="status" type="java.lang.Long" column="STATUS" length="5">
<meta attribute="use-in-tostring">true</meta>
</property>

<property name="userId" type="java.lang.String" column="USER_ID" length="100">
<meta attribute="use-in-tostring">true</meta>
</property>

<property name="email" type="java.lang.String" column="EMAIL" length="100">
<meta attribute="use-in-tostring">true</meta>
</property>

<property name="anrede" type="java.lang.String" column="ANREDE" length="10">
<meta attribute="use-in-tostring">true</meta>
</property>

<property name="vorname" type="java.lang.String" column="VORNAME" length="100">
<meta attribute="use-in-tostring">true</meta>
</property>

<property name="nachname" type="java.lang.String" column="NACHNAME" length="100">
<meta attribute="use-in-tostring">true</meta>
</property>

<property name="password" type="java.lang.String" column="PASSWORD" length="100">
<meta attribute="use-in-tostring">false</meta>
</property>

<property name="lastVisit" type="java.util.Date" column="DATUM_LETZTER_BESUCH">
<meta attribute="use-in-tostring">false</meta>
</property>

<property name="telefon" type="java.lang.String" column="TELEFON" length="50">
<meta attribute="use-in-tostring">false</meta>
</property>

<property name="fax" type="java.lang.String" column="FAX" length="50">
<meta attribute="use-in-tostring">false</meta>
</property>
</class>

Code between sessionFactory.openSession() and session.close():
Code:
   try {
         session = HibernateUtil.openSession();
         Transaction transaction = session.beginTransaction();

         dbTheme = ThemesDAOHibernate.getTheme(themeID);
         Benutzer benutzer = getBenutzer(session, benutzerId);
         
         benutzer.setTheme(dbTheme);
         
         session.update(benutzer);
         transaction.commit();
      }
      catch (HibernateException he) {
         throw new DAOException(he);
      }
      finally {
         HibernateUtil.closeSession(session);
      }


Full stack trace of any exception that occurs:
WARN |.sf.hibernate.util.JDBCExceptionReporter|SQL Error: 1, SQLState: 23000
ERROR|.sf.hibernate.util.JDBCExceptionReporter|ORA-00001: Unique Constraint (HRD.BEN_DATA_PK) verletzt

ERROR|.sf.hibernate.util.JDBCExceptionReporter|could not insert collection rows: [com.jquick.webservices.components.um.domain.Benutzer.extraData#9410]
java.sql.SQLException: ORA-00001: Unique Constraint (HRD.BEN_DATA_PK) verletzt

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:138)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:316)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:282)
at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:639)
at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:185)
at oracle.jdbc.driver.T4CPreparedStatement.execute_for_rows(T4CPreparedStatement.java:633)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1161)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3001)
at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:3074)
at oracle.oc4j.sql.proxy.PreparedStatementBCELProxy.executeUpdate(PreparedStatementBCELProxy.java:37)
at net.sf.hibernate.impl.NonBatchingBatcher.addToBatch(NonBatchingBatcher.java:22)
at net.sf.hibernate.collection.AbstractCollectionPersister.insertRows(AbstractCollectionPersister.java:622)
at net.sf.hibernate.impl.ScheduledCollectionUpdate.execute(ScheduledCollectionUpdate.java:49)
at net.sf.hibernate.impl.SessionImpl.executeAll(SessionImpl.java:2382)
at net.sf.hibernate.impl.SessionImpl.execute(SessionImpl.java:2338)
at net.sf.hibernate.impl.SessionImpl.flush(SessionImpl.java:2204)
at com.jquick.webservices.utils.dao.hibernate.BaseDAOHibernate.storeObject(BaseDAOHibernate.java:128)
at com.jquick.webservices.components.um.dao.BenutzerDAOHibernate.saveBenutzer(BenutzerDAOHibernate.java:226)
at com.jquick.webservices.components.um.ejb.UMFacadeBean.setBenutzer(UMFacadeBean.java:524)
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 com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.TxRequiredInterceptor.invoke(TxRequiredInterceptor.java:50)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
at com.evermind.server.ejb.StatelessSessionEJBObject.OC4J_invokeMethod(StatelessSessionEJBObject.java:87)
at UMFacade_RemoteProxy_5if7.setBenutzer(Unknown Source)
at com.jquick.webservices.components.um.service.UMService.setBenutzer(UMService.java:1198)
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 com.jquick.webservices.session.invoker.InvokerBean.invokeService(InvokerBean.java:253)
at sun.reflect.GeneratedMethodAccessor30.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.TxSupportsInterceptor.invoke(TxSupportsInterceptor.java:37)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
at com.evermind.server.ejb.StatelessSessionEJBObject.OC4J_invokeMethod(StatelessSessionEJBObject.java:87)
at Invoker_RemoteProxy_5if7.invokeService(Unknown Source)
at com.jquick.webservices.external.ejb.ServicesBean.invokeService(ServicesBean.java:69)
at sun.reflect.GeneratedMethodAccessor29.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.TxSupportsInterceptor.invoke(TxSupportsInterceptor.java:37)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
at com.evermind.server.ejb.StatefulSessionEJBObject.OC4J_invokeMethod(StatefulSessionEJBObject.java:844)
at ws_Services_RemoteProxy_5if7.invokeService(Unknown Source)
at com.jquick.hrd.services.InvokerService.invoke(InvokerService.java:145)
at com.jquick.hrd.services.UserServices.setBenutzer(UserServices.java:598)
at com.jquick.hrd.dao.PersonalSettingsDAO.setPersonalSettings(PersonalSettingsDAO.java:118)
at com.jquick.hrd.action.PersonalSettingsAction.securedPerform(PersonalSettingsAction.java:78)
at com.jquick.struts.action.SecureAction.perform(SecureAction.java:124)
at com.jquick.webservices.web.struts.action.WSSecureAction.perform(WSSecureAction.java:41)
at org.apache.struts.action.Action.execute(Action.java:420)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
at com.jquick.struts.action.HRDRequestProcessor.process(HRDRequestProcessor.java:56)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
at com.jquick.struts.screenflow.ApplicationServlet.process(ApplicationServlet.java:344)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
at com.jquick.hrd.filter.SessionFilter.doFilter(SessionFilter.java:82)
at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)
at com.jquick.hrd.filter.TimerFilter.doFilter(TimerFilter.java:27)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:620)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:369)
at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:865)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:447)
at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:215)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:117)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:110)
at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
at java.lang.Thread.run(Thread.java:595)
ERROR| net.sf.hibernate.impl.SessionImpl|Could not synchronize database state with session
net.sf.hibernate.JDBCException: could not insert collection rows: [com.jquick.webservices.components.um.domain.Benutzer.extraData#9410]
at net.sf.hibernate.collection.AbstractCollectionPersister.insertRows(AbstractCollectionPersister.java:636)
at net.sf.hibernate.impl.ScheduledCollectionUpdate.execute(ScheduledCollectionUpdate.java:49)
at net.sf.hibernate.impl.SessionImpl.executeAll(SessionImpl.java:2382)
at net.sf.hibernate.impl.SessionImpl.execute(SessionImpl.java:2338)
at net.sf.hibernate.impl.SessionImpl.flush(SessionImpl.java:2204)
at com.jquick.webservices.utils.dao.hibernate.BaseDAOHibernate.storeObject(BaseDAOHibernate.java:128)
at com.jquick.webservices.components.um.dao.BenutzerDAOHibernate.saveBenutzer(BenutzerDAOHibernate.java:226)
at com.jquick.webservices.components.um.ejb.UMFacadeBean.setBenutzer(UMFacadeBean.java:524)
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 com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.TxRequiredInterceptor.invoke(TxRequiredInterceptor.java:50)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
at com.evermind.server.ejb.StatelessSessionEJBObject.OC4J_invokeMethod(StatelessSessionEJBObject.java:87)
at UMFacade_RemoteProxy_5if7.setBenutzer(Unknown Source)
at com.jquick.webservices.components.um.service.UMService.setBenutzer(UMService.java:1198)
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 com.jquick.webservices.session.invoker.InvokerBean.invokeService(InvokerBean.java:253)
at sun.reflect.GeneratedMethodAccessor30.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.TxSupportsInterceptor.invoke(TxSupportsInterceptor.java:37)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
at com.evermind.server.ejb.StatelessSessionEJBObject.OC4J_invokeMethod(StatelessSessionEJBObject.java:87)
at Invoker_RemoteProxy_5if7.invokeService(Unknown Source)
at com.jquick.webservices.external.ejb.ServicesBean.invokeService(ServicesBean.java:69)
at sun.reflect.GeneratedMethodAccessor29.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.TxSupportsInterceptor.invoke(TxSupportsInterceptor.java:37)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
at com.evermind.server.ejb.StatefulSessionEJBObject.OC4J_invokeMethod(StatefulSessionEJBObject.java:844)
at ws_Services_RemoteProxy_5if7.invokeService(Unknown Source)
at com.jquick.hrd.services.InvokerService.invoke(InvokerService.java:145)
at com.jquick.hrd.services.UserServices.setBenutzer(UserServices.java:598)
at com.jquick.hrd.dao.PersonalSettingsDAO.setPersonalSettings(PersonalSettingsDAO.java:118)
at com.jquick.hrd.action.PersonalSettingsAction.securedPerform(PersonalSettingsAction.java:78)
at com.jquick.struts.action.SecureAction.perform(SecureAction.java:124)
at com.jquick.webservices.web.struts.action.WSSecureAction.perform(WSSecureAction.java:41)
at org.apache.struts.action.Action.execute(Action.java:420)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
at com.jquick.struts.action.HRDRequestProcessor.process(HRDRequestProcessor.java:56)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
at com.jquick.struts.screenflow.ApplicationServlet.process(ApplicationServlet.java:344)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
at com.jquick.hrd.filter.SessionFilter.doFilter(SessionFilter.java:82)
at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)
at com.jquick.hrd.filter.TimerFilter.doFilter(TimerFilter.java:27)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:620)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:369)
at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:865)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:447)
at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:215)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:117)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:110)
at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.sql.SQLException: ORA-00001: Unique Constraint (HRD.BEN_DATA_PK) verletzt

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:138)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:316)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:282)
at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:639)
at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:185)
at oracle.jdbc.driver.T4CPreparedStatement.execute_for_rows(T4CPreparedStatement.java:633)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1161)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3001)
at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:3074)
at oracle.oc4j.sql.proxy.PreparedStatementBCELProxy.executeUpdate(PreparedStatementBCELProxy.java:37)
at net.sf.hibernate.impl.NonBatchingBatcher.addToBatch(NonBatchingBatcher.java:22)
at net.sf.hibernate.collection.AbstractCollectionPersister.insertRows(AbstractCollectionPersister.java:622)
... 86 more
DEBUG|bservices.utils.exception.ExceptionUtils|--> handleException Failed
DEBUG|bservices.utils.exception.ExceptionUtils| last level 1:
com.jquick.webservices.utils.dao.hibernate.DAOException: net.sf.hibernate.JDBCException: could not insert collection rows: [com.jquick.webservices.components.um.domain.Benutzer.extraData#9410]
at com.jquick.webservices.utils.dao.hibernate.BaseDAOHibernate.storeObject(BaseDAOHibernate.java:131)
at com.jquick.webservices.components.um.dao.BenutzerDAOHibernate.saveBenutzer(BenutzerDAOHibernate.java:226)
at com.jquick.webservices.components.um.ejb.UMFacadeBean.setBenutzer(UMFacadeBean.java:524)
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 com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.TxRequiredInterceptor.invoke(TxRequiredInterceptor.java:50)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
at com.evermind.server.ejb.StatelessSessionEJBObject.OC4J_invokeMethod(StatelessSessionEJBObject.java:87)
at UMFacade_RemoteProxy_5if7.setBenutzer(Unknown Source)
at com.jquick.webservices.components.um.service.UMService.setBenutzer(UMService.java:1198)
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 com.jquick.webservices.session.invoker.InvokerBean.invokeService(InvokerBean.java:253)
at sun.reflect.GeneratedMethodAccessor30.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.TxSupportsInterceptor.invoke(TxSupportsInterceptor.java:37)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
at com.evermind.server.ejb.StatelessSessionEJBObject.OC4J_invokeMethod(StatelessSessionEJBObject.java:87)
at Invoker_RemoteProxy_5if7.invokeService(Unknown Source)
at com.jquick.webservices.external.ejb.ServicesBean.invokeService(ServicesBean.java:69)
at sun.reflect.GeneratedMethodAccessor29.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.TxSupportsInterceptor.invoke(TxSupportsInterceptor.java:37)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
at com.evermind.server.ejb.StatefulSessionEJBObject.OC4J_invokeMethod(StatefulSessionEJBObject.java:844)
at ws_Services_RemoteProxy_5if7.invokeService(Unknown Source)
at com.jquick.hrd.services.InvokerService.invoke(InvokerService.java:145)
at com.jquick.hrd.services.UserServices.setBenutzer(UserServices.java:598)
at com.jquick.hrd.dao.PersonalSettingsDAO.setPersonalSettings(PersonalSettingsDAO.java:118)
at com.jquick.hrd.action.PersonalSettingsAction.securedPerform(PersonalSettingsAction.java:78)
at com.jquick.struts.action.SecureAction.perform(SecureAction.java:124)
at com.jquick.webservices.web.struts.action.WSSecureAction.perform(WSSecureAction.java:41)
at org.apache.struts.action.Action.execute(Action.java:420)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
at com.jquick.struts.action.HRDRequestProcessor.process(HRDRequestProcessor.java:56)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
at com.jquick.struts.screenflow.ApplicationServlet.process(ApplicationServlet.java:344)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
at com.jquick.hrd.filter.SessionFilter.doFilter(SessionFilter.java:82)
at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)
at com.jquick.hrd.filter.TimerFilter.doFilter(TimerFilter.java:27)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:620)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:369)
at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:865)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:447)
at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:215)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:117)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:110)
at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
at java.lang.Thread.run(Thread.java:595)
Caused by: net.sf.hibernate.JDBCException: could not insert collection rows: [com.jquick.webservices.components.um.domain.Benutzer.extraData#9410]
at net.sf.hibernate.collection.AbstractCollectionPersister.insertRows(AbstractCollectionPersister.java:636)
at net.sf.hibernate.impl.ScheduledCollectionUpdate.execute(ScheduledCollectionUpdate.java:49)
at net.sf.hibernate.impl.SessionImpl.executeAll(SessionImpl.java:2382)
at net.sf.hibernate.impl.SessionImpl.execute(SessionImpl.java:2338)
at net.sf.hibernate.impl.SessionImpl.flush(SessionImpl.java:2204)
at com.jquick.webservices.utils.dao.hibernate.BaseDAOHibernate.storeObject(BaseDAOHibernate.java:128)
... 81 more
Caused by: java.sql.SQLException: ORA-00001: Unique Constraint (HRD.BEN_DATA_PK) verletzt

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:138)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:316)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:282)
at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:639)
at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:185)
at oracle.jdbc.driver.T4CPreparedStatement.execute_for_rows(T4CPreparedStatement.java:633)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1161)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3001)
at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:3074)
at oracle.oc4j.sql.proxy.PreparedStatementBCELProxy.executeUpdate(PreparedStatementBCELProxy.java:37)
at net.sf.hibernate.impl.NonBatchingBatcher.addToBatch(NonBatchingBatcher.java:22)
at net.sf.hibernate.collection.AbstractCollectionPersister.insertRows(AbstractCollectionPersister.java:622)
... 86 more

Name and version of the database you are using: Oracle 10.x


Top
 Profile  
 
 Post subject:
PostPosted: Tue Nov 13, 2007 4:01 pm 
Expert
Expert

Joined: Tue Nov 23, 2004 7:00 pm
Posts: 570
Location: mostly Frankfurt Germany
Ist die Beziehung vielleicht auf der anderen Seite auch definiert.

_________________
Best Regards
Sebastian
---
Training for Hibernate and Java Persistence
Tutorials for Hibernate, Spring, EJB, JSF...
eBook: Hibernate 3 - DeveloperGuide
Paper book: Hibernate 3 - Das Praxisbuch
http://www.laliluna.de


Top
 Profile  
 
 Post subject:
PostPosted: Wed Nov 14, 2007 4:30 am 
Newbie

Joined: Tue Nov 06, 2007 6:48 am
Posts: 2
Hi,

anscheinend lag das Problem daran, dass die Map nich vom Hibernate-Objekt verwendet wurde, sondern dem Hibernate-Objekt eine neue Map verabreicht wurde. Die Inhalte hatte Hibernate dann als neu eingestuft.

Anders kann ich es mir nicht erklären. Ein Kollege konnte ohne Probleme Werte in der HM verändern, solange er immer das HM-Objekt von Hibernate-Objekt verwendet hatte.

Grüße
Tobias


Top
 Profile  
 
Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 3 posts ] 

All times are UTC - 5 hours [ DST ]


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
© Copyright 2014, Red Hat Inc. All rights reserved. JBoss and Hibernate are registered trademarks and servicemarks of Red Hat, Inc.