Hi, I have evaluated SOAP, REST, JSON-RCP architectures and within multiple implementations in combination with Android.
SOAP(ksoap2) is just too cumbersome and heavy, but probably the only sensible choice when dealing with legacy services. REST is fine if you like the architecture of having a separate endpoint for each resource. Spring REST client with 2MBytes on the phone it is ten times as large as most other implementations. Try RESTclient-Android + GSON https://github.com/TylerSmithNet/RESTclient-Android first. JSON-RCP provides the most choices, see http://en.wikipedia.org/wiki/JSON-RPC However what I found lacking in server implementations is that they use servlets that have a static reference to a component which does not work out of the box with pooled resources that you find in enterprise class containers. http://code.google.com/p/jpoxy/ looks enticing but look at the Maven debendency graph in NetBeans. No client implementation so you have to write one yourself. The protocol is not compatible with other implementations (JSON-RCP does not gurantee compatibility) and it leaks the fully qualified class name into the client so you can't re-factor your server class names without breaking the client code. Have a look at http://software.dzhuvinov.com/json-rpc-2.0-base.html and http://code.google.com/p/json-rpc. A good selection criterion is to check whether the implementations actually provide both client and server code. For now I am using http://code.google.com/p/json-rpc Regards, Bernard On Wed, 18 Jan 2012 09:39:28 -0500, you wrote: >Separate front-end sounds fine. Use a REST architecture with JSON as the >data exchange format. I'm pretty Spring MVC supports this through the use >Jackson JSON library. Its something to add to your list of possible options. > > > > >On Wed, Jan 18, 2012 at 2:38 AM, nazeem <[email protected]> wrote: > >> Hi >> >> I am currently developing an application using Wicket + Spring + Hibernate. >> So far everything is smooth and I use a lot of Ajax which works perfectly >> fine. Now I need to provide options for data entry via mobile devices like >> Andriod (Samsing Tab) + iOS (iPad). My initial plan was to develop web >> based UI specific to suit these devices so that it reduces the complexity >> of >> developing for multiple platform. But now, I need offline usage as the >> signal strength can vary from place to place, so web based option is ruled >> out. (not sure if options like gears for offline usage will work in mobile >> devices). >> >> Also I need to use device specific native features like camera to upload >> photos from the device. So I am planning to develop separate front end for >> iOS & Andrioid. Is this the right approach ? >> >> What will be the communication layer between Server & Mobile applications ? >> REST ? If not what else. Please suggest. >> >> Also advice on the libraries that will help me get there.. >> >> regards, >> nazeem >> >> >> >> -- >> View this message in context: >> http://apache-wicket.1842946.n4.nabble.com/wicket-appl-architecture-tp4305917p4305917.html >> Sent from the Users forum mailing list archive at Nabble.com. >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: [email protected] >> For additional commands, e-mail: [email protected] >> >> --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
