@Override
    public void filterProducer(Exchange exchange, WebServiceMessage response) {
        if (exchange != null) {
            processHeaderAndAttachments(exchange.getIn(AttachmentMessage.class), response);
        }
    }
@Test
    public void producerWithHeader() throws Exception {
        // foo is already in the header.in from the parent ExchangeTestSupport
        exchange.getIn().getHeaders().put("headerAttributeKey", "testAttributeValue");
        exchange.getIn().getHeaders().put("headerAttributeElement", new QName("http://shouldBeInHeader", "myElement"));

        filter.filterProducer(exchange, message);

        Assertions.assertThat(message.getAttachments()).isEmpty();

        Assertions.assertThat(message.getSoapHeader().examineAllHeaderElements()).isNotEmpty().hasSize(1);

        Assertions.assertThat(message.getSoapHeader().getAllAttributes()).isNotEmpty().hasSize(2);

    }