Timer Service: Credit Card Processor Example (Enterprise JavaBeans 3.1)

 

Description

As we’ve seen with message-driven beans, a client request is not the only way to start a business taskflow. In addition to listening on incoming messages like MDB, events can be fired based on some timed criteria. EJB handles this via the Timer Service.

EJB 3.1 has seen significant advancements to the bean provider’s view of the Timer Service with a completely revamped natural-language syntax. This example models a credit card processing operation, which at the beginning of every hour will process all queued transactions. Scheduling the job is done both programmatically via the javax.ejb.TimerService API, as well as declaratively via the @Timeout and ^Schedule annotations.

Source Listing

Following is a full listing of all source code used in this runnable example.

Implementation Resources

CreditCardTransaction.java

tmp99-183tmp99-184

CreditCardTransactionProcessingLocalBusiness.java

tmp99-185tmp99-186

CreditCardTransactionProcessingBean.java

tmp99-187

tmp99-188

tmp99-189

tmp99-190

tmp99-191

Next post:

Previous post: