Newsletter sign-up
View all newsletters

Enterprise Java Newsletter
Stay up to date on the latest tutorials and Java community news posted on JavaWorld

Java readies itself for wireless Web services

Emerging Java platforms are well positioned for wireless Web services developers

  • Digg
  • Reddit
  • SlashDot
  • Stumble
  • del.icio.us
  • Technorati
  • dzone

Convenience is the major motivation behind our adoption of wireless technology. The ability to access information anytime from anywhere drastically increases our productivity as well as our quality of life by allowing us to work from home, car, school, or vacation resorts, and manage time more flexibly. Besides the unprecedented convenience, a wireless Internet also improves the quality of the information services. By taking advantage of wireless devices' pervasive nature, you can dynamically customize information services for each user based on her location, mood, or other real-time data.

The wireless Internet's dynamic nature requires a new breed of dynamic services, which likely involves many service providers. Even simple mobile commerce tasks require much expertise. For example, a straightforward stock trade application necessitates services such as user authentication and authorization, customer relationship management, stock quotes and tracking, trade executing, and fund transfer. Those services are built upon more basic services, such as Internet connectivity, security, and transactional reliability monitors. The IT industry's history has shown that a single vendor cannot offer the best expertise or services in all fields. The best economic model features small vendors providing modularized service components, each serving its core competency. Those modularized reusable software components are called Web services. To minimize bandwidth and CPU usage, wireless users can selectively use only the core services they need. Applications that utilize a wireless front end for pervasive human interfaces and Web services on the back end to leverage the Internet's vast information resources are called wireless Web services applications.

Web services from different vendors must interoperate from machine to machine to provide transparent services to customers. Distributed computing services have long been able to work with each other through remote procedure calls (RPC) and remote object frameworks. However, building such an interoperable network on an Internet scale requires industry-wide standardization of communication protocols. We have XML-based protocols to standardize Web services' dynamic discovery processes (UDDI, or Universal Description, Discovery, and Integration); service interfaces (WSDL, or Web Services Description Language); and asynchronous and synchronous messaging (SOAP, or Simple Object Access Protocol, and XML-RPC). On top of those communication protocols, other protocols provide more enhanced functionalities, such as the XML Encryption and XML Digital Signature protocols for improving security. For instance, you can embed an XML digital signature in a SOAP message to guarantee that message's integrity.

Throughout this article, we explain wireless Web services' network architectures, how Java fits into the wireless Web services picture, evolving technologies, and future trends. Since much literature already discusses server-side Java platforms and Java-based Web services, we focus only on Java's role in wireless application development.

  • Digg
  • Reddit
  • SlashDot
  • Stumble
  • del.icio.us
  • Technorati
  • dzone
Comment
Login
Forgot your account info?
Add comment
Anonymous comments subject to approval. Register here for member benefits.
Have a JavaWorld account? Log in here. Register now for a free account.
Resources