@Test
public void testProcessMustUnderstandHeadersUnderstoodSoap12() throws Exception {

	MessageFactory messageFactory = MessageFactory.newInstance(SOAPConstants.SOAP_1_2_PROTOCOL);
	SOAPMessage request = messageFactory.createMessage();
	SOAPHeaderElement header = request.getSOAPHeader()
			.addHeaderElement(new QName("http://www.springframework.org", "Header"));
	header.setMustUnderstand(true);
	header.setRole(SOAPConstants.URI_SOAP_1_2_ROLE_NEXT);
	SoapMessageFactory factory = new SaajSoapMessageFactory(messageFactory);
	MessageContext context = new DefaultMessageContext(new SaajSoapMessage(request), factory);
	expect(interceptorMock.understands(isA(SoapHeaderElement.class))).andReturn(true);
	replay(interceptorMock);
	SoapEndpointInvocationChain chain = new SoapEndpointInvocationChain(new Object(),
			new SoapEndpointInterceptor[] { interceptorMock });
	boolean result = dispatcher.handleRequest(chain, context);
	Assert.assertTrue("Header not understood", result);
	verify(interceptorMock);
}