完善flex调用jsp打开和下载文件的例子
来源:互联网 发布:网络神话魔法圣皇 编辑:程序博客网 时间:2024/05/17 01:57
前面的flex打开和下载文件的例子在文件正常存在的情况下不会有错误,但是如果文件不存在,那么会报404错误,并且会冲掉flex页面,这是很不友好的,特别是在一个已经登录的flex应用程序里,这会导致用户退出flex应用,需要重新登录。现在我们来处理这个问题,在打开和下载文件之前,我们先调用一个servlet判断文件在服务器上是否存在。然后存在才去打开或者下载,不存在则提示用户“文件不存在”。
flex代码:
//检查要下载的文件名是否存在
private function getSvrInfo():void{
var request:URLRequest=new URLRequest("/UploadFile");
request.method=URLRequestMethod.POST;
var variables:URLVariables = new URLVariables();
variables.filePath="/uploadFile/deli.jpg";
variables.method="checkFileExist";
request.data = variables;
var loader:URLLoader=new URLLoader();
loader.load(request);
loader.addEventListener(Event.COMPLETE, checkFileExistBack);
}
//根据服务器返回的文件是否存在信息处理。
private function checkFileExistBack(event : Event):void{
var str : String = ((event.target) as URLLoader).data;
if(str=="0"){
Alert.show("文件不存在");
}else{
export();//此处即调用前面那个例子的代码进行文件打开和下载。
}
}
//JAVA部分检查文件是否存在的代码
public void checkFileExist(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
String filePath = request.getParameter("filePath");
int flag = false;
if(filePath!=null && !filePath.equals(""));
{
String[] s = URLDecoder.decode(filePath).split("/");
String uploadPath = getServletContext().getRealPath("uploadFile")+"/";
if(uploadPath!=null){
File[] files = new File(uploadPath).listFiles();
for (int i = 0; i < files.length; i++){
if(files[i].getName().equals(s[s.length-1])){
flag=1;
break;
}
}
}
}
out.print(flag);
out.flush();
out.close();
}
- 完善flex调用jsp打开和下载文件的例子
- FLEX搭配JSP下载文件的例子
- 使用C#调用旋风快车和迅雷下载文件 也是C#调用Com的好例子!
- Flex调用Servlet的例子
- 程序中,调用Bison和Flex结合的小例子
- 下载文件的jsp(不是直接打开)
- Flex上载和下载文件
- flex上传和下载文件
- flex 文件下载和上传
- flex上传和下载文件
- jsp之文件的上传和下载
- JSP文件的上传和下载
- JSP的文件上传和下载
- JSP调用Mysql存储过程的方法和例子
- JSP中读文件和写文件的例子
- JSP中读文件和写文件的例子
- JSP中读文件和写文件的例子
- JSP中读文件和写文件的例子
- 八方向迷宫 C++版
- 二、Action对象
- List、vector、set、map的区别与联系
- ulink,mkpath,rmtree
- ASP.NET(C#)中web.config文件详解
- 完善flex调用jsp打开和下载文件的例子
- NSLog 输出格式!
- C++中的位域详解
- [ZZ]推荐19个很有用的 JavaScript 库
- 事务的传播行为
- 三、Struts2的配置文件
- 服务端检测你的浏览器(HttpBrowserCapabilities)
- 岁月留香
- 驱动程序与应用程序之间的通信