2012-06-01 1 views
0

DataModelGrails: поля-1,2 плагин не может читать DataModel свойства

package com.foo.bar.baz.model 

class Customer { 
    Integer id 
    String firstName 
    String lastName 
    ..... 
} 

GSP

.... 
    <f:with bean="Customer"> 
     <f:field property="firstName"/> 
    </f:with> 
    .... 

ГСП не в Views \ каталог клиентов, но Views \ customerRegistration. При попытке просмотреть страницу я получаю:

URI /MYAPP/customerRegistration/индекс Класс org.springframework.beans.NotReadablePropertyException Сообщение Недопустимое свойство 'ПгвЬЫате' из bean class [java.lang.String]: Свойство bean 'firstName' не читается или имеет недопустимый метод getter: соответствует ли тип возвращаемого значения getter типу параметра setter?

Почему он не может прочитать поле firstName в моем объекте данных?

Я попытался добавить полный пакет в тег («bean =« com.foo.bar.baz.model.Customer »), который только изменяет« класс bean »в приведенном выше сообщении об ошибке из java.lang .. .String к java.lang.Class

ответ

1

Фигурного его

поля тегу нужен живой объект клиента, а не ссылка на класс чтобы исправить это я сделал следующее:

Создано новый пустой объект клиента в контроллере и дает ему вид:

render(view: "myView", model: [emptyCustomer: new Customer()]) 

Затем изменил вид использовать этот объект и все работало:

<f:with bean="emptyCustomer"> 
    <f:field property="firstName"/> 
</f:with>