{
Element header = (Element) hit.next();
ISoapHeaderHandler handler = headerHandlersMapping.get(header.getQName());
if (headerCannotBeUnderstood(handler, header, endpointHandler))
{
SoapFault fault = new SoapFault(documentFactory);
fault.setCode(SoapConstants.SOAP12_FAULT_MUST_UNDERSTAND, null, null);
fault.addReason("en", "A mandatory SOAP header cannot be understood: " + header.toString());
return fault;
}
if (handler != null)
{
SoapFault fault = handler.handleHeader(header, inMessage);
if (fault != null)
{
return fault;
}
}