У меня есть этот простой контроллер, который загружает файл в базу данных. У меня есть рабочий вид, который отображает форму для загрузки, но при нажатии на кнопку загрузки, я бегу в эту ошибку в documentInstance.save()
линии: ArrayIndexOutOfBoundsException произошел при обработке запроса: [POST]/MYAPP/documentFile/загрузитьArrayIndexOutOfBoundsException grails
class DocumentController {
def upload() {
def file = request.getFile('file')
if(file.empty) {
flash.message = "File cannot be empty"
} else {
def documentInstance = new Document()
documentInstance.filename = file.originalFilename
documentInstance.filedata = file.getBytes()
documentInstance.save()
}
redirect (action:'list')
}
}
Может ли кто-нибудь помочь мне понять, где проблема? Является ли информация, которую я дал достаточно, чтобы ответить на это? Если нет, пожалуйста, дайте мне знать.
ОБНОВЛЕНИЕ:
элемент формы часть GSP, как показано ниже.
<g:uploadForm action="upload">
<fieldset class="form">
<input type="file" name="file" />
</fieldset>
<fieldset class="buttons">
<g:submitButton name="upload" class="save" value="Upload" />
</fieldset>
</g:uploadForm>
Вот класс Доменных Document
class Document{
String filename
byte[] fileData
static constraints = {
filename(blank:false,nullable:false)
filedata(blank: true, nullable:true, maxSize:1073741824)
}
}
Пожалуйста, разместите соответствующую деталь (элемент формы) GSP. – sebnukem
Я обновил вопрос с соответствующим кодом GSP. – NanoNi
также полная таблица stacktrace помогла бы – cfrick