- 浏览: 352718 次
- 性别:
- 来自: 深圳
文章分类
最新评论
-
hc1031473635:
非常感谢楼主哈,调试了一些bug,正常运行了,初入java 学 ...
ExtJS 2.2,图书管理系统 共享全部源码下载 -
f43310:
不错,向大神学习了
ExtJS 核心的抽奖程序(共享源代码) -
jinbily:
下载 中文文件名的文件会出错啊。。。
ExtJS 2.2 开源网络硬盘系统(吐血奉献) -
ylc2010:
楼主问你个问题,饼状图的标题你设置在setting的label ...
amCharts导出图片JAVA实现 -
kfcman:
.大牛。多谢分享。
ExtJS 2.2,图书管理系统 共享全部源码下载
自从EXTJS3.0发布后,很多同学后网友都要求我共享基于EXTJS3.0的多文件上传组件.我特地做了一个基于3.0和struts2的示例,特此奉上.
w_e_ibo:
http://t.cn/zjqEaRh
http://weibo.com/liao27
//调用方法
//BasicAction
//FileAction
//MyUtils.java
这个在当初发布的时候,浏览器都支持的,现在也不知道是什么个情况了,年代已久
为什么我点击上传后,没有和后台交互呢?我是用的spring的MVC写的,我也尝试过用联servlet但还是后台没反应,也没有报错,请楼主帮我解决,不胜感激!
其实在"添加文件"按钮上面有一个flash,他是透明的,通过点击来触发选择对话框,如果弹不出对话框只有一种原因,那就是你flash文件的路径不正确,你可以尝试在相关代码的地方使用flash的绝对路径即可
w_e_ibo:
http://t.cn/zjqEaRh
http://weibo.com/liao27
//调用方法
Ext.onReady(function() { var win = new Ext.Window({ title : '多文件上传示例', width : 500, height : 500, resizable : false, layout : 'fit', items : [{ xtype : 'uploadpanel', uploadUrl : 'uploadFiles.action', filePostName : 'myUpload', // 这里很重要,默认值为'fileData',这里匹配action中的setMyUpload属性 flashUrl : 'js/swfupload.swf', fileSize : '500 MB', height : 400, border : false, fileTypes : '*.*', // 在这里限制文件类型:'*.jpg,*.png,*.gif' fileTypesDescription : '所有文件', postParams : { path : 'files\\' // 上传到服务器的files目录下面 } }], bbar : ['作者:廖瀚卿 | QQ:3990995 | 博客:http://yourgame.iteye.com'] }); win.show(); });
//BasicAction
package com.lhq.uploader; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletContext; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import org.apache.struts2.ServletActionContext; import com.opensymphony.xwork2.ActionSupport; @SuppressWarnings("serial") public class BaseAction extends ActionSupport { public String jsonString; public void outJsonString(String str) { getResponse().setContentType("text/javascript;charset=UTF-8"); outString(str); } /* * public void outJson(Object obj) { * outJsonString(JSONObject.fromObject(obj).toString()); } * * public void outJsonArray(Object array) { * outJsonArray(JSONArray.fromObject(array).toString()); } */ public void outString(String str) { try { PrintWriter out = getResponse().getWriter(); out.write(str); } catch (IOException e) { e.printStackTrace(); } } public void outXMLString(String xmlStr) { getResponse().setContentType("application/xml;charset=UTF-8"); outString(xmlStr); } /** * 获得request * * @return */ public HttpServletRequest getRequest() { return ServletActionContext.getRequest(); } /** * 获得response * * @return */ public HttpServletResponse getResponse() { return ServletActionContext.getResponse(); } /** * 获得session * * @return */ public HttpSession getSession() { return getRequest().getSession(); } /** * 获得servlet上下文 * * @return */ public ServletContext getServletContext() { return ServletActionContext.getServletContext(); } public String getRealyPath(String path) { return getServletContext().getRealPath(path); } }
//FileAction
package com.lhq.uploader; import java.io.File; import java.io.UnsupportedEncodingException; import java.net.URLDecoder; import java.util.HashMap; import java.util.Map; /** * FileAction.java Create on 2008-12-18 上午09:16:22 * * 说明:文件处理 * * Copyright (c) 2008 by yourgame. * * @author 廖瀚卿 * @version 1.0 */ @SuppressWarnings("serial") public class FileAction extends BaseAction { private Map<String, Object> infos = new HashMap<String, Object>(); public static final String ROOT = "upload\\"; private File myUpload; private String myUploadContentType; private String myUploadFileName; private String path; private boolean success; /** * 上传文件 * * @return */ public String uploadFiles() { String rootPath = getSession().getServletContext().getRealPath("/"); rootPath += ROOT; String sp = rootPath + getPath(); MyUtils.mkDirectory(sp); try { MyUtils.upload(getMyUploadFileName(), sp, getMyUpload()); this.success = true; } catch (RuntimeException e) { e.printStackTrace(); } return SUCCESS; } public File getMyUpload() { return myUpload; } public void setMyUpload(File myUpload) { this.myUpload = myUpload; } public String getMyUploadContentType() { return myUploadContentType; } public void setMyUploadContentType(String myUploadContentType) { this.myUploadContentType = myUploadContentType; } public String getMyUploadFileName() { return myUploadFileName; } public void setMyUploadFileName(String myUploadFileName) { this.myUploadFileName = myUploadFileName; } public boolean isSuccess() { return success; } public void setSuccess(boolean success) { this.success = success; } public String getPath() { return path; } public void setPath(String path) throws UnsupportedEncodingException { this.path = URLDecoder.decode(path, "UTF-8"); } public Map<String, Object> getInfos() { return infos; } public void setInfos(Map<String, Object> infos) { this.infos = infos; } }
//MyUtils.java
package com.lhq.uploader; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; public class MyUtils { /** * 上传文件 * * @param savePath * 文件的保存路径 * @param uploadFile * 被上传的文件 * @return newFileName */ public static String upload(String uploadFileName, String savePath, File uploadFile) { String newFileName = getUUIDName(uploadFileName, savePath); try { FileOutputStream fos = new FileOutputStream(savePath + newFileName); FileInputStream fis = new FileInputStream(uploadFile); byte[] buffer = new byte[1024]; int len = 0; while ((len = fis.read(buffer)) > 0) { fos.write(buffer, 0, len); } } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } return newFileName; } public static String getUUIDName(String fileName, String dir) { String[] split = fileName.split("\\."); String extendFile = "." + split[split.length - 1].toLowerCase(); return java.util.UUID.randomUUID().toString() + extendFile; } /** * 根据路径创建一系列的目录 * * @param path */ public static boolean mkDirectory(String path) { File file = null; try { file = new File(path); if (!file.exists()) { return file.mkdirs(); } } catch (RuntimeException e) { e.printStackTrace(); } finally { file = null; } return false; } }
评论
30 楼
请叫我东哥
2014-07-10
需要翻编译?看不到后台代码
29 楼
cc_01
2014-04-08
28 楼
chenlin10058
2013-09-06
请问楼主,为什么在IE6中,toolbar的第一个按钮,也就是”添加文件“按钮,点击不动,像被什么东西遮罩了一样,无法弹框选文件!
用的extjs2.0版本!
盼回复~
用的extjs2.0版本!
盼回复~
27 楼
xgwfhn
2013-05-26
SCRIPT5009: “__flash__removeCallback”未定义 老是报这个错误 怎么解决呢
26 楼
walnuting
2013-01-16
请问这个是基于hadoop的吗
25 楼
zhangyezeng
2012-03-12
我再详细的说一下啊,就是那个限制文件类型的时候fileTypes后面若是协议中扩展名如'*.flv'这个是可以生效的,但是如果两种以上扩展名'*.flv,*.mp4'就什么文件也看不到了,这是怎么回事儿啊,是不是不能匹配多扩展名啊?求解,太感谢啦
24 楼
zhangyezeng
2012-03-12
我有个问题,选择文件格式的时候只能协议中扩展名,若是写两种以上的话就什么文件也看不到了,难道只能匹配一种扩展名?
23 楼
yourgame
2012-02-08
jy0902 写道
首先灰常滴 主分享!!
然后告诉大家 如果点击不能和后台交互的话 把swfupload.js 的文件换掉 网上有得下!!!! 貌似楼主的这个文件出了点问题, 我把这个文件换了就顺利能后后台交互了!我是用来上传视频的 把strut配置在改下 视频文件上传成功!!
然后告诉大家 如果点击不能和后台交互的话 把swfupload.js 的文件换掉 网上有得下!!!! 貌似楼主的这个文件出了点问题, 我把这个文件换了就顺利能后后台交互了!我是用来上传视频的 把strut配置在改下 视频文件上传成功!!
这个在当初发布的时候,浏览器都支持的,现在也不知道是什么个情况了,年代已久
22 楼
jy0902
2012-02-06
首先灰常滴 主分享!!
然后告诉大家 如果点击不能和后台交互的话 把swfupload.js 的文件换掉 网上有得下!!!! 貌似楼主的这个文件出了点问题, 我把这个文件换了就顺利能后后台交互了!我是用来上传视频的 把strut配置在改下 视频文件上传成功!!
然后告诉大家 如果点击不能和后台交互的话 把swfupload.js 的文件换掉 网上有得下!!!! 貌似楼主的这个文件出了点问题, 我把这个文件换了就顺利能后后台交互了!我是用来上传视频的 把strut配置在改下 视频文件上传成功!!
21 楼
咸鱼干
2011-10-13
为什么我点击上传后,没有和后台交互呢?我是用的spring的MVC写的,我也尝试过用联servlet但还是后台没反应,也没有报错,请楼主帮我解决,不胜感激!
20 楼
Sq_I
2011-08-31
为什么我照着写了却什么都没有出来?
19 楼
liukaibernard
2011-07-20
怎么 点击上传后,没有与后天进行交互喃? 请问是什么原因?
18 楼
shawnfree
2011-04-07
解决下问题呀 在google 浏览器和火狐 问什么不能到 Action 呢????
17 楼
shawnfree
2011-04-07
还有问题 问什么在 google 浏览器 和 火狐浏览器中 不会到 Action 方法中
会自动 跳到 no_login.jsp 页面 使我丢了什么参数吗?
我已经登录了。这个怎么解决呢?
会自动 跳到 no_login.jsp 页面 使我丢了什么参数吗?
我已经登录了。这个怎么解决呢?
16 楼
shawnfree
2011-04-07
问 什么 在IE下 我关闭后在打开 “添加文件” 按钮就没反映了 怎么解决呢?能说下吗?
15 楼
thisisnoman
2011-02-20
为什么我在.net下运行,上传文件时会停住呢?代码没有改动过,运行环境为visual 2008
(上传不了图片?。。。)
(上传不了图片?。。。)
14 楼
uatoily
2010-12-07
上传时文件大小好象有限制,大于8M都无法上传?
13 楼
yuermeizi
2010-11-29
ff bug
添加样式:
.swfupload{position: absolute; top: 0pt; left: -2px;}
添加样式:
.swfupload{position: absolute; top: 0pt; left: -2px;}
12 楼
chridll
2010-10-07
postParams : {
path : 'files\\' // 上传到服务器的files目录下面
}
可以传中文参数吗?我的就传不到后台,获得的值为NULL,字母或数字就可以
path : 'files\\' // 上传到服务器的files目录下面
}
可以传中文参数吗?我的就传不到后台,获得的值为NULL,字母或数字就可以
11 楼
yourgame
2010-09-21
yushi103 写道
action里面创建文件夹的的部分代码,略有问题,不过很容易就可以改正了。
但是真的是不知道为什么,单独用这个小项目的时候,可以使用,但是把这个控件,加入到我自己的项目里面的时候就:“添加文件”按钮,死活没反应!??????
tbar : [{
text : '添加文件',
iconCls : 'db-icn-add'
}, {
这点,代码,实在是看不懂!怎么能实现的一个选择文件的窗口呢?????
我用的是3.2版本,应该不是版本问题。
但是真的是不知道为什么,单独用这个小项目的时候,可以使用,但是把这个控件,加入到我自己的项目里面的时候就:“添加文件”按钮,死活没反应!??????
tbar : [{
text : '添加文件',
iconCls : 'db-icn-add'
}, {
这点,代码,实在是看不懂!怎么能实现的一个选择文件的窗口呢?????
我用的是3.2版本,应该不是版本问题。
其实在"添加文件"按钮上面有一个flash,他是透明的,通过点击来触发选择对话框,如果弹不出对话框只有一种原因,那就是你flash文件的路径不正确,你可以尝试在相关代码的地方使用flash的绝对路径即可
发表评论
-
ExtJS 3.2 聊天室程序(类Q_Q群)
2010-06-02 02:45 8016模仿QQ实现的群聊功能,基本类似聊天室.聊天记录每5条保存到数 ... -
EXTJS3.0 火狐小字体补丁css文件
2009-12-03 20:29 3752很多朋友觉得extjs的字体在ie浏览器中显示要好看些,认为在 ... -
TreeLoader扩展,支持josn-plugin返回的json对象中包含的数组值
2009-09-26 10:25 3618Struts2的josn插件 josn-plugin 对我们开 ... -
ExtJS 3.0 图片浏览程序[开源]
2009-09-25 23:03 7463好久没有写点东西了. 最近有个好玩的, 我用extjs实现了一 ... -
ExtJS 技巧笔记
2009-09-08 13:07 7472Ext.fly(grid.getView().getRow ... -
ExtJS 2.2 开源网络硬盘系统(吐血奉献)
2009-03-23 02:12 36394这个是我的一个开源项目: 技术架构:Struts2(json- ... -
解决ExtJS在火狐浏览器中汉字显示为小字体的样式补丁
2009-03-09 00:01 5475在火狐浏览器中运行ExtJS程序时,中文字体比在IE下运行要小 ... -
ExtJS 核心的抽奖程序(共享源代码)
2009-02-11 20:21 10155最近公司举行15周年司庆晚会,公司首改以往丑旧的抽奖模式。领导 ... -
从国外网站上抠出来的 三款 ExtJS主题(红色,橙色,红间灰)
2008-12-25 20:51 14879最近在国外ExtJS网站上看到有三款ExtJS主题,挖下来收藏 ... -
ExtJS 2.2,图书管理系统 共享全部源码下载
2008-10-14 20:32 50836系统架构:struts2(json-plugin) + spr ... -
EXT EditorGridPanel 中用复选框表示真假值,扩展官方示例
2008-09-22 20:42 10794在学习中Ext.grid.EditorGridPanel ... -
官方布局实例主页面的js源代码 学习(简单翻译)
2008-09-14 00:27 5736最近在学习EXTJS的布局, ... -
EXT Grid 导出Excel的另类实现,可以只导出Grid中显示的列
2008-08-17 01:22 12958w_e_ibo: http://t.cn/zjqEaRh ...
相关推荐
extJS3.0 extJS3.0 extJS3.0 extJS3.0 extJS3.0 extJS3.0 extJS3.0
绝对的ExtJS3.0中文API,本人在网上找了好久才找到的,在此奉献给大家!!解压后有30多兆!!
ExtJS3.0 源码分析与开发实例宝典
1、Extjs3.0 常用组件介绍ppt 2、怎样安装开发利器Spket 3、Spket安装包
Extjs3.0中文API文档 够详细 够详细 够详细
extjs3.0框架extjs3.0框架extjs3.0框架extjs3.0框架
由于extjs3.0自己封装的时间不能够选择时分秒,给大家开发带来了一些麻烦。虽然网上有ext2.0的日期扩展控件,但在3.0中不能用。公司现在项目正用了,因此我就对extjs3.0时间控件的扩展,实现了可选择时分秒功能。...
在网络上搜集,自己安装成功后在使用的开发环境。因ExtJS3.0和spket-1.6.18.jar的开发包太大不能上传,里面有安装说明和下载路径 ext-jsb2.zip jsb2是最新的。。请所需者取之
ExtJs3.0API,希望对大家有所帮助
extjs3.0开发包包含api、例子、源文件等,简单易用,
ExtJS 3.0 学习资源,有兴趣的 可以下载看看!!!!
ExtJS 3.0 API 文档离线包,
extjs框架,学习,开发,extjs3.0开发包以及文档
真正的ExtJS 3.0可视化开发工具,支持WebUI和Code可视化设计.
EXT登陆,整合STRUTS2,SPRING,IBATIS,EXTJS3.0,详细的请看看代码,因为jar包较大,暂不加jar包。的请看看代码,因为jar包较大,暂不加jar包
ExtJSweb 开发指南中的 简单图书管理系统 ExtJS3.0+spring+hibernate+struts
extjs3.0中英文对照chm api
深入浅出 Extjs3.0 中文文档,深入浅出 Extjs3.0 中文文档
extjs3.0.chm API extjs3.0.chm API extjs3.0.chm API extjs3.0.chm API
用extjs实现的多文件上传,界面很好看,而且很好用的,失望大家试试看