Listing 1: A sample entity

@Entity
@Table(name="BIDS")
public class Bid implements Serializable {
    @Column(name="BID_DATE")
    private Date bidDate;

    @Id
    @GeneratedValue(strategy=GenerationType.AUTO)
    @Column(name="BID_ID")
 				private Long bidId;
    @Column(name="BID_PRICE")
				private Double bidPrice;
    @ManyToOne
    @JoinColumn(name="BID_ITEM_ID", referencedColumnName="ITEM_ID")
				private Item item;
    private BidStatus bidStatus;
    ...    public Bid() {
    }

    
  
    public Long getBidId() {
        return bidId;
    }
        
....}


Listing 2: A sample EJB 3 session bean

@Remote
public interface PlaceBid {
    Bid addBid(Bid bid);
}


@Stateless
public class PlaceBidBean implements PlaceBid {
@Resource(name = "jms/BidQueue")
    private static Destination destination;

@Resource(name = "jms/QueueConnectionFactory")
    private static ConnectionFactory;

public PlaceBidBean() {
    }


public Bid addBid(Bid bid) {
        
}


 }


Listing 3: Simple EJB 3 Web service

@WebService(serviceName="PlaceBidService", targetNamespace = "urn:ActionBazaarPlaceBidService")
@SOAPBinding(style = SOAPBinding.Style.DOCUMENT)
@Stateless
public class PlaceBidBean {

   @WebMethod                                         
   @WebResult(name = "bidNumber")
   public Long addBid(String userId, Long itemId,
     Double bidPrice) throws BidException {
          ..
}


Listing 4: DAO class using JpaTemplate

public class BidSpringEAO extends BasicSpringEAO implements BidEAO {
  

    
    public Bid addBid(Long itemId, String bidderId, double bidPrice) {
      Bid bid = new Bid();
      Item item =  (Item)this.getJpaTemplate().find(Item.class,itemId);
      bid.setItem(item);
      bid.setBidPrice(bidPrice);
      bid.setBidStatus(BidStatus.NEW);
      Bidder bidder =  (Bidder)getJpaTemplate().find(Bidder.class,bidderId);
      ...
      bid.setBidder(bidder);
     	this.getJpaTemplate().persist(bid);
      
     	return bid;
    }

   
    
   }


Listing 5: Spring configuration for using JPA

<bean id="entityManager"
  class="org.springframework.jndi.JndiObjectFactoryBean">
    <property name="jndiName">
	    <value>java:comp/env/actionBazaar</value>
	</property>
     <property name="resourceRef">
	    <value>true</value>
	  </property>
</bean>

 <bean id="bidService" class="actionbazaar.buslogic.BidServiceBean">
    <property name="bidEAO">
      <ref bean="bidEAO"/>
    </property>
    <property name="itemEAO">
      <ref bean="itemEAO"/>
    </property>
  </bean>


 <bean id="bidEAO"
    class="actionbazaar.persistence.eao.BidSpringEAO"
    autowire="byType">
     <property name="entityManager" ref="entityManager"/>
</bean>