[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/e49ef9db
Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/e49ef9db
Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/e49ef9db

Branch: refs/heads/3.1.x-fixes
Commit: e49ef9dbdd0fed54ae62439638b25d49d51c5c5e
Parents: 80121de
Author: Daniel Kulp <dk...@apache.org>
Authored: Mon Mar 27 15:15:58 2017 -0400
Committer: Daniel Kulp <dk...@apache.org>
Committed: Mon Mar 27 15:52:23 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/e49ef9db/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 7291478..b3a4d25 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));

Reply via email to