xautlx / s2jh

A Java/J2EE development framework for enterprise system based on Struts/Spring/JPA/Hibernate and jquery/bootstrap
GNU Lesser General Public License v3.0
321 stars 242 forks source link

多附件上传,后台无法取到前台file值 #58

Closed smilesman closed 10 years ago

smilesman commented 10 years ago

2 3 应该重点关注一下form标签中的 form-validation 属性,猜测是这个属性验证表单数据错误,所以阻止向后台传数据,还有我去掉这个属性,后台的uploadMulti()方法会被调用俩次,第一次attachments有值,第二次则为空,并且第一次保存完附件数据,页面直接跳转到空白页

下面附带上传的jsp源码,随便起个文件名,调用后台AttachmentFileController的uploadMulti()方法,即可测试

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ include file="/common/taglibs.jsp"%>

<%--

--%>

附件上传

选择文件...
 
``` ```
smilesman commented 10 years ago

测试反馈: 1,采用S2JH框架,引入github中jquery-fileupload最新源码作为测试样本,参照官方api,利用main.js中的fileupload方法进行测试,测试结果为,后台AttachmentFileController的uploadMulti()会被执行,但是attachments值为null 2,同上测试,唯一改变fileupload方法中autoUpload 属性修改为true;测试结果,后台AttachmentFileController的uploadMulti()会被执行俩次,第一次attachments可以取到正确值,并保存成功,第二次attachments为null。 3,采用S2JH框架,单独做一个Servlet程序,整合jquery-fileupload,利用读写流来取附件信息,测试结果,后台仍取不到值 4,弃用S2JH框架,独立做了一个servlet,以github中jquery-fileupload最新源码为测试样例,结果可以正常运行并上传多附件。 5.,采用S2JH框架,弃用jquery-fileupload相关的一系列js,采用传统的新建多个方式 ,后台可以取到值并顺利完成保存逻辑。

综上测试结果推测:后台附件上传逻辑无问题,而S2JH框架与Jquery-fileupload整合过程中可能存在一些不兼容地方,导致上述不成功现象发生

xautlx commented 10 years ago

最近会提交附件功能演示

xautlx commented 10 years ago

公告管理里面新增附件处理