<?xml version="1.0" encoding="utf-8"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>json-rpc-java - /</title><description>WebSVN RSS feed - json-rpc-java</description><lastBuildDate>Sun, 20 May 2012 04:52:26 +0000</lastBuildDate><generator>WebSVN 2.3.1</generator><link>http://svn.metaparadigm.com/wsvn/json-rpc-java/?op=log&amp;isdir=1&amp;max=40&amp;</link><atom:link href="http://svn.metaparadigm.com/wsvn/json-rpc-java/?op=rss&amp;isdir=1&amp;" rel="self" type="application/rss+xml" />
<item><pubDate>Mon, 01 Oct 2007 07:24:30 +0000</pubDate><dc:creator>mclark</dc:creator><title>Rev 49 -- Update Changelog message</title><description>&lt;div&gt;&lt;strong&gt;mclark -- 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Update Changelog message&lt;/div&gt;~ /trunk/webapps/jsonrpc/CHANGES.txt&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=49</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=49</guid></item>
<item><pubDate>Mon, 01 Oct 2007 07:23:55 +0000</pubDate><dc:creator>mclark</dc:creator><title>Rev 48 -- Update Changelog</title><description>&lt;div&gt;&lt;strong&gt;mclark -- 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Update Changelog&lt;/div&gt;~ /tags/1.0/webapps/jsonrpc/CHANGES.txt&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=48</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=48</guid></item>
<item><pubDate>Fri, 28 Sep 2007 13:09:03 +0000</pubDate><dc:creator>mclark</dc:creator><title>Rev 47 -- Add images back to webapp that were mistakenly dropped in ...</title><description>&lt;div&gt;&lt;strong&gt;mclark -- 12 file(s) modified&lt;/strong&gt;&lt;br/&gt;Add images back to webapp that were mistakenly dropped in the cvs to subversion conversion&lt;/div&gt;+ /tags/1.0/webapps/jsonrpc/images&lt;br /&gt;+ /tags/1.0/webapps/jsonrpc/images/json.gif&lt;br /&gt;+ /tags/1.0/webapps/jsonrpc/images/json.png&lt;br /&gt;+ /tags/1.0/webapps/jsonrpc/images/shadow-bottom-left-2.gif&lt;br /&gt;+ /tags/1.0/webapps/jsonrpc/images/shadow-bottom-left.gif&lt;br /&gt;+ /tags/1.0/webapps/jsonrpc/images/shadow-bottom-right-2.gif&lt;br /&gt;+ /tags/1.0/webapps/jsonrpc/images/shadow-bottom-right.gif&lt;br /&gt;+ /tags/1.0/webapps/jsonrpc/images/shadow-bottom.gif&lt;br /&gt;+ /tags/1.0/webapps/jsonrpc/images/shadow-left-top.gif&lt;br /&gt;+ /tags/1.0/webapps/jsonrpc/images/shadow-left.gif&lt;br /&gt;+ /tags/1.0/webapps/jsonrpc/images/shadow-right-top.gif&lt;br /&gt;+ /tags/1.0/webapps/jsonrpc/images/shadow-right.gif&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=47</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=47</guid></item>
<item><pubDate>Fri, 28 Sep 2007 12:53:17 +0000</pubDate><dc:creator>mclark</dc:creator><title>Rev 46 -- Remove CVS header version from Changes file</title><description>&lt;div&gt;&lt;strong&gt;mclark -- 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Remove CVS header version from Changes file&lt;/div&gt;~ /trunk/webapps/jsonrpc/CHANGES.txt&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=46</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=46</guid></item>
<item><pubDate>Fri, 28 Sep 2007 12:52:52 +0000</pubDate><dc:creator>mclark</dc:creator><title>Rev 45 -- Remove CVS header version from Changes file</title><description>&lt;div&gt;&lt;strong&gt;mclark -- 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Remove CVS header version from Changes file&lt;/div&gt;~ /tags/1.0/webapps/jsonrpc/CHANGES.txt&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=45</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=45</guid></item>
<item><pubDate>Fri, 28 Sep 2007 12:50:58 +0000</pubDate><dc:creator>mclark</dc:creator><title>Rev 44 -- Don&apos;t use 1.0.1 in war name - instead use 1.0 ...</title><description>&lt;div&gt;&lt;strong&gt;mclark -- 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Don&apos;t use 1.0.1 in war name - instead use 1.0 so site urls still work.&lt;/div&gt;~ /tags/1.0/build.xml&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=44</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=44</guid></item>
<item><pubDate>Fri, 28 Sep 2007 12:46:47 +0000</pubDate><dc:creator>mclark</dc:creator><title>Rev 43 -- Update build.xml version to 1.0.1</title><description>&lt;div&gt;&lt;strong&gt;mclark -- 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Update build.xml version to 1.0.1&lt;/div&gt;~ /trunk/build.xml&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=43</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=43</guid></item>
<item><pubDate>Fri, 28 Sep 2007 12:46:12 +0000</pubDate><dc:creator>mclark</dc:creator><title>Rev 42 -- Update build.xml version to 1.0.1</title><description>&lt;div&gt;&lt;strong&gt;mclark -- 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Update build.xml version to 1.0.1&lt;/div&gt;~ /tags/1.0/build.xml&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=42</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=42</guid></item>
<item><pubDate>Fri, 28 Sep 2007 12:31:44 +0000</pubDate><dc:creator>ablake</dc:creator><title>Rev 41 -- Update build.xml version to 1.0.1</title><description>&lt;div&gt;&lt;strong&gt;ablake -- 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Update build.xml version to 1.0.1&lt;/div&gt;~ /tags/1.0/build.xml&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=41</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=41</guid></item>
<item><pubDate>Fri, 28 Sep 2007 12:20:44 +0000</pubDate><dc:creator>ablake</dc:creator><title>Rev 40 -- Add back CHANGES.txt that was mistakenly dropped with the subversion ...</title><description>&lt;div&gt;&lt;strong&gt;ablake -- 2 file(s) modified&lt;/strong&gt;&lt;br/&gt;Add back CHANGES.txt that was mistakenly dropped with the subversion migration&lt;br /&gt;
Change version to 1.0.1&lt;/div&gt;+ /tags/1.0/webapps/jsonrpc/CHANGES.txt&lt;br /&gt;~ /tags/1.0/webapps/jsonrpc/header.jspinc&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=40</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=40</guid></item>
<item><pubDate>Fri, 28 Sep 2007 12:20:00 +0000</pubDate><dc:creator>ablake</dc:creator><title>Rev 39 -- * A theoretical exploit exists where the BeanSerializer will  ...</title><description>&lt;div&gt;&lt;strong&gt;ablake -- 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;* A theoretical exploit exists where the BeanSerializer will&lt;br /&gt;
  instantiate and invoke set methods on a class that should not&lt;br /&gt;
  be exposed to the client by crafting of a JSON-RPC request&lt;br /&gt;
  with a classHint of the target class (limited to Bean methods).&lt;br /&gt;
  A user derived bridge implementation should be able to control&lt;br /&gt;
  access to which classes can be serialized.&lt;br /&gt;
  The JSONRPCBridge.resolveClass method has been made protected&lt;br /&gt;
  so that a client application can derive it to control access.&lt;br /&gt;
  -- Michael Clark &amp;lt;&lt;a href=&quot;mailto:michael@metaparadigm.com&quot;&gt;michael@metaparadigm.com&lt;/a&gt;&gt;&lt;br /&gt;
&lt;br /&gt;
* Add ExceptionTransformer interface and interface to&lt;br /&gt;
  JSONRPCBridge to transform exception objects returned&lt;br /&gt;
  to the client.&lt;br /&gt;
  -- Rhys Yarranton, rhys dot yarranton at albertasolutions dot com&lt;/div&gt;~ /tags/1.0/src/com/metaparadigm/jsonrpc/JSONRPCBridge.java&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=39</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=39</guid></item>
<item><pubDate>Fri, 28 Sep 2007 12:15:06 +0000</pubDate><dc:creator>ablake</dc:creator><title>Rev 38 -- Update CHANGES.txt log message</title><description>&lt;div&gt;&lt;strong&gt;ablake -- 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Update CHANGES.txt log message&lt;/div&gt;~ /trunk/webapps/jsonrpc/CHANGES.txt&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=38</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=38</guid></item>
<item><pubDate>Fri, 28 Sep 2007 12:10:36 +0000</pubDate><dc:creator>ablake</dc:creator><title>Rev 37 -- * A theoretical exploit exists where the BeanSerializer will  ...</title><description>&lt;div&gt;&lt;strong&gt;ablake -- 2 file(s) modified&lt;/strong&gt;&lt;br/&gt;* A theoretical exploit exists where the BeanSerializer will&lt;br /&gt;
  instantiate and invoke set methods on a class that should not&lt;br /&gt;
  be exposed to the client by crafting of a JSON-RPC request&lt;br /&gt;
  with a classHint of the target class (limited to Bean methods).&lt;br /&gt;
  A user derived bridge implementation should be able to control&lt;br /&gt;
  access to which classes can be serialized.  This allows a client&lt;br /&gt;
  application to control access to their classes (by package prefix)&lt;br /&gt;
  -- Michael Clark &amp;lt;&lt;a href=&quot;mailto:michael@metaparadigm.com&quot;&gt;michael@metaparadigm.com&lt;/a&gt;&gt;&lt;/div&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONRPCBridge.java&lt;br /&gt;~ /trunk/webapps/jsonrpc/CHANGES.txt&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=37</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=37</guid></item>
<item><pubDate>Fri, 17 Aug 2007 01:10:09 +0000</pubDate><dc:creator>ablake</dc:creator><title>Rev 36 -- minor html fix</title><description>&lt;div&gt;&lt;strong&gt;ablake -- 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;minor html fix&lt;/div&gt;~ /trunk/webapps/jsonrpc/manual.jsp&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=36</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=36</guid></item>
<item><pubDate>Fri, 17 Aug 2007 01:09:31 +0000</pubDate><dc:creator>ablake</dc:creator><title>Rev 35 -- add javadoc.  no functional code changes.</title><description>&lt;div&gt;&lt;strong&gt;ablake -- 15 file(s) modified&lt;/strong&gt;&lt;br/&gt;add javadoc.  no functional code changes.&lt;/div&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONRPCBridge.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONRPCResult.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/localarg/impl/JSONRPCBridgeServletArgResolver.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/localarg/LocalArgController.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/localarg/LocalArgResolver.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/reflect/ClassAnalyzer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/reflect/ClassData.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/reflect/MethodKey.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/reflect/package.html&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/serializer/AbstractSerializer.java&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/serializer/impl/package.html&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/serializer/ObjectMatch.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/serializer/Serializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/serializer/SerializerState.java&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=35</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=35</guid></item>
<item><pubDate>Tue, 24 Jul 2007 13:10:32 +0000</pubDate><dc:creator>ablake</dc:creator><title>Rev 34 -- * Switch from java.util logging to SLF4J.   (the ...</title><description>&lt;div&gt;&lt;strong&gt;ablake -- 14 file(s) modified&lt;/strong&gt;&lt;br/&gt;* Switch from java.util logging to SLF4J.&lt;br /&gt;
  (the simple logging facade for java--see &lt;a href=&quot;http://slf4j.org&quot; target=&quot;_blank&quot;&gt;http://slf4j.org&lt;/a&gt;)&lt;br /&gt;
  so that json-rpc-java can be easily integrated with projects&lt;br /&gt;
  that use other java logging systems.  The test webapp still&lt;br /&gt;
  uses java.util logging (although it&apos;s now via SLF4J.)&lt;br /&gt;
  The json-rpc-java library now has a dependency on slf4j.&lt;br /&gt;
* Added convenience target &apos;uninstall&apos; that removes .war and&lt;br /&gt;
  the expanded .war folder from tomcat.&lt;br /&gt;
  -- Arthur Blake &amp;lt;&lt;a href=&quot;mailto:arthur_blake@users.sourceforge.net&quot;&gt;arthur_blake@users.sourceforge.net&lt;/a&gt;&gt;&lt;/div&gt;~ /trunk/build.xml&lt;br /&gt;+ /trunk/lib&lt;br /&gt;+ /trunk/lib/slf4j-api-1.4.2.jar&lt;br /&gt;+ /trunk/lib/slf4j-jdk14-1.4.2.jar&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/callback/CallbackController.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONRPCBridge.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONRPCBridgeState.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONRPCServlet.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/localarg/LocalArgController.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/reflect/ClassAnalyzer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/serializer/impl/BeanSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/serializer/impl/ReferenceSerializer.java&lt;br /&gt;~ /trunk/webapps/jsonrpc/CHANGES.txt&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=34</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=34</guid></item>
<item><pubDate>Tue, 24 Jul 2007 03:14:18 +0000</pubDate><dc:creator>ablake</dc:creator><title>Rev 33 -- change whitespace</title><description>&lt;div&gt;&lt;strong&gt;ablake -- 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;change whitespace&lt;/div&gt;~ /trunk/build.xml&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=33</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=33</guid></item>
<item><pubDate>Fri, 20 Apr 2007 11:18:25 +0000</pubDate><dc:creator>mclark</dc:creator><title>Rev 32 -- * Add asynchrounous support to the constructor JSONRpcClient   ...</title><description>&lt;div&gt;&lt;strong&gt;mclark -- 2 file(s) modified&lt;/strong&gt;&lt;br/&gt;* Add asynchrounous support to the constructor JSONRpcClient&lt;br /&gt;
  constructor. Previously the constructor would make a&lt;br /&gt;
  synchronous call to system.listmethods. Now if the&lt;br /&gt;
  constructor is called with a function as the first&lt;br /&gt;
  argument, it will construct the proxy asynchrously,&lt;br /&gt;
  calling the function when this is done.&lt;br /&gt;
  -- Michael Clark &amp;lt;&lt;a href=&quot;mailto:michael@metaparadigm.com&quot;&gt;michael@metaparadigm.com&lt;/a&gt;&gt;&lt;/div&gt;~ /trunk/webapps/jsonrpc/CHANGES.txt&lt;br /&gt;~ /trunk/webapps/jsonrpc/jsonrpc.js&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=32</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=32</guid></item>
<item><pubDate>Fri, 20 Apr 2007 06:36:57 +0000</pubDate><dc:creator>mclark</dc:creator><title>Rev 31 -- Change version in header from CVS to Subversion trunk</title><description>&lt;div&gt;&lt;strong&gt;mclark -- 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Change version in header from CVS to Subversion trunk&lt;/div&gt;~ /trunk/webapps/jsonrpc/header.jspinc&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=31</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=31</guid></item>
<item><pubDate>Fri, 20 Apr 2007 04:01:38 +0000</pubDate><dc:creator>mclark</dc:creator><title>Rev 30 -- Make ExceptionTransformer Seriliazable</title><description>&lt;div&gt;&lt;strong&gt;mclark -- 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Make ExceptionTransformer Seriliazable&lt;/div&gt;~ /trunk/src/com/metaparadigm/jsonrpc/ExceptionTransformer.java&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=30</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=30</guid></item>
<item><pubDate>Fri, 20 Apr 2007 03:58:04 +0000</pubDate><dc:creator>mclark</dc:creator><title>Rev 29 -- change built jar to jsonrpc-svn-trunk.jar</title><description>&lt;div&gt;&lt;strong&gt;mclark -- 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;change built jar to jsonrpc-svn-trunk.jar&lt;/div&gt;~ /trunk/build.xml&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=29</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=29</guid></item>
<item><pubDate>Fri, 20 Apr 2007 03:53:16 +0000</pubDate><dc:creator>mclark</dc:creator><title>Rev 28 -- * Add ExceptionTransformer interface and interface to   JSONRPCBridge ...</title><description>&lt;div&gt;&lt;strong&gt;mclark -- 18 file(s) modified&lt;/strong&gt;&lt;br/&gt;* Add ExceptionTransformer interface and interface to&lt;br /&gt;
  JSONRPCBridge to transform exception objects returned&lt;br /&gt;
  to the client.&lt;br /&gt;
  -- Rhys Yarranton, rhys dot yarranton at albertasolutions dot com&lt;br /&gt;
&lt;br /&gt;
* Make Hello test page use async callback.&lt;br /&gt;
* Modify unit test page to allow running a single test by&lt;br /&gt;
  clicking on a link.&lt;br /&gt;
* Add HttpServletResponseLocalArgResolver and pass&lt;br /&gt;
  HttpServletResponse object into calls so that exported&lt;br /&gt;
  methods can get access to it.&lt;br /&gt;
* Add RawJSONObjectSerializer and RawJSONArraySerializer to allow&lt;br /&gt;
  methods to return hand constructed JSON object representations&lt;br /&gt;
* Formatting cleanups in example Dictionary client&lt;br /&gt;
  -- Michael Clark &amp;lt;&lt;a href=&quot;mailto:michael@metaparadigm.com&quot;&gt;michael@metaparadigm.com&lt;/a&gt;&gt;&lt;/div&gt;+ /trunk/src/com/metaparadigm/jsonrpc/ExceptionTransformer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONRPCBridge.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONRPCServlet.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONSerializer.java&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/localarg/impl/HttpServletResponseArgResolver.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/localarg/LocalArgController.java&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/serializer/impl/RawJSONArraySerializer.java&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/serializer/impl/RawJSONObjectSerializer.java&lt;br /&gt;~ /trunk/test/src/com/metaparadigm/dict/Database.java&lt;br /&gt;~ /trunk/test/src/com/metaparadigm/dict/Definition.java&lt;br /&gt;~ /trunk/test/src/com/metaparadigm/dict/DictClient.java&lt;br /&gt;~ /trunk/test/src/com/metaparadigm/dict/DictClientException.java&lt;br /&gt;~ /trunk/test/src/com/metaparadigm/jsonrpc/test/Test.java&lt;br /&gt;~ /trunk/webapps/jsonrpc/CHANGES.txt&lt;br /&gt;~ /trunk/webapps/jsonrpc/hello.js&lt;br /&gt;x /trunk/webapps/jsonrpc/tutorial&lt;br /&gt;~ /trunk/webapps/jsonrpc/unit.js&lt;br /&gt;~ /trunk/webapps/jsonrpc/unit.jsp&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=28</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=28</guid></item>
<item><pubDate>Fri, 20 Apr 2007 03:20:04 +0000</pubDate><dc:creator>mclark</dc:creator><title>Rev 27 -- Import CVS trunk snapshot: Changes from 1.0rc2  * Add ...</title><description>&lt;div&gt;&lt;strong&gt;mclark -- 101 file(s) modified&lt;/strong&gt;&lt;br/&gt;Import CVS trunk snapshot: Changes from 1.0rc2&lt;br /&gt;
&lt;br /&gt;
* Add a new overloaded registerObject call that allows the&lt;br /&gt;
  caller to specify the class/interface to be used for exporting&lt;br /&gt;
  methods on the object (exported methods are restricted to&lt;br /&gt;
  just the interface class).&lt;br /&gt;
  -- Ian Sollars, ian at sollars dot gmail dot com&lt;br /&gt;
* Add back ObjectInstance wrapper class to allow us to store&lt;br /&gt;
  the interface to be used to export for the associated object.&lt;br /&gt;
  -- Michael Clark &amp;lt;&lt;a href=&quot;mailto:michael@metaparadigm.com&quot;&gt;michael@metaparadigm.com&lt;/a&gt;&gt;&lt;br /&gt;
&lt;br /&gt;
* License changed from LGPL to Apache License, Version 2.0 after&lt;br /&gt;
  approval from all authors/contributors&lt;br /&gt;
* Update JSP pages to use common header and footer and new style&lt;br /&gt;
* Remove eval function from test.jsp&lt;br /&gt;
* Simplify async callback in unit test&lt;br /&gt;
  -- Michael Clark &amp;lt;&lt;a href=&quot;mailto:michael@metaparadigm.com&quot;&gt;michael@metaparadigm.com&lt;/a&gt;&gt;&lt;br /&gt;
&lt;br /&gt;
* Allow derived versions of JSONRPCServlet to override a&lt;br /&gt;
  findBridge method to provide a custom method of locating&lt;br /&gt;
  the JSONRPCBridge object.&lt;br /&gt;
  -- Todd Lindner, tlindner at dynax dot com&lt;br /&gt;
&lt;br /&gt;
* Add java.math.BigDecimal marshalling/unmarshalling support&lt;br /&gt;
  to NumberSerializer.&lt;br /&gt;
  -- Michael Clark &amp;lt;&lt;a href=&quot;mailto:michael@metaparadigm.com&quot;&gt;michael@metaparadigm.com&lt;/a&gt;&gt;&lt;br /&gt;
&lt;br /&gt;
* Fix JavaScript client failure the HTTP authentication in Firefox&lt;br /&gt;
  -- Mark F Murphy, markm at tyrell dot com&lt;br /&gt;
&lt;br /&gt;
* Remove auto-creation of session specific bridge and associated&lt;br /&gt;
  options from JSONRPCServlet (ie. default is to invoke against&lt;br /&gt;
  objects in the global bridge). Updated manual, tutorial,&lt;br /&gt;
  JSONRPCServlet and JSONRPCBridge docs to reflect this.&lt;br /&gt;
* Made JSONSerializer instance global to reduce memory used by&lt;br /&gt;
  session specific bridges. The global JSONSerializer instance&lt;br /&gt;
  can be changed or added to, to allow for custom Serializers.&lt;br /&gt;
* Remove keepalive disable option from JSONRPCServlet as the&lt;br /&gt;
  Connection: keepalive header was causing problems and is not&lt;br /&gt;
  required for keepalives in all modern browsers.&lt;br /&gt;
* Remove enableReferences from API, references are enabled when&lt;br /&gt;
  this first call to registerReference or registerCallableReference.&lt;br /&gt;
  This keeps the bridge state smaller if references are not enabled.&lt;br /&gt;
* Move most bridge state data into a new class JSONRPCBridgeState&lt;br /&gt;
* Remove ObjectInstance inner class from JSONRPCBridge and change&lt;br /&gt;
  code to use Object directly in the objectMap&lt;br /&gt;
* Remove reference registrations from unit.jsp as they are not used&lt;br /&gt;
* Add more Java docs to various classes and methods.&lt;br /&gt;
* Move reflection related code out of JSONRPCBridge and into&lt;br /&gt;
    com.metaparadigm.jsonrpc.reflect.ClassAnalyzer.&lt;br /&gt;
* Move inner classes ClassData and MethodKey from JSONRPCBridge into&lt;br /&gt;
    com.metaparadigm.jsonrpc.reflect package.&lt;br /&gt;
* Move inner class CallbackData from JSONRPCBridge into&lt;br /&gt;
    com.metaparadigm.jsonrpc.callback.CallbackData.&lt;br /&gt;
* Move callback implementation details from JSONRPCBridge into:&lt;br /&gt;
    com.metaparadigm.jsonrpc.callback.CallbackController.&lt;br /&gt;
* Move inner class CallbackData from JSONRPCBridge into&lt;br /&gt;
    com.metaparadigm.jsonrpc.callback.CallbackData.&lt;br /&gt;
* Move local argument processing out of JSONRPCBridge into&lt;br /&gt;
    com.metaparadigm.jsonrpc.localarg.LocalArgController.&lt;br /&gt;
* Move localarg implementations (HttpSession, etc) into:&lt;br /&gt;
    com.metaparadigm.jsonrpc.localarg.impl.&lt;br /&gt;
* Add a simple perl script utility for making a smaller JS file.&lt;br /&gt;
* Add unregisterClass, unregisterObject, lookupClass and lookupObject&lt;br /&gt;
  methods to JSONRPCBridge to enable external lifecycle management of&lt;br /&gt;
  exported classes and objects&lt;br /&gt;
* Package reorginisation. New packages:&lt;br /&gt;
    com.metaparadigm.jsonrpc.serializer&lt;br /&gt;
    com.metaparadigm.jsonrpc.serializer.impl&lt;br /&gt;
    com.metaparadigm.jsonrpc.localarg&lt;br /&gt;
* Source code formatting changes for Eclipse. No longer have the&lt;br /&gt;
  tab issue with emacs when used in an editor with tabstop=4. The&lt;br /&gt;
  source code was previously formatted with tabstop=8 with 4 char&lt;br /&gt;
  indents and space stuffing that caused problems with Eclipse users.&lt;br /&gt;
  -- Michael Clark &amp;lt;&lt;a href=&quot;mailto:michael@metaparadigm.com&quot;&gt;michael@metaparadigm.com&lt;/a&gt;&gt;&lt;/div&gt;~ /trunk/build.xml&lt;br /&gt;x /trunk/src/com/metaparadigm/jsonrpc/AbstractSerializer.java&lt;br /&gt;x /trunk/src/com/metaparadigm/jsonrpc/ArraySerializer.java&lt;br /&gt;x /trunk/src/com/metaparadigm/jsonrpc/BeanSerializer.java&lt;br /&gt;x /trunk/src/com/metaparadigm/jsonrpc/BooleanSerializer.java&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/callback&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/callback/CallbackController.java&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/callback/CallbackData.java&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/callback/ErrorInvocationCallback.java &lt;i&gt;(copied from /trunk/src/com/metaparadigm/jsonrpc/ErrorInvocationCallback.java@25)&lt;/i&gt;&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/callback/InvocationCallback.java &lt;i&gt;(copied from /trunk/src/com/metaparadigm/jsonrpc/InvocationCallback.java@25)&lt;/i&gt;&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/callback/package.html&lt;br /&gt;x /trunk/src/com/metaparadigm/jsonrpc/DateSerializer.java&lt;br /&gt;x /trunk/src/com/metaparadigm/jsonrpc/DictionarySerializer.java&lt;br /&gt;x /trunk/src/com/metaparadigm/jsonrpc/ErrorInvocationCallback.java&lt;br /&gt;x /trunk/src/com/metaparadigm/jsonrpc/HttpServletRequestArgResolver.java&lt;br /&gt;x /trunk/src/com/metaparadigm/jsonrpc/HttpSessionArgResolver.java&lt;br /&gt;x /trunk/src/com/metaparadigm/jsonrpc/InvocationCallback.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONRPCBridge.java&lt;br /&gt;x /trunk/src/com/metaparadigm/jsonrpc/JSONRPCBridgeServletArgResolver.java&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/JSONRPCBridgeState.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONRPCResult.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONRPCServlet.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONSerializer.java&lt;br /&gt;x /trunk/src/com/metaparadigm/jsonrpc/ListSerializer.java&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/localarg&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/localarg/impl&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/localarg/impl/HttpServletRequestArgResolver.java &lt;i&gt;(copied from /trunk/src/com/metaparadigm/jsonrpc/HttpServletRequestArgResolver.java@25)&lt;/i&gt;&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/localarg/impl/HttpSessionArgResolver.java &lt;i&gt;(copied from /trunk/src/com/metaparadigm/jsonrpc/HttpSessionArgResolver.java@25)&lt;/i&gt;&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/localarg/impl/JSONRPCBridgeServletArgResolver.java &lt;i&gt;(copied from /trunk/src/com/metaparadigm/jsonrpc/JSONRPCBridgeServletArgResolver.java@25)&lt;/i&gt;&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/localarg/impl/package.html&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/localarg/LocalArgController.java&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/localarg/LocalArgResolveException.java &lt;i&gt;(copied from /trunk/src/com/metaparadigm/jsonrpc/LocalArgResolveException.java@25)&lt;/i&gt;&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/localarg/LocalArgResolver.java &lt;i&gt;(copied from /trunk/src/com/metaparadigm/jsonrpc/LocalArgResolver.java@25)&lt;/i&gt;&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/localarg/package.html&lt;br /&gt;x /trunk/src/com/metaparadigm/jsonrpc/LocalArgResolveException.java&lt;br /&gt;x /trunk/src/com/metaparadigm/jsonrpc/LocalArgResolver.java&lt;br /&gt;x /trunk/src/com/metaparadigm/jsonrpc/MapSerializer.java&lt;br /&gt;x /trunk/src/com/metaparadigm/jsonrpc/MarshallException.java&lt;br /&gt;x /trunk/src/com/metaparadigm/jsonrpc/NumberSerializer.java&lt;br /&gt;x /trunk/src/com/metaparadigm/jsonrpc/ObjectMatch.java&lt;br /&gt;x /trunk/src/com/metaparadigm/jsonrpc/PrimitiveSerializer.java&lt;br /&gt;x /trunk/src/com/metaparadigm/jsonrpc/ReferenceSerializer.java&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/reflect&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/reflect/ClassAnalyzer.java&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/reflect/ClassData.java&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/reflect/MethodKey.java&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/reflect/package.html&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/serializer&lt;br /&gt;x /trunk/src/com/metaparadigm/jsonrpc/Serializer.java&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/serializer/AbstractSerializer.java &lt;i&gt;(copied from /trunk/src/com/metaparadigm/jsonrpc/AbstractSerializer.java@25)&lt;/i&gt;&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/serializer/impl&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/serializer/impl/ArraySerializer.java &lt;i&gt;(copied from /trunk/src/com/metaparadigm/jsonrpc/ArraySerializer.java@25)&lt;/i&gt;&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/serializer/impl/BeanSerializer.java &lt;i&gt;(copied from /trunk/src/com/metaparadigm/jsonrpc/BeanSerializer.java@25)&lt;/i&gt;&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/serializer/impl/BooleanSerializer.java &lt;i&gt;(copied from /trunk/src/com/metaparadigm/jsonrpc/BooleanSerializer.java@25)&lt;/i&gt;&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/serializer/impl/DateSerializer.java &lt;i&gt;(copied from /trunk/src/com/metaparadigm/jsonrpc/DateSerializer.java@25)&lt;/i&gt;&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/serializer/impl/DictionarySerializer.java &lt;i&gt;(copied from /trunk/src/com/metaparadigm/jsonrpc/DictionarySerializer.java@25)&lt;/i&gt;&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/serializer/impl/ListSerializer.java &lt;i&gt;(copied from /trunk/src/com/metaparadigm/jsonrpc/ListSerializer.java@25)&lt;/i&gt;&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/serializer/impl/MapSerializer.java &lt;i&gt;(copied from /trunk/src/com/metaparadigm/jsonrpc/MapSerializer.java@25)&lt;/i&gt;&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/serializer/impl/NumberSerializer.java &lt;i&gt;(copied from /trunk/src/com/metaparadigm/jsonrpc/NumberSerializer.java@25)&lt;/i&gt;&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/serializer/impl/PrimitiveSerializer.java &lt;i&gt;(copied from /trunk/src/com/metaparadigm/jsonrpc/PrimitiveSerializer.java@25)&lt;/i&gt;&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/serializer/impl/ReferenceSerializer.java &lt;i&gt;(copied from /trunk/src/com/metaparadigm/jsonrpc/ReferenceSerializer.java@25)&lt;/i&gt;&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/serializer/impl/SetSerializer.java &lt;i&gt;(copied from /trunk/src/com/metaparadigm/jsonrpc/SetSerializer.java@25)&lt;/i&gt;&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/serializer/impl/StringSerializer.java &lt;i&gt;(copied from /trunk/src/com/metaparadigm/jsonrpc/StringSerializer.java@25)&lt;/i&gt;&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/serializer/MarshallException.java &lt;i&gt;(copied from /trunk/src/com/metaparadigm/jsonrpc/MarshallException.java@25)&lt;/i&gt;&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/serializer/ObjectMatch.java &lt;i&gt;(copied from /trunk/src/com/metaparadigm/jsonrpc/ObjectMatch.java@25)&lt;/i&gt;&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/serializer/package.html&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/serializer/Serializer.java &lt;i&gt;(copied from /trunk/src/com/metaparadigm/jsonrpc/Serializer.java@25)&lt;/i&gt;&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/serializer/SerializerState.java &lt;i&gt;(copied from /trunk/src/com/metaparadigm/jsonrpc/SerializerState.java@25)&lt;/i&gt;&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/serializer/UnmarshallException.java &lt;i&gt;(copied from /trunk/src/com/metaparadigm/jsonrpc/UnmarshallException.java@25)&lt;/i&gt;&lt;br /&gt;x /trunk/src/com/metaparadigm/jsonrpc/SerializerState.java&lt;br /&gt;x /trunk/src/com/metaparadigm/jsonrpc/SetSerializer.java&lt;br /&gt;x /trunk/src/com/metaparadigm/jsonrpc/StringSerializer.java&lt;br /&gt;x /trunk/src/com/metaparadigm/jsonrpc/UnmarshallException.java&lt;br /&gt;~ /trunk/test/src/com/metaparadigm/dict/DictCommandResult.java&lt;br /&gt;~ /trunk/test/src/com/metaparadigm/dict/Match.java&lt;br /&gt;~ /trunk/test/src/com/metaparadigm/dict/Strategy.java&lt;br /&gt;~ /trunk/test/src/com/metaparadigm/jsonrpc/test/BeanA.java&lt;br /&gt;~ /trunk/test/src/com/metaparadigm/jsonrpc/test/BeanB.java&lt;br /&gt;~ /trunk/test/src/com/metaparadigm/jsonrpc/test/Browser.java&lt;br /&gt;~ /trunk/test/src/com/metaparadigm/jsonrpc/test/Hello.java&lt;br /&gt;~ /trunk/test/src/com/metaparadigm/jsonrpc/test/Test.java&lt;br /&gt;~ /trunk/test/src/com/metaparadigm/jsonrpc/test/Unicode.java&lt;br /&gt;+ /trunk/webapps/jsonrpc/CHANGES.txt&lt;br /&gt;~ /trunk/webapps/jsonrpc/header.jspinc&lt;br /&gt;+ /trunk/webapps/jsonrpc/images&lt;br /&gt;+ /trunk/webapps/jsonrpc/images/json.gif&lt;br /&gt;+ /trunk/webapps/jsonrpc/images/json.png&lt;br /&gt;+ /trunk/webapps/jsonrpc/images/shadow-bottom-left-2.gif&lt;br /&gt;+ /trunk/webapps/jsonrpc/images/shadow-bottom-left.gif&lt;br /&gt;+ /trunk/webapps/jsonrpc/images/shadow-bottom-right-2.gif&lt;br /&gt;+ /trunk/webapps/jsonrpc/images/shadow-bottom-right.gif&lt;br /&gt;+ /trunk/webapps/jsonrpc/images/shadow-bottom.gif&lt;br /&gt;+ /trunk/webapps/jsonrpc/images/shadow-left-top.gif&lt;br /&gt;+ /trunk/webapps/jsonrpc/images/shadow-left.gif&lt;br /&gt;+ /trunk/webapps/jsonrpc/images/shadow-right-top.gif&lt;br /&gt;+ /trunk/webapps/jsonrpc/images/shadow-right.gif&lt;br /&gt;x /trunk/webapps/jsonrpc/jsolait&lt;br /&gt;~ /trunk/webapps/jsonrpc/jsonrpc.js&lt;br /&gt;~ /trunk/webapps/jsonrpc/manual.jsp&lt;br /&gt;~ /trunk/webapps/jsonrpc/test.jsp&lt;br /&gt;~ /trunk/webapps/jsonrpc/tutorial.jsp&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=27</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=27</guid></item>
<item><pubDate>Fri, 20 Apr 2007 02:39:18 +0000</pubDate><dc:creator>mclark</dc:creator><title>Rev 26 -- Make 1.0 branch</title><description>&lt;div&gt;&lt;strong&gt;mclark -- 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Make 1.0 branch&lt;/div&gt;+ /branches/1.0 &lt;i&gt;(copied from /tags/1.0@25)&lt;/i&gt;&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=26</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=26</guid></item>
<item><pubDate>Wed, 14 Mar 2007 03:46:48 +0000</pubDate><dc:creator>mclark</dc:creator><title>Rev 25 -- Release 1.0</title><description>&lt;div&gt;&lt;strong&gt;mclark -- 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Release 1.0&lt;/div&gt;+ /tags/1.0 &lt;i&gt;(copied from /trunk@24)&lt;/i&gt;&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=25</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=25</guid></item>
<item><pubDate>Wed, 14 Mar 2007 03:46:47 +0000</pubDate><dc:creator>mclark</dc:creator><title>Rev 24 -- * Add a new overloaded registerObject call that allows the ...</title><description>&lt;div&gt;&lt;strong&gt;mclark -- 62 file(s) modified&lt;/strong&gt;&lt;br/&gt;* Add a new overloaded registerObject call that allows the&lt;br /&gt;
  caller to specify the class/interface to be used for exporting&lt;br /&gt;
  methods on the object (exported methods are restricted to&lt;br /&gt;
  just the interface class).&lt;br /&gt;
  -- Ian Sollars, ian at sollars dot gmail dot com&lt;br /&gt;
&lt;br /&gt;
* License changed from LGPL to Apache License, Version 2.0 after&lt;br /&gt;
  approval from all authors/contributors&lt;br /&gt;
* Bring in style changes from HEAD&lt;br /&gt;
  - Update JSP pages to use common header and footer and new style&lt;br /&gt;
  - Remove eval function from test.jsp&lt;br /&gt;
  - Simplify async callback in unit test&lt;br /&gt;
  -- Michael Clark &amp;lt;&lt;a href=&quot;mailto:michael@metaparadigm.com&quot;&gt;michael@metaparadigm.com&lt;/a&gt;&gt;&lt;br /&gt;
&lt;br /&gt;
* Fix JavaScript client failure with HTTP authentication in Firefox&lt;br /&gt;
  -- Mark F Murphy, markm at tyrell dot com&lt;br /&gt;
&lt;br /&gt;
* Add unregisterClass, unregisterObject, lookupClass and lookupObject&lt;br /&gt;
  methods to JSONRPCBridge to enable external lifecycle management of&lt;br /&gt;
  exported classes and objects&lt;br /&gt;
  -- Michael Clark &amp;lt;&lt;a href=&quot;mailto:michael@metaparadigm.com&quot;&gt;michael@metaparadigm.com&lt;/a&gt;&gt;&lt;/div&gt;~ /trunk/build.xml&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/AbstractSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/ArraySerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/BeanSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/BooleanSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/DateSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/DictionarySerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/ErrorInvocationCallback.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/HttpServletRequestArgResolver.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/HttpSessionArgResolver.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/InvocationCallback.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONRPCBridge.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONRPCBridgeServletArgResolver.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONRPCResult.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONRPCServlet.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/ListSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/LocalArgResolveException.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/LocalArgResolver.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/MapSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/MarshallException.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/NumberSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/ObjectMatch.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/PrimitiveSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/ReferenceSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/Serializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/SerializerState.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/SetSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/StringSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/UnmarshallException.java&lt;br /&gt;~ /trunk/test/src/com/metaparadigm/dict/Database.java&lt;br /&gt;~ /trunk/test/src/com/metaparadigm/dict/Definition.java&lt;br /&gt;~ /trunk/test/src/com/metaparadigm/dict/DictClient.java&lt;br /&gt;~ /trunk/test/src/com/metaparadigm/dict/DictClientException.java&lt;br /&gt;~ /trunk/test/src/com/metaparadigm/dict/DictCommandResult.java&lt;br /&gt;~ /trunk/test/src/com/metaparadigm/dict/Match.java&lt;br /&gt;~ /trunk/test/src/com/metaparadigm/dict/Strategy.java&lt;br /&gt;~ /trunk/webapps/jsonrpc/browser.js&lt;br /&gt;~ /trunk/webapps/jsonrpc/browser.jsp&lt;br /&gt;~ /trunk/webapps/jsonrpc/css/browser.css&lt;br /&gt;~ /trunk/webapps/jsonrpc/css/site.css&lt;br /&gt;~ /trunk/webapps/jsonrpc/css/unit.css&lt;br /&gt;x /trunk/webapps/jsonrpc/demos.html&lt;br /&gt;~ /trunk/webapps/jsonrpc/dict.js&lt;br /&gt;~ /trunk/webapps/jsonrpc/dict.jsp&lt;br /&gt;+ /trunk/webapps/jsonrpc/footer.jspinc&lt;br /&gt;+ /trunk/webapps/jsonrpc/header.jspinc&lt;br /&gt;~ /trunk/webapps/jsonrpc/hello.js&lt;br /&gt;x /trunk/webapps/jsonrpc/index.html&lt;br /&gt;+ /trunk/webapps/jsonrpc/index.jsp&lt;br /&gt;~ /trunk/webapps/jsonrpc/jsonrpc.js&lt;br /&gt;x /trunk/webapps/jsonrpc/manual.html&lt;br /&gt;+ /trunk/webapps/jsonrpc/manual.jsp&lt;br /&gt;~ /trunk/webapps/jsonrpc/test.js&lt;br /&gt;~ /trunk/webapps/jsonrpc/test.jsp&lt;br /&gt;x /trunk/webapps/jsonrpc/tutorial.html&lt;br /&gt;+ /trunk/webapps/jsonrpc/tutorial.jsp&lt;br /&gt;~ /trunk/webapps/jsonrpc/unicode.js&lt;br /&gt;~ /trunk/webapps/jsonrpc/unicode.jsp&lt;br /&gt;~ /trunk/webapps/jsonrpc/unit.js&lt;br /&gt;~ /trunk/webapps/jsonrpc/unit.jsp&lt;br /&gt;~ /trunk/webapps/jsonrpc/WEB-INF/web.xml&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=24</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=24</guid></item>
<item><pubDate>Wed, 14 Mar 2007 03:46:45 +0000</pubDate><dc:creator>mclark</dc:creator><title>Rev 23 -- Release 1.0rc2</title><description>&lt;div&gt;&lt;strong&gt;mclark -- 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Release 1.0rc2&lt;/div&gt;+ /tags/1.0rc2 &lt;i&gt;(copied from /trunk@22)&lt;/i&gt;&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=23</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=23</guid></item>
<item><pubDate>Wed, 14 Mar 2007 03:46:44 +0000</pubDate><dc:creator>mclark</dc:creator><title>Rev 22 -- * Created branch in CVS. To check out 1.0 branch ...</title><description>&lt;div&gt;&lt;strong&gt;mclark -- 33 file(s) modified&lt;/strong&gt;&lt;br/&gt;* Created branch in CVS. To check out 1.0 branch use:&lt;br /&gt;
   cvs update -r R1_0_BRANCH&lt;br /&gt;
* Add documentation on References, Callable References and LocalArgResolver&lt;br /&gt;
  to the manual&lt;br /&gt;
* More Javadoc updates&lt;br /&gt;
* Change // comments to /* */ comments in jsonrpc client&lt;br /&gt;
* Add ; to end of function variable assignments in jsonrpc client&lt;br /&gt;
* Return http object to pool if we get a connection error&lt;br /&gt;
* Fix put in poolReturnHTTPRequest where we pushed a deleted http&lt;br /&gt;
  object onto the spare array&lt;br /&gt;
* Implement Serializable on more classes to make Session persistence&lt;br /&gt;
  and clustering possible&lt;br /&gt;
* Don&apos;t add &apos;Connection: keep-alive&apos; header in JSONRPCServlet as this is&lt;br /&gt;
  not actually required for keepalive connections with HTTP/1.1 clients&lt;br /&gt;
  (ie. any browser that implements XMLHttpRequestObject).&lt;br /&gt;
  This header was perhaps a cause for the subtle and infrequent breakage&lt;br /&gt;
  seen with certain connector, webserver and browser combinations causing&lt;br /&gt;
  empty bodies to be sent to the server. Content-length is all that is&lt;br /&gt;
  required for keepalive connections to work with HTTP/1.1 clients - this&lt;br /&gt;
  header can still be disabled with the keepalive=0 servlet param although&lt;br /&gt;
  many containers will still maintain keepalive connections by reverting to&lt;br /&gt;
  chunked encoding.&lt;br /&gt;
  -- Michael Clark &amp;lt;&lt;a href=&quot;mailto:michael@metaparadigm.com&quot;&gt;michael@metaparadigm.com&lt;/a&gt;&gt;&lt;br /&gt;
&lt;br /&gt;
* Add more Javadoc comments to InvocationCallback interface&lt;br /&gt;
* Add ErrorInvocationCallback interface to allow callback functions&lt;br /&gt;
  to be notified of exceptions generated while invoking methods&lt;br /&gt;
  on exported objects&lt;br /&gt;
  -- Brett Connor, connorb at axxia dot com&lt;br /&gt;
  -- Michael Clark &amp;lt;&lt;a href=&quot;mailto:michael@metaparadigm.com&quot;&gt;michael@metaparadigm.com&lt;/a&gt;&gt;&lt;br /&gt;
&lt;br /&gt;
* Make JSON-RPC JavaScript client throw Exception consistent with&lt;br /&gt;
  other client exceptions if there is a connection error&lt;br /&gt;
  -- Krzysztof Ogrodnik, OgrodnikK at axxia dot com&lt;br /&gt;
  -- Michael Clark &amp;lt;&lt;a href=&quot;mailto:michael@metaparadigm.com&quot;&gt;michael@metaparadigm.com&lt;/a&gt;&gt;&lt;br /&gt;
&lt;br /&gt;
* Add additional Javadoc comments to LocalArgResolver interfaces and&lt;br /&gt;
  associated classes&lt;br /&gt;
* Fix bug in JSONRPC JavaScript client where we forget to set&lt;br /&gt;
  async timeout handler variable causing the async handler function&lt;br /&gt;
  to get called back multiple times with no work to be done&lt;br /&gt;
* Implement Serializable on JSONRPCBridge and mark a few fields as&lt;br /&gt;
  transient that aren&apos;t required during serialization&lt;br /&gt;
  -- Michael Clark &amp;lt;&lt;a href=&quot;mailto:michael@metaparadigm.com&quot;&gt;michael@metaparadigm.com&lt;/a&gt;&gt;&lt;/div&gt;~ /trunk/src/com/metaparadigm/jsonrpc/ArraySerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/BeanSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/BooleanSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/DateSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/DictionarySerializer.java&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/ErrorInvocationCallback.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/HttpServletRequestArgResolver.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/HttpSessionArgResolver.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/InvocationCallback.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONRPCBridge.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONRPCBridgeServletArgResolver.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONRPCServlet.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/ListSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/LocalArgResolver.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/MapSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/NumberSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/PrimitiveSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/ReferenceSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/Serializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/SetSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/StringSerializer.java&lt;br /&gt;~ /trunk/test/src/com/metaparadigm/dict/DictClient.java&lt;br /&gt;~ /trunk/test/src/com/metaparadigm/dict/DictClientException.java&lt;br /&gt;~ /trunk/test/src/com/metaparadigm/jsonrpc/test/BeanA.java&lt;br /&gt;~ /trunk/test/src/com/metaparadigm/jsonrpc/test/BeanB.java&lt;br /&gt;~ /trunk/test/src/com/metaparadigm/jsonrpc/test/Browser.java&lt;br /&gt;~ /trunk/test/src/com/metaparadigm/jsonrpc/test/Hello.java&lt;br /&gt;~ /trunk/test/src/com/metaparadigm/jsonrpc/test/Test.java&lt;br /&gt;~ /trunk/test/src/com/metaparadigm/jsonrpc/test/Unicode.java&lt;br /&gt;~ /trunk/webapps/jsonrpc/index.html&lt;br /&gt;~ /trunk/webapps/jsonrpc/jsonrpc.js&lt;br /&gt;~ /trunk/webapps/jsonrpc/manual.html&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=22</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=22</guid></item>
<item><pubDate>Wed, 14 Mar 2007 03:46:43 +0000</pubDate><dc:creator>mclark</dc:creator><title>Rev 21 -- Release 1.0rc1</title><description>&lt;div&gt;&lt;strong&gt;mclark -- 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Release 1.0rc1&lt;/div&gt;+ /tags/1.0rc1 &lt;i&gt;(copied from /trunk@20)&lt;/i&gt;&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=21</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=21</guid></item>
<item><pubDate>Wed, 14 Mar 2007 03:46:42 +0000</pubDate><dc:creator>mclark</dc:creator><title>Rev 20 -- * Avoid memory leak on IE in jsonrpc JS client ...</title><description>&lt;div&gt;&lt;strong&gt;mclark -- 12 file(s) modified&lt;/strong&gt;&lt;br/&gt;* Avoid memory leak on IE in jsonrpc JS client by removing callback&lt;br /&gt;
  function once we have recieved the callback&lt;br /&gt;
  -- Evan Leonard, evan at mindreef dot com&lt;br /&gt;
&lt;br /&gt;
* Allowed BooleanSerializer to accept JSONObjects of type string, if they&lt;br /&gt;
  can be converted to a Boolean.&lt;br /&gt;
  -- Ryan Gates ryan.gates at gmail dot com&lt;br /&gt;
&lt;br /&gt;
* Fetching servlet config at init time instead of on each request&lt;br /&gt;
* Add servlet config option &apos;keepalive&apos; when set to 0 disables keepalives&lt;br /&gt;
  -- Michael Clark &amp;lt;&lt;a href=&quot;mailto:michael@metaparadigm.com&quot;&gt;michael@metaparadigm.com&lt;/a&gt;&gt;&lt;br /&gt;
&lt;br /&gt;
* Fix JSONRPCResult to use Throwable instead of Exception so all kinds&lt;br /&gt;
  of Throwable types can be handled&lt;br /&gt;
  -- Igor Bernstein, happycrappy at gmail dot com&lt;br /&gt;
&lt;br /&gt;
* Handle case where a method generic signature such as Object is overloaded&lt;br /&gt;
  with a more specific signature. Previously the method matching code&lt;br /&gt;
  would pick an arbitrary method. Now the method with the specific&lt;br /&gt;
  matching class signature will be chosen.&lt;br /&gt;
* Fix date value truncation introduced when converting Date marshalling&lt;br /&gt;
  format into milliseconds.&lt;br /&gt;
  -- Nicola Piccinini, pic at mayatecnologie dot com&lt;br /&gt;
&lt;br /&gt;
* Fix serializer selection logic when passing a hinted JS object into a&lt;br /&gt;
  Java method with either an interface or Object signature. Previously&lt;br /&gt;
  objects unmarshalled by the BeanSerializer had to be passed into a&lt;br /&gt;
  method with the concrete class signature. Now Beans with strong type&lt;br /&gt;
  information (type hints i.e. &quot;javaClass&quot; property) can be passed into&lt;br /&gt;
  methods with Interfaces and Object signatures.&lt;br /&gt;
* Send Dates in milliseconds - not seconds as before (this didn&apos;t&lt;br /&gt;
  really make any sense as both Java and JavaScript natively store Dates&lt;br /&gt;
  internally in milliseconds). Code that unmarshalls Dates currently just&lt;br /&gt;
  sees a plain JavaScript object and access the &apos;time&apos; field, this code&lt;br /&gt;
  will need to be changed from: new Date(object.time*1000) to the much&lt;br /&gt;
  simpler form: new Date(object.time)&lt;br /&gt;
* Change jsonrpc.js to set unique id field in request as per JSON-RPC spec&lt;br /&gt;
* Change JSONRPCBridge to decode id if present and return it in replies.&lt;br /&gt;
  Currently niether the client nor server require the id to be present.&lt;br /&gt;
  This required changes to the protected JSONRPCBridge.call interface to&lt;br /&gt;
  pass in the entire undecoded JSON-RPC request object. This had the effect&lt;br /&gt;
  of simplifying the JSONRPCServlet code which is a good thing.&lt;br /&gt;
* No longer add objectID attribute to requests made on CallableReferences.&lt;br /&gt;
  This was a break from JSON-RPC protocol. Now we encode the objectID into&lt;br /&gt;
  the method in the form &quot;.obj#&amp;lt;objectID&gt;.methodName&quot; so our requests are&lt;br /&gt;
  now completely compatible with JSON-RPC spec.&lt;br /&gt;
* Remove backwards compatibility with 0.7 client/server. This served its&lt;br /&gt;
  purpose as easing upgrades between 0.7 and 0.8 releases but now was just&lt;br /&gt;
  adding to the complexity of the code.&lt;br /&gt;
* Made JSONRPCBridge.call public instead of protected.&lt;br /&gt;
* Made JSONRPCResult public and added accessor functions for its properties.&lt;br /&gt;
* Changed JSONRpcClient JS client instance method names use _ prefix&lt;br /&gt;
  to avoid the possibility of clashing with dynamic proxy methods created&lt;br /&gt;
  from associated Java server side objects (these methods were never exposed&lt;br /&gt;
  as part of a public API but there was the possibility that they may clash).&lt;br /&gt;
* Added JSONRpcClient.cancelRequest(id) static method to the JS client that&lt;br /&gt;
  will cancel an inflight async call (returns true if it found the request&lt;br /&gt;
  and is able to cancel it). The id is the JSON-RPC request id and is the&lt;br /&gt;
  value returned from the async call when it is submitted.&lt;br /&gt;
  -- Michael Clark &amp;lt;&lt;a href=&quot;mailto:michael@metaparadigm.com&quot;&gt;michael@metaparadigm.com&lt;/a&gt;&gt;&lt;/div&gt;~ /trunk/build.xml&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/BooleanSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/DateSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONRPCBridge.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONRPCResult.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONRPCServlet.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONSerializer.java&lt;br /&gt;~ /trunk/src/org/json/JSONObject.java&lt;br /&gt;~ /trunk/test/src/com/metaparadigm/jsonrpc/test/Test.java&lt;br /&gt;~ /trunk/webapps/jsonrpc/index.html&lt;br /&gt;~ /trunk/webapps/jsonrpc/jsonrpc.js&lt;br /&gt;~ /trunk/webapps/jsonrpc/unit.js&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=20</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=20</guid></item>
<item><pubDate>Wed, 14 Mar 2007 03:46:41 +0000</pubDate><dc:creator>mclark</dc:creator><title>Rev 19 -- Release 0.9</title><description>&lt;div&gt;&lt;strong&gt;mclark -- 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Release 0.9&lt;/div&gt;+ /tags/0.9 &lt;i&gt;(copied from /trunk@18)&lt;/i&gt;&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=19</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=19</guid></item>
<item><pubDate>Wed, 14 Mar 2007 03:46:40 +0000</pubDate><dc:creator>mclark</dc:creator><title>Rev 18 -- * Make jsonrpc.js serialize JavaScript Date object as a Java ...</title><description>&lt;div&gt;&lt;strong&gt;mclark -- 43 file(s) modified&lt;/strong&gt;&lt;br/&gt;* Make jsonrpc.js serialize JavaScript Date object as a Java Date by&lt;br /&gt;
  setting the appropriate class hint&lt;br /&gt;
  -- Nicola Piccinini, pic at mayatecnologie dot com&lt;br /&gt;
&lt;br /&gt;
* All serializer classes given public access&lt;br /&gt;
* Modified DateSerializer to accept and convert java.sql.Timestamp and&lt;br /&gt;
  java.sql.Date.&lt;br /&gt;
* Introduced attribute &apos;marshallClassHints&apos; in the JSONSerializer class.&lt;br /&gt;
  If set to false, the &apos;javaClass&apos; JSON hints are not included by&lt;br /&gt;
  serializers.  Defaults to true.  Modified all serializers to use this&lt;br /&gt;
  setting in JSONSerializer.&lt;br /&gt;
* Introduced attribute &apos;marshallNullAttributes&apos; in the JSONSerializer class.&lt;br /&gt;
  If set to false, then any bean field that is null in Java will not serialize&lt;br /&gt;
  the attribute name to the client.  Defaults to true.&lt;br /&gt;
* Exposed getter and setter attributes for the JSONSerializer object in the&lt;br /&gt;
  JSONRPCBridge.&lt;br /&gt;
* Added constructor to JSONRPCBridge indicating to not register the default&lt;br /&gt;
  serializers in the JSONSerializer.&lt;br /&gt;
* Allowed NumberSerializer and PrimitiveSerializer to accept JSONObjects of&lt;br /&gt;
  type String, if they can be converted to the appropriate primitive or number.&lt;br /&gt;
* Allowed StringSerializers to accept JSONObjects of type integer.&lt;br /&gt;
  -- Ryan Gates &amp;lt;ryan dot gates at gmail dot com&gt;&lt;br /&gt;
&lt;br /&gt;
* Make registerCallback/unregisterCallback non static (again)&lt;br /&gt;
* Change in JSONRPCBridge.analyzeClass to fix bug with exporting of inherited&lt;br /&gt;
  methods exposed methods of Object which is not a good idea so we exlucde&lt;br /&gt;
  these now.&lt;br /&gt;
* Add InvocationCallback test case to Test.java and test.js&lt;br /&gt;
* Add LocalArgResolver test case to Test.java and test.js. The simple test&lt;br /&gt;
  allows set the debug flag on the JSONRPCBridge instance&lt;br /&gt;
* Complete LocalArgResolver implementation&lt;br /&gt;
* Make methods to register and unregister InvocationCallback and&lt;br /&gt;
  LocalArgResolver static ie. no longer bridge instance specific.&lt;br /&gt;
* Added methods to unregister InvocationCallback and LocalArgResolver&lt;br /&gt;
* Change contextClazz arg of registerLocalArgResolver to contextInterface&lt;br /&gt;
* Fix hash and equals function of CallbackData to allow registering of the&lt;br /&gt;
  same InvocationCallback with multiple contextInterfaces (previously the&lt;br /&gt;
  equals function would have replaced the previous entry if it was registered&lt;br /&gt;
  again with a different contextInterface).&lt;br /&gt;
* Change name of contextClazz argument of registerCallback to contextInterface&lt;br /&gt;
  and implement the functionality (previously this argument was ignored).&lt;br /&gt;
  This is a step towards allowing implementation of other transports where&lt;br /&gt;
  the context object passed to callbacks may not be HttpServletRequest.&lt;br /&gt;
* JSONRPCBridge.call now takes an array of context objects&lt;br /&gt;
* use clazz.getMethods() instead of clazz.getDeclaredMethods() in&lt;br /&gt;
  JSONRPCBridge.analyzeClass to fix bug with exporting of inherited methods&lt;br /&gt;
* Add debug=&quot;true&quot; to javac attributes in build.xml&lt;br /&gt;
* Try to work out class for arrays in JSONSerializer.getClassFromHint&lt;br /&gt;
* Fix marshalling and unmarshalling of null bean values&lt;br /&gt;
* Added configuration for JBoss 3.2.x and JBoxx 4.0.0 to build.xml&lt;br /&gt;
* Make [Un]MarshallException constructors public&lt;br /&gt;
* Don&apos;t prepend exception.message with the exception type as this can be&lt;br /&gt;
  got with exception.name&lt;br /&gt;
* ReferenceSerializer uses System.identityHashCode(o) instead of o.hashCode()&lt;br /&gt;
  to avoid possible clashes.&lt;br /&gt;
* Change debug messages to use java.util.logger.Logging.&lt;br /&gt;
* Now &apos;ant docs&apos; builds javadocs for org.json package.&lt;br /&gt;
* Documentation fix to Manual for Set type mapping.&lt;br /&gt;
* Convert BeanSerializer state over to new SerializerState interface and&lt;br /&gt;
  change it to throw exception when encountering circular references to&lt;br /&gt;
  match documentated behaviour.&lt;br /&gt;
* New SerialiazerState object added and passed as a stack variable to&lt;br /&gt;
  allow Serializers to keep state for the current serialization as Serializer&lt;br /&gt;
  instance variables can&apos;t be used for this due to concurrency issues.&lt;br /&gt;
* Split serializer code out of JSONRPBBridge and into new JSONSerializer class&lt;br /&gt;
* Make Serializer interface public. Subject to change until 0.9 is released.&lt;br /&gt;
* Don&apos;t register ReferenceSerializer by default. Application now needs to&lt;br /&gt;
  call JSONRPCBridge.enablesReferences(). This is subject to change before&lt;br /&gt;
  release of 0.9 (perhaps automatically registered in session bridges)&lt;br /&gt;
* Instantiate serializers in global bridge to allow stateless use when&lt;br /&gt;
  no per session bridge is used.&lt;br /&gt;
* Fix information leak of protected method names. duh!&lt;br /&gt;
* Rename JSONRPCCallback to InvocationCallback (trivial code changes&lt;br /&gt;
  required for users of the callback interface).&lt;br /&gt;
* Add Class contextClazz argument to registerCallback so only the specific&lt;br /&gt;
  type of context object is passed to the callback (allows for easier&lt;br /&gt;
  implementation of transport specific callbacks). Need to implement&lt;br /&gt;
  (argument is currently ignored as we so far only have one type of context&lt;br /&gt;
  object passed through &apos;HttpServletRequest&apos;)&lt;br /&gt;
* Add LocalArgResolver interface and associated registerLocalArgResolver&lt;br /&gt;
  method to JSONRPCBridge and Java Docs (currently unimplemented)&lt;br /&gt;
  -- Michael Clark &amp;lt;&lt;a href=&quot;mailto:michael@metaparadigm.com&quot;&gt;michael@metaparadigm.com&lt;/a&gt;&gt;&lt;br /&gt;
&lt;br /&gt;
* Fix logic bug in JSONSerializer when marshalling null with debug enabled&lt;br /&gt;
  -- Spotted by Nicola Piccinini, pic at mayatecnologie dot com&lt;br /&gt;
&lt;br /&gt;
* Add servlet config option to disable auto creation of per session&lt;br /&gt;
  bridge. Completely stateless usage should now be possible.&lt;br /&gt;
  -- David Croft, davidc at sargasso dot net&lt;br /&gt;
&lt;br /&gt;
* Fix typo in unit.js&lt;br /&gt;
  -- Hendra, hendra at ofs dot edu dot sg&lt;br /&gt;
&lt;br /&gt;
* Fix JSONArray join so that &quot;null&quot; is used for null objects rather an&lt;br /&gt;
  empty string&lt;br /&gt;
* Use System.identityHashCode(o) instead of o.hashCode for circular&lt;br /&gt;
  reference check in BeanSerializer&lt;br /&gt;
  -- Suggested by Christopher Taylor, cstaylor at nanshu dot com&lt;br /&gt;
&lt;br /&gt;
* Change type of servlet transport context object used for JSONRPCCallback&lt;br /&gt;
  from HttpSession to HttpServletRequest (to make stateless usage possible).&lt;br /&gt;
  This breaks backwards compatibility for implementors using the callback&lt;br /&gt;
  interface although required changes are trivial.&lt;br /&gt;
  -- Suggested by David Croft, davidc at sargasso dot net&lt;br /&gt;
&lt;br /&gt;
* Fix typo in poolReturnHTTPRequest(http) delete http instead of delete htpp&lt;br /&gt;
  -- Evan Leonard, evan at mindreef dot com&lt;/div&gt;~ /trunk/build.xml&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/AbstractSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/ArraySerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/BeanSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/BooleanSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/DateSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/DictionarySerializer.java&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/HttpServletRequestArgResolver.java&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/HttpSessionArgResolver.java&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/InvocationCallback.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONRPCBridge.java&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/JSONRPCBridgeServletArgResolver.java&lt;br /&gt;x /trunk/src/com/metaparadigm/jsonrpc/JSONRPCCallback.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONRPCServlet.java&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/JSONSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/ListSerializer.java&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/LocalArgResolveException.java&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/LocalArgResolver.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/MapSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/MarshallException.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/NumberSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/ObjectMatch.java&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/package.html&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/PrimitiveSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/ReferenceSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/Serializer.java&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/SerializerState.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/SetSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/StringSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/UnmarshallException.java&lt;br /&gt;~ /trunk/src/org/json/JSONArray.java&lt;br /&gt;~ /trunk/src/org/json/JSONTokener.java&lt;br /&gt;+ /trunk/src/org/json/package.html&lt;br /&gt;~ /trunk/test/src/com/metaparadigm/jsonrpc/test/Browser.java&lt;br /&gt;~ /trunk/test/src/com/metaparadigm/jsonrpc/test/Test.java&lt;br /&gt;~ /trunk/webapps/jsonrpc/browser.js&lt;br /&gt;~ /trunk/webapps/jsonrpc/browser.jsp&lt;br /&gt;~ /trunk/webapps/jsonrpc/index.html&lt;br /&gt;~ /trunk/webapps/jsonrpc/jsonrpc.js&lt;br /&gt;~ /trunk/webapps/jsonrpc/manual.html&lt;br /&gt;~ /trunk/webapps/jsonrpc/test.js&lt;br /&gt;~ /trunk/webapps/jsonrpc/test.jsp&lt;br /&gt;~ /trunk/webapps/jsonrpc/unit.js&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=18</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=18</guid></item>
<item><pubDate>Wed, 14 Mar 2007 03:46:38 +0000</pubDate><dc:creator>mclark</dc:creator><title>Rev 17 -- Release 0.8</title><description>&lt;div&gt;&lt;strong&gt;mclark -- 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Release 0.8&lt;/div&gt;+ /tags/0.8 &lt;i&gt;(copied from /trunk@16)&lt;/i&gt;&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=17</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=17</guid></item>
<item><pubDate>Wed, 14 Mar 2007 03:46:37 +0000</pubDate><dc:creator>mclark</dc:creator><title>Rev 16 -- * Add exception documentation to the manual * Add exception ...</title><description>&lt;div&gt;&lt;strong&gt;mclark -- 47 file(s) modified&lt;/strong&gt;&lt;br/&gt;* Add exception documentation to the manual&lt;br /&gt;
* Add exception error code definitions to JSON-RPC JavaScript client&lt;br /&gt;
* Restore capability to access remote Java stack trace for remotely&lt;br /&gt;
  thrown exceptions (these were previously in the result from the server&lt;br /&gt;
  but not retained in the JavaScript side exception object).&lt;br /&gt;
  The remote exception type can be retrieved in e.name the message in&lt;br /&gt;
  e.message (both as per JavaScript Error objects). The Java stack&lt;br /&gt;
  trace in e.javaStack. See test.jsp Exception test example.&lt;br /&gt;
* Add instructions to Tutorial for building and installing from source.&lt;br /&gt;
* Big change in the way we handle unicode data.&lt;br /&gt;
  - The setCharset call has been removed from JSONRPCBridge as it is no&lt;br /&gt;
    longer required.&lt;br /&gt;
  - All unicode data between the client and server is now escaped using&lt;br /&gt;
    JSON unicode escape sequences so the communication is ASCII clean.&lt;br /&gt;
  - This is a little less efficient although this must be done due to bugs&lt;br /&gt;
    in Safari and Konqueror where they don&apos;t honour the encoding&lt;br /&gt;
    in the Content-Type header on recieved data from the server. Data is&lt;br /&gt;
    also escaped in the client to server direction to avoid potentical&lt;br /&gt;
    problems with browsers (that send data in the charset of the window, as&lt;br /&gt;
    the charset cannot be set on some XMLHttpRequest object implementations)&lt;br /&gt;
    and to be symetric.&lt;br /&gt;
  - These changes make the JSON-RPC-Java server and client charset clean.&lt;br /&gt;
  - The server will still accept non escaped unicode data correctly if the&lt;br /&gt;
    charset in the request is set or if not provided defaults to UTF-8&lt;br /&gt;
    (which appears to be what most XMLHttpRequest object implementations do).&lt;br /&gt;
    This means the server should remain compatible with other JSON-RPC&lt;br /&gt;
    clients such as jsolait.&lt;br /&gt;
* Add test cases for string and control character escaping&lt;br /&gt;
* Add back compat code to the JSONRPCServlet for handling &amp;lt;= 0.7 clients&lt;br /&gt;
* Change JSON marshalling in JavaScript client to use global toJSON&lt;br /&gt;
  function instead of extending various core object prototypes with&lt;br /&gt;
  toJSON methods. This resolves problems with code that does&lt;br /&gt;
  for(var x in obj) seeing the toJSON function and not expecting it.&lt;br /&gt;
* Change to String marshalling in JSONObject to unicode escape all&lt;br /&gt;
  non ASCII character (&gt;= 0x80) - this fixes Safari and Konqueror&lt;br /&gt;
  whose XMLHttpRequest ignores character encodings so the UTF-8 stream&lt;br /&gt;
  isn&apos;t decoded to JavaScripts native UTF-16 (this is a workaround&lt;br /&gt;
  until a better solution is found)&lt;br /&gt;
* Added unicode test demo which sends and recieves unicode data&lt;br /&gt;
* Sync JSONObject and JSONArray with json.org changes&lt;br /&gt;
* Added Browser compatibility database that dynamically tests browsers&lt;br /&gt;
  hitting the page for JSON-RPC capability and records the results&lt;br /&gt;
* Added new Hello demo showing simplest usage of JSON-RPC-Java&lt;br /&gt;
* Added new Unit Test that supports profiling and both synchronous&lt;br /&gt;
  and asynchronous testing of various JSON-RPC types&lt;br /&gt;
* Add profiling support for async requests. A third argument is passed&lt;br /&gt;
  to callbacks if the global flag JSONRpcClient.profile_async == true.&lt;br /&gt;
  The profile object contains 4 fields each with a Date objects as the value:&lt;br /&gt;
  &quot;submit&quot; - when the request was submitted, &quot;start&quot; - when the HTTP request&lt;br /&gt;
  was started, &quot;end&quot; - when the HTTP request completed, &quot;dispatch&quot; - when&lt;br /&gt;
  the result was dispatched to the callback.&lt;br /&gt;
* Added ability to override toplevel exception handler for cases where&lt;br /&gt;
  there is an uncaught exception in callback functions.&lt;br /&gt;
  eq. JSONRpcClient.toplevel_ex_handler = function(e) { myAlert(e); }&lt;br /&gt;
* Fix bug in Date marshalling (missing return). Dates are presently&lt;br /&gt;
  marshalled as an Integer in milliseconds (valueOf).&lt;br /&gt;
* Added Test cases for Float, Double, Long and Integer&lt;br /&gt;
* Fix bug in JSONObject with marshalling of Float objects&lt;br /&gt;
* Fix unmarshalling of number object types (Byte, Short, Integer, Long, ...)&lt;br /&gt;
* Modify build.xml so it works with both newer and older versions of&lt;br /&gt;
  the Jasper2 compiler. Due to changes in semantics of the outputDir&lt;br /&gt;
  attribute, the precompiled JSP now are unpackaged.&lt;br /&gt;
* Improved error handling in JavaScript JSON-RPC client.&lt;br /&gt;
* Fixed information leak bug in JSONRPCBridge where private method names&lt;br /&gt;
  of exported objects were showing to clients (although not callable)&lt;br /&gt;
* Set encoding on JSPs using &amp;lt;%@ page contentType=&quot;text/html; charset=UTF-8&quot;%&gt;&lt;br /&gt;
  instead of &amp;lt;meta http-equiv ... &gt; to workaround tomcat 5.5 forcing a&lt;br /&gt;
  default encoding of ISO-8859-1 overriding the meta tag&lt;br /&gt;
* Workaround another Opera 8 Beta problem with Content-type headers&lt;br /&gt;
* Add a simple scheduler for async requests and responses using setTimeout&lt;br /&gt;
  callbacks to make sure requests are not submitted from callback context&lt;br /&gt;
  and to allow control of number of concurrent requests&lt;br /&gt;
* Add a second argument to JavaScript async callbacks for passing exception&lt;br /&gt;
  information ie. callback(result, null) and callback(null, exception)&lt;br /&gt;
* Added Dictionary lookup demo - A simple server side Java DICT protocol&lt;br /&gt;
  (RFC2229) client that can make queries against a local dict server, and&lt;br /&gt;
  exposes its API to a JavaScript/DHTML dictionary lookup GUI.&lt;br /&gt;
* Add Content-Length and Connection: keep-alive headers in JSONRPCServlet&lt;br /&gt;
* Set charset on all pages to UTF-8&lt;br /&gt;
* Use UTF-8 by default for encoding and decoding (can&apos;t set charset in&lt;br /&gt;
  Content-type request header with Moz/Firefox) - more testing needed&lt;br /&gt;
* Servlet decodes using charset in Content-type header (if one exists)&lt;br /&gt;
  otherwise defaults to the charset set on the JSONRPCBridge&lt;br /&gt;
* Enhance code that fetchs XMLHttpRequestObject with more names for MS XMLHTTP&lt;br /&gt;
* Change test.jsp to use standard JSP syntax (not XML).&lt;br /&gt;
* Update khtml patch to version in kdelibs CVS.&lt;br /&gt;
* Allow specifying the charset to be used for encoding and decoding JSON&lt;br /&gt;
  data to and from the servlet. The charset must be supported by the Java&lt;br /&gt;
  implementation (the mandatory charsets a Java implementation must support&lt;br /&gt;
  are: &quot;US-ASCII&quot;, &quot;ISO-8859-1&quot;, &quot;UTF-8&quot;, &quot;UTF-16BE&quot;, &quot;UTF-16LE&quot; and&quot;UTF-16&quot;.&lt;br /&gt;
* Add initial working draft of manual&lt;br /&gt;
* Add pooling of XMLHttpRequest obejcts to allow multiple outstanding&lt;br /&gt;
  async requests (each async request has its own XMLHttpRequest object)&lt;br /&gt;
* Add initial async support. Async is enabled by passing a callback&lt;br /&gt;
  function as the first argument to your call. ie.&lt;br /&gt;
    jsonrpc.echo(function (msg) { print(msg); }, &quot;ping&quot;);&lt;br /&gt;
* Session timeouts result in a &apos;method not found&apos; due to the object no&lt;br /&gt;
  longer existing in the session. Give a more informative error message&lt;br /&gt;
* Add support for HTTP authentication to JSON-RPC JavaScript client&lt;br /&gt;
* Add section to tutorial to show how to use in a servlet&lt;br /&gt;
  -- Michael Clark &amp;lt;&lt;a href=&quot;mailto:michael@metaparadigm.com&quot;&gt;michael@metaparadigm.com&lt;/a&gt;&gt;&lt;br /&gt;
&lt;br /&gt;
* Fix txEval value in test.jsp to reflect variable name change in test.js&lt;br /&gt;
  -- Tan Chee Yong, cytan at ofs dot edu dot sg&lt;br /&gt;
&lt;br /&gt;
* Fix bug in test.jsp - evalStr should be populated in doEval&lt;br /&gt;
  -- Jay Graves, skabber at gmail dot com&lt;br /&gt;
&lt;br /&gt;
* Update protocol to match changes in JSON-RPC specification.&lt;br /&gt;
  &apos;methodName&apos; -&gt; &apos;method&apos;, &apos;arguments&apos; -&gt; &apos;params&apos;&lt;br /&gt;
  -- George White, george at stonehippo dot com&lt;/div&gt;~ /trunk/build.xml&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONRPCBridge.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONRPCResult.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONRPCServlet.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/NumberSerializer.java&lt;br /&gt;~ /trunk/src/org/json/JSONArray.java&lt;br /&gt;~ /trunk/src/org/json/JSONObject.java&lt;br /&gt;+ /trunk/test/rsrc&lt;br /&gt;+ /trunk/test/rsrc/unicode&lt;br /&gt;+ /trunk/test/rsrc/unicode/00index.properties&lt;br /&gt;+ /trunk/test/rsrc/unicode/japanese.utf-8.txt&lt;br /&gt;+ /trunk/test/rsrc/unicode/simplified-chinese.utf-8.txt&lt;br /&gt;+ /trunk/test/src/com/metaparadigm/dict&lt;br /&gt;+ /trunk/test/src/com/metaparadigm/dict/Database.java&lt;br /&gt;+ /trunk/test/src/com/metaparadigm/dict/Definition.java&lt;br /&gt;+ /trunk/test/src/com/metaparadigm/dict/DictClient.java&lt;br /&gt;+ /trunk/test/src/com/metaparadigm/dict/DictClientException.java&lt;br /&gt;+ /trunk/test/src/com/metaparadigm/dict/DictCommandResult.java&lt;br /&gt;+ /trunk/test/src/com/metaparadigm/dict/Match.java&lt;br /&gt;+ /trunk/test/src/com/metaparadigm/dict/Strategy.java&lt;br /&gt;+ /trunk/test/src/com/metaparadigm/jsonrpc/test/Browser.java&lt;br /&gt;+ /trunk/test/src/com/metaparadigm/jsonrpc/test/Hello.java&lt;br /&gt;~ /trunk/test/src/com/metaparadigm/jsonrpc/test/Test.java&lt;br /&gt;+ /trunk/test/src/com/metaparadigm/jsonrpc/test/Unicode.java&lt;br /&gt;+ /trunk/webapps/jsonrpc/browser.js&lt;br /&gt;+ /trunk/webapps/jsonrpc/browser.jsp&lt;br /&gt;+ /trunk/webapps/jsonrpc/css/browser.css&lt;br /&gt;+ /trunk/webapps/jsonrpc/css/dict.css&lt;br /&gt;~ /trunk/webapps/jsonrpc/css/site.css&lt;br /&gt;+ /trunk/webapps/jsonrpc/css/unicode.css&lt;br /&gt;+ /trunk/webapps/jsonrpc/css/unit.css&lt;br /&gt;+ /trunk/webapps/jsonrpc/demos.html&lt;br /&gt;+ /trunk/webapps/jsonrpc/dict.js&lt;br /&gt;+ /trunk/webapps/jsonrpc/dict.jsp&lt;br /&gt;+ /trunk/webapps/jsonrpc/hello.js&lt;br /&gt;+ /trunk/webapps/jsonrpc/hello.jsp&lt;br /&gt;~ /trunk/webapps/jsonrpc/index.html&lt;br /&gt;~ /trunk/webapps/jsonrpc/jsonrpc.js&lt;br /&gt;~ /trunk/webapps/jsonrpc/khtml-xmlhttprequest-post-fix.patch&lt;br /&gt;+ /trunk/webapps/jsonrpc/manual.html&lt;br /&gt;~ /trunk/webapps/jsonrpc/test.js&lt;br /&gt;~ /trunk/webapps/jsonrpc/test.jsp&lt;br /&gt;~ /trunk/webapps/jsonrpc/tutorial.html&lt;br /&gt;+ /trunk/webapps/jsonrpc/unicode.js&lt;br /&gt;+ /trunk/webapps/jsonrpc/unicode.jsp&lt;br /&gt;+ /trunk/webapps/jsonrpc/unit.js&lt;br /&gt;+ /trunk/webapps/jsonrpc/unit.jsp&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=16</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=16</guid></item>
<item><pubDate>Wed, 14 Mar 2007 03:46:32 +0000</pubDate><dc:creator>mclark</dc:creator><title>Rev 15 -- Release 0.7</title><description>&lt;div&gt;&lt;strong&gt;mclark -- 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Release 0.7&lt;/div&gt;+ /tags/0.7 &lt;i&gt;(copied from /trunk@14)&lt;/i&gt;&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=15</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=15</guid></item>
<item><pubDate>Wed, 14 Mar 2007 03:46:31 +0000</pubDate><dc:creator>mclark</dc:creator><title>Rev 14 -- * Fix IE brown paper bag bug. Opera fix in ...</title><description>&lt;div&gt;&lt;strong&gt;mclark -- 3 file(s) modified&lt;/strong&gt;&lt;br/&gt;* Fix IE brown paper bag bug. Opera fix in 0.6 broke IE, now look at&lt;br /&gt;
  user agent to make Opera work (without effecting IE).&lt;br /&gt;
  -- Michael Clark &amp;lt;&lt;a href=&quot;mailto:michael@metaparadigm.com&quot;&gt;michael@metaparadigm.com&lt;/a&gt;&gt;&lt;/div&gt;~ /trunk/webapps/jsonrpc/index.html&lt;br /&gt;~ /trunk/webapps/jsonrpc/jsonrpc.js&lt;br /&gt;~ /trunk/webapps/jsonrpc/tutorial.html&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=14</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=14</guid></item>
<item><pubDate>Wed, 14 Mar 2007 03:46:31 +0000</pubDate><dc:creator>mclark</dc:creator><title>Rev 13 -- Release 0.6</title><description>&lt;div&gt;&lt;strong&gt;mclark -- 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Release 0.6&lt;/div&gt;+ /tags/0.6 &lt;i&gt;(copied from /trunk@12)&lt;/i&gt;&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=13</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=13</guid></item>
<item><pubDate>Wed, 14 Mar 2007 03:46:30 +0000</pubDate><dc:creator>mclark</dc:creator><title>Rev 12 -- * Add more detailed browser support section to documentation * ...</title><description>&lt;div&gt;&lt;strong&gt;mclark -- 24 file(s) modified&lt;/strong&gt;&lt;br/&gt;* Add more detailed browser support section to documentation&lt;br /&gt;
* Workaround missing setRequestHeader method of the XMLHttpRequest&lt;br /&gt;
  object in Opera 8 Beta&lt;br /&gt;
* Add patch and documentation notes on how to resolve POST bug in&lt;br /&gt;
  Konqueror (requires patching kdelibs)&lt;br /&gt;
* Replace jsolait with lightweight json-rpc JavaScript implementation&lt;br /&gt;
* Better web navigation for tutorial and demo&lt;br /&gt;
  -- Michael Clark &amp;lt;&lt;a href=&quot;mailto:michael@metaparadigm.com&quot;&gt;michael@metaparadigm.com&lt;/a&gt;&gt;&lt;/div&gt;~ /trunk/build.xml&lt;br /&gt;~ /trunk/webapps/jsonrpc/css/site.css&lt;br /&gt;~ /trunk/webapps/jsonrpc/index.html&lt;br /&gt;x /trunk/webapps/jsonrpc/jsolait/ext/dom.js&lt;br /&gt;x /trunk/webapps/jsonrpc/jsolait/ext/dom/eventfilter.js&lt;br /&gt;x /trunk/webapps/jsonrpc/jsolait/ext/jscrunch.js&lt;br /&gt;x /trunk/webapps/jsonrpc/jsolait/ext/svgnet.js&lt;br /&gt;x /trunk/webapps/jsonrpc/jsolait/ext/svgpage.js&lt;br /&gt;x /trunk/webapps/jsonrpc/jsolait/ext/svgtimer.js&lt;br /&gt;x /trunk/webapps/jsonrpc/jsolait/ext/testing.js&lt;br /&gt;x /trunk/webapps/jsonrpc/jsolait/init.js&lt;br /&gt;x /trunk/webapps/jsonrpc/jsolait/lib/codecs.js&lt;br /&gt;x /trunk/webapps/jsonrpc/jsolait/lib/crypto.js&lt;br /&gt;x /trunk/webapps/jsonrpc/jsolait/lib/jsonrpc.js&lt;br /&gt;x /trunk/webapps/jsonrpc/jsolait/lib/lang.js&lt;br /&gt;x /trunk/webapps/jsonrpc/jsolait/lib/urllib.js&lt;br /&gt;x /trunk/webapps/jsonrpc/jsolait/lib/xml.js&lt;br /&gt;x /trunk/webapps/jsonrpc/jsolait/lib/xmlrpc.js&lt;br /&gt;+ /trunk/webapps/jsonrpc/jsonrpc.js&lt;br /&gt;+ /trunk/webapps/jsonrpc/khtml-xmlhttprequest-post-fix.patch&lt;br /&gt;~ /trunk/webapps/jsonrpc/test.js&lt;br /&gt;~ /trunk/webapps/jsonrpc/test.jsp&lt;br /&gt;+ /trunk/webapps/jsonrpc/tutorial.html&lt;br /&gt;x /trunk/webapps/jsonrpc/tutorial/index.html&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=12</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=12</guid></item>
<item><pubDate>Wed, 14 Mar 2007 03:46:29 +0000</pubDate><dc:creator>mclark</dc:creator><title>Rev 11 -- Release 0.5</title><description>&lt;div&gt;&lt;strong&gt;mclark -- 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Release 0.5&lt;/div&gt;+ /tags/0.5 &lt;i&gt;(copied from /trunk@10)&lt;/i&gt;&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=11</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=11</guid></item>
<item><pubDate>Wed, 14 Mar 2007 03:46:28 +0000</pubDate><dc:creator>mclark</dc:creator><title>Rev 10 -- * Fix unmarshalling of generic collection interfaces (List, Map, Set) ...</title><description>&lt;div&gt;&lt;strong&gt;mclark -- 23 file(s) modified&lt;/strong&gt;&lt;br/&gt;* Fix unmarshalling of generic collection interfaces (List, Map, Set)&lt;br /&gt;
* Added more details to the tutorial&lt;br /&gt;
  -- Michael Clark &amp;lt;&lt;a href=&quot;mailto:michael@metaparadigm.com&quot;&gt;michael@metaparadigm.com&lt;/a&gt;&gt;&lt;br /&gt;
&lt;br /&gt;
* Add test cases for unmarshalling hinted classed into methods with&lt;br /&gt;
  interfaces in their signature&lt;br /&gt;
* Added circular association detection to BeanSerializer&lt;br /&gt;
* Added marshalling and unmarshalling implementation to SetSerializer&lt;br /&gt;
* Added test cases for bean and set to test.js&lt;br /&gt;
  -- Tan Chee Yong, cytan at ofs dot edu dot sg&lt;/div&gt;~ /trunk/build.xml&lt;br /&gt;x /trunk/src/com/metaparadigm/jsonrpc/AbstractListSerializer.java&lt;br /&gt;x /trunk/src/com/metaparadigm/jsonrpc/AbstractMapSerializer.java&lt;br /&gt;x /trunk/src/com/metaparadigm/jsonrpc/AbstractSetSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/ArraySerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/BeanSerializer.java&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/DateSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/DictionarySerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONRPCBridge.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/JSONRPCCallback.java&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/ListSerializer.java&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/MapSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/ReferenceSerializer.java&lt;br /&gt;~ /trunk/src/com/metaparadigm/jsonrpc/Serializer.java&lt;br /&gt;+ /trunk/src/com/metaparadigm/jsonrpc/SetSerializer.java&lt;br /&gt;+ /trunk/test/src/com/metaparadigm/jsonrpc/test/BeanA.java&lt;br /&gt;+ /trunk/test/src/com/metaparadigm/jsonrpc/test/BeanB.java&lt;br /&gt;~ /trunk/test/src/com/metaparadigm/jsonrpc/test/Test.java&lt;br /&gt;~ /trunk/webapps/jsonrpc/css/site.css&lt;br /&gt;~ /trunk/webapps/jsonrpc/index.html&lt;br /&gt;~ /trunk/webapps/jsonrpc/test.js&lt;br /&gt;~ /trunk/webapps/jsonrpc/test.jsp&lt;br /&gt;~ /trunk/webapps/jsonrpc/tutorial/index.html&lt;br /&gt;</description><link>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=10</link><guid>http://svn.metaparadigm.com/wsvn/json-rpc-java?op=revision&amp;rev=10</guid></item>
</channel></rss>
