-->
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.  [ 1 post ] 
Author Message
 Post subject: many-to-one integrityconstraint
PostPosted: Sun May 07, 2006 7:47 am 
Newbie

Joined: Sat May 06, 2006 12:23 am
Posts: 1
Hi All.
I am new to hibernate and currently working on a hibernate project.
Version : 3.0.5

I had a pojo classes ConatctDO and AddressDO as below :
ContactDO
public class CompanyDO{
/** Primary key of the comapny is companyID */
private long companyId;
/** represents companyName*/
private String companyName;
/** represents companyAddress*/
private AddressDO companyAddress;

public CompanyDO() {

}
/**
* @hibernate.id column="COMPANY_ID" unsaved-value="null" generator-class="sequence"
* @hibernate.generator-param name="sequence" value="TBL_TDN_COMPANY_S"
*
* @return Returns the addressId.
*/
public long getCompanyId() {
return companyId;
}
/**
* @param companyID The companyID to set.
*/
public void setCompanyId(long companyId) {
this.companyId = companyId;
}
/**
* @hibernate.property column="COMPANY_NAME"
* @return Returns the companyName.
*/
public String getCompanyName() {
return companyName;
}
/**
* @param companyName The companyName to set.
*/
public void setCompanyName(String companyName) {
this.companyName = companyName;
}

/**
* @hibernate.many-to-one column="ADDRESS_ID" name="companyAddress" cascade = "save-update" class="AddressDO"
* @return Returns the companyAddress.
*/
public AddressDO getCompanyAddress() {
return companyAddress;
}
/**
* @param companyAddress The companyAddress to set.
*/
public void setCompanyAddress(AddressDO companyAddress) {
this.companyAddress = companyAddress;
}
}

Address DO:
public class AddressDO{
/** The Primary key of the address is addressID */
private long addressId;

/** represents addressone*/
private String addressOne;


/**
* Simple constructor of AddressDO instances.
*/
public AddressDO() {
}

/**
* @hibernate.id column="ADDRESS_ID" unsaved-value="null" generator-class="sequence"
* @hibernate.generator-param name="sequence" value="TBL_TDN_ADDRESS_S"
*
* @return Returns the addressId.
*/
public long getAddressId() {
return addressId;
}

/**
* Set the value of the ADDRESS_ID column.
*
* @param addressId
* addressId to be set
*/
public void setAddressId(long addressId) {
this.addressId = addressId;
}

/**
* @hibernate.property column="ADDRESS_ONE"
* @return Returns the addressOne.
*/
public String getAddressOne() {
return addressOne;
}

/**
* Set the value of the addressOne column.
*
* @param addressOne
* addressOne to be set
*/
public void setAddressOne(String addressOne) {
this.addressOne = addressOne;
}
}

Generated mapping classes are as below:
Company.hbm.xml
<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<hibernate-mapping
>
<class
name="CompanyDO"
table="TBL_TDN_COMPANY"
>

<id
name="companyId"
column="COMPANY_ID"
type="long"
unsaved-value="null"
>
<generator class="sequence">
<param name="sequence">TBL_TDN_COMPANY_S</param>
<!--
To add non XDoclet generator parameters, create a file named
hibernate-generator-params-CompanyDO.xml
containing the additional parameters and place it in your merge dir.
-->
</generator>
</id>

<many-to-one
name="companyAddress"
class="AddressDO"
cascade="save-update"
outer-join="auto"
update="true"
insert="true"
column="ADDRESS_ID"
/>

<property
name="companyName"
type="java.lang.String"
update="true"
insert="true"
column="COMPANY_NAME"
/>


</class>

</hibernate-mapping>

Address.hbm.xml
<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<hibernate-mapping
>
<class
name="AddressDO"
table="TBL_TDN_ADDRESS"
>

<id
name="addressId"
column="ADDRESS_ID"
type="long"
unsaved-value="null"
>
<generator class="sequence">
<param name="sequence">TBL_TDN_ADDRESS_S</param>
<!--
To add non XDoclet generator parameters, create a file named
hibernate-generator-params-AddressDO.xml
containing the additional parameters and place it in your merge dir.
-->
</generator>
</id>

