Use immediate="true"
--Omar
On Sep 9, 2009, at 8:24 AM, "Roeder, Andreas" <[email protected]
> wrote:
Thanx a lot, that worked like a glue. Just one problem is left: all
the selectOneChoice components are on required="true". How can I
avoid the validation?
I already tried to call at the end of the ValueChangeListener the
call:
FacesContext.getCurrentInstance().renderResponse();
but no success.
-Andreas
-----Ursprüngliche Nachricht-----
Von: Andrew Robinson [mailto:[email protected]]
Gesendet: Montag, 7. September 2009 02:46
An: MyFaces Discussion
Betreff: Re: [Trinidad] How to use an iterator, selectOneChoice and
partialTriggers?
If you give partial triggers an EL expression it must evaluate to
type String[]. The value change listener is fired for the current
iteration, so if you click item 3, the event will be broadcast for
the selectOneChoice inside the index 2 of tr:iterator. To move the
iterator to a new index you need to save the current row index, set
the new index, evaluate code and then set it back.
An iterator stamps out one component and a component only has 1 ID,
so you cannot put EL in the ID like you did below. I would advise
using <f:attribute/> if you need to store the ID on the component,
but just give the choice a static ID.
The resulting IDs on the client will be like "i1:0:soc1",
"i1:1:soc1", etc if your iterator had ID "i1" and your
selectOneChoice had ID "soc1". So the :#: in between represents the
stamp index.
-Andrew
On Fri, Sep 4, 2009 at 7:32 AM, Roeder, Andreas<[email protected]
> wrote:
I'm trying to create generic selectOneChoice elements. When the first
selectOneChoice value changes it should update the next one in the
list and so on. I tried to do that via the id, partialTriggers and a
ValueChangeListener:
<tr:iterator value="#{genericFormBean.formDesc.fieldList}"
var="field">
<tr:selectOneChoice
id="#{field.id}"
partialTriggers="#{field.partialTriggers}"
valueChangeListener="#{genericFormBean.valueChange}"
value="#{genericFormBean.formDesc.modelMap[field.id]}"
<f:selectItems
value="#{genericFormBean.selectItemMap[field.itemList]}" />
</tr:selectOneChoice>
<tr:iterator>
But I cannot set the id of the selectOneChoice element. When I try to
get the other selectOneChoice elements in the valueChangeListener I
just see one element in the iterator.childs() collection. Why is
that?
I also tried to use a custom renderer to set the id, but as soon I
change the id of one selectOneChoice element all other elements are
getting the same id. It's pretty confusing to me.
Is there another way to do that?
Best Regards,
Andreas