WAP(Wireless Application Protocal)是開放的協(xié)議,這與日本的I-MODE有所不同,后者是封閉的。WAP事實上是無線網(wǎng)絡(luò)和Internet網(wǎng)絡(luò)相結(jié)合的產(chǎn)物。本來的無線網(wǎng)絡(luò)主要是承載話音業(yè)務(wù),而同時internet的數(shù)據(jù)業(yè)務(wù)已經(jīng)非常的成熟。由于數(shù)據(jù)業(yè)務(wù)在無線網(wǎng)絡(luò)中應用的需求,促進了WAP的形成。你甚至可以認為WAP是一個輕量級的HTTP協(xié)議,它是為無線網(wǎng)絡(luò)量身訂制的。
作為開發(fā)人員我們應該了解一下WAP的工作原理以及編程模式,如果你有Web應用程序開發(fā)經(jīng)驗的話,理解起來會比較容易的。其實它就是一種B/S的模型,這里的Browser不是傳統(tǒng)意義上的瀏覽器而是支持WAP設(shè)備上的用戶代理,也可以理解為WAP瀏覽器。而服務(wù)器就是一般的WEB服務(wù)器,你可以使用IIS、Apache或者其他的web服務(wù)器,由于html不適合在資源比較緊張的無線設(shè)備上傳輸因此我們在服務(wù)器上使用wml語言。事實上當用戶通過無線設(shè)備訪問網(wǎng)絡(luò)的時候,首先請求要經(jīng)過WAP網(wǎng)關(guān),WAP網(wǎng)關(guān)會對數(shù)據(jù)進行適當?shù)木幗獯a,然后把數(shù)據(jù)請求發(fā)送到web服務(wù)器上,處理后數(shù)據(jù)經(jīng)過WAP網(wǎng)關(guān)的編解碼后發(fā)送到手機上。而這對程序員來說是透明的,你只需要管理server的代碼就可以了。下面這張圖片有助于你理解這一編程模式,如果你想了解更多關(guān)于WAP的知識,推薦你看一本《移動互聯(lián)網(wǎng)與 WAP技術(shù)》,雖然講的不深但是比較清楚。
既然我們的服務(wù)器可以用一般的WEB服務(wù)器,那么這里我使用TOMCAT5.0作為web服務(wù)器,首先你需要從http://www.apache.org 下載tomcat5.0并安裝。假設(shè)安裝路徑為c:\tomcat 5.0。在環(huán)境變量中設(shè)置好CATALINA_HOME=c:\tomcat 5.0。設(shè)置好JAVA_HOME=C:\j2sdk1.4.2_03。進入CATALINA_HOME/bin目錄,運行StartUp啟動tomcat,默認的端口是8080。打開瀏覽器在地址里面輸入http://localhost:8080。看到那只tom貓則說明安裝成功。tomcat5.0的版本一般都已經(jīng)對wml支持了,如果不支持的話,修改CATALINA_HOME/conf/web.xml。在MIME映射部分添加如下內(nèi)容:
<mime-mapping>
<!-- WML Source -->
<extension>wml</extension>
<mime-type>text/vnd.wap.wml</mime-type>
</mime-mapping>
<mime-mapping>
<!-- Compiled WML -->
<extension>wmlc</extension>
<mime-type>application/vnd.wap.wmlc</mime-type>
</mime-mapping>
<mime-mapping>
<!-- WML Script Source -->
<extension>wmls</extension>
<mime-type>text/vnd.wap.wmlscript</mime-type>
</mime-mapping>
<mime-mapping>
<!-- Compiled WML Script -->
<extension>wmlscriptc</extension>
<mime-type>application/vnd.wap.wmlscriptc</mime-type>
</mime-mapping>
你還可以在welcome-list里面添加index.wml作為默認的訪問頁面
<welcome-file-list>
<welcome-file>index.wml</welcome-file>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
這樣服務(wù)器已經(jīng)可以用來開發(fā)wap應用了。
調(diào)試程序的時候我們需要在WAP瀏覽器上調(diào)試,我選擇了winwap瀏覽器作為開發(fā)調(diào)試工具,用起來非常的方便。首先從http://www.winwap.org 下載最新的winwap 3.1pro版本,30天的試用期。安裝和其他的應用程序安裝一樣,下面我們編寫一個簡單的wml文件測試一下。
index.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="MyFirstCard" title="First Card">
<p align="center">
Hello www.j2medev.com
</p>
</card>
</wml>
把這個文件放在CATALINA_HOME/webapps/root/下面,啟動winwap后在地址內(nèi)輸入http://yourip:yourport/index.wml,將會在winwap里面看到hello www.j2medev.com。