Author: dkulp
Date: Wed Aug 1 16:24:12 2012
New Revision: 1368099
URL: http://svn.apache.org/viewvc?rev=1368099&view=rev
Log:
[CXF-4449] Make sure the xmlbinding root elements are qualified
Modified:
cxf/trunk/rt/bindings/xml/src/main/java/org/apache/cxf/binding/xml/XMLBindingFactory.java
Modified:
cxf/trunk/rt/bindings/xml/src/main/java/org/apache/cxf/binding/xml/XMLBindingFactory.java
URL:
http://svn.apache.org/viewvc/cxf/trunk/rt/bindings/xml/src/main/java/org/apache/cxf/binding/xml/XMLBindingFactory.java?rev=1368099&r1=1368098&r2=1368099&view=diff
==============================================================================
---
cxf/trunk/rt/bindings/xml/src/main/java/org/apache/cxf/binding/xml/XMLBindingFactory.java
(original)
+++
cxf/trunk/rt/bindings/xml/src/main/java/org/apache/cxf/binding/xml/XMLBindingFactory.java
Wed Aug 1 16:24:12 2012
@@ -41,6 +41,8 @@ import org.apache.cxf.interceptor.URIMap
import org.apache.cxf.interceptor.WrappedOutInterceptor;
import org.apache.cxf.service.model.BindingInfo;
import org.apache.cxf.service.model.BindingOperationInfo;
+import org.apache.cxf.service.model.MessageInfo;
+import org.apache.cxf.service.model.MessagePartInfo;
import org.apache.cxf.service.model.OperationInfo;
import org.apache.cxf.service.model.ServiceInfo;
@@ -84,7 +86,9 @@ public class XMLBindingFactory extends A
info.setName(new QName(service.getName().getNamespaceURI(),
service.getName().getLocalPart() +
"XMLBinding"));
- for (OperationInfo op : service.getInterface().getOperations()) {
+ for (OperationInfo op : service.getInterface().getOperations()) {
+ adjustConcreteNames(op.getInput());
+ adjustConcreteNames(op.getOutput());
BindingOperationInfo bop =
info.buildOperation(op.getName(), op.getInputName(),
op.getOutputName());
info.addOperation(bop);
@@ -93,4 +97,14 @@ public class XMLBindingFactory extends A
return info;
}
+ private void adjustConcreteNames(MessageInfo mi) {
+ if (mi != null) {
+ for (MessagePartInfo mpi : mi.getMessageParts()) {
+ if (!mpi.isElement()) {
+ //if it's not an element, we need to make it one
+ mpi.setElementQName(mpi.getName());
+ }
+ }
+ }
+ }
}