`

jsp 开发wap 注意事项 (转载)

阅读更多

jsp 开发wap 注意事项 (转载)

-

 

昵称:狂飞

QQ:18670340

MSN:zhaojun1717@hotmail.com

注意事项:本文均为作者个人编写如果纰漏

请给予指出,转载请标明出处


-
 

以下内容转载自 http://why100000.com/_articles/show_a_article.asp?tab=tabJava&autoid=570

 


jsp 开发wap 注意事项

JSP中中文的解决:
中国移动加入以下几句后,页面中可以直接写中文,不用转换,提交的中文直接request.getParameter(““)获得,不用转换
〈%@ page contentType=“text/vnd.wap.wml;charset=gb2312“%〉
〈%response.setContentType(“text/vnd.wap.wml;charset=UTF-8“);%〉
〈%request.setCharacterEncoding(“UTF-8“);%〉
中国联通加入以下几句后,页面中可以直接写中文,不用转换,提交的中文直接request.getParameter(““)获得,不用转换
〈%@ page contentType=“text/vnd.wap.wml;charset=gb2312“%〉
〈%request.setCharacterEncoding(“UTF-8“);%〉
操作系统liunx,Web Server tomcat
都是从实践中摸索出来的,业务已上线,没问题。

本人解决方案:
(1)在wml文件中定义为:
〈?xml version=“1.0“ encoding=“UTF-8“?〉
(2)对提交数据采用post传递
〈go href=“/wapapp/servlet_wap“ method=“post“〉
〈!-- go href=“/servlet/wap86test“ --〉
〈postfield name=“serviceID“ value=“0002“/〉
〈postfield name=“phone“ value=“$(phone:e)“/〉
〈postfield name=“passwd“ value=“$(passwd:e)“/〉
〈/go〉
(3)后台转换
移动——〉
在servlet里面的doget和dopost方法设置
request.setCharacterEncoding(“UTF-8“);
response.setContentType(Const.CONTENT_TYPE);//Const.CONTENT_TYPE为:text/vnd.wap.wml;charset=UTF-8
①post提交处理表单:
一般都是直接request.getParameter(“xxx“)取过来的就是中文了,不需要再进行转码;
如增加成员
增加成员的post代码为:
〈do type=“accept“ label=“确定“〉〈go href=“/wapapp/servlet_wap“ method=“post“ 〉
〈postfield name=“serviceID“ value=“0207“/〉
〈postfield name=“groupname“ value=“xxxx“/〉
〈postfield name=“groupcode“ value=“4“/〉
〈postfield name=“aphone“ value=“$aphone“/〉
〈postfield name=“aname“ value=“$(aname:e)“/〉
〈/go〉〈/do〉
在处理编号为”0207“的程序块中,对获得的参数是这样来处理的
String groupcode = request.getParameter(“groupcode“);
String groupName = request.getParameter(“groupname“);
String ctcPhone = request.getParameter(“aphone“);
String ctcName = request.getParameter(“aname“);
ctcName = ctcName.replaceAll(“ “, ““);
ctcName = ctcName.replaceAll(“ “, ““);
if (!UserType.equals(SysChinaMobile)) {//移动的话直接getparameter的就是中文,而联通的却不是,所以需要转码
try {
groupName = WapUtil.decode(groupName, “UTF-8“);
ctcName = WapUtil.decode(ctcName, “UTF-8“);
} catch (Exception e) {
e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
out.println(returnPrevPage(strErrosOnServerCallAdmin));
}
}
②get提交的url参数:
如果是通过get方式,或者是通过url来传递参数的话就不能用decode这个方法来实现转码,而是用togbk这个方法来实现;
而且如果是在servlet里面打印wml页面,码制转换也只能用togbk这个方法;
如:显示个组信息首页面
请求显示修改组的页面url为:/wapapp/servlet_wap?serviceID=0212&groupcode=6&groupname=%B0%B4%CA%B1%B5%C4%B7%A8333
在处理编号为”0212“的程序块中,对获得的参数是这样来处理的
String groupcode = request.getParameter(“groupcode“);
String groupname = request.getParameter(“groupname“);
try {
groupname = WapUtil.togbk(groupname);
groupcode = WapUtil.togbk(groupcode);
}catch (Exception e) {
e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
out.println(returnPrevPage(strErrosOnServerCallAdmin));
}

联通——〉
在servlet里面的doget和dopost方法设置
response.setContentType(Const.CONTENT_TYPE);//Const.CONTENT_TYPE为:text/vnd.wap.wml;charset=UTF-8
①post提交处理表单:
需要调用decode方法进行转码;
②get提交的url参数:
需要调用togbk方法进行转码
Waputil中最重要的几个方法:
WapUtil.toUrl(String gbkStr) :如果有中文参数,需要用此方法转换
WapUtil.gbk2unicode(String gbkStr):将中文转成utf-8格式的文字,显示在页面上;
WapUtil.togbk(String Utfstr):将utf格式的文字转成gbk格式,用于后台处理;
WapUtil.decode(String s, String encoding):将指定码制格式的文字转成gbk格式,用于后台处理;
1)wap多选框
〈card id=“phones“ title=“组信息“〉
〈do type=“prev“ name=“Prev“ label=“Back“〉
〈go href=“meeting.wml“〉〈/go〉〈/do〉
〈do type=“accept“〉〈go href=“servlet_wap?serviceID=0124“〉
〈postfield name=“scity“ value=“1“/〉
〈postfield name=“members“ value=“$members“/〉
〈/go〉〈/do〉
〈p mode=“nowrap“〉**选择会议成员**
〈select name=“members“ multiple=“true“〉
〈option value=“138345657678“〉88(138345657678)〈/option〉
〈option value=“1383456576786“〉88886(1383456576786)〈/option〉
〈option onpick=“meeting.wml“〉[返回]〈/option〉
〈/select〉
〈/p〉
〈/card〉
2)wap单选框
〈card〉
〈p〉Please choice your favourite Web.〈br/〉
 〈select name=“X“〉
  〈option value=“S“〉sina〈/option〉
  〈option value=“Y“〉yahoo〈/option〉
 〈/select〉
〈p〉
〈/card〉
3)有关左右软按键)(由手机浏览器自动解析为menu菜单,在手机的右键出现;)
〈do type=“.options.“ label=“确认“ optional=“false“〉
    〈go href=“/wapapp/servlet_yxtwap?serviceID=0214“/〉
  〈/do〉
代表右软按键,一个“确定”按钮;
〈do type=“.Accept.“ label=“返回“ optional=“false“〉
    〈go href=“../servlet_yxtwap?serviceID=0201“/〉
  〈/do〉
代表左软按键,一个“返回”按钮;

最好是这样:
〈do type=“options“ name=“Prev“ label=“返回“〉〈go href=“indexmember.wml“〉〈/go〉〈/do〉
〈do type=“Accept“ label=“确定“〉
〈go href=“/wapapp/servlet_yxtwap?serviceID=0401“〉
〈postfield name=“name“ value=“$name“/〉
〈postfield name=“nick“ value=“$nick“/〉
〈postfield name=“call“ value=“$call“/〉
〈/go〉
〈/do〉
返回刚才上页:
〈do type=“options“ name=“Prev“ label=“返回“〉〈prev/〉〈/do〉

〈do type=“options“ name=“Prev“ label=“返回“〉〈go href=“index.wml“〉〈/go〉〈/do〉
〈do type=“accept“ label=“确定“〉
〈go href=“/wapapp/servlet_wap“ method=“post“〉
〈!-- go href=“/servlet/wap86test“ --〉
〈postfield name=“serviceID“ value=“0002“/〉
〈postfield name=“phone“ value=“$(phone:e)“/〉
〈postfield name=“passwd“ value=“$(passwd:e)“/〉
〈/go〉
〈/do〉

 

文章出处:飞诺网(www.firnow.com):http://dev.firnow.com/course/4_webprogram/jsp/jsp_js/20100721/478342.html

分享到:
评论

相关推荐

    开发wap注意事项---wml中文乱码

    #### 四、其他注意事项 1. **XML声明**:在WML文档开头应包含XML声明,指定文档使用的字符编码。如: ```xml ``` 2. **服务器配置**:确保Web服务器(如Tomcat或Resin)支持所设定的字符编码。例如,在Tomcat...

    理解JSP WAP 开发原理

    理解JSP WAP 开发原理理解JSP WAP 开发原理理解JSP WAP 开发原理理解JSP WAP 开发原理理解JSP WAP 开发原理理解JSP WAP 开发原理理解JSP WAP 开发原理理解JSP WAP 开发原理理解JSP WAP 开发原理

    JSP+WAP例子

    这个示例教程对于学习如何为移动设备开发Web应用非常有价值,特别是对那些想要了解如何在Java环境中结合JSP和WAP技术的开发者来说。通过研究这些文件,我们可以深入理解JSP、servlet以及WAP之间的协同工作方式,...

    wap开发注意事项总结

    在进行WAP(Wireless Application Protocol)开发时,有许多关键的注意事项和常见问题需要开发者们了解和掌握。WAP是一种使手机和其他无线设备能够访问互联网的技术标准,它使用了简化版的网页语言WML(Wireless ...

    jsp的wap开发和tomcatwap服务器配置

    **JSP技术在WAP开发中的应用** JSP(JavaServer Pages)是Java平台上的动态网页技术,它允许开发者在HTML或XML文档中嵌入Java代码,以实现服务器端的动态处理。在WAP(Wireless Application Protocol)开发中,JSP...

    wap_jsp开发实例

    【标题】"wap_jsp开发实例"涉及到的关键技术领域是移动互联网开发,主要集中在使用Java Server Pages(JSP)技术构建适用于无线应用协议(WAP)的网站或服务。WAP是一种让移动设备如手机访问互联网内容的标准,而JSP...

    JSP技术在WAP开发中的应用

    在WAP(Wireless Application Protocol)开发中,JSP同样扮演着重要的角色,帮助开发者构建能在移动设备上运行的动态WAP页面。 WAP是一种标准协议,用于在移动设备上访问互联网内容,主要使用WML(Wireless Markup ...

    jsp+tomcat的wap源码

    【标题】"jsp+tomcat的wap源码" 涉及的知识点主要集中在使用Java Server Pages (JSP) 技术与Apache Tomcat服务器来开发无线应用协议(WAP)的应用程序。JSP是Java EE平台的一部分,它允许开发者创建动态、数据驱动的...

    源码jsp写的wap系统

    【标题】"源码jsp写的wap系统"涉及的是使用JavaServer Pages(JSP)技术构建的适用于移动设备的Web应用程序,通常称为WAP(Wireless Application Protocol)系统。这种系统是为了适应早期移动设备的限制而设计的,...

    zk开发手册和注意事项

    ZK开发手册和注意事项 ZK是一个基于Java的开源Ajax Web应用框架,它允许开发者创建富互联网应用(RIA)。ZK框架基于服务器端技术,其特性在于能够在不需要AJAX和JavaScript编程的情况下,提供强大的前端组件和应用...

    jsp自定义标签库注意事项

    【jsp自定义标签库注意事项】 在Java服务器页面(JSP)开发中,自定义标签库是一种强大的工具,它能够帮助开发者创建可重用的代码片段,提高代码的可读性和可维护性。以下是对JSP自定义标签库的详细解释和使用注意...

    jsp下wap应用程序

    **标题解析:** "jsp下wap应用程序" 指的是使用Java Server Pages (JSP) 技术在Web环境中开发的适用于Wireless Application Protocol (WAP) 设备的应用程序。WAP是为移动设备如手机设计的一种通信协议,用于提供...

    JSP开发技术大全 源码

    软件工程师典藏•JSP开发技术大全》是一本JSP综合开发参考手册,书中几乎囊括了使用JSP进行实用程序开发的全部知识,同时在讲解中结合了大量实用而又有代表性的示例和典型应用。全书共分9篇32章,分别介绍了JSP基础...

    JSP Wap框架初步

    **三、JSP WAP开发基础** 1. **WML与XHTML-MP**:WML是一种专为移动设备设计的语言,类似于XML,用于创建WAP网站。随着设备性能提升,XHTML-MP成为更常见选择,它扩展了XHTML,支持更多的HTML特性。 2. **WAP ...

    jsp应用开发详解 jsp电子书

    **JSP应用开发详解** JavaServer Pages(JSP)是一种基于Java技术的动态网页开发工具,它允许开发者在HTML、XML或者其他标记语言中嵌入Java代码,以实现服务器端的程序逻辑。JSP的出现极大地简化了Web应用程序的...

    JSP开发技术大全 JSP

    本书是一本JSP综合开发参考手册,书中几乎囊括了使用JSP进行实用程序开发的全部知识,同时在讲解中结合了大量实用而又有代表性的示例和典型应用。全书共分9篇32章,分别介绍了JSP基础、环境搭建和开发工具、Java语言...

    基于JSP开发的BBS论坛系统

    基于JSP开发的BBS论坛系统 基于JSP开发的BBS论坛系统 基于JSP开发的BBS论坛系统 基于JSP开发的BBS论坛系统 基于JSP开发的BBS论坛系统 基于JSP开发的BBS论坛系统 基于JSP开发的BBS论坛系统 基于JSP开发的BBS论坛系统 ...

    在WAP开发中JSP技术的应用.doc

    ### JSP技术在WAP开发中的应用 #### 一、JSP与WAP开发概述 JSP(JavaServer Pages)是一种基于Java技术的服务器端网页开发技术,它允许开发者将HTML、XML等静态内容与Java代码相结合,从而生成动态网页。WAP...

    jsp开发环境变量搭建.docx

    五、jsp开发环境变量搭建的注意事项 jsp开发环境变量搭建需要注意以下几点:一、jdk的版本问题,二、tomcat服务器的版本问题,三、环境变量的设置问题。只有正确地配置了环境变量,jsp开发环境变量搭建才能够正常...

    JSP开发答疑200问

    12. session和cookie在JSP开发中的应用场景和注意事项。 四、JSP页面跳转与重定向 13. 什么是请求转发和重定向,它们的区别在哪里? 14. 在JSP中如何实现URL编码和解码? 五、MVC设计模式与JSP 15. MVC设计模式...

Global site tag (gtag.js) - Google Analytics