<property
name="addressOne"
type="java.lang.String"
update="true"
insert="true"
column="ADDRESS_ONE"
/>



</class>

</hibernate-mapping>


Code I have in DAO class is as below:
boolean isSaved = true;
Session session = this.getHibernateSession();
Transaction tx = session.beginTransaction();
try {


session.saveOrUpdate(companyDO);
session.flush();
tx.commit();
isSaved = true;

} catch (Exception e) {

tx.rollback();
isSaved = false;
throw new Exception(e);
} finally {
session.close();
}

Full stack trace of any exception that occured is as below:
2006-05-07 16:58:12,608 5419750 INFO [STDOUT] (TP-Processor2:) Hibernate: insert into TBL_TDN_COMPANY (COMPANY_ID, COMPANY_NAME, ADDRESS_ID) values (?, ?, ?)
2006-05-07 16:58:13,311 5420453 WARN [org.hibernate.util.JDBCExceptionReporter] (TP-Processor2:) SQL Error: 2291, SQLState: 23000
2006-05-07 16:58:13,311 5420453 ERROR [org.hibernate.util.JDBCExceptionReporter] (TP-Processor2:) ORA-02291: integrity constraint (AOUKMT.FK8A226E66E80ED9E3) violated - parent key not found

2006-05-07 16:58:13,311 5420453 WARN [org.hibernate.util.JDBCExceptionReporter] (TP-Processor2:) SQL Error: 2291, SQLState: 23000
2006-05-07 16:58:13,327 5420469 ERROR [org.hibernate.util.JDBCExceptionReporter] (TP-Processor2:) ORA-02291: integrity constraint (AOUKMT.FK8A226E66E80ED9E3) violated - parent key not found

2006-05-07 16:58:13,327 5420469 ERROR [org.hibernate.event.def.AbstractFlushingEventListener] (TP-Processor2:) Could not synchronize database state with session
org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update
at org.hibernate.exception.ErrorCodeConverter.convert(ErrorCodeConverter.java:74)
at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:181)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:226)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:136)
at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:274)
at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:730)
at com.bupa.app.teddies.appservice.dao.brochure.HibernateBrochureDAO.saveBrochureDetails(HibernateBrochureDAO.java:141)
at com.bupa.app.teddies.appservice.common.util.brochure.BrochureManagerImpl.saveBrochureDetails(BrochureManagerImpl.java:88)
at com.bupa.app.teddies.appservice.ejb.TeddiesServiceBean.saveBrochureDetails(TeddiesServiceBean.java:150)
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:324)
at org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:683)
at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:185)
at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:72)
at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:84)
at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:315)
at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:148)
at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:120)
at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:191)
at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:122)
at org.jboss.ejb.StatelessSessionContainer.internalInvoke(StatelessSessionContainer.java:331)
at org.jboss.ejb.Container.invoke(Container.java:723)
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:324)
at org.jboss.mx.server.ReflectedDispatcher.dispatch(ReflectedDispatcher.java:60)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:61)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:53)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:185)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:473)
at org.jboss.invocation.local.LocalInvoker.invoke(LocalInvoker.java:97)
at org.jboss.invocation.InvokerInterceptor.invoke(InvokerInterceptor.java:90)
at org.jboss.proxy.TransactionInterceptor.invoke(TransactionInterceptor.java:46)
at org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor.java:53)
at org.jboss.proxy.ejb.StatelessSessionInterceptor.invoke(StatelessSessionInterceptor.java:100)
at org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:85)
at $Proxy82.saveBrochureDetails(Unknown Source)
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:324)
at org.apache.axis.providers.java.RPCProvider.invokeMethod(RPCProvider.java:402)
at org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:309)
at org.jboss.net.axis.server.EJBProvider.processMessage(EJBProvider.java:260)
at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:333)
at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:71)
at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:150)
at org.apache.axis.SimpleChain.invoke(SimpleChain.java:120)
at org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:481)
at org.apache.axis.server.AxisServer.invoke(AxisServer.java:323)
at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:880)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:339)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:72)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
at org.jboss.web.tomcat.security.JBossSecurityMgrRealm.invoke(JBossSecurityMgrRealm.java:275)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:540)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:297)
at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:371)
at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:731)
at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:663)
at org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:859)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
at java.lang.Thread.run(Thread.java:534)
Caused by: java.sql.BatchUpdateException: ORA-02291: integrity constraint (AOUKMT.FK8A226E66E80ED9E3) violated - parent key not found

