Need help with Hibernate? Read this first:
http://www.hibernate.org/ForumMailingli ... AskForHelp
Hibernate version:
Using with spring 1.2.2
Mapping documents:
<class name="org.springframework.samples.jpetstore.domain.Order" table="orders" lazy="false" >
<id name="orderId" type="integer" unsaved-value="null" >
<column name="orderid" sql-type="integer" not-null="true"/>
<generator class="assigned"/>
</id>
<property name="username" column="userid"/>
<property name="orderDate" column="orderdate"/>
<list name="lineItems" inverse="true" lazy="true">
<key>
<column name="orderid" />
</key>
<list-index column="linenum"/>
<one-to-many class="org.springframework.samples.jpetstore.domain.LineItem" />
</list>
</class>
<class name="org.springframework.samples.jpetstore.domain.OrderStatus" table="orderstatus" lazy="false">
<composite-id>
<key-many-to-one name="Order" class="org.springframework.samples.jpetstore.domain.Order" column="orderid" />
<key-property name="lineNumber" column="linenum"/>
<!-- <key-many-to-one name="lineNumber" class="org.springframework.samples.jpetstore.domain.LineItem" column="linenum" />-->
</composite-id>
<property name="status" column="status"/>
</class>
<class name="org.springframework.samples.jpetstore.domain.LineItem" table="lineitem" lazy="false">
<composite-id>
<key-property name="orderId" column="orderid"/>
<key-property name="lineNumber" column="linenum"/>
</composite-id>
<many-to-one name="item" class="org.springframework.samples.jpetstore.domain.Item" >
<column name="itemid" />
</many-to-one>
<property name="quantity" column="quantity"/>
<property name="unitPrice" column="unitprice" not-null="true"/>
</class>
Code between sessionFactory.openSession() and session.close():
Using Spring
Full stack trace of any exception that occurs:
Not getting error
Name and version of the database you are using:
mysql 4.0
The generated SQL (show_sql=true):
insert into orders (userid, orderdate, shipaddr1, shipaddr2, shipcity, shipstate, shipzip, shipcountry, billaddr1, billaddr2, billcity, billstate, billzip, billcountry, courier, totalPrice, billtofirstname, billtolastname, shiptofirstname, shiptolastname, creditcard, exprdate, cardtype, locale, orderid) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
Debug level Hibernate log excerpt:
my OrderStatus.java is as follows--
package org.springframework.samples.jpetstore.domain;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.Iterator;
import java.util.List;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
public class OrderStatus implements Serializable {
/* Private Fields */
private int orderId;
private int lineNumber;
private Date orderDate;
private String status;
private Order order;
protected final Log logger=LogFactory.getLog(getClass());
public OrderStatus()
{
}
/* JavaBeans Properties */
public int getOrderId() {
logger.info("In OrderStatus.getOrderId:::: "+orderId);
return orderId;
}
public void setOrderId(int orderId) {
logger.info("In OrderStatus.setOrderId:::: "+orderId);
this.orderId = orderId;
}
public Date getOrderDate() {
logger.info("In OrderStatus.getOrderDate:::: "+orderDate);
return orderDate;
}
public void setOrderDate(Date orderDate) {
logger.info("In OrderStatus.setOrderDate:::: "+orderDate);
this.orderDate = orderDate;
}
public String getStatus() {
logger.info("In OrderStatus.getStatus:::: "+status);
return status;
}
public void setStatus(String status) {
logger.info("In OrderStatus.setStatus:::: "+status);
this.status = status;
}
public int getLineNumber() {
logger.info("In LineItem.getLineNumber:::: "+lineNumber);
return lineNumber;
}
public void setLineNumber(int lineNumber) {
logger.info("In LineItem.setLineNumber:::: "+lineNumber);
this.lineNumber = lineNumber;
}
public Order getOrder() {
logger.info("In Item.getOrder::::this.order=== "+order);
return order;
}
public void setOrder(Order order) {
logger.info("In Item.setOrder:::: "+order);
this.order = order;
}
}
I want that whenever the order table is updated the orderstatus table should also be updated.
So can anybody help me out what should be the relationship between the orderstatus,order & lineitem
Regards,
Avinash