You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by dk...@apache.org on 2009/11/14 03:22:45 UTC
svn commit: r836092 -
/cxf/trunk/tools/wsdlto/frontend/jaxws/src/main/java/org/apache/cxf/tools/wsdlto/frontend/jaxws/processor/internal/ParameterProcessor.java
Author: dkulp
Date: Sat Nov 14 02:22:44 2009
New Revision: 836092
URL: http://svn.apache.org/viewvc?rev=836092&view=rev
Log:
Another tck regression
Modified:
cxf/trunk/tools/wsdlto/frontend/jaxws/src/main/java/org/apache/cxf/tools/wsdlto/frontend/jaxws/processor/internal/ParameterProcessor.java
Modified: cxf/trunk/tools/wsdlto/frontend/jaxws/src/main/java/org/apache/cxf/tools/wsdlto/frontend/jaxws/processor/internal/ParameterProcessor.java
URL: http://svn.apache.org/viewvc/cxf/trunk/tools/wsdlto/frontend/jaxws/src/main/java/org/apache/cxf/tools/wsdlto/frontend/jaxws/processor/internal/ParameterProcessor.java?rev=836092&r1=836091&r2=836092&view=diff
==============================================================================
--- cxf/trunk/tools/wsdlto/frontend/jaxws/src/main/java/org/apache/cxf/tools/wsdlto/frontend/jaxws/processor/internal/ParameterProcessor.java (original)
+++ cxf/trunk/tools/wsdlto/frontend/jaxws/src/main/java/org/apache/cxf/tools/wsdlto/frontend/jaxws/processor/internal/ParameterProcessor.java Sat Nov 14 02:22:44 2009
@@ -295,7 +295,25 @@
}
continue;
} else if (isSamePart(inpart, outpart)) {
- addParameter(method, getParameterFromPart(method, outpart, JavaType.Style.INOUT));
+ boolean found = false;
+ for (JavaParameter p : method.getParameters()) {
+ if (p.getQName().equals(ProcessorUtil.getElementName(outpart))) {
+ p.setHolder(true);
+ p.setHolderName(javax.xml.ws.Holder.class.getName());
+ String holderClass = p.getClassName();
+ if (JAXBUtils.holderClass(holderClass) != null) {
+ holderClass = JAXBUtils.holderClass(holderClass).getName();
+ }
+ p.setClassName(holderClass);
+ p.getAnnotations().clear();
+ p.setStyle(JavaType.Style.INOUT);
+ p.annotate(new WebParamAnnotator());
+ found = true;
+ }
+ }
+ if (!found) {
+ addParameter(method, getParameterFromPart(method, outpart, JavaType.Style.INOUT));
+ }
continue;
} else if (!isSamePart(inpart, outpart)) {
if (oob) {