Проблема ArrayList и Map в граалях - PullRequest
0 голосов
/ 12 апреля 2010

У меня есть сервис, который содержит карту:

static Map cargosMap = ['1':'item1','2':'item 2','3':'item 3']

, которое возвращается через метод в сервисе:

 static Map getCargos() {
    [cargosMap]
 }

Контроллер называет это так:

def mform = {

    Map cargos = empService.getCargos()

    [cargos:cargos]
}

В gsp у меня есть выбор:

<g:select name="cg1" from="${cargos}" />

Но я получаю исключение:

 Error 500: Executing action  ....caused exception: 
   org.codehaus.groovy.runtime.typehandling.GroovyCastException: Cannot cast object
   ...  
   with class 'java.util.ArrayList' to class 
  'java.util.Map'

Есть какие-нибудь подсказки? Спасибо

1 Ответ

3 голосов
/ 12 апреля 2010

Похоже, вы оборачиваете карту в ArrayList в getCargos(). Почему бы просто: static getCargos() { cargosMap }. Или, еще лучше, просто переименуйте cargosMap в cargos и Groovy создаст для вас геттер.

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