[ http://issues.apache.org/jira/browse/XMLRPC-116?page=all ]
Jimisola Laursen updated XMLRPC-116:
------------------------------------
Attachment: XMLRPC-116.diff
attached the wrong diff previously. this is the one to use
> XmlRpcServlet.init(...) should support init params using reflection and not
> only hardcoded support for the init param "enabledForExtensions"
> --------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: XMLRPC-116
> URL: http://issues.apache.org/jira/browse/XMLRPC-116
> Project: XML-RPC
> Issue Type: Improvement
> Affects Versions: 3.0
> Reporter: Jimisola Laursen
> Priority: Minor
> Attachments: test.zip, XMLRPC-116.diff, XMLRPC-116.diff,
> XMLRPC-116.diff
>
>
> XmlRpcServlet currently doesn't support any other init param other than
> "enabledForExtension" which means that people will have to subclass
> XmlRpcServlet if they want to set e.g. contentLengthOptional.
> After a discussion in xmlrpc-dev the following solution was decided upon:
> 1. iterate over ServletConfig.getInitParameterNames
> 2. foreach init param name check if there is a corresponding setter method
> (setter can only have one argument)
> 3. convert init param value to the data type that the setters argument has
> Q: In step 3) what data types should be supported? byte, short, int, long,
> float, double and String?
> A: Should simply reuse code from the ReflectionUtils. (Don't remember the
> class name right now, but there is existing functionality, which is used by
> the AbstractReflectiveXmlRpcHandlerMapping.
> Q: What exception should be thrown (ServletException?) if no matching method
> can be found in step 2) or data type conversion fails in step 3)?
> A: A ServletException mapping the actual exception (for example
> IllegalArgumentException).
--
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