wap 软件下载实现

对于wap页面下载软件记录下
URL要带文件名,否则手机不支持
例如:http://localhost:8080/client/test.CAB
symbian手机对于IP:8080/方式貌似不支持,需要http://域名:端口/client/test.CAB


下载方式可以有2种:
1)wap标签连接
<wall:a href="<%=filePath%>">download</wall:a>
2)servlet write文件流返回(字节流)
配置一个DownLoadServlet
web.xml:
<servlet>
<servlet-name>downLoadClientServlet</servlet-name>
<servlet-class>com.test.DownLoadServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>downLoadClientServlet</servlet-name>
<url-pattern>/client/*</url-pattern>
</servlet-mapping>
DownLoadServlet:
public class DownLoadServlet extends HttpServlet {
private GeneralLogger logger = LoggerFactory.getLogger(DownLoadServlet.class);

public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}

public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

logger.debug("------------------------------------------------------------------------------------");

try {
String filePath = "d:/mytest/client/test.CAB";

logger.debug("filePath = " + filePath);

sendReply(filePath, response);

} catch (Exception e) {
logger.error("error :" + e.toString());
}
logger.debug("------------------------------------------------------------------------------------");
}

public void sendReply(String filePath, HttpServletResponse response) {
File file = new File(filePath);
if (file.exists()) {
String fileName = file.getName();
response.setContentType("application/x-download");//设置为下载application/x-download

response.addHeader("Content-Disposition", "attachment;filename=" + fileName);

OutputStream output = null;
FileInputStream fis = null;
try {
output = response.getOutputStream();
fis = new FileInputStream(filePath);

byte[] b = new byte[1024];
int i = 0;

while ((i = fis.read(b)) != -1) {
output.write(b, 0, i);
}
output.flush();
b = null;
}
catch (Exception e) {
logger.error("error :" + e.toString());
}
finally {
if (fis != null) {
try {
fis.close();
} catch (IOException e) {
//e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
}
fis = null;
}
if (output != null) {
try {
output.close();
} catch (IOException e) {
//e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
}
output = null;
}
}
}
}

}


顺便说下,第一种方式软件要放在web文件夹或子文件夹下,否则tomcat等容器是不允许访问的
第二种方式就比较灵活些,对于手机客户端软件升级,后台连接,可采用第二种方式。
     说明:   WAPtor 是一款非常简单易于使用的WML 编辑器,虽然它没有摆脱代码格式的束缚,但比过去的HTML 代码简单的多。即使你不记得WML语言的标签和属性,也能利用WAPtor制作出非常出色的WML网页,WAPtor能让你随时预览WML页面的效果,十分方便。 WAPtor适合初学WML网页的人使用,强力推荐。   >> waptor23.exe   2、WAPPage      说明:   WAPPage是WAPmine推出的一款WAP 编辑器,支持预览、代码阅读、卡片浏览等功能,其用户图形界面很好,并且对于事件和定时等的处理都不错。   >> wappage.zip   3、Ericsson Wap IDE SDK      说明:   Ericsson公司自己开发的WAP开发环境。同Nokia一样,Ericsson的这款工具也很优秀。其中包含了R320s仿真器,并且自带了一个 Xitami V2.4d3的Web服务器。目前该工具最高版本为2.1。 这个工具很精致,而且界面比较有特点,您用起来一定会觉得耳目一新。工具的安装分两步,首先安装WapIDE 3pp v2.0,接着安装WapIDE SDK v2.1。所以需要下载2个文件。   >>WapIDE_3PP_2_0.exe >> WapIDE_SDK_2_1.exe   4、Nokia WAP Toolkit      说明:   Nokia公司自己开发的WAP工具包。要知道Nokia对WAP发展的作用不小哦,所以原汤化原食,这款工具自然会使您用得得心应手。其中包含了7110手机仿真器。目前该工具包的最高版本为2.0。下载这个工具包可以去Nokia 开发者网站,但是需要先注册,有些麻烦。   >> NokiaToolkit2_0.zip   5、Dotwap      说明:   Dotwap 是inetis 网站提供的WAP 编辑工具。软件包比较小,只有600多K。界面很普通,没有什么特点,但是很简单易学,所以,如果你是初学者,用它最合适不过了。目前该软件的最高版本为2.0。
E缘导航程序 前台功能 1.添加网站 2.用户留言 3.网站搜索 4.最新链入、加盟网站分页展示 5.网站显示类型(首页顶部、首页推荐、分类页里面) 6.类别显示类型(首页、普通、子分类) 7.访问统计:单个IP日独立统计,一个IP一天进出都只算一次有效性 8.用户访问记录:访问时间、手机号、IP号、来源地址、来源网站;链出网站具有相同记录 9.二次点击:判断用户进入网站后是否有点击站内页面 10.自动控量:程序按网站进出所设比例自动控制进出流量(当用户重复点击某个站时,程序自动跳转到其他今日未访问且比例未达到标准的网站) 11.网站屏蔽:开启屏蔽后非手机用户禁止访问 12.HTML彩色版 13.识别用户手机是否支持WML版,不支持跳转到HTML版 14.用户收藏夹(开发中。。。) 后台功能 1.系统的基本配置 2.网站信息、分类信息、留言信息增删改查 3.访问详情多条件查询/删除(网站ID、时间段、进/出、有效性) 4.网站总体日访问统计(可按时间段查询/删除、单选多选删除) 5.单个网站日访问统计(可按时间查询/删除) 6.IP的总体统计查询/删除(统一IP的手机访问进/出总数、非手机进/出总数,所有总计) 6.页面的自定义内容修改 7.添加新页面(内容自定义,支持HTML及普通文本) 8.账号密码修改/注销退出 账号密码 后台地址:http://您的域名/admin 用户账号:admin 用户密码:123456
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值