• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Ron McLeod
  • Paul Clapham
  • Jeanne Boyarsky
  • Liutauras Vilda
Sheriffs:
  • Rob Spoor
  • Bear Bibeault
  • Tim Cooke
Saloon Keepers:
  • Tim Moores
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Piet Souris
Bartenders:
  • Frits Walraven
  • Himai Minh

Why OrderEJB has getAccount() method?

 
Ranch Hand
Posts: 159
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Dear all
Any one of you studied petstore1.1.2 src?
I hv a question about OrderEJB.java
OrderEJB is a entity bean which is mapping with
Order Table
But i dont know why in OrderEJB existing a function getAccount()?
it seems this funcation is not refered by any other java class. even not by OrderEJB it self
regards
 
walter wang
Ranch Hand
Posts: 159
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
this is OrderEJB.java source code
/*
* $Id: OrderEJB.java,v 1.15.4.12 2001/04/14 00:39:24 lblair Exp $
* Copyright 2001 Sun Microsystems, Inc. All rights reserved.
* Copyright 2001 Sun Microsystems, Inc. Tous droits r�serv�s.
*/
package com.sun.j2ee.blueprints.customer.order.ejb;
import java.util.Collection;
import java.util.Locale;
import java.util.Properties;
import java.rmi.RemoteException;
import javax.ejb.EntityBean;
import javax.ejb.EntityContext;
import javax.ejb.EJBException;
import javax.ejb.FinderException;
import javax.ejb.CreateException;
import javax.ejb.RemoveException;
import javax.naming.NamingException;
import com.sun.j2ee.blueprints.customer.util.EJBUtil;
import com.sun.j2ee.blueprints.customer.util.Calendar;
import com.sun.j2ee.blueprints.customer.util.Address;
import com.sun.j2ee.blueprints.customer.util.CreditCard;
import com.sun.j2ee.blueprints.customer.order.model.LineItem;
import com.sun.j2ee.blueprints.customer.order.model.OrderModel;
import com.sun.j2ee.blueprints.customer.order.model.MutableOrderModel;
import com.sun.j2ee.blueprints.customer.order.dao.OrderDAO;
import com.sun.j2ee.blueprints.customer.order.dao.OrderDAOFactory;
import com.sun.j2ee.blueprints.customer.account.ejb.Account;
import com.sun.j2ee.blueprints.customer.account.ejb.AccountHome;
import com.sun.j2ee.blueprints.customer.order.exceptions.OrderAppException;
import com.sun.j2ee.blueprints.customer.order.exceptions.OrderDAOSysException;
import com.sun.j2ee.blueprints.customer.order.exceptions.OrderDAOAppException;
import com.sun.j2ee.blueprints.customer.order.exceptions.OrderDAODBUpdateException;
import com.sun.j2ee.blueprints.customer.order.exceptions.OrderDAODupKeyException;
import com.sun.j2ee.blueprints.customer.order.exceptions.OrderDAOFinderException;
import com.sun.j2ee.blueprints.util.tracer.Debug;
/**
* Entity Bean implementation of Order EJB.Uses
* the Account EJB to get account info associated
* with an order.
*
* @see Account
*/
public class OrderEJB implements EntityBean {
private MutableOrderModel orderDetails;
private EntityContext context;
private transient OrderDAO orderDao;
public OrderEJB() {}
public Integer ejbCreate (Collection lineItems, Address shipToAddr,
Address billToAddr, String shipToFirstName,
String shipToLastName, String billToFirstName,
String billToLastName, CreditCard chargeCard,
String carrier, String userId,
double totalPrice, Locale locale) throws CreateException,
OrderAppException {
// set the instance data
this.orderDetails = new MutableOrderModel(-1, lineItems, shipToAddr,
billToAddr, shipToFirstName,
shipToLastName, billToFirstName,
billToLastName, chargeCard,
carrier, userId,
Calendar.getInstance(),
Order.PENDING, totalPrice, locale);
try {
OrderDAO dao = getDAO();
int id = dao.create(this.orderDetails);
this.orderDetails.setOrderId(id);
return(new Integer(id));
} catch (OrderDAODBUpdateException se) {
context.setRollbackOnly();
throw new CreateException (se.getMessage());
} catch (OrderDAOAppException oapp) {
throw new OrderAppException(oapp.getMessage());
} catch (OrderDAOSysException osys) {
throw new EJBException(osys.getMessage());
}
}
public void ejbRemove() throws RemoveException {
try {
OrderDAO dao = getDAO();
dao.remove(((Integer)context.getPrimaryKey()).intValue());
} catch (OrderDAODBUpdateException se) {
context.setRollbackOnly();
throw new RemoveException (se.getMessage());
} catch (OrderDAOSysException osys) {
throw new EJBException(osys.getMessage());
}
}
public void setEntityContext(EntityContext ec) {
context = ec;
}
public void ejbLoad() {
try{
OrderDAO dao = getDAO();
Integer id = (Integer)context.getPrimaryKey();
this.orderDetails = dao.load(id.intValue());
} catch (OrderDAOFinderException se) {
throw new EJBException (se.getMessage());
} catch (OrderDAOSysException ss) {
throw new EJBException (ss.getMessage());
}
}
public void ejbStore() {
try{
OrderDAO dao = getDAO();
dao.store(this.orderDetails);
} catch (OrderDAOSysException se) {
throw new EJBException (se.getMessage());
} catch (OrderDAOAppException sa) {
throw new EJBException (sa.getMessage());
}
}
/**
* @param key is the orderID for a particular order
*/
public Integer ejbFindByPrimaryKey(Integer key) throws FinderException {
try{
OrderDAO dao = getDAO();
Integer findReturn = dao.findByPrimaryKey(key.intValue());
this.orderDetails = dao.load(key.intValue());
return(findReturn);
} catch (OrderDAOFinderException se) {
throw new FinderException ("SQL Exception in find by primary key");
} catch (OrderDAOSysException ss) {
throw new EJBException (ss.getMessage());
}
}
/**
* @return a Collection of references to all the order EJBs
* for the userId.
*/
public Collection ejbFindUserOrders( String userId )
throws FinderException {
try{
OrderDAO dao = getDAO();
return(dao.findUserOrders(userId));
} catch (OrderDAOFinderException se) {
throw new FinderException
("SQL Exception in finding collection of primary keys");
} catch (OrderDAOSysException ss) {
throw new EJBException (ss.getMessage());
}
}
public void unsetEntityContext() {}
public void ejbActivate() {
}
public void ejbPassivate() {
this.orderDao = null;
}
public void ejbPostCreate(Collection lineItems, Address shipToAddr,
Address billToAddr, String shipToFirstName,
String shipToLastName, String billToFirstName,
String billToLastName, CreditCard chargeCard,
String carrier, String userId,double totalPrice, Locale locale){}
/**
* @return the OrderModel containing the details
* of an order
*/
public OrderModel getDetails() {
return(new OrderModel(orderDetails.getOrderId(),
orderDetails.getLineItems(),
orderDetails.getShipToAddr(),
orderDetails.getBillToAddr(),
orderDetails.getShipToFirstName(),
orderDetails.getShipToLastName(),
orderDetails.getBillToFirstName(),
orderDetails.getBillToLastName(),
orderDetails.getCreditCard(),
orderDetails.getCarrier(),
orderDetails.getUserId(),
orderDetails.getOrderDate(),
orderDetails.getStatus(),
orderDetails.getTotalPrice(),
orderDetails.getLocale()));
}
/**
* @return the Account EJB associated with this order
*/
public Account getAccount() throws FinderException {
try {
AccountHome acctHome = EJBUtil.getAccountHome();
return acctHome.findByPrimaryKey(this.orderDetails.getUserId());
} catch (FinderException fe) {
// Account mysterious disappeared..
Debug.print(fe);
throw new FinderException(fe.getMessage());
} catch (NamingException ne) {
// Account mysterious disappeared..
Debug.print(ne);
throw new EJBException(ne);
} catch (RemoteException re) {
Debug.print(re);
throw new EJBException(re);
}
}
private OrderDAO getDAO() throws OrderDAOSysException {
if(orderDao == null) {
orderDao = OrderDAOFactory.getDAO();
}
return orderDao;
}
}
 
You showed up just in time for the waffles! And this tiny ad:
Building a Better World in your Backyard by Paul Wheaton and Shawn Klassen-Koop
https://coderanch.com/wiki/718759/books/Building-World-Backyard-Paul-Wheaton
reply
    Bookmark Topic Watch Topic
  • New Topic