Thanks Dims!
-Dug
[EMAIL PROTECTED] on 03/06/2003 08:11:53 AM
Please respond to [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
cc:
Subject: cvs commit: xml-axis/java/src/org/apache/axis/utils/bytecode
ParamNameExtractor.java
dims 2003/03/06 05:11:53
Modified: java/src/org/apache/axis/utils/bytecode
ParamNameExtractor.java
Log:
Fix for 17704 - Incorrect error msg for Dynamic Proxy objects
from Ed Snible ( [EMAIL PROTECTED] )
Notes:
Slightly modified version instead of "c.getSuperclass() ==
java.lang.reflect.Proxy.class" am using the Proxy API
"Proxy.isProxyClass(c)"
Revision Changes Path
1.7 +7 -0
xml-axis/java/src/org/apache/axis/utils/bytecode/ParamNameExtractor.java
Index: ParamNameExtractor.java
===================================================================
RCS file:
/home/cvs/xml-axis/java/src/org/apache/axis/utils/bytecode/ParamNameExtractor.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- ParamNameExtractor.java 11 Dec 2002 22:38:28 -0000
1.6
+++ ParamNameExtractor.java 6 Mar 2003 13:11:53 -0000
1.7
@@ -60,6 +60,7 @@
import java.io.IOException;
import java.lang.reflect.Method;
+import java.lang.reflect.Proxy;
/**
* This class retieves function parameter names from bytecode built
with
@@ -85,6 +86,12 @@
// get declaring class
Class c = method.getDeclaringClass();
+
+ // Don't worry about it if the class is a Java dynamic proxy
+ if(Proxy.isProxyClass(c)) {
+ return null;
+ }
+
try {
// get a parameter reader
ParamReader pr = new ParamReader(c);