You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by ri...@apache.org on 2002/09/25 05:55:17 UTC
cvs commit: xml-axis/java/src/org/apache/axis/description OperationDesc.java ParameterDesc.java
rineholt 2002/09/24 20:55:17
Modified: java/src/org/apache/axis/description OperationDesc.java
ParameterDesc.java
Log:
When the same Call object is used repeatedly with only changing the method name
and not specifying parameters the modifying of the operation desc's returnDesc changes
it name the first time
from null to the name of the fist call. Since they are only references this affects
message context and the call objects version. Message Context is cleaned, but not
Call object's version which set's message contexts, Next time around the qname is not null
and no param desc is returned throwing an exception.
Changed it so in the case of null name return a copy.
Revision Changes Path
1.22 +5 -3 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.21
retrieving revision 1.22
diff -u -r1.21 -r1.22
--- OperationDesc.java 24 Sep 2002 21:02:23 -0000 1.21
+++ OperationDesc.java 25 Sep 2002 03:55:16 -0000 1.22
@@ -316,10 +316,12 @@
}
if ((param == null) || (param.getMode() == ParameterDesc.IN)) {
- if (returnDesc.getQName() == null ||
- qname.equals(returnDesc.getQName())) {
- param = returnDesc;
+ if (null == returnDesc.getQName() ){
+ param= new ParameterDesc( returnDesc); //Create copy
param.setQName(qname);
+ }
+ else if ( qname.equals(returnDesc.getQName())) {
+ param = returnDesc;
}
}
1.22 +16 -0 xml-axis/java/src/org/apache/axis/description/ParameterDesc.java
Index: ParameterDesc.java
===================================================================
RCS file: /home/cvs/xml-axis/java/src/org/apache/axis/description/ParameterDesc.java,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -r1.21 -r1.22
--- ParameterDesc.java 18 Sep 2002 16:10:44 -0000 1.21
+++ ParameterDesc.java 25 Sep 2002 03:55:16 -0000 1.22
@@ -102,6 +102,22 @@
}
/**
+ * Constructor-copy
+ *
+ * @param copy the copy
+ */
+ public ParameterDesc(ParameterDesc copy) {
+ name= copy.name;
+ typeEntry= copy.typeEntry;
+ mode= copy.mode;
+ typeQName= copy.typeQName;
+ javaType= copy.javaType;
+ order= copy.order;
+ isReturn= copy.isReturn;
+ mimeType= copy.mimeType;
+ }
+
+ /**
* Constructor
*
* @param name the parameter's fully qualified XML name