* @throws java.io.IOException for any transport errors.
*/
public void sendSoapFault(final SoapFault soapFault, final AddressingProperties addressingProperties, final InstanceIdentifier identifier)
throws SoapFault, IOException
{
final TerminationParticipantPortType port = getPort(addressingProperties, identifier, soapFaultAction);
final ExceptionType fault = new ExceptionType();
// we pass the fault type, reason and subcode. we cannot pass the detail and header elements as they are
// built from Kev's element types rather than dom element types. this is all we need anyway since we only
// see faults containing those values
fault.setSoapFaultType(soapFault.getSoapFaultType().getValue());
fault.setReason(soapFault.getReason());
fault.setSubCode(soapFault.getSubcode());
port.faultOperation(fault);
}