Using WAP with WebLogic Server
The following sections describe how to provide content suitable for the Wireless Application Protocol (WAP) application environment and how to configure and use WebLogic Server with a WAP gateway:
Overview
Wireless Application Protocol (WAP) is an open, global specification, developed and deployed by the WAP Forum, that allows for the development of Internet and Web-based services for mobile phones and other wireless digital devices. Its founder members include the major wireless vendors of Ericsson, Motorola, Nokia, and Phone.com (formerly Unwired Planet and now Openwave Systems Inc).
The WAP specification addresses the limitations of wireless networks (low bandwidth, high latency, and unpredictable availability and stability) and wireless devices (limited CPU, memory, and battery life, and a simple user interface). It specifies two essential elements of wireless communication: an over-the-air wireless protocol and an application environment.
WAP gateways form the connection between clients on the wireless network and applications hosted on application servers on the Internet. The WAP gateway builds a bridge between the telecommunication and computer networks by routing requests from wireless clients to the application servers. It can be physically located in either network, though it is needed in only one of them.
WAP Application Environment
The WAP application environment defines the framework for network-neutral, wireless applications for narrowband devices. Two of the main components of the WAP application environment are Wireless Markup Language (WML) and WMLScript.
WML
WML for WAP applications is analogous to HTML for TCP/IP applications. It is an XML-based language that is specifically designed to interface with the microbrowsers that exist in WAP-enabled devices. The Wireless Markup Language Specification defines the tags and structure of a WML document.
A WML document is a collection - referred to as a deck - of one or more cards. Each card in a deck of cards is considered a well defined unit of interaction. The general rule of thumb is that a card carries enough information to fit in one screen of a wireless device. For information on ways to serve WML documents to wireless clients, see WAP Gateway. For general information on WML, see Additional Resources.
WMLScript
WMLScript provides generalWebLogic Server scripting capability to the WAP architecture. It is designed to overcome the limitations of narrowband communication and wireless clients. For example, WMLScript is a good way to validate form input without making a round trip to the server.
WMLScript resides in .wmls files that are made available to wireless clients by placing them into the document root. The document root is the root directory for files that are publicly available on WebLogic Server. For more detail, see the information on directory structures in Web Applications Basics. For general information on WMLScript, see Additional Resources.
WAP Gateway
As shown in the following figure, the WAP gateway acts as the bridge between the wireless network containing wireless clients and the computer network containing application servers.
Figure 2-1 WAP Application Architecture
WAP Gateway Functionality
A WAP gateway typically includes the following functionality:
- Protocol gateway - the protocol gateway translates requests from the WAP protocol stack to the WWW protocol stack (HTTP and TCP/IP).
- Content encoders and decoders - the content encoders translate Web content into compact encoded formats to reduce the number and size of packets traveling over the wireless data network.
When a wireless client sends a request to a WAP application running on WebLogic Server, the request is first routed through the WAP gateway where it is decoded, translated to HTTP, then forwarded to the appropriate URL. The response is then re-routed back through the gateway, translated to WAP, encoded, and forward to the wireless client. This proxy architecture allows application developers to build services that are network and terminal independent.
WAP Gateway Security and Security Concerns
The security layer of the WAP protocol stack is called Wireless Transport Layer Security (WTLS). WTLS is based upon the established Transport-Layer Security (TLS) protocol standard.
For a secure connection employing the WAP protocol, a very small security risk exists at the WAP gateway during the switching of WTLS (WAP side) to SSL (IP side) and SSL to WTLS. Since the WAP protocol allows a session to be redirected from the carrier's gateway to the enterprise's gateway, an enterprise may want to control this minimal risk by including a WAP gateway behind its firewall. As shown in the following figure, the enterprise secures the server running the WAP gateway in a controlled environment to eliminate any exposure to the security risk.
Figure 2-2 WAP Session Redirection
Since the carrier is a trusted entity and is continuously responsible for protecting voice, fax, computer and other types of data, enterprises probably do not need to host their own WAP gateway.
WAP Gateway Vendors
There are a growing number of vendors that provide WAP gateways. WebLogic Server should work with any WAP-compliant gateway. For a list of WAP-compliant gateways and other WAP products, refer to the WAP Deployment Fact Sheet compiled by the WAP Forum.
Additional Resources
Here are some Web sites (organized by category) to visit for additional information about WebLogic Server programming, WAP, and WML.
Related WebLogic Technologies
Programming WebLogic HTTP Servlets
General WAP Information
Nokia: WAP Solutions for Mobile Business
WAP Specifications and White Papers
WAP Toolkits
Openwave Software Development Kit