Enterprise Java Development@TOPIC@

Chapter 27. Project 3 Technical Details

27.1. Data Tier, Business Logic, and EJB/WAR Support
27.2. eSales Access Restrictions
27.3. eSales RMI client Authentication
27.4. eBidbot Access Restrictions
27.5. eBidbot RMI client Authentication
27.6. eSalesWAR Access Restrictions
27.7. eBidbotWAR Access Restrictions
27.8. Interceptors and Validators
27.9. eSales JMS Publisher
27.10. eBidbot JavaSE Subscriber
27.11. eBidbot MDB Subscriber
27.12. eSales EJBTimer
27.13. eBidbot EJBTimer

Provide all functionality from Projects 1 and 2.

Enhance eSales with access restrictions.

Extend your existing eSales RMI Test project and any RMI client(s) to address new authentication requirements.

Enhance eBidbot with access restrictions.

Extend your existing eBidbot RMI Test project and any RMI client(s) to address new authentication requirements.

Enhance eSalesWAR with access restrictions.

Enhance eBidbotWAR with access restrictions.

Implement a "thin slice" of capability to demonstrate JavaEE interceptors using validation.


Extend your eSales implementations to publish a JMS message to a topic whenever information for an auction changes.

  1. Use the emarket-esales-auction topic (JNDI name: topic/ejava/projects/emarket/esales-auction)

  2. Design your JMS Message. You can use any JMS Type and JMS/custom properties you wish. However, know that some subscribers will be filtering on such things as the category or state of an auction.

  3. Have your eSales EJBs publish JMS Messages to the topic when the Auction changes state (created, bid, close).

Add a Java SE JMS subscriber to consume events about Auctions pertaining to a specific category.

Implement a Message Driven Bean within eBidbot to subscribe to auction closed events.

Implement an EJB Timer that will allow eSales to automatically wake-up and expire auctions.

Implement an EJB Timer that will allow eBidbot to periodically wake-up and check on the open auctions that it has bid orders for.