When Axis utilizes reflection it uses the getDeclaredXXX methods rather than just getXXX methods.  Why does axis need access to class private information?  The java code emitted by wsdl2java doesn't create beans with private methods, private fields, or private constructors for marshalling\unmarshalling.
 
Explanation?  Intentional?
 
As currently designed the security manager must be set up with java.lang.RunTimePermission "accessDeclaredMembers". 
 
 
getDeclaredConstructor
getDeclaredMethod
getDeclaredField
vs.
getConstructor
getMethod
getField
 
 
A few examples:
org\apache\axis\client\ServiceFactory.java
  Service.class.getDeclaredConstructor( formalArgs);
vs:
  Service.class.getConstructor(formalArgs);
org/apache/axis/wsdl/fromjava/Emitter.java
  cls.getDeclaredConstructors();
vs.
  cls.getConstructors();
 
 
thanks in advance

Reply via email to