[CXF-6523] Fix issues if part names of out-of-band headers match the name of the wrapper part
Project: http://git-wip-us.apache.org/repos/asf/cxf/repo Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/d3b88b5f Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/d3b88b5f Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/d3b88b5f Branch: refs/heads/master Commit: d3b88b5f4090b75273697d8ba7c79e281aba305e Parents: f133df0 Author: Daniel Kulp <[email protected]> Authored: Mon Mar 27 15:15:58 2017 -0400 Committer: Daniel Kulp <[email protected]> Committed: Mon Mar 27 15:15:58 2017 -0400 ---------------------------------------------------------------------- .../cxf/jaxws/interceptors/WrapperClassInInterceptor.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cxf/blob/d3b88b5f/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/interceptors/WrapperClassInInterceptor.java ---------------------------------------------------------------------- diff --git a/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/interceptors/WrapperClassInInterceptor.java b/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/interceptors/WrapperClassInInterceptor.java index d7b0225..702cc10 100644 --- a/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/interceptors/WrapperClassInInterceptor.java +++ b/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/interceptors/WrapperClassInInterceptor.java @@ -133,7 +133,12 @@ public class WrapperClassInInterceptor extends AbstractPhaseInterceptor<Message> int count = 0; for (MessagePartInfo part : messageInfo.getMessageParts()) { if (Boolean.TRUE.equals(part.getProperty(ReflectionServiceFactoryBean.HEADER))) { - MessagePartInfo mpi = wrappedMessageInfo.getMessagePart(part.getName()); + MessagePartInfo mpi = null; + for (MessagePartInfo mpi2 : wrappedMessageInfo.getMessageParts()) { + if (mpi2.getConcreteName().equals(part.getConcreteName())) { + mpi = mpi2; + } + } if (mpi != null && lst.hasValue(mpi)) { count++; newParams.put(part, lst.get(mpi));
