User Transaction Management MBean, a client can demarcate transaction boundaries for a subset of profile-management operations, by:
starting a user transaction
performing some profile-management operations, across a number of different profiles (in the context of that transaction)
then committing the transaction — resulting in an atomic update of profile state.
The SLEE binds user transactions to the
java.security.auth.Subject associated with the invoking thread.
For all user-transaction management, the thread invoking the management operation must therefore be associated with an authenticated subject.
The command console interface handles this task as part of the client-login process.
(Other user-provided m-lets installed in the Rhino SLEE will need to take care of this requirement in their own way.)
Furthermore, accessing a Profile MBean while a user transaction is active:
enlists that MBean into that user transaction
changes that MBean to the read/write state
puts any changes to the profile in context of the user transaction.
Committing or rolling back profiles enlisted in user transactions