Java EE 7 SDK

Samples Main Page

# The TransactionScoped Annotation CDI Sample Application

This sample application uses the `@TransactionScoped` annotation on a bean and injects this bean within a transactional context.

## Description

This demo uses a servlet to inject two beans annotated with the `@TransactionScoped` annotation. The example is divided in three scenarios:

- Scenario 1 demonstrates that all injections of a bean within a single transaction use the same bean instance.
- Scenario 2 demonstrates that injections of a bean in different transactions use different bean instances.
- Scenario 3 demonstrates that beans annotated with the `@TransactionScoped` annotation must be invoked within a transactional context.

User can click on the submit button in provided index.html or invoke servlet at `http://<host>:<port>/<context-root>/TransactionScopedServlet` runs the three scenarios and presents the result as HTML output.

## Building, Deploying, and Running the Application

Perform the following steps to build, deploy, and run the application:

1. Set up your build environment and configure the application server with which the build system has to work by following the common build instructions.
2. `app_dir` is the sample application base directory: `samples_install_dir/javaee7/cdi/transaction-scoped`.
3. Change directory to `app_dir.`
4. Build, deploy, and run the sample application using the `run` outcome.

   `mvn clean verify cargo:run`

5. Use the `clean` outcome to undeploy the sample application and to remove the temporary directories such as `build` and `dist`.

   `mvn clean`

## Troubleshooting

If you have problems when running the application, refer to the troubleshooting document.

Copyright © 1997-2013 Oracle and/or its affiliates. All rights reserved.