Файл вложения сломан, обновление до Grails 1.1.1 от Grails 1.1-бета3 - PullRequest
1 голос
/ 23 мая 2009

Это довольно специфический путь обновления, но я его использую. Думаю, я тоже пытался перейти на 1.1, и у меня была та же проблема, но не уверен на 100%.

Во всяком случае, я на 1.1-бета3 и внедрил систему загрузки / вложения файлов, как описано здесь: thegioraproject.com/2008/03/26/image-attachments-in-grails-using-imagemagick/

У меня есть объект «брокер», который имеет «логотип» (определяется как домен изображения). Изображение и вложение (родительский класс) выполняются так, как определено в приведенном выше URL.

В контроллере брокера у меня есть такой код:

    def file = new Image()
    def f = params.logo
    if(f.size>0) {
        file.setFile(f)
        file?.save(flush:true)
        brokerUserInstance.logo?.delete()
        brokerUserInstance.logo = file
    }

«Логотип» - это имя загруженного файла из формы. После этого кода есть более стандартный CRUD-код Grails (brokerUserInstance.properties=params, brokerUserInstance.save() и т. Д.).

Это прекрасно работает в 1.1-бета3. Я могу загрузить изображение, оно будет прикреплено и прикреплено к домену (отношения в БД и т. Д.). Когда я обновляю объект посредника, не загружая новое изображение, старое оно остается неизменным.

Переход к Grails 1.1.1, когда я пытаюсь загрузить новое изображение, я получаю:

Error 500: org.springframework.dao.InvalidDataAccessApiUsageException: object references an unsaved transient instance - save the transient instance before flushing: Image; nested exception is org.hibernate.TransientObjectException: object references an unsaved transient instance - save the transient instance before flushing: Image

и если я не загружаю изображение, я получаю:

[org.springframework.web.multipart.commons.CommonsMultipartFile] to required type [Image] for property logo; nested exception is java.lang.IllegalArgumentException: Cannot convert value of type [org.springframework.web.multipart.commons.CommonsMultipartFile] to required type [Image] for property logo: no matching editors or conversion strategy found

Мне удалось найти 0 по этому вопросу. Хорошо работает в 1.1-бета3, но что-то изменилось (кардинально) в 1.1.1 (и, вероятно, также в 1.1).

Есть предложения / идеи / помощь? Я рад предоставить доступ к серверу кому-то, чтобы помочь отладить это.

Спасибо:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...