起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2445|回复: 6

[结贴] attachmentSimple上传XML文件后会自动刷新页面

[复制链接]

24

主题

146

帖子

1017

积分

金牌会员

Rank: 6Rank: 6

积分
1017
QQ
发表于 2017-3-9 22:30:59 | 显示全部楼层 |阅读模式
下面是attachmentSimple上传组件的SimpleFileStore中的storeFile函数:
private static void storeFile(HttpServletRequest request,
                        HttpServletResponse response) throws Exception {          
                HashMap<String,String> params = new HashMap<String,String>();
                List<FileItem> items =  parseMultipartRequest(request);
                Iterator<FileItem> iter = items.iterator();
                FileItem fileItem = null;
                //存储文件采用真实文件名LeeChen20170203`````````````````````
                /*
                while (iter.hasNext()) {
                    FileItem item = iter.next();
                    if (item.isFormField()) {
                            String name = item.getFieldName();
                    String value = item.getString();
                    System.out.println("name = " + name);
                    System.out.println("value = " + value);
                        params.put(name, value);                */
            String value = "";
            String strFileName = "";       
                while (iter.hasNext()) {
                    FileItem item = iter.next();
                    if (item.isFormField()) {
                            String name = item.getFieldName();
                            //存储文件采用真实文件名时
                            String strAtion = request.getParameter("storeType");
                           
                            if("storeFileName".equals(name) && "RF".equals(strAtion)){
                                    value = strFileName;
                            }else{
                                    value = item.getString();
                                    strFileName = value;
                            }

                    //System.out.println("name = " + name);
                    //System.out.println("value = " + value);     
                        params.put(name, value);
                        
                //存储文件采用真实文件名LeeChen20170203^^^^^^^^^^^^^^^^^^^^^^^
                    } else {
                            /*String fieldName = item.getFieldName();
                        String fileName = item.getName();
                        String contentType = item.getContentType();
                        boolean isInMemory = item.isInMemory();
                        long sizeInBytes = item.getSize();*/
                            fileItem = item;
                    }
                }
                if(fileItem != null){

                        String storePath = docStorePath + File.separator + params.get("ownerID");
                        //System.out.println("storeFileocStoreDir" + docStorePath);
                File storeDir = new File(storePath);
                if(!(storeDir.exists() && storeDir.isDirectory())){
                        storeDir.mkdirs();
                }
                File toStoreFile = new File(storePath + File.separator + params.get("storeFileName"));
                //System.out.println("storeFiletoStoreFile" + docStorePath);
                fileItem.write(toStoreFile);
                }
                               
        }


由于项目需要我需要文件存储为原文件名,函数已经被我修改,上传图片和其他文件(图片和文本文件)都没问题,但是传XML文件时候,程序执行到fileItem.write(toStoreFile);,客户端页面自动刷新,因为fileItem.write无法调试,请教管理员这个是怎么回事情?

24

主题

146

帖子

1017

积分

金牌会员

Rank: 6Rank: 6

积分
1017
QQ
 楼主| 发表于 2017-3-9 22:33:55 | 显示全部楼层
XML文件去掉后缀名,又不会刷新了
回复 支持 反对

使用道具 举报

发表于 2017-3-10 10:22:32 | 显示全部楼层
http://docs.wex5.com/debug-user-own-java-code/
http://docs.wex5.com/wex5-studio-question-list-2001/

自己调试java代码跟一下吧!

本地测试默认的情况下,使用案例/UI2/system/components/justep/attachment/demo/demoSimple.w
上传xml文件 没问题,不刷新的!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

24

主题

146

帖子

1017

积分

金牌会员

Rank: 6Rank: 6

积分
1017
QQ
 楼主| 发表于 2017-3-10 20:59:00 | 显示全部楼层
本帖最后由 黑人007 于 2017-3-10 21:01 编辑

案例上传XML文件是没问题的,但是保存的时候是用保存名保存的,也就是后台保存的时候已经是去掉.XML后缀的文件,这样是没问题的,我已经试过了。但是如果按照原文件名保存的时候会刷新,也就是说用带后缀名.xml文件保存的时候会刷新。
111111.jpg
回复 支持 反对

使用道具 举报

发表于 2017-3-13 09:36:12 | 显示全部楼层
黑人007 发表于 2017-3-10 20:59
案例上传XML文件是没问题的,但是保存的时候是用保存名保存的,也就是后台保存的时候已经是去掉.XML后缀的 ...

那么后端java代码执行是否有报错呢??
这个是后端执行的java代码!和前端没关系的啊!按理说不会触发前端刷新的!
只有xml 后缀名会这样吗??其他后缀名都是正常的吗??


这个得上网找选原因了!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

24

主题

146

帖子

1017

积分

金牌会员

Rank: 6Rank: 6

积分
1017
QQ
 楼主| 发表于 2017-3-13 11:17:33 | 显示全部楼层
后端没有报错,目前只发现XML后缀会这样,我没有一一是过来,图片,文档,视频,音频,压缩文件,还有不代后缀的都不会刷新前端页面。
回复 支持 反对

使用道具 举报

24

主题

146

帖子

1017

积分

金牌会员

Rank: 6Rank: 6

积分
1017
QQ
 楼主| 发表于 2017-3-13 11:21:18 | 显示全部楼层
先这样吧,因为开发软件工具里面,如果添加删除.w文件页面,客户端也会刷新。目前我还没有发布APP,到时候发布到服务器上我再试试。也有可能是编译器的事情。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2025-7-3 17:25 , Processed in 0.057884 second(s), 27 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表