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
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