0
ラクダメッセージの石鹸のヘッダーを修正しようとしています。私はメッセージの本文に触れない限り、私は石鹸のヘッダーを変更することができます。メッセージに新しい本文を設定すると、すべてのSOAPヘッダが削除されます。ここで私が使用するコードです。私は同じメッセージを出すメッセージにボディとソープのヘッダーを設定しようとしました。また、setDirectionの部分をコメント解除しても効果はありません。ラクダ石鹸のヘッダーを変更する
Message in = exchange.getIn();
if (in.getHeader(Header.HEADER_LIST) == null) {
in.setHeader(Header.HEADER_LIST, new ArrayList<SoapHeader>());
}
List<SoapHeader> headers = CastUtils.cast((List<?>)in.getHeader(Header.HEADER_LIST));
Pagination pagination = new Pagination();
SoapHeader newHeader = new SoapHeader(new QName("http://de.company.local", "local"), "newHaeder", new JAXBDataBinding(String.class));
SoapHeader pageinationHeader = new SoapHeader(new QName("http://de.company.local", "pagination"), pagination, new JAXBDataBinding(Pagination.class));
//newHeader.setDirection(Direction.DIRECTION_OUT);
headers.clear();
headers.add(newHeader);
headers.add(pageinationHeader);
//exchange.getOut().setHeader("org.apache.cxf.headers.Header.list", headers);
exchange.getIn().setBody("<newContent>test</newContent>");