Проблемы загрузки файла Grails

Вы можете поместить следующий код в прослушиватель прокрутки списков.

FocusScope.of(context).requestFocus(new FocusNode());

8
задан cdeszaq 5 December 2011 в 18:42
поделиться

3 ответа

Проблема решена!

Я использовал пример кода для загрузки файлов к Grails по-другому, чем исходный автор, вероятно, предназначил. Проблема состоит в том, что, когда метод загрузки контроллера назвали, это иногда было для исходного рендеринга страницы Upload. Запрос в том методе был, не имел типа MultipartHttpServletRequest. Когда я сделал POST со своим файлом для загрузки, затем Spring сделал корректную вещь и изменил мой перевопрос MultipartHttpServletRequest. Так, я должен был сделать простую регистрацию моего метода контроллера обновления перед использованием моего запроса как MultipartHttpServletRequest.

if(request instanceof MultipartHttpServletRequest)
{
  MultipartHttpServletRequest mpr = (MultipartHttpServletRequest)request;  
  CommonsMultipartFile f = (CommonsMultipartFile) mpr.getFile("myFile");
  if(!f.empty)
    flash.message = 'success'
  else
   flash.message = 'file cannot be empty'
}   
else
  flash.message = 'request is not of type MultipartHttpServletRequest'
12
ответ дан 5 December 2019 в 07:13
поделиться

Кто-то здесь, кажется, испытывает те же затруднения, которые Вы испытали. Он говорит, что "зафиксировал" его:

Решенный. Это была моя ошибка, я входил в действие, сохраняют прежде, чем отправить форму, таким образом, я предполагаю, что не было никакого файла.

Не уверенный, как взять то, что он сказал, но возможно это поможет Вам.

2
ответ дан 5 December 2019 в 07:13
поделиться

удостоверьтесь, что Вы обновляете HTML (Ваш gsp с формой для загрузки от), чтобы иметь enctype, поскольку они показывают:

<g:form action="upload" method="post" enctype="multipart/form-data">

Надежда, которая полезна, кажется слишком очевидной, но это - моя первая мысль после наблюдения Вашего сообщения об ошибке.

4
ответ дан 5 December 2019 в 07:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: