Какова основная процедура вызова службы при переходе?

Хотелось бы узнать разницу между вызовом сервиса при переходе прямо как

<transition name="createExample">
    <service-call name="org.moqui.example.ExampleServices.createExample" in-map="ec.web.parameters"
                  web-send-json-response="true"/>
    <default-response type="none"/>
</transition>

и вызов службы внутри тега действий, как

<transition name="createExample">
    <actions>
        <service-call name="org.moqui.example.ExampleServices.createExample" in-map="ec.web.parameters"
                  web-send-json-response="true"/>
    <actions>
    <default-response type="none"/>
</transition>

Как веб-параметры обрабатываются в обоих случаях?

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

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

Parameters in JSON 
var parameters = { exampleId : ["example1","example2","example3"]};

ec.web.parameters for service-call in actions tag
exampleId : [example1, example2, example3]

ec.web.parameters for service-call outside actions tag
exampleId : [example1,  example2,  example3]

Элементы в списке будут содержать дополнительное пространство для службы вне тегов действия.

Так должно ли работать так?

1 ответ

Решение

В обоих случаях вы явно указываете in-параметры для использования с атрибутом service-call.@ In-map, поэтому в этом примере они оба одинаковы. Когда элемент вызова службы находится непосредственно под элементом перехода (не внутри элемента действий) и @in-map не указан, по умолчанию используется текущий контекст и то же самое для @out-map. Когда service-call находится внутри элемента actions, для них нет значений по умолчанию, т. Е. Если вы хотите использовать контекст или какую-либо другую внутреннюю или внешнюю карту, вы должны указать их явно.

Эти и многие другие сведения об экранах, переходах между экранами и о том, что делают формы, связанные с переходом, в книге "Создание приложений с помощью Moqui" (которую можно загрузить с веб-сайта moqui.org).

Другие вопросы по тегам