Apache Обычный ввод-вывод FileItemIterator не возвращает никакого следующего значения - PullRequest
0 голосов
/ 05 мая 2020

Я хочу использовать Apache Commons FileUpload для загрузки составных данных, я использую код ниже

@PostMapping("/upload")
  public UploadData handleUpload(HttpServletRequest request) throws Exception {

    boolean isMultipart = ServletFileUpload.isMultipartContent(request);

    ServletFileUpload upload = new ServletFileUpload();
    FileItemIterator iterStream = upload.getItemIterator(request);

    while (iterStream.hasNext()) {
      FileItemStream item = iterStream.next();

      InputStream stream = item.openStream();

      if (!item.isFormField()) {
        return this.fileService.uploadFromStream(stream,
          item.getName(),
          item.getContentType(),
          this.principalHolder.getPublicProfile());
      }
    }
    return null;
   }

Здесь isMultipart возвращает true, но FileItemIterator.hasNext () ничего не возвращает, не имея файлов для повторения на.

Не могли бы вы мне помочь с этим?

1 Ответ

0 голосов
/ 16 мая 2020

Я обнаружил проблему, у меня был ниже Bean, который переопределял свойство ниже в application.properties , чтобы отключить многостраничные настройки. конфигурация по умолчанию для отключения multipart для сервлета Spring

...