jmsnell 2003/01/15 14:04:39
Modified: java/src/org/apache/axis/description OperationDesc.java
Log:
Fixing a problem with the getOutputParamByQName method. See bug #16141
Revision Changes Path
1.31 +13 -9 xml-axis/java/src/org/apache/axis/description/OperationDesc.java
Index: OperationDesc.java
===================================================================
RCS file:
/home/cvs/xml-axis/java/src/org/apache/axis/description/OperationDesc.java,v
retrieving revision 1.30
retrieving revision 1.31
diff -u -r1.30 -r1.31
--- OperationDesc.java 17 Dec 2002 13:35:03 -0000 1.30
+++ OperationDesc.java 15 Jan 2003 22:04:38 -0000 1.31
@@ -359,18 +359,22 @@
ParameterDesc param = null;
for (Iterator i = parameters.iterator(); i.hasNext();) {
- param = (ParameterDesc) i.next();
+ ParameterDesc pnext = (ParameterDesc)i.next();
if (param.getQName().equals(qname) &&
- param.getMode() != ParameterDesc.IN)
- return param;
+ param.getMode() != ParameterDesc.IN) {
+ param = pnext;
+ break;
+ }
}
- if (null == returnDesc.getQName() ){
- param= new ParameterDesc( returnDesc); //Create copy
- param.setQName(qname);
- }
- else if ( qname.equals(returnDesc.getQName())) {
- param = returnDesc;
+ if (param == null) {
+ if (null == returnDesc.getQName() ){
+ param= new ParameterDesc( returnDesc); //Create copy
+ param.setQName(qname);
+ }
+ else if ( qname.equals(returnDesc.getQName())) {
+ param = returnDesc;
+ }
}
return param;