Как получить доступ к файловой системе Windows с сервера War Solaris?

Мне нужно получить доступ к файловой системе или указать путь к текстовому файлу Windows с сервера Solaris. У меня есть развертывание .war на сервере weblogic solaris, но я не могу получить текстовый файл с сервера на клиент, в данном случае систему Windows или любую другую систему.

Доступ к txt файлам из,

<input type="file" name="filename" />

введите здесь описание изображения

Мне нужно прочитать файл с клиента, но у меня FileNotFoundException

ПОЖАЛУЙСТА, ПОМОГИТЕ МНЕ


person hekomobile    schedule 12.09.2012    source источник
comment
Вам нужно предоставить нам некоторый код: как HTML/JSP для вашей формы, так и код контроллера Spring, который срабатывает при отправке формы.   -  person nickdos    schedule 15.09.2012


Ответы (1)


Ваше приложение Spring MVC, работающее на вашем сервере, не имеет доступа к исходному файлу на клиентском компьютере (иначе веб-сайты могут причинить вред вашему компьютеру) — браузер отправляет копию файла по проводу на ваш контроллер.

Вот фрагмент кода, который я использовал для копирования загруженного файла в файловую систему сервера:

@RequestMapping(value = "/upload", method = RequestMethod.POST)
public String uploadFile(
    HttpServletResponse response,
    @RequestParam(value="filename", required=true) MultipartFile multipartFile,
    Model model) throws Exception {

    if (!multipartFile.isEmpty()) {
        String originalName = multipartFile.getOriginalFilename();
        final String baseTempPath = System.getProperty("java.io.tmpdir"); // use System temp directory
        String filePath = baseTempPath + File.separator + originalName;
        File dest = new File(filePath);

        try {
            multipartFile.transferTo(dest); // save the file
        } catch (Exception e) {
            logger.error("Error reading upload: " + e.getMessage(), e);
            response.sendError(HttpServletResponse.SC_BAD_REQUEST, "File uploaded failed: " + originalName);
        }
    }
}
person nickdos    schedule 12.09.2012
comment
Вы получили трассировку стека? Знаете ли вы, где находится java.io.tmpdir в файловой системе вашего сервера (куда будет сохранен файл)? Вы запускали его в отладчике? - person nickdos; 15.09.2012