Using Message-Driven Beans to Receive Messages Asynchronously .................................. 640
Managing Distributed Transactions ........................................................................................ 642
Using the JMS API with Application Clients and Web Components ................................. 644
Further Information about JMS ....................................................................................................... 644
34 Java Message Service Examples .....................................................................................................645
Writing Simple JMS Applications ................................................................................................... 646
A Simple Example of Synchronous Message Receives .......................................................... 646
A Simple Example of Asynchronous Message Consumption .............................................. 655
A Simple Example of Browsing Messages in a Queue ........................................................... 660
Running JMS Clients on Multiple Systems ............................................................................. 664
Writing Robust JMS Applications ................................................................................................... 670
A Message Acknowledgment Example ................................................................................... 670
A Durable Subscription Example ............................................................................................. 672
A Local Transaction Example .................................................................................................. 674
An Application That Uses the JMS API with a Session Bean ....................................................... 680
Writing the Application Components for the clientsessionmdb Example ..................... 680
Creating Resources for the clientsessionmdb Example ..................................................... 683
Building, Deploying, and Running the clientsessionmdb Example Using NetBeans
IDE ............................................................................................................................................... 683
Building, Deploying, and Running the clientsessionmdb Example Using Ant .............. 685
An Application That Uses the JMS API with an Entity ................................................................. 686
Overview of the clientmdbentity Example Application .................................................... 686
Writing the Application Components for the clientmdbentity Example ....................... 688
Creating Resources for the clientmdbentity Example ....................................................... 690
Building, Deploying, and Running the clientmdbentity Example Using NetBeans
IDE ............................................................................................................................................... 691
Building, Deploying, and Running the clientmdbentity Example Using Ant ................ 693
An Application Example That Consumes Messages from a Remote Server .............................. 695
Overview of the consumeremote Example Modules .............................................................. 695
Writing the Module Components for the consumeremote Example ................................... 696
Creating Resources for the consumeremote Example ........................................................... 697
Using Two Application Servers for the consumeremote Example ....................................... 697
Building, Deploying, and Running the consumeremoteModules Using NetBeans IDE ... 697
Building, Deploying, and Running the consumeremote Modules Using Ant ..................... 699
An Application Example That Deploys a Message-Driven Bean on Two Servers ..................... 701
Contents
The Java EE 6 Tutorial,Volume II • December 200920