java - Dropzone uploadMultiple与Java Struts,文件名和内容类型的FileUploadInterceptor没有被调用?
问题描述
我正在使用带有 Java Struts2 的 dropzone。在将uploadMultiple:true 添加到dropzone 之前,服务器端正常工作,即File、FileName 和ContentType 的getter 和setter 将被相应地调用。然而,在添加uploadMultiple:true 之后,只有File 的getter 和setter 被Struts 拦截器调用。
我试图更改参数名称并遵循这两个网站来做到这一点,但没有运气。 https://struts.apache.org/core-developers/file-upload-interceptor.html https://www.mkyong.com/struts2/struts-2-upload-multiple-files-example/
//我的JS
$("form#addrBookDropzone").dropzone(
{
url: "uploadData",
maxFilesize: maxFileSize,
maxFiles: 10,
acceptedFiles: ".csv",
addRemoveLinks: true,
autoProcessQueue: false,
uploadMultiple:true,
parallelUploads: 10,
paramName:'csvFile',
init: function (e) {
abDropzone = this;
abDropzone.processQueue();
},
success: function(file, response){
retrieveCsvTransition();
}
}
);
//我的Java
公共类 FileProcessor 扩展 ActionSupport{
private static final long serialVersionUID = -234712913575630908L;
public static final Logger logger = Logger.getLogger(FileProcessor.class);
private String className = this.getClass().getSimpleName();
private List<File> csvFile = new ArrayList<File>();
private List<String> csvFileContentType = new ArrayList<String>();
private List<String> csvFileFileName = new ArrayList<String>();
private Set<TblCsvTransition> csvData = new HashSet<TblCsvTransition>(0);
private AbstractMap<String, File> fileMap = new HashMap<String, File>(0);
public List<File> getCsvFile() {
return csvFile;
}
public void setCsvFile(List<File> csvFile) {
this.csvFile = csvFile;
}
public List<String> getCsvFileContentType() {
return csvFileContentType;
}
public void setCsvFileContentType(List<String> csvFileContentType) {
this.csvFileContentType = csvFileContentType;
}
public List<String> getCsvFileFileName() {
return csvFileFileName;
}
public void setCsvFileFileName(List<String> csvFileFileName) {
this.csvFileFileName = csvFileFileName;
}
}
解决方案
我不知道为什么struts不传递文件名,最后我只能注释掉parallelUploads并将文件名作为参数传递
推荐阅读
- javascript - Jquery Uncaught ReferenceError: i4 is not defined at HTMLButtonElement.onclick (index.html:1)
- java - 使用 IntelliJ 运行 JUnit 测试
- bash - 如何将 bash 中的某个输入映射到命令?
- javascript - 防止在点击 VuetifyJS 组合框后调用软键盘
- ios - Swift为透明导航栏创建子类
- rust - 具有对内部闭包的引用的迭代器的智能构造函数
- objective-c - 来自旧数据库的 csv 转储的 nsdate
- apache-spark - Spark 结构化流 Kinesis 数据源
- sql - Rails 中的 SQL 关系。尝试为一个表关系创建两个不同的引用。非常混乱的情况
- regex - 如何在 HTML 中选择文本的特定部分并使用正则表达式将其转换为大写?