`
yjandx3543
  • 浏览: 48832 次
  • 性别: Icon_minigender_1
  • 来自: 隐居山林
社区版块
存档分类
最新评论

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");%> 

操作系统win2000,Web Server resin(或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="按时的发射点222"/> 
<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> 


分享到:
评论

相关推荐

    理解JSP WAP 开发原理

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

    JSP+WAP例子

    此例子演示说明了jsp与wap之间的关系.包括servlet之间的执行

    JSP技术在WAP开发中的应用

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

    wap_jsp开发实例

    jsp开发wap的实例,运行环境tomcat,需要搭配手机模拟器来浏览

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

    有二个文档: 1、JSP技术在WAP开发中的应用; 2、tomcatWAP服务器配置; 希望对大家有用

    基于JSP技术的WAP网站的设计与实现

    基于JSP技术的WAP网站的设计与实现基于JSP技术的WAP网站的设计与实现基于JSP基于JSP技术的WAP网站的设计与实现技术的WAP网站的基于JSP技术的WAP网站的设计与实现设计与实现基于基于JSP技术的WAP网站的设计与实现JSP...

    搭建JSP开发环境总结

    详细的说明了搭建JSP开发环境所需的SOFTWARE 和 配置方法 很完整

    JSP开发指南--jsp开发

    jsp是jsp是jsp是jsp是jsp是jsp是jsp是jsp是jsp是jsp是jsp是jsp是jsp是jsp是jsp是jsp是jsp是jsp是jsp是jsp是jsp是jsp是jsp是jsp是jsp是jsp是jsp是jsp是

    用JSP开发的Web应用是跨平台的

    JSP(JavaServer Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是... 用JSP开发的Web应用是跨平台的,即能在Linux下运行,也能在其他操作系统上运行。

    JSP开发技术大全 源码

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

    JSP开发环境搭建 JSP开发环境搭建

    JSP开发环境搭建 JSP开发环境搭建 JSP开发环境搭建 JSP开发环境搭建

    源码jsp写的wap系统

    jsp+wap+msql 测试使用中……

    JSP开发技术大全(一本最好的学习JSP的书)

    学习JSP开发的最佳参考资料,解压密码为www.csai.cn。

    Tomcat开发JSP和Servlet需要注意的问题.doc

    Tomcat开发JSP和Servlet需要注意的问题.doc

    jsp+tomcat的wap源码

    主要是介绍了用jsp在tomcat环境下开发的wap.

    JSP网络开发逐步深入源代码

    《JSP网络开发逐步深入》详细介绍了怎样使用JSP逐步深入进行网络系统设计,从最基础的JSP概念入手,逐步介绍语法和深入开发技术,通过从几种典型模块到4个具体应用系统示例的开发设计,逐步将读者带入JSP的殿堂。...

    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论坛系统 ...

    jsp开发环境配置

    详细解读jsp开发环境

    JSP基础教程 JSP开发技巧 JSP开发实例 JSP环境安装配置

    内容包括Servlet和JSP概述,JSP简介、JSP入门教程、JSP内置对象、JSP安装和文件操作、JDBCTM指南、JSP由浅入深、JSP实践要点、Apache+Servlet+Jsp环境设置,JSP开发技巧、JSP开发实例,JSP环境安装配置重要内容。

Global site tag (gtag.js) - Google Analytics