Какова основная процедура вызова службы при переходе?
Хотелось бы узнать разницу между вызовом сервиса при переходе прямо как
<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).