2015-07-17 2 views
0

шагов, которые я сделал:Grails 2.5.0 - Настройка JQGrid свежего Grails установить

  1. Создать новый проект
  2. Добавить mavenRepo "http://repo.grails.org/grails/core" к хранилищам в BuildConfig.groovy
  3. Добавить compile ":easygrid:1.7.1" в плагин в BuildConfig.groovy
  4. Добавить класс домен com.test.Author с String firstname и String lastname
  5. Добавить контроллер com.test.HomeController с def index() { }
  6. Добавить файл views/home/index.gsp

Далее, я добавил следующее com.test.HomeController: def authorJQGrid = { domainClass Author gridImpl 'jqgrid' jqgrid { sortname 'firstname' } export { export_title 'Author' pdf { 'border.color' java.awt.Color.BLUE } } columns { firstname lastname } }

И я добавил следующее к дому/index.gsp:

<!DOCTYPE html> <html> <head> <asset:javascript src="easygrid.jqgrid.js"/> <asset:stylesheet src="easygrid.jqgrid.css"/> </head> <body> <grid:grid id='jqgridinitial' name='authorJQGrid'> <grid:set width="900" caption="Authors"/> </grid:grid> <grid:exportButton name='authorJQGrid'/> </body> </html>

При компиляции я вижу следующую ошибку:

Could not process the EasygridConfig file

Когда я пытаюсь идти на веб-страницу, я получаю следующее сообщение об ошибке:

[HTTP-био-8080-Exec-9] ERROR errors.GrailsExceptionResolver - произошла NullPointerException при обработке запроса: [GET]/website/home/ Невозможно получить свойство authorJQGrid на нулевом объекте. Stacktrace следует за: Сообщение: Обработка ошибок GroovyPageView: Ошибка при выполнении тега: Не удается получить свойство authorJQGrid на нулевом объекте

Что можно сделать, чтобы заставить JQGrid работать?

+1

Вы аннотировать класс контроллера с @Easygrid? – cantoni

+1

Это была моя проблема. Спасибо! – Anonymous1

ответ

0

Чтобы использовать плагин EasyGrid, контроллеры (где определены сетки) должны быть аннотированы с помощью @Easygrid.

В приведенном ниже примере, извлеченный из https://github.com/tudor-malene/grails-petclinic/blob/master/grails-app/controllers/org/grails/samples/OverviewController.groovy, показать пример:

@Easygrid 
class OverviewController { 

    def ownersGrid = { 
     domainClass Owner 
     columns { 
      id { 
       type 'id' 
       enableFilter false 
      } 
      firstName 
      lastName 
      address 
      city 
      telephone 
      nrPets { 
      enableFilter false 
      value { owner -> 
       owner.pets.size() 
      } 
      jqgrid { 
       sortable false 
      } 
      } 
     } 
    } 
} 
Смежные вопросы