Я довольно новичок в Tapestry, и я пытаюсь обновить зону при выборе значения из выбранного компонента. Это где я пытаюсь сделать это:Невозможно найти зону ajax для динамического обновления
<t:Zone t:id="ispTypeZone" id="ispTypeZone">
<t:Select t:id="ispType"
t:blankLabel="[${message:select-label}]" t:zone="ispTypeZone"
t:value="ispType" event="valueChangedFromIspType"
disabled="${editable}" style="width:515px;"
t:blankOption="ALWAYS" t:validate="required"
/>
</t:Zone>
<t:Zone t:id="selectionZone" id="selectionZone">
<t:If t:test="${somethingSelected}">
<t:If test="${ispSelected}">
<t:Zone t:id="ovZone" id="ovZone">
<t:Select t:id="ovType" t:value="ovType"
t:blankLabel="[${message:select-label}]" t:zone="ovZone"
t:validate="required" event="valueChangedFromOvType"
style="width:515px;" />
</t:Zone>
<p:else>
<t:Zone t:id="vpZone" id="vpZone">
<t:Select t:id="vpType" t:value="vpType"
t:blankLabel="[${message:select-label}]" t:zone="vpZone"
t:validate="required" event="valueChangedFromVpType"
t:blankOption="ALWAYS" disabled="${editable}"
style="width:515px;" />
</t:Zone>
</p:else>
</t:If>
<p:else>
</p:else>
</t:If>
</t:Zone>
Это где я называю рендер:
void onValueChangedFromIspType(String ispType) {
//some code here
if (request.isXHR()) {
ajaxResponseRenderer.addRender(selectionZone);
}
}
Независимо значение, выбранное из выбранного компонента, он вызывает рендер для selectionZone, но Я продолжаю получать сообщение об ошибке «Невозможно найти зону Ajax ZoneZone» для динамического обновления ». Несмотря на сообщение об ошибке, «somethingSelected» все еще выполняется, но следующие компоненты выбора не отображаются. Кажется, я не могу найти проблему, поэтому, если бы кто-нибудь мог указать мне в правильном направлении, я был бы признателен.
Спасибо.