Looks good.
http://codereview.appspot.com/21069/diff/1/15 File java/common/src/main/java/org/apache/shindig/protocol/JsonRpcServlet.java (right): http://codereview.appspot.com/21069/diff/1/15#newcode94 Line 94: Map<String, FormDataItem> formItems = new HashMap<String, FormDataItem>(); while the spec doesnt cover it, it may also be worthwhile detecting the first content block of application/json and assuming it is the request. The form field named request is only needed when posting out of a browser. http://codereview.appspot.com/21069/diff/1/15#newcode246 Line 246: if (!"post".equals(request.getMethod().toLowerCase())) { Http methods are always uppercase http://codereview.appspot.com/21069/diff/1/12 File java/common/src/main/java/org/apache/shindig/protocol/RequestItem.java (right): http://codereview.appspot.com/21069/diff/1/12#newcode82 Line 82: FormDataItem getFormItem(String partName); name is a little generic. FormMimePart instead? http://codereview.appspot.com/21069/diff/1/3 File java/common/src/test/java/org/apache/shindig/protocol/multipart/DefaultMultipartFormParserTest.java (right): http://codereview.appspot.com/21069/diff/1/3#newcode52 Line 52: * Helper class to create the mulitpart/form-data body of he POST request. ...of the POST... http://codereview.appspot.com/21069/diff/1/3#newcode54 Line 54: private static class MultipartFormBuilder { Is there nothing that already allows you to fake this up easily in the commons library or elsewhere? http://codereview.appspot.com/21069

