Uh, you forgot the corresponding patches to XmlRpcServer.java. This class is useless without those changes.
- a [EMAIL PROTECTED] writes: > dlr 2002/08/14 10:19:53 > > Added: src/java/org/apache/xmlrpc SystemHandler.java > Log: > system.multicall handler added by Adam Megacz, with documentation and > minor code spruce ups from me. > > Revision Changes Path > 1.1 xml-rpc/src/java/org/apache/xmlrpc/SystemHandler.java > > Index: SystemHandler.java > =================================================================== > package org.apache.xmlrpc; > > /* > * The Apache Software License, Version 1.1 > * > * > * Copyright(c) 2001 The Apache Software Foundation. All rights > * reserved. > * > * Redistribution and use in source and binary forms, with or without > * modification, are permitted provided that the following conditions > * are met: > * > * 1. Redistributions of source code must retain the above copyright > * notice, this list of conditions and the following disclaimer. > * > * 2. Redistributions in binary form must reproduce the above copyright > * notice, this list of conditions and the following disclaimer in > * the documentation and/or other materials provided with the > * distribution. > * > * 3. The end-user documentation included with the redistribution, > * if any, must include the following acknowledgment: > * "This product includes software developed by the > * Apache Software Foundation(http://www.apache.org/)." > * Alternately, this acknowledgment may appear in the software itself, > * if and wherever such third-party acknowledgments normally appear. > * > * 4. The names "XML-RPC" and "Apache Software Foundation" must > * not be used to endorse or promote products derived from this > * software without prior written permission. For written > * permission, please contact [EMAIL PROTECTED] > * > * 5. Products derived from this software may not be called "Apache", > * nor may "Apache" appear in their name, without prior written > * permission of the Apache Software Foundation. > * > * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED > * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES > * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE > * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR > * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, > * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES(INCLUDING, BUT NOT > * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF > * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND > * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, > * OR TORT(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT > * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF > * SUCH DAMAGE. > * ==================================================================== > * > * This software consists of voluntary contributions made by many > * individuals on behalf of the Apache Software Foundation. For more > * information on the Apache Software Foundation, please see > * <http://www.apache.org/>. > */ > > import org.apache.xmlrpc.*; > import java.util.*; > > /** > * Implements the XML-RPC standard system.* methods (such as > * <code>system.multicall</code>. > * > * @author <a href="mailto:[EMAIL PROTECTED]">Adam Megacz</a> > */ > public class SystemHandler > { > private XmlRpcServer server = null; > > /** > * Creates a new instance which delegates its multicalls to the > * specified {@link org.apache.xmlrpc.XmlRpcServer}. > * > * @param server The server to delegate RPC calls to. > */ > protected SystemHandler(XmlRpcServer server) > { > this.server = server; > } > > /** > * The <code>system.multicall</code> handler performs several RPC > * calls at a time. > * > * @param request The request containing multiple RPC calls. > * @return The RPC response. > */ > public Vector multicall(Vector request) > { > Vector response = new Vector(); > for (int i = 0; i < request.size(); i++) > { > try > { > Hashtable call = (Hashtable) request.elementAt(i); > String methodName = (String) call.get("methodName"); > Vector params = (Vector) call.get("params"); > Object handler = server.getHandler(methodName); > Vector v = new Vector(); > v.addElement(server.invokeHandler(handler, methodName, params, >null, null)); > response.addElement(v); > } > catch (Exception x) > { > String message = x.toString(); > int code = x instanceof XmlRpcException ? ((XmlRpcException) >x).code : 0; > Hashtable h = new Hashtable(); > h.put("faultString", message); > h.put("faultCode", new Integer(code)); > response.addElement(h); > } > } > return response; > } > } > > > > -- Sick of HTML user interfaces? www.xwt.org