Установить динамическое изменение в контексте Datapower - PullRequest
2 голосов
/ 24 мая 2011

Мое требование состоит в том, чтобы установить некоторые динамические переменные в цикле for в контекст мощности данных, например:

<dp:set-variable name="'var://context/txn-info/appErrorInd[$i+1]'"
                value="'yes'" />

Переменная $ i будет продолжать изменяться. Код выше не работает. Может кто-нибудь дать мне решение?

1 Ответ

1 голос
/ 24 мая 2011

Используйте

<dp:set-variable name="'var:{//context/txn-info/appErrorInd[$i+1]}'"
                 value="'yes'" />

Выше приведено механическое исправление предоставленного кода. Скорее всего, он содержит еще одну, более тонкую ошибку. Чтобы исправить эту ошибку, также используйте:

<dp:set-variable name="'var:{(//context/txn-info/appErrorInd)[$i+1]}'"
                 value="'yes'" />

Объяснение

  1. Использование AVT .

  2. Оператор [] имеет более высокий приоритет, чем псевдо-оператор //. Чтобы переопределить это, нужно явно использовать скобки.

...