Enterprise Java Development@TOPIC@

Chapter 27. Project 3 Technical Details

27.1. Data Tier, Business Logic, and EJB/WAR Support
27.2. eLeague Access Restrictions
27.3. eClub Access Restrictions
27.4. Remote Client Authentication
27.5. Remote Test Authentication
27.6. eLeague Web-UI Access Restrictions
27.7. Interceptors and Validators
27.8. eSport JMS
27.8.1. eLeague JMS Publisher
27.8.2. eClub MDB Subscriber
27.9. eLeague EJBTimer

Provide all functionality from Projects 1 and 2.

Enhance eLeague with access restrictions.

Enhance eClub with access restrictions.

Extend your existing client code to optionally accept credentials. No credentials provided should invoke a remote method/URI as an anonymous user. Credentials provided should invoke a remote method/URI using the identity associated with the credentials.

Extend your existing remote Test project to address new authentication requirements.

Enhance Web-UIs with authentication and access restrictions for any use case you implement requiring access control. Note that your selected use case may not require an authenticated user -- which would render this section not relevant.

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

In this portion of the project we are going to send and receive a JMS message using publish/subscribe JMS techniques.


Implement an EJB Timer that will allow eLeague to automatically wake-up and send out schedule reminders for contests that have not yet finished. Depending on the provided test data, you might want to limit the number of reminders sent. The main goal of this requirement is that you make use of an EJBTimer and that you trigger the JMS filtered MDB logic in eClub.

Your timer can be declarative or programmatic. However, the programmatic approach is recommended so that -- with a remote interface -- your IT integration test can have control over when the events should start and end.