I have a JSF/EJB/JPA application which uses container managed persistence. There is one case where a call is made to an external service via HTTP which has a cost, this
Transaction semantics and state-fullness are considered implementation details in EJB3. An implementation can decide whether to use bean or container managed transactions.