at oracle.jdbc.dbaccess.DBError.throwBatchUpdateException(DBError.java:459)
at oracle.jdbc.driver.OraclePreparedStatement.executeBatch(OraclePreparedStatement.java:4210)
at org.jboss.resource.adapter.jdbc.WrappedStatement.executeBatch(WrappedStatement.java:756)
at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:57)
at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:174)
... 89 more
2006-05-07 16:58:13,608 5420750 ERROR [com.bupa.app.teddies.appservice.dao.brochure.HibernateBrochureDAO] (TP-Processor2:) org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update
2006-05-07 16:58:13,624 5420766 ERROR [com.bupa.app.teddies.appservice.ejb.TeddiesServiceBean] (TP-Processor2:) com.bupa.framework.common.exception.BupaDataAccessException: org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update
2006-05-07 16:58:13,624 5420766 ERROR [com.bupa.app.teddies.appservice.ejb.TeddiesServiceBean] (TP-Processor2:) org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update
com.bupa.framework.common.exception.BupaDataAccessException: org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update
at com.bupa.app.teddies.appservice.dao.brochure.HibernateBrochureDAO.saveBrochureDetails(HibernateBrochureDAO.java:150)
at com.bupa.app.teddies.appservice.common.util.brochure.BrochureManagerImpl.saveBrochureDetails(BrochureManagerImpl.java:88)
at com.bupa.app.teddies.appservice.ejb.TeddiesServiceBean.saveBrochureDetails(TeddiesServiceBean.java:150)
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:324)
at org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:683)
at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:185)
at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:72)
at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:84)
at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:315)
at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:148)
at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:120)
at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:191)
at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:122)
at org.jboss.ejb.StatelessSessionContainer.internalInvoke(StatelessSessionContainer.java:331)
at org.jboss.ejb.Container.invoke(Container.java:723)
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:324)
at org.jboss.mx.server.ReflectedDispatcher.dispatch(ReflectedDispatcher.java:60)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:61)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:53)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:185)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:473)
at org.jboss.invocation.local.LocalInvoker.invoke(LocalInvoker.java:97)
at org.jboss.invocation.InvokerInterceptor.invoke(InvokerInterceptor.java:90)
at org.jboss.proxy.TransactionInterceptor.invoke(TransactionInterceptor.java:46)
at org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor.java:53)
at org.jboss.proxy.ejb.StatelessSessionInterceptor.invoke(StatelessSessionInterceptor.java:100)
at org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:85)
at $Proxy82.saveBrochureDetails(Unknown Source)
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:324)
at org.apache.axis.providers.java.RPCProvider.invokeMethod(RPCProvider.java:402)
at org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:309)
at org.jboss.net.axis.server.EJBProvider.processMessage(EJBProvider.java:260)
at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:333)
at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:71)
at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:150)
at org.apache.axis.SimpleChain.invoke(SimpleChain.java:120)
at org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:481)
at org.apache.axis.server.AxisServer.invoke(AxisServer.java:323)
at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:880)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:339)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:72)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
at org.jboss.web.tomcat.security.JBossSecurityMgrRealm.invoke(JBossSecurityMgrRealm.java:275)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:540)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:297)
at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:371)
at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:731)
at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:663)
at org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:859)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
at java.lang.Thread.run(Thread.java:534)
Caused by: org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update
at org.hibernate.exception.ErrorCodeConverter.convert(ErrorCodeConverter.java:74)
at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:181)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:226)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:136)
at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:274)
at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:730)
at com.bupa.app.teddies.appservice.dao.brochure.HibernateBrochureDAO.saveBrochureDetails(HibernateBrochureDAO.java:141)
... 83 more
Caused by: java.sql.BatchUpdateException: ORA-02291: integrity constraint (AOUKMT.FK8A226E66E80ED9E3) violated - parent key not found

at oracle.jdbc.dbaccess.DBError.throwBatchUpdateException(DBError.java:459)
at oracle.jdbc.driver.OraclePreparedStatement.executeBatch(OraclePreparedStatement.java:4210)
at org.jboss.resource.adapter.jdbc.WrappedStatement.executeBatch(WrappedStatement.java:756)
at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:57)
at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:174)
... 89 more
2006-05-07 16:58:15,202 5422344 ERROR [com.bupa.app.teddies.applite.delegate.brochure.BrochureDelegateImpl] (TP-Processor3:) Problems with underlying datastore
AxisFault
faultCode: Client
faultSubcode:
faultString: Problems with underlying datastore
faultActor:
faultNode:
faultDetail:
{}string: org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update

Problems with underlying datastore
at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:260)
at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:169)
at org.apache.axis.encoding.DeserializationContextImpl.endElement(DeserializationContextImpl.java:1015)
at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source)
at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanEndElement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at javax.xml.parsers.SAXParser.parse(SAXParser.java:345)
at org.apache.axis.encoding.DeserializationContextImpl.parse(DeserializationContextImpl.java:242)
at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:538)
at org.apache.axis.Message.getSOAPEnvelope(Message.java:376)
at org.apache.axis.client.Call.invokeEngine(Call.java:2583)
at org.apache.axis.client.Call.invoke(Call.java:2553)
at org.apache.axis.client.Call.invoke(Call.java:2248)
at org.apache.axis.client.Call.invoke(Call.java:2171)
at org.apache.axis.client.Call.invoke(Call.java:1691)
at org.apache.axis.client.AxisClientProxy.invoke(AxisClientProxy.java:186)
at $Proxy70.saveBrochureDetails(Unknown Source)
at com.bupa.app.teddies.applite.services.BUPATeddiesServiceImpl.saveBrochureDetails(BUPATeddiesServiceImpl.java:67)
at com.bupa.app.teddies.applite.delegate.brochure.BrochureDelegateImpl.saveBrochureDetails(BrochureDelegateImpl.java:101)
at com.bupa.app.teddies.applite.action.brochure.BrochureAction.saveBrochureDetails(BrochureAction.java:199)
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:324)
at org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:276)
at org.apache.struts.actions.LookupDispatchAction.execute(LookupDispatchAction.java:162)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:421)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:226)
at com.bupa.fwk.applite.action.BupaRequestProcessor.process(BupaRequestProcessor.java:86)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:415)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
at com.bupa.fwk.applite.filter.UserSessionExpiryFilter.doFilter(UserSessionExpiryFilter.java:74)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:72)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
at org.jboss.web.tomcat.security.JBossSecurityMgrRealm.invoke(JBossSecurityMgrRealm.java:275)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:297)
at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:371)
at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:731)
at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:663)
at org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:859)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
at java.lang.Thread.run(Thread.java:534)

Database is Oracle and I am not sure about the version

The generated SQL (show_sql=true):
insert into TBL_TDN_COMPANY (COMPANY_ID, COMPANY_NAME, ADDRESS_ID) values (?, ?, ?)

generated sql script from hbm.xml files are
drop table TBL_TDL_CONTACT cascade constraints;
drop table TBL_TDN_COMPANY cascade constraints;
drop sequence TBL_TDN_ADDRESS_S;
drop sequence TBL_TDN_COMPANY_S;
create table TBL_TDN_ADDRESS (
ADDRESS_ID number(19,0) not null,
ADDRESS_ONE varchar2(255),
primary key (ADDRESS_ID)
);
create table TBL_TDN_COMPANY (
COMPANY_ID number(19,0) not null,
ADDRESS_ID number(19,0),
COMPANY_NAME varchar2(255),
primary key (COMPANY_ID)
);
alter table TBL_TDN_COMPANY
add constraint FK3C6819DB45522C47
foreign key (ADDRESS_ID)
references TBL_TDN_ADDRESS;
create sequence TBL_TDN_ADDRESS_S;
create sequence TBL_TDN_COMPANY_S;

User in the first place gives only CompanyDetails, not address details
i want to save only compnay details.
in company DO at this momnet AddressDO is null

in company table there shouldnt be any constraint for address. but hbm generating a constraint on company table.
How to avoid this.

Means I want to store company with address id as null.

Please help me


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

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.