Выражение свойства Grails вместо объекта домена в веб-потоке?

#grails #properties #expression #spring-webflow

#grails #свойства #выражение #spring-webflow

Вопрос:

В настоящее время мы пытаемся создать кое-что с помощью Grails Web Flows.

Мы устанавливаем объект в потоке (используя flow.objectName = ObjectInstance), но когда мы пытаемся получить к нему доступ на следующем шаге потока (используя flow.objectName), объект не установлен, но вместо него есть org.codehaus.groovy ….. .PropertyExpression , у которого нет ни одного из методов, которые мы хотим использовать.

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

  • Что такое выражение свойства?
  • Что мы делаем не так, какие-либо подсказки или проблемы, которые часто возникают с Webflows?

Заранее благодарю вас за ваше время.

Комментарии:

1. Пример был бы полезен, поскольку большинство проблем grails webflow связаны с синтаксисом dsl.

Ответ №1:

Убедитесь, что ваш синтаксис Webflow DSL правильный.

Например

 def someFlow = {
    eventAction {
       flow.value = someValue // This is incorrect
       action {
           flow.value = someValue // This is correct
       }
       on("success").to "eventDisplay"
    }

    eventDisplay {
       on("finish").to "end"
       flow.anotherValue = somethingElse // This usually causes the behavior you are seeing.
       // Proper way of setting flow.anotherValue
       on("finish2") {
           flow.anotherValue = somethingElse
       }.to "end"

    }

    end{}
}