Initalization bugs 1) handleInitParameters always fails and 2) 
registerPublicMethods never adds void methods
------------------------------------------------------------------------------------------------------------

                 Key: XMLRPC-124
                 URL: http://issues.apache.org/jira/browse/XMLRPC-124
             Project: XML-RPC
          Issue Type: Bug
          Components: Source
    Affects Versions: 3.1
            Reporter: Jimisola Laursen


1)

A bug was inserted when the patch for XMLRPC-116 was changed/refactored 
slightly.

In handleInitParameters you call ReflectionUtil.setProperty(server, name, 
value) where server is an XmlRpcServletServer . This class does not have any 
setters for init parameters such as "enabledForExtensions" or 
"contentLengthOptional", so reflection fails. I believe that methods on 
XmlRpcServerConfig are reflection should be used on (this is what I did in my 
patch) and therefore

ReflectionUtil.setProperty(server, name, value)

should change to

ReflectionUtil.setProperty(server.getConfig(), name, value).

2)

The latter issue was due to voidMethodEnabled not being set (here: to true) 
using isEnabledForExtension prior to public method being registered and 
therefore
XmlRpcServlet.newPropertyHandlerMapping:~180

should change to

        
mapping.setVoidMethodEnabled(server.getConfig().isEnabledForExtensions());
        mapping.load(Thread.currentThread().getContextClassLoader(), url);

from

        mapping.load(Thread.currentThread().getContextClassLoader(), url);
        
mapping.setVoidMethodEnabled(server.getConfig().isEnabledForExtensions());

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to