在J2ME平台上構建你的郵件程序
Jacky Pan
Table of Contents
1. 教程的介紹和程序的安裝
2. 程序的結構
3. 界面的設計
4. 賬戶的管理
5. MIDlet和Servlet的網絡連接
6. Servlet和JavaMail
7. 簡單的XML
8. 小結
1.教程的介紹和程序的安裝
本教程講述了如何在J2ME平台上編寫一個簡單的郵件應用程序,包括界面的設計,郵件的發送/接受,郵件賬戶的創建/修改/刪除,後台Servlet的編寫。
為了運行本教程所帶的演示程序,您需要安裝下列軟件:
1. WTK2.0 (java.sun.com)
2. Apache Tomcat (www.apache.org)
安裝和運行示例程序的步驟:
1. 從http://groups.yahoo.com/group/OriTec/files/下載MicroMail Beta.zip(包括了源代碼和二進制文件)
2. 解壓MicroMail Beta.zip至$TMP
3. 在$WTK/apps下建一新目錄MicroMail
4. 拷貝$TMP/src/client/* 至 $WTK/apps/MicroMail/src/
5. 拷貝$/TMP/bin/server/mail.war至$TOMCAT/webapps/
6. 運行Tomcat
7. 運行WTK2.0, “Open Project” 並選中MicroMail
8. 設置URL為MailAgent的地址http://server/mail/MailAgent
2. 程序的結構
采用Client-Web Server-Mail Server三層架構,如圖1。
MIDlet
(Cell Phone)
Servlet
(Web Server)
Mail Server
My Application
Figure 1
Cell Phone將請求(接受/發送郵件)傳給Web Server,Web Server將這些http請求轉換成對POP3或 SMTP Server的請求。POP3/SMTP Server執行相應的請求,並將相應通過Web Server返回給Cell Phone.
客戶端(PDA/手機)為J2ME平台上的程序。MIDP2提供了一些基本網絡連接的API。利用這些API可以使得J2ME程序可以向遠端發出Http請求,並接受響應,傳遞數據流。
MailAgent 為Servlet,用來接收來自客戶端的請求,並調用Java Mail API,將這些請求轉變成對遠端Mail Server 的請求,同時將Mail Server的響應傳給客戶端。
那麼為什麼要采用這樣的架構了?這是因為MIDP2.0只支持HTTP協議, 而不支持POP3 和 SMTP等其它應用層協議,而J2EE提供了完整的Java Mail的API,所以考慮通過一個Servlet將Http請求轉換成POP3或SMTP請求。另一個原因是,很多運營商可能只提供有限的網絡訪問的能力,而通過一個agent則提供了程序部署的靈活性。