我无法从.jsp中找到错误

时间:2018-05-29 16:40:36

标签: java jsp controller

我无法弄清楚为什么不起作用。这就是让我遇到问题的jsp。我遵循youtube的教程,我的jsp看起来和视频中的jsp一样。我调整了视频中的代码,但我不认为这是问题,因为控制器和jsp与视频中的相同。 here is the tutorial, jsp is at min 24

<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
<%@ taglib uri="http://www.springframework.org/tags/form" prefix="form" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Upload Page</title>
</head>
<body>

<spring:url value="/doUpload" var="doUplodaURL" />
<form:form method="post" modelAttribute="formUpload" action="${doUplodaURL 
 }" enctype="multipart/form-data" >
<form:input path="files" type="file" multiple="multiple"/>
<form:errors path="files" /><br/>

<button type="submit" >Upload</button>

</form:form>
</body> 
</html>

那是我的控制器

@Controller
public class CsvController {

@Autowired
FileValidator fileValidator;

@Autowired
CsvServices csvServices;

@RequestMapping(value = "/uploadPage", method = RequestMethod.GET)
public ModelAndView getPage() {
    ModelAndView model = new ModelAndView("upload_page");
    FileUpload formUpload = new FileUpload();
    model.addObject("formUpload", formUpload);

    return model;
}

@RequestMapping (value="/doUpload", method=RequestMethod.POST)
public String doUpload(@ModelAttribute("formUpload") FileUpload fileUpload, BindingResult result, RedirectAttributes redirectAttributes ) throws IOException {
    fileValidator.validate(fileUpload, result);

    if(result.hasErrors()) {
        return "uploadPage";
    } else {
        redirectAttributes.addFlashAttribute("fileNames", uploadAndImportDb(fileUpload));

        return "redirect:/succes";
    }
}

@RequestMapping(value = "/succes", method = RequestMethod.GET)
public ModelAndView succes() {
    ModelAndView model = new ModelAndView("succes");
    return model;
}

private List<String> uploadAndImportDb(FileUpload fileUpload) throws IOException{
    List<String> fileNames = new ArrayList<String>();
    List<String> paths = new ArrayList<String>();
    CommonsMultipartFile[] commonsMultipartFiles = fileUpload.getFiles();

    String filePath = null;

    for(CommonsMultipartFile multipartFile : commonsMultipartFiles) {
        filePath = "C:\\Users\\bogda\\Desktop\\input\\" + multipartFile.getOriginalFilename();
        File file = new File(filePath);

        FileCopyUtils.copy(multipartFile.getBytes(), file);
        fileNames.add(multipartFile.getOriginalFilename());

        paths.add(filePath);
    }

    //parse and import
    csvServices.process(paths);

    return fileNames;
}
}

OUTPUT

1 个答案:

答案 0 :(得分:0)

请在WEb_INF/lib文件夹中添加commons-fileupload-x.x.jar。