Changes Report

Release History

VersionDateDescription
3.12007-Aug-31
3.030-Aug-2006
3.0rc127-Jul-2006
3.0b124-Jun-2006
3.0a117-Feb-2005
2.0.2Not yet released
2.0.128-Dec-2005


Release 3.1 - 2007-Aug-31

TypeChangesBy
addIntroduced the "enabledForExceptions" property.jochen
addAdded support for void methods, if extensions are turned on.jochen
addAdded PropertyHandlerMapping.load(ClassLoader, Map). Fixes XMLRPC-118. Thanks to Perry Nguyen.jochen
addThe authentication handler, type converter and requestprocessor factories are now configurable as properties of the XmlRpcServlet. Fixes XMLRPC-117. Thanks to Jimisola Laursen.jochen
addAtomic properties of XmlRpcServer are now configurable as init parameters in the XmlRpcServlet. Fixes XMLRPC-116. Thanks to Jimisola Laursen.jochen
fixReworked the WebServer/ThreadPool framework in order to ensure a clean shutdown.jochen
fixThe configuration framework, as introduced by XMLRPC-116, was applicable to the configuration only, and not to the XmlRpcServlet, or the XmlRpcServletServer. Fixes XMLRPC-124. Thanks to Jimisola Laursen.jochen
addIntroduced the method AbstractReflectiveHandlerMapping.isHandlerMethod(). This should allow users to prevent remote invocation of certain methods, for example initialization stuff.jochen
addThe ClientFactory is now able to use a custom name for the remote handler. So far, it was always using the interface name. Fixes XMLRPC-126. Thanks to Eugene Prokopiev.jochen
addIt is now possible to have other objects than strings as map keys. Fixes XMLRPC-127.jochen
addMade extending the XmlRpcCommonsTransportFactory easier. Fixes XMLRPC-131. Thanks to Steffen Pingel.jochen
addAdded support for redirects. Fixes XMLRPC-132. Thanks to Andrew Norman.jochen
fixFixed an invalid example in the "advanced" document. Fixes XMLRPC-136. Thanks to Mario Linke.jochen
fixAn invalid dateTime value is now causing a more informative error message. Fixes XMLRPC-140.jochen
fixThe redirect handling (XMLRPC-132) wasn't actually working, because it treated an URI as a charset name. Fixes XMLRPC-144. Thanks to Steve Cohen.jochen
fixAddress matching in the Webserver wasn't actually working, because casting of integers to bytes was implemented wrong. Fixes XMLRPC-145. Thanks to Gamaliel Amaudruz.jochen
fixMake the HttpClient creation in XmlRpcCommonsTransport and the URLConnection creation in XmlRpcSunHttpTransport protected. This is required for cookie support.jochen
fixThe WebServer was producing invalid error responses, if contentLengthOptional was set.jochen
fixIf the server was throwing an XmlRpcException, then the fault code and fault string weren't given to the client. Fixes XMLRPC-113. Thanks to Juha Syrjala.jochen
fixThe WebServer replies with an HTTP error 401 now, if the client uses chunked encoding. Fixes XMLRPC-114.jochen
fixThe properties "Extension-Name", "Specification-Vendor", "Specification-Version", "Specification-Title", "Implementation-Vendor-Id", "Implementation-Vendor" and "Implementation-Version" are now present in the MANIFEST files. Fixes XMLRPC-74.jochen
fixAn NPE was thrown, if the clients request didn't contain a "params" element. Fixes XMLRPC-115.jochen
fixThe method TimingOutCallback.waitForResponse is now checking, whether a response has already arrived before waiting. Thanks to Jonathan Oexner.jochen
fixFixed a serious performance problem, if the XML parser was sending large content in small pieces. This could happen, for example, if the content contained a large number of character entities. Fixes XMLRPC-119.jochen
fixThe configuration of the reply timeout in the commons transport was wrong. Fixes XMLRPC-120. Thanks to Juho Yli-Krekola.jochen
fixThe DateParser is now treating an empty string as null. Fixes XMLRPC-133. Thanks to Carsten Wolters.jochen
fixFixed a broken link referring to an "SSL with Jetty" HOW-TO. Fixes XMLRPC-134. Thanks to Sir Bode Rafael.jochen
fixThe XmlRpcRequestParser and XmlRpcResponseParser didn't reset their internal state within startDocument(). Consequently, they haven't been reusable. Fixes XMLRPC-141. Thanks to Keith McNeill.jochen

Release 3.0 - 30-Aug-2006

TypeChangesBy
fixFixed the spelling of CharSetXmlWriterFactory, which made the class basically useless. Fixes XMLRPC-100. Thanks to Matt Preston.jochen
fixFixed that the WebServer didn't wait before retrying to bind to the server socket. Thanks to Stanislav Miklik.jochen
fixFixed an endless loop, if the WebServer threw a BindException. Thanks to Stanislav Miklik.jochen
fixA NullPointerException was triggered, if the BasicEncoding was set to null. Fixes XMLRPC-104. Thanks to Landon Fuller.jochen
fixBasic authentication didn't work, if the base64 encoded string with user name and password contained more than 72 characters. Fixes XMLRPC-104. Thanks to Landon Fuller.jochen
fixBasic authentication didn't work with the commons http transport, because the commons httpclient wasn't configured to send credentials by default. (It was waiting for a challenge.)jochen
fixBasic authentication didn't work with the commons http transport, if user name or password contained non-ASCI I characters. Fixes XMLRPC-105.jochen
fixThe releaseWorker() method wasn't called for the server. Thanks to Randall Bryant.jochen
fixFixed a bug in the web servers thread pool, which caused that threads haven't been reused.jochen
fixDocumentation improvements Thanks to Jason McLaurin.jochen
addAdded documentation on custom data types.jochen
addThe XmlRpcLiteHttpTransport is now creating a socket in a protected methods. This allows to switch to alternative socket implementations. Fixes XMLRPC-107. Thanks to Catalin Hritcu.jochen
fixMore documentation fixes. Fixes XMLRPC-108. Thanks to Catalin Hritcu.jochen
fixFixed an invalid FAQ example. Fixes XMLRPC-109. Thanks to Catalin Hritcu.jochen

Release 3.0rc1 - 27-Jul-2006

TypeChangesBy
fixAdded a missing "synchronized" to the TimingOutCallback. Thanks to Alan Burlison.jochen
fixFixed an invalid index, that caused the ReflectiveXmlRpcHandler to fail detecting a method. Fixes XMLRPC-94. Thanks to Chris Conrad.jochen
addAdded documentation for accessing an SSL server. Fixes XMLRPC-93.jochen
addA null parameter list is now treated as an empty object array. Fixes XMLRPC-96. Thanks to Jimisola Laursen.jochen
fixThe type long was missing in types.apt. Fixes XMLRPC-97. Thanks to Jimisola Laursen.jochen

Release 3.0b1 - 24-Jun-2006

TypeChangesBy
addAdd connectionTimeout and replyTimeout in RPC clients. CommonsTransport support connection and reply timeout, liteHttpTransport only support reply timeouthgomez
fixThe value created by HttpUtil.encodeBasicAuthentication(...) was terminated with a line feed, which is invalid for use in HTTP headers. Thanks to Marek Ludha.jochen
addadd support for BigDecimal and BigInteger in extensions.hgomez
fixNested object arrays could not be parsed. Thanks to Walter Mundt.jochen
fixThe "string" tag could not be parsed. Thanks to Walter Mundt.jochen
addAdded the DynamicHandlerMapping. Fixes XMLRPC-76. Thanks to Walter Mundt.jochen
fixXmlRpcException.printStackTrace() was throwing an NPE, if no linked exception was present. Thanks to Walter Mundt.jochen
addThe project is now splitted into three jar files: common, client, and server.jochen
fixThe Base64 encoder doesn't accept buffers of length 0. Such a buffer was passed, if the byte array to encode has itself length 0. Thanks to Brad Karp.jochen
fixHTTP/1.0 requires a content-length header. The Lite HTTP transport doesn't support HTTP/1.1, so it refuses the "contentLengthOptional" setting from now on. Fixes XMLRPC-79.jochen
addAdded support for initializable handlers. Thanks to Mark Petrovic.jochen
addAdded the TimingOutCallback, which allows to abort a request, if the server doesn't reply within a given time. Fixes XMLRPC-56. Thanks to Ken Weiner.jochen
fixFixed that dateTime values must not include timezone values.hgomez
addThe XmlRpcServlet allows to configure its "enabledForExtensions" value as an init parameter. Fixes XMLRPC-84. Thanks to Denis Carniel.jochen
addIt is now possible to create and initialize handler objects per request.jochen
fixAdded partial support for automatic conversion of object arrays to lists, or vectors. Same for maps to hash tables, or properties. Fixes XMLRPC-89.jochen

Release 3.0a1 - 17-Feb-2005

TypeChangesBy
addComplete rewrite, adding vendor extensions: Streaming mode, support for all primitive Java types, nulls, DOM elements, and JAXB objects.jochen

Release 2.0.2 - Not yet released

TypeChangesBy
fixA missing increment in LiteXmlRpcTransport.initConnection() prevented, that the method could finally fail, resulting in a never ending loop. Fixes XMLRPC-67. Thanks to Mike Bailey.jochen

Release 2.0.1 - 28-Dec-2005

TypeChangesBy
fixThe Webserver class was unable to handle basic authentication, because the BASE64 codec wasn't initialized. Fixes XMLRPC-68. Thanks to Johan Oskarson.jochen
fixThe characters 0x20, 0xe000, and 0x10000 have been escaped without reason. Fixes XMLRPC-69. Thanks to Claude Zervas.jochen
fixThe wrong version of commons-codec was downloaded by build.xml. Fixes XMLRPC-73. Thanks to Thomas Mohaupt.jochen
addAdded the CommonsXmlRpcTransportFactory. Thanks to Jimisola Laursen.jochen
addAdded the possibility to specify a timezone for interpreting incoming date values. Thanks to Henry Story.jochen
addUpgrade to commons-httpclient 3.0.jochen