wap 学习-3 jsp中使用wml
2010-05-03 16:44:15| 分类: WAP |字号 订阅
wml有两个版本;1.0,2.0
1.0 在JSP中,使用如下
<?xml version="1.0"?>
<%@page contentType="text/vnd.wap.wml; charset=gb2312"%>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
或者
<%@page contentType="text/vnd.wap.wml; charset=gb2312"%><?xml version="1.0"?> //这里不能换行
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
否则,使用Opera浏览器浏览无法按wml进行解析浏览
wml的content-type为:text/vnd.wap.wml
mime类型:application/vnd.wap.wml
或者在web.xml中进行全局设置:
public class SetContentTypeFilter implements Filter {
private String contentType;
private String encoding;
public void init(FilterConfig filterConfig) throws ServletException {
contentType = filterConfig.getInitParameter("contentType");
encoding = filterConfig.getInitParameter("encoding");
}
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException,
ServletException {
HttpServletRequest httpServletRequest = (HttpServletRequest) request;
HttpServletResponse httpServletResponse = (HttpServletResponse) response;
httpServletRequest.setCharacterEncoding(encoding);
httpServletResponse.setContentType(contentType);
httpServletResponse.setCharacterEncoding(encoding);
chain.doFilter(httpServletRequest, httpServletResponse);
}
public void destroy() {
}
}
web.xml
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>com.infowarelab.wap.filter.SetContentTypeFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>contentType</param-name>
<param-value>text/vnd.wap.wml</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
注:若使用了struts2+freemarker,必须设置freemarker result-type 的 content-type="text/vnd.wap.wml",否则freemarker默认会使用text/html,即使设置了过滤器也无效
2.0 在JSP中,使用如下
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-mobile10.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<meta http-equiv="Pragma" content="no-cache"/>
<meta http-equiv="Cache-Control" content="no-cache"/>
<meta http-equiv="Expires" content="0"/>
<link href="/wml/info/style.css" rel="stylesheet" type="text/css" />
<title>我的网易</title>
</head>
<body>
<div id="body" style="width:100%;">
一个web应用同时使用1.0,2.0
使用不同的前缀(如/v1,/v2)来区分两个版本的访问,然后使用过滤器对每个版本统一处理
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>com.infowarelab.wap.filter.SetCharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter>
<filter-name>contentTypeFilter</filter-name>
<filter-class>com.infowarelab.wap.filter.SetContentTypeFilter</filter-class>
<init-param>
<param-name>contentType</param-name>
<param-value>text/vnd.wap.wml</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern> //v1,v2都需要进行编码设置
</filter-mapping>
<filter-mapping>
<filter-name>contentTypeFilter</filter-name>
<url-pattern>/v1/*</url-pattern> //只有v1需要修改content type设置
</filter-mapping>
分享到:
相关推荐
10. **性能优化**:WAP网络速度慢,所以压缩代码、减少HTTP请求、缓存策略等性能优化方法在WAP JSP开发中至关重要。 通过理解和掌握这些知识点,开发者可以有效地利用WAP JSP模板开发出适应移动设备的web应用,提高...
理解JSP WAP 开发原理理解JSP WAP 开发原理理解JSP WAP 开发原理理解JSP WAP 开发原理理解JSP WAP 开发原理理解JSP WAP 开发原理理解JSP WAP 开发原理理解JSP WAP 开发原理理解JSP WAP 开发原理
【标题】"wap_jsp开发实例"涉及到的关键技术领域是移动互联网开发,主要集中在使用Java Server Pages(JSP)技术构建适用于无线应用协议(WAP)的网站或服务。WAP是一种让移动设备如手机访问互联网内容的标准,而JSP...
这个示例教程对于学习如何为移动设备开发Web应用非常有价值,特别是对那些想要了解如何在Java环境中结合JSP和WAP技术的开发者来说。通过研究这些文件,我们可以深入理解JSP、servlet以及WAP之间的协同工作方式,...
**JSP技术在WAP开发中的应用** JSP(JavaServer Pages)是Java平台上的动态网页技术,它允许开发者在HTML或XML文档中嵌入Java代码,以实现服务器端的动态处理。在WAP(Wireless Application Protocol)开发中,JSP...
在WAP(Wireless Application Protocol)开发中,JSP同样扮演着重要的角色,帮助开发者构建能在移动设备上运行的动态WAP页面。 WAP是一种标准协议,用于在移动设备上访问互联网内容,主要使用WML(Wireless Markup ...
【标题】"jsp+tomcat的wap源码" 涉及的知识点主要集中在使用Java Server Pages (JSP) 技术与Apache Tomcat服务器来开发无线应用协议(WAP)的应用程序。JSP是Java EE平台的一部分,它允许开发者创建动态、数据驱动的...
### JSP技术在WAP开发中的应用 #### 一、JSP与WAP开发概述 JSP(JavaServer Pages)是一种基于Java技术的服务器端网页开发技术,它允许开发者将HTML、XML等静态内容与Java代码相结合,从而生成动态网页。WAP...
【标题】"源码jsp写的wap系统"涉及的是使用JavaServer Pages(JSP)技术构建的适用于移动设备的Web应用程序,通常称为WAP(Wireless Application Protocol)系统。这种系统是为了适应早期移动设备的限制而设计的,...
【标题】: "Java JSP开发中的WAP教程" 【描述】: "本文档适合初次接触WAP开发的人员,通过此教程可以开始WAP应用的编程之旅" 【标签】: "wml jsp java wap doc" 【知识点详解】 WML (Wireless Markup Language) ...
**三、JSP WAP开发基础** 1. **WML与XHTML-MP**:WML是一种专为移动设备设计的语言,类似于XML,用于创建WAP网站。随着设备性能提升,XHTML-MP成为更常见选择,它扩展了XHTML,支持更多的HTML特性。 2. **WAP ...
**标题解析:** "jsp下wap应用程序" 指的是使用Java Server Pages (JSP) 技术在Web环境中开发的适用于Wireless Application Protocol (WAP) 设备的应用程序。WAP是为移动设备如手机设计的一种通信协议,用于提供...
描述“wap技术[pdf]”再次强调了主题,暗示我们将深入学习WAP,而“jsp”则提示WAP可能在与JSP的交互中扮演角色,可能是关于如何在WAP设备上使用JSP进行开发的内容。 **WAP技术** WAP(Wireless Application ...
这个“jap wap 开发实例”很可能是关于如何使用这两种技术结合,特别是利用WML与jsp(JavaServer Pages)来构建适应于早期移动设备的Web应用。 **WML(无线标记语言)**: WML是一种基于XML的标记语言,专为有限的...
2. **开发语言选择**:WAP网站可以使用多种编程语言进行开发,如ASP、JSP、PHP、Python等。尽管ASP在某些方面可能较为简单,但在处理中文字符时可能存在困难,尤其是在WAP 1.2标准下。相比之下,JSP和Python在处理...
这个压缩包中的资源提供了全面的教程,涵盖了从WML的基础到JSP与WML集成的高级概念,对于想要学习WAP开发的初学者来说是非常有价值的参考资料。通过深入研究这些文件,开发者可以学习到如何创建适应无线设备的动态...
在开发WAP(无线应用协议)应用时,Struts框架可以提供结构化的支持,帮助开发者有效地组织和管理代码。WAP是为移动设备如手机设计的一种通信协议,它允许用户通过无线网络访问互联网服务。 在使用Struts开发WAP...
该系统是一款基于Java JSP技术开发的,专为WAP(无线应用协议)用户设计的图片下载平台。它允许用户通过支持WAP的移动设备,如Opera Mini或其他M3GATE类似的手机浏览器,进行便捷的图片浏览和下载。以下是对这个系统...