public void rollback () throws UnknownTransactionException, SystemException
{
final AddressingContext addressingContext = AddressingContext.createRequestContext(_completionCoordinator, MessageId.getMessageId()) ;
final RequestCallback callback = new RequestCallback() ;
final CompletionInitiatorProcessor completionInitiator = CompletionInitiatorProcessor.getProcessor() ;
completionInitiator.registerCallback(_id, callback) ;
try
{
CompletionCoordinatorClient.getClient().sendRollback(addressingContext, new InstanceIdentifier(_id)) ;
callback.waitUntilTriggered() ;
}
catch (final Throwable th)
{
th.printStackTrace() ;
throw new SystemException() ;
}
finally
{
completionInitiator.removeCallback(_id) ;
}
if (callback.hasTriggered())
{
if (callback.receivedAborted())