*/
public void testBA1_9()
throws Exception
{
final String conversationId = getConversationId() ;
final BAInteropParticipantCompletedState state = new BAInteropParticipantCompletedState(BusinessActivityConstants.WSBA_ACTION_FAILED) ;
ProxyConversation.setConversationState(conversationId, state) ;
try
{
final String serviceURI = ProxyURIRewriting.rewriteURI(conversationId, getParticipantURI()) ;
final CoordinationContextType context = BAInteropUtil.createAtomicOutcomeCoordinationContext(getSourceCoordinatorURI()) ;
getParticipantStub().compensationFail(serviceURI, context) ;
assertTrue("Participant did not issue Completed", state.waitForParticipantCompleted(getTestTimeout())) ;
final BusinessActivityTerminator terminator = BAInteropUtil.registerTerminator(context, context.getIdentifier().getValue()) ;
terminator.cancel() ;
state.waitForCompletion(getTestTimeout()) ;
}
finally
{
ProxyConversation.clearConversationState(conversationId) ;
}
assertTrue("Conversation did not complete successfully", state.isSuccessful()) ;
}