Description of the test vehicles copied from the EE 11 Platform TCK:
==== Persistence Test Vehicles
The persistence tests are run in a variety of "vehicles" from which the entity manager is obtained and the transaction type is defined for use. There are six vehicles used for these tests:
* `stateless3`: Bean-managed stateless session bean using
a Jakarta Transactions `EntityManager`; uses UserTransaction` methods for transaction demarcation (Full Platform Only)
* `stateful3`: Container-managed stateful session bean using
`@PersistenceContext` annotation to inject Jakarta Transactions `EntityManager;` uses container-managed transaction demarcation with a transaction attribute (required) (Full Platform Only)
* `appmanaged`: Container-managed stateful session bean using `@PersistenceUnit` annotation to inject an `EntityManagerFactory`; the `EntityManagerFactory` API is used to create an Application-Managed Jakarta Transactions `EntityManager`, and uses the container to demarcate transactions (Full Platform Only)
* `appmanagedNoTx`: Container-managed stateful session bean using `@PersistenceUnit` annotation to inject an `EntityManagerFactory`; the `EntityManagerFactory` API is used to create an Application-Managed Resource Local `EntityManager`, and uses the `EntityTransaction` APIs to control transactions (Full Platform Only)
* `pmservlet`: Servlet that uses the `@PersistenceContext` annotation at the class level and then uses JNDI lookup to obtain the `EntityManager`; alternative to declaring the persistence context dependency via a `persistence-context-ref` in `web.xml` and uses `UserTransaction` methods for transaction demarcation
* `puservlet`: Servlet that injects an `EntityManagerFactory` using the `@PersistenceUnit` annotation to create a to Resource Local `EntityManager`, and uses `EntityTransaction` APIs for transaction demarcation
Thanks for your help!
Scott