Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel Extjs和Spring成功处理程序_Excel_Spring_Extjs_Extjs4 - Fatal编程技术网

Excel Extjs和Spring成功处理程序

Excel Extjs和Spring成功处理程序,excel,spring,extjs,extjs4,Excel,Spring,Extjs,Extjs4,我正在用ExtJs和Spring构建web应用程序。我用ExtJs上传excel文件,用spring解析它。尽管我的ExtJs代码中的成功处理程序不起作用,但一切都很好。我读了很多关于这个的例子,但我仍然不能解决这个问题。我希望你们能帮助我 这是ExtJs上传文件功能: uploadFile: function(value, fld){ var me = this; var id = this.getTipasCombobox().getValue(); var reco

我正在用ExtJs和Spring构建web应用程序。我用ExtJs上传excel文件,用spring解析它。尽管我的ExtJs代码中的成功处理程序不起作用,但一切都很好。我读了很多关于这个的例子,但我仍然不能解决这个问题。我希望你们能帮助我

这是ExtJs上传文件功能:

uploadFile: function(value, fld){
    var me = this;
    var id = this.getTipasCombobox().getValue();
    var record = this.getTipasCombobox().getStore().getById(id);
    var timeId = this.getLaikotarpiaiCombo().getValue();
    var timeRecord = this.getLaikotarpiaiCombo().getStore().getById(timeId);
    var fp = this.getUploadBtn().up('form').getForm();
    if(fp.isValid()){
        fp.submit({
            url: Turtas.Properties.getServicePath()+'/save/' + record.data.resource,
            waitMsg: 'Failas yra įkeliamas, prašome palaukti...',
            success: function(){
                console.log("Upload completed");
                me.storeSelection(record.data.resource, timeRecord.data.open, timeRecord.data.year, true, me.restrictedPage())
            }   
        })
    }       
},
这是我用来解析Excel的控制器函数:

@RequestMapping(value="turtas/save/gelezinkeliai", method=RequestMethod.POST)
public String saveGelezinkeliaiFromExcel(HttpServletResponse response, @RequestParam("file") MultipartFile file){
    if (file.getSize() != 0){
        ReadExcelFileToList excelFile = new ReadExcelFileToList();
        List<Gelezinkeliai> gelezinkeliai = new ArrayList<Gelezinkeliai>();
        gelezinkeliai = excelFile.readExcelData(/*fileName*/ file);
        gelezinkeliai.remove(0);
        Laikotarpis laikotarpis = new Laikotarpis();
        laikotarpis = laikotarpiaiService.findById(2014);

        for (GelezinkeliaiRest delGelezinkelis : service.getItems(2014, true, false)){
            service.delete(delGelezinkelis);
        }
        List<Gelezinkeliai> finalGelezinkeliai = new ArrayList<Gelezinkeliai>();
        for (Gelezinkeliai gelezinkelis : gelezinkeliai){
            gelezinkelis.setLaikotarpis(laikotarpis);
            finalGelezinkeliai.add(gelezinkelis);
            GelezinkeliaiRest gelezinkeliaiRest = new GelezinkeliaiRest();
            gelezinkeliaiRest.fromGelezinkeliai(gelezinkelis);
            service.save(gelezinkeliaiRest, false);
        }
        response.setContentType("text/html");
        return "{\"success\":true}";
    }
    else {
        return "{\"success\":false}";
    }

}

若我手动重新加载页面或存储,数据会更新,所以函数可以正常工作,但我希望在请求结束时捕获事件,以便自动重新加载存储。我不知道怎么了。感谢您提前回复

ExtJs代码中的成功处理程序不起作用-代码抛出异常、未执行或未执行预期的操作?最简单的调查方法是使用浏览器的开发工具:检查网络流量并在JS代码中设置断点。感谢您的回复。我想知道请求何时结束,因为那时我需要重新加载我的存储。成功处理程序将是一个伟大的解决方案。我不明白我做错了什么,因为我的成功处理程序没有反应。代码不会抛出异常,它会执行,它会做我期望它做的一切,我只想知道何时可以重新加载我的存储。
{"success":true}