0
votes

I have a problem on ajax rendering of UI compoennet Richfaces - 4.3.2

current code in XHTML:

---form...start
check box component with a4j ajax event.
---- rich:collapsiblePanel...start
included with another XHTML form having rich:extendedDataTable component.
----rich:collapsiblePanel...end
.
.
mutiple collapsiblePanels.
.
---- rich:collapsiblePanel...start
another XHTML:
---form...start
rich:extendedDataTable component. LightBox Component having another form
---form...end
----rich:collapsiblePanel...end
.

.
---form...end

when ajax event happen,

the backing beans are getting updated but when I click on light box, it is retaining and displaying the last viewed report irrespective of what ever record I wish to see.
I have tried a lot of ways, the only solution i got is externally specifying all the form ids in the a4j event render list.

as I am looking out for generic way of doing this with out mentioning all the form ids externally

any help on this would be highly appriciated!

1
You shouldn't use nested forms. Can you show the actual code? - Makhiel
Nested forms cannot be used on one page. Remove form from included fragment. Use ui:include and ui:component or ui:fragment. - Vasil Lukach
I used h:form tag, the mentioning of nested form corresponds to rich:extendedDataTable form included via ui:include - user3486191
Replace h:form with ui:component in included file (file with rich:extendedDataTable) and check result. - Vasil Lukach
yeah i have tried that but no luck - user3486191

1 Answers

0
votes

Yeah... I could able to resolve this issue:

Remove all the nested forms(i.e., form in collapsible section, light box form in corresponding XHTMLs), introduce a4j:outputPanel in place of removed h:form with ajaxRendered="true" attribute.

<a4j:outputPanel id="reportsTablePanel" layout="block" ajaxRendered="true">