首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 程式設計入門

應用 Java Servlet/JSP 開發 WAP 應用程式

     編輯:Java 程式設計入門

開發環境與原理

使用 Tomcat 作為 Web 伺服器,透過 Servlet/JSP 動態生成 WML (Wireless Markup Language) 內容,回應 Content-Type: text/vnd.wap.wml,即可開發 WAP 應用。WAP 閘道器負責編碼轉換,對開發者透明。

JSP 版本範例:waptest.jsp

<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN"
  "https://www.wapforum.org/DTD/wml_1.1.xml">
<%
  response.setContentType("text/vnd.wap.wml");
  out.println("<wml>");
  out.println("<card title=\"MobileDate\">");
  out.println(" <p align=\"center\">");
  out.println("Date and Time Service<br/>");
  out.println("Date is: " + new java.util.Date());
  out.println("</p>");
  out.println("</card>");
  out.println("</wml>");
%>

Servlet 版本範例:WapServlet.java

package com.j2medev.mingjava;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class WapServlet extends HttpServlet {
  protected void doGet(HttpServletRequest req, HttpServletResponse resp)
      throws ServletException, IOException {
    resp.setContentType("text/vnd.wap.wml");
    PrintWriter out = resp.getWriter();
    out.println("<?xml version=\"1.0\"?>");
    out.println("<!DOCTYPE wml PUBLIC \"-//WAPFORUM//DTD WML 1.1//EN\"");
    out.println("  \"https://www.wapforum.org/DTD/wml_1.1.xml\">");
    out.println("<wml><card title=\"MobileDate\">");
    out.println(" <p align=\"center\">Date and Time Service<br/>");
    out.println("Date is: " + new java.util.Date());
    out.println("</p></card></wml>");
  }
  protected void doPost(HttpServletRequest req, HttpServletResponse resp)
      throws ServletException, IOException { doGet(req, resp); }
}

web.xml 部署描述符

<?xml version="1.0"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
  "https://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
  <servlet>
    <servlet-name>WapServlet</servlet-name>
    <servlet-class>com.j2medev.mingjava.WapServlet</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>WapServlet</servlet-name>
    <url-pattern>/wapservlet</url-pattern>
  </servlet-mapping>
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
  <error-page>
    <error-code>404</error-code>
    <location>/error.jsp</location>
  </error-page>
</web-app>

測試與驗證

部署至 Tomcat webapps 目錄,使用 WinWAP 模擬器或真機訪問:

  • https://localhost:8088/wap/wapservlet
  • https://localhost:8088/wap/waptest.jsp

畫面將顯示伺服器當前日期時間,驗證 WML 輸出正確。

關鍵要點

  1. 正確設定 Content-Type 為 text/vnd.wap.wml。
  2. 輸出合法 WML 結構(<wml>, <card>, <p>)。
  3. Tomcat 需在 web.xml 配置 WML MIME 對應(若預設未支援)。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved