Intranet Journal   Earthweb  
Events Jobs Premium Services Media Kit Network Map E-mail Offers Vendor Solutions Webcasts

   Intranet Journal Subjects
Search Earthweb

Privacy Policy



internet.com
IT
Developer
Internet News
Small Business
Personal Technology

Search internet.com
Advertise
Corporate Info
Newsletters
Tech Jobs
E-mail Offers

internet commerce
Be a Commerce Partner
















 

[ Home | Discussion Forum | How Do I... | Lotus Notes Intranets | Microsoft SharePoint | Products | Shopping  ]

free news!


Wireless Apps: The Reality Today


Jean-Baptiste Minchelli, Consultant

Introduction
Today's Wireless environments
Multi-Device Wireless environments
Purpose of a Wireless application

Today's Wireless environments

Introduction

Development of a Wireless application does not usually require any specific procedure. This means that a number of vendors have been quick to use Wireless to promote their products, although these possess no specific Wireless feature. We could mention Allaire, for example, who proudly announced their products' support for WAP; in fact, all this turns out to mean is that a few tags have been inserted.

We will see that by using standard Web technologies, it is quite possible to set up a Wireless application.

Existing environments

The environment is the non-visible part of the application; essentially, this refers to a resource which governs much of the development and operation of the application.

The first Wireless services were grafted onto existing systems which, naturally, had not been designed to integrate Wireless technology. Wireless applications therefore often cohabited with standard Web applications, quite independently; this usually involved new developments in order to make new services available.

Environment of early Wireless applications

An example of a Wireless application

Below is a simple example of a WAP application set up in a relatively conventional Web environment:

  • Web Server: Apache
  • Server-side scripting language: PHP

WAP (which stands for Wireless Application Protocol) is a specification from the WAP Forum which aims to define how applications should operate within the Wireless domain. Although a gateway is essential in the WAP protocol, it is only implemented by operators. For information, the gateway works as a link between the Wireless world and the Web (translation of requests, content coders, and so on). Therefore, only the elements mentioned above are required to set up a WAP application.

Server configuration

The application server (or the Web server) needs to be configured in order to deliver WAP content. So you need to tell the server when it must make it known that the message is a WAP message. This means specifying the MIME-types (content-type) specific to WAP. For Apache, you need to edit the httpd.conf file and add the following:

AddType text/vnd.wap.wml wml
AddType text/vnd.wap.wmlscript wmls
AddType application/vnd.wap.wmlc wmlc
AddType application/vnd.wap.wmlscriptc wmlscAddType image/vnd.wap.wbmp wbmp

The server is now able to supply WAP content. It is only essential to specify the MIME-types for static pages. Otherwise, these can be specified dynamically, as we will see later on.

Application development and testing

WAP currently uses WML (Wireless Markup Language), which is based on XML, and WMLScript, based on ECMAScript. If we compare it to a Web application, we could say that WML plays the role of HTML (document formatting) and WMLScript is like JavaScript (client-side scripting language).

Below is an example of WML:

<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.WAPforum.org/DTD/wml_1.1.xml">

<wml>
<card id="hello">
<p>
<do type="accept">
<go href="Hello.wmls#Display('Hello in WMLS')"/>
</do>
Hello world!
</p>
</card>
</wml>

Hello.wml

And now, here is an example of WMLScript:

extern function Display(msg)
{
Dialogs.alert(MSG);
return;
}

Hello.wmls

To test this first Wireless application, place the Hello.wml and Hello.wmls in the Web server's root folder, and then browse the page with a WAP simulator such as that offered by Phone.com (now OpenWave).

YoSpace Emulator

The above picture shows the result that you should then obtain. As long as your server is accessible via Internet, you should be able to access your application using any WAP phone. All you need to do is enter the relevant URL to access the resource.

We will now put together a dynamic application which generates WAP content on the fly. We will use PHP to do this. Of course, it is equally possible to use any other technology to dynamically generate documents (ASP, JSP…). Below is the source code for our example:

<?
header("Content-Type: text/vnd.wap.wml");
echo "<?xml version=\"1.0\"?>";
echo "<!DOCTYPE wml PUBLIC \"-//WAPFORUM//DTD WML 1.1//EN\"
\"http://www.wapforum.org/DTD/wml_1.1.xml\">";
?>

<wml>
<card id="hello">
<p>
<?
$word = "hello";
$word .= " world!";
echo $word;
?>
</p>
</card>
</wml>

Hello.php

It is crucial not to omit the Content-Type information from the header. It is this information that enables the different agents in the protocol to correctly process the message (gateway, browser…). The rest of the code is conventional — you insert the PHP code inside the WML code. You can therefore carry out any processes you want (database access, image generation…).

Recap

Pros

Cons

  • Uses existing structures.
  • Swift to implement.
  • Application specifically designed for Wireless devices.
  • Requires redevelopment of application.
  • Extremely costly in terms of development and maintenance.

From this rudimentary example, we can see that it is possible to build any Wireless application. But as we have already mentioned, the present case involves redeveloping applications. And since, as we know, you need one version for HDML, one for WAP, another in HTML 3.2 for PDAs, and so on, it is clear that development and maintenance costs will quickly begin to add up.

Printer Friendly Version

TechMetrix

TechMetrix Research is a technically focused analyst firm focused on e-business application development needs. Based in Boston, Mass., the firm publishes comparison reports and product reviews designed to aid enterprises with decision making and to keep pace with the fast-moving e-business market.

TechMetrix is a U.S.-based subsidiary of SQLI, a European company that offers on-site development services to international organizations. SQLI specializes in e-business project development.



Of Interest
· Intranet eXchange Discussion Board

· Advice and Opinions

email this page

Tutorials
and more at:
Intranet Journal's Tutorials
Intranet Journal Favorites

Creating a PHP-Based Content Management System

The Spyware Guide

Introduction to Microsoft SharePoint Portal

Intranet Journal
Part of the EarthWeb Network

Managing Editor
Intranet Journal

Tom Dunlap

EarthWeb Home Page
Jupitermedia Home Page

Media Kit




The Network for Technology Professionals

Search:

About Internet.com

Legal Notices, Licensing, Permissions, Privacy Policy.
Advertise | Newsletters | E-mail Offers