Welcome!

Michael Juntao Yuan

Subscribe to Michael Juntao Yuan: eMailAlertsEmail Alerts
Get Michael Juntao Yuan via: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn


Related Topics: SOA & WOA Magazine

Article

SOA and Web Services Go Mobile, Nokia-Style

SOA and Web Services Go Mobile, Nokia-Style

Personally, I think the biggest announcement from JavaOne was that Nokia is building a Service-Oriented Architecture framework on smart mobile phones that could quickly change how an average technology user sees Web services.

No, I am not talking about the standard SOAP interfaces between desktop/server applications and telecomm hosted servers (e.g., the MMS messaging server, location server and presence server). They are cool technologies already in use but they are only part of the mobile Web service big picture that is about to emerge.

I am talking about integrating mobile clients directly into Service-Oriented Architecture (SOA) based on asynchronous Web services!

OK, a mobile Web service client is not exactly a new idea. I talked about it more than two years ago back in 2002. The .Net Compact Framework has been supporting Web services for quite some time now. On the Java side, kSOAP is a J2ME based SOAP parser and the JSR 172 provides a standard set of XML and SOAP APIs on J2ME devices. Tools like Visual Studio, IBM WebSphere Device Developer, JBuilder, and SunONE Studio have provided code generators to drastically simply the work for developers. I wrote a kSOAP tutorial in Augest 2002 and also covered both kSOAP and JSR 172 extensively in my "Enterprise J2ME" book.

Those are all nice. However, there is a key problem with the current approaches: All the frameworks more or less assumed that the device interact with one service endpoint at a time in a synchronous remote procedure call (RPC) mode. That is to take all the overhead of Web service but get little of the promised flexibility, scalability and asynchrony in return. Indeed, most developers opt to implement custom RPC protocols to interface with mobile servers. I recommended building a service facade to hide the backend complexity in this simple scenario.

That is not what Web service is meant to be. As I had discussed two years ago, mobile Web services is about the ecosystem where the device can roam in and out, discover and consume services at will. Some of the services are illustrated in Figure 1 (credit: Forum Nokia). In addition, the framework allows mobile devices to become Web service providers as well and hence enables peer-to-peer mesh service networks. Very cool!

Now, the single most important technical challenge in such a ecosystem is access control. A single sign-on scheme is required to track all the devices and services in the system and decides who has permission to do what. That requires communication protocols more complex than SOAP. Various competing Web service standards for single sign-on services have been proposed. The Liberty Alliance led by Sun is one of them. The Nokia framework is currently based on Liberty Alliance and could reach out to other single sign-on communities in the future.

The framework will be available in both J2ME and Symbian C++. It puts Nokia in a competitive position against Microsoft in this race - the .Net Compact Framework 2.0 would also have some advanced Web service features. All in all, I found this extremely interesting. I can't wait to try it out!


 

More Stories By Michael Juntao Yuan

Michael Juntao Yuan is a member of JDJ's editorial board. He is the author of three books. His latest book, "Nokia Smartphone Hacks" from O'Reilly, teaches you how to make the most out of your mobile phone. He is also the author of "Enterprise J2ME" - a best-selling book on mobile enterprise application development. Michael has a PhD from the University of Texas at Austin. He currently works for JBoss Inc. You can visit his Web site and blogs at www.MichaelYuan.com/.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.