Author: jochen Date: Wed Jul 19 14:19:55 2006 New Revision: 423613 URL: http://svn.apache.org/viewvc?rev=423613&view=rev Log: A null parameter list is now treated as an empty object array. PR: XMLRPC-96 Submitted-by: Jimisola Laursen, [EMAIL PROTECTED]
Modified: webservices/xmlrpc/trunk/client/src/main/java/org/apache/xmlrpc/client/XmlRpcClientRequestImpl.java webservices/xmlrpc/trunk/src/changes/changes.xml webservices/xmlrpc/trunk/tests/src/test/java/org/apache/xmlrpc/test/JiraTest.java webservices/xmlrpc/trunk/tests/src/test/resources/org/apache/xmlrpc/test/JiraTest.properties Modified: webservices/xmlrpc/trunk/client/src/main/java/org/apache/xmlrpc/client/XmlRpcClientRequestImpl.java URL: http://svn.apache.org/viewvc/webservices/xmlrpc/trunk/client/src/main/java/org/apache/xmlrpc/client/XmlRpcClientRequestImpl.java?rev=423613&r1=423612&r2=423613&view=diff ============================================================================== --- webservices/xmlrpc/trunk/client/src/main/java/org/apache/xmlrpc/client/XmlRpcClientRequestImpl.java (original) +++ webservices/xmlrpc/trunk/client/src/main/java/org/apache/xmlrpc/client/XmlRpcClientRequestImpl.java Wed Jul 19 14:19:55 2006 @@ -25,7 +25,8 @@ * [EMAIL PROTECTED] org.apache.xmlrpc.XmlRpcRequest}. */ public class XmlRpcClientRequestImpl implements XmlRpcRequest { - private final XmlRpcRequestConfig config; + private static final Object[] ZERO_PARAMS = new Object[0]; + private final XmlRpcRequestConfig config; private final String methodName; private final Object[] params; @@ -45,10 +46,7 @@ if (methodName == null) { throw new NullPointerException("The method name must not be null."); } - params = pParams; - if (params == null) { - throw new NullPointerException("The parameter list must not be null."); - } + params = pParams == null ? ZERO_PARAMS : pParams; } /** Creates a new instance. Modified: webservices/xmlrpc/trunk/src/changes/changes.xml URL: http://svn.apache.org/viewvc/webservices/xmlrpc/trunk/src/changes/changes.xml?rev=423613&r1=423612&r2=423613&view=diff ============================================================================== --- webservices/xmlrpc/trunk/src/changes/changes.xml (original) +++ webservices/xmlrpc/trunk/src/changes/changes.xml Wed Jul 19 14:19:55 2006 @@ -9,15 +9,19 @@ Added a missing "synchronized" to the TimingOutCallback. </action> <action dev="jochen" type="fix" due-to="Chris Conrad" - due-to-email="[EMAIL PROTECTED]"> + due-to-email="[EMAIL PROTECTED]" issue="XMLRPC-93"> Fixed an invalid index, that caused the ReflectiveXmlRpcHandler to fail detecting a method. </action> - <action dev="jochen" type="enhancement"> + <action dev="jochen" type="enhancement" issue="XMLRPC-93"> Added documentation for accessing an SSL server. </action> + <action dev="jochen" type="enhancement" due-to="Jimisola Laursen" + due-to-email="[EMAIL PROTECTED]" issue="XMLRPC-96"> + A null parameter list is now treated as an empty object array. + </action> <action dev="jochen" type="fix" due-to="Jimisola Laursen" - due-to-email="[EMAIL PROTECTED]"> + due-to-email="[EMAIL PROTECTED]" issue="XMLRPC-97"> The type long was missing in types.apt. </action> </release> Modified: webservices/xmlrpc/trunk/tests/src/test/java/org/apache/xmlrpc/test/JiraTest.java URL: http://svn.apache.org/viewvc/webservices/xmlrpc/trunk/tests/src/test/java/org/apache/xmlrpc/test/JiraTest.java?rev=423613&r1=423612&r2=423613&view=diff ============================================================================== --- webservices/xmlrpc/trunk/tests/src/test/java/org/apache/xmlrpc/test/JiraTest.java (original) +++ webservices/xmlrpc/trunk/tests/src/test/java/org/apache/xmlrpc/test/JiraTest.java Wed Jul 19 14:19:55 2006 @@ -52,6 +52,7 @@ */ Properties doubledPropertyValues(Properties pMap); } + /** * Handler for [EMAIL PROTECTED] JiraTest#testXMLRPC89()} */ @@ -188,5 +189,34 @@ XMLRPC89Handler handler = (XMLRPC89Handler) factory.newInstance(XMLRPC89Handler.class); Properties result = handler.doubledPropertyValues(values); verifyXMLRPC89Properties(result); + } + + /** Handler for XMLRPC-96 + */ + public static class XMLRPC96Handler { + /** Returns the "Hello, world!" string. + */ + public String getHelloWorld() { + return "Hello, world!"; + } + } + + /** + * Test case for <a href="http://issues.apache.org/jira/browse/XMLRPC-96"> + * XMLRPC-96</a> + */ + public void testXMLRPC96() throws Exception { + for (int i = 0; i < providers.length; i++) { + testXMLRPC96(providers[i]); + } + } + + private void testXMLRPC96(ClientProvider pProvider) throws Exception { + XmlRpcClient client = pProvider.getClient(); + client.setConfig(getConfig(pProvider)); + String s = (String) client.execute(XMLRPC96Handler.class.getName() + ".getHelloWorld", new Object[0]); + assertEquals("Hello, world!", s); + s = (String) client.execute(XMLRPC96Handler.class.getName() + ".getHelloWorld", (Object[]) null); + assertEquals("Hello, world!", s); } } Modified: webservices/xmlrpc/trunk/tests/src/test/resources/org/apache/xmlrpc/test/JiraTest.properties URL: http://svn.apache.org/viewvc/webservices/xmlrpc/trunk/tests/src/test/resources/org/apache/xmlrpc/test/JiraTest.properties?rev=423613&r1=423612&r2=423613&view=diff ============================================================================== --- webservices/xmlrpc/trunk/tests/src/test/resources/org/apache/xmlrpc/test/JiraTest.properties (original) +++ webservices/xmlrpc/trunk/tests/src/test/resources/org/apache/xmlrpc/test/JiraTest.properties Wed Jul 19 14:19:55 2006 @@ -1 +1,2 @@ org.apache.xmlrpc.test.JiraTest$XMLRPC89Handler=org.apache.xmlrpc.test.JiraTest$XMLRPC89HandlerImpl +org.apache.xmlrpc.test.JiraTest$XMLRPC96Handler=org.apache.xmlrpc.test.JiraTest$XMLRPC96Handler --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]