I have implemented a JSON based RPC framework - refer http://code.google.com/p/amazingapis/wiki/JsonServlet_JsonClient_mechanism
So basically , This is cmd framework where you can send request string as Json streams on HTTP and your JSONServlet on the server will read client requests and pass invoke the corresponding cmd. The documentation is not great. Let me know if you want to use it. I can upload a newer version. On Jun 10, 9:13 am, dilbert <[email protected]> wrote: > First I'd like to explain what I mean by RPC. I'd like to be able to > write interfaces like this (simple Java interface): > > public interface EchoService { > String echo(String message); > > } > > The framework would allow the creation of client classes that would > handle the serialization from/to the RPC service. Of course the > framework should support the serialization of ArrayLists, HashMaps and > other collections and should also support the serialization of objects > marked with the "java.io.Serializable" interface (or some other > interface). > We would create the RPC Client this way: > > EchoService echoService = > RpcClientFactory.createInstance(EchoService.class,"http://bla.com/ > smartApp/echo"); > > And of course use it this way: > > String echoMessage = echoService.echo("The message !!!"); > > The server side servlet would implement the previously mentioned > interface. > public class Service extends WhateverServlet implements EchoService { > @Override > String echo(String message) { > return "server sends:" + message; > } > > } > > A few additional nice features to have would be: > -support for asynchronous calls (where the developer would provide a > callback for handling the result, similar to GWT RPC) > -the developers should be able to access the RPC client somehow to be > able to handle Cookies or other http headers. > -the client side should be usable from Android. > > After a long search I have found that the framework that most closely > matches these requirements is Hessian (http://hessian.caucho.com/). It > uses a binary protocol so it should be very fast and it works on > Android. AFAIK it does not support async calls. However, not all is > well. The current Hessian implementation does not handle exceptions > well. It throws a SecurityException like this: > > java.lang.SecurityException: java.lang.IllegalAccessException: > Reflection is not allowed on private java.lang.Throwable > java.lang.Throwable.cause > > I considered GWT RPC for a while but it does not have a proper Java > client or I could not find one. So I wanted to ask is there any other > library that could be used in this case? Could the App engine team > write such a library and add it to the SDK. Any suggestions? -- You received this message because you are subscribed to the Google Groups "Google App Engine for Java" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
