[
https://issues.jboss.org/browse/RF-11694?page=com.atlassian.jira.plugin.s...
]
Jean ANDRE updated RF-11694:
----------------------------
Steps to Reproduce:
1) make a tabPanel as below - At the begin, there is only on tab (the static one). Then,
imagine that you click somewhere to add a new tab to display a list (from a search
request).
{code}
<h:form id="tabbedForm">
<rich:tabPanel id="desktopTabPanel" switchType="ajax"
headerPosition="top" headerLocation="center"
activeItem="#{desktopTabController.activeTab}">
<rich:tab id="tab-workitems" name="tab-workitems"
header="#{msg['desktop.tab.workitems']}">
<!-- -->
<!-- WORKITEMS TAB -->
<!-- -->
</rich:tab>
<rich:tab id="tab-search" name="tab-search"
header="#{msg['desktop.tab.search']}">
<!-- -->
<!-- SEARCH TAB -->
<!-- -->
<ui:include src="client/searchClient.xhtml" />
</rich:tab>
<c:forEach items="#{desktopTabController.desktopTabBean.tabElements}"
var="tab">
<rich:tab id="#{tab.id}" name="#{tab.id}">
<!-- -->
<!-- RESULT TAB -->
<!-- -->
<f:facet name="header">
<h:panelGrid columns="2">
<h:outputText value="#{tab.id}" />
<a4j:commandButton image="/images/closeButton.png"
styleClass="closeButton"
action="#{desktopTabController.closeTab(tab.id)}"
render="desktopTabPanel">
</a4j:commandButton>
</h:panelGrid>
</f:facet>
<ui:include src="client/listClient.xhtml" />
</rich:tab>
</c:forEach>
</rich:tabPanel>
{code}
2) Here is the include file - Partial content, only the beginning of a
"standard" form.
{code}
<!-- -->
<!-- CLIENT LIST -->
<!-- -->
<a4j:outputPanel id="#{tab.id}-resultListClientContainer">
<h:outputText value="#{msg['search.message.empty.liste']}"
rendered="#{empty tab.searchResult}">
<!-- -->
<!-- EMPTY CLIENT LIST -->
<!-- -->
</h:outputText>
<rich:dataTable id="#{tab.id}-resultListClient" var="client"
value="#{tab.searchResult.data}" rendered="#{not empty
tab.searchResult}" row="30" rowClasses="odd-row, even-row">
<rich:column id="#{tab.id}-specInd"
accept="#{client.specInd}">
<!-- -->
<!-- SPEC. INDIC. -->
<!-- -->
<f:facet name="header">
<h:outputText value="#{msg['client.label.special.indic']}" />
</f:facet>
<h:outputText value="#{client.specInd}" />
</rich:column>
{code}
3) The code that triggers the rendering of the tabPanel - It is a search form which is
enclosed also in tab.
Below, it is a partial content of the search form : client/searchClient.xhtml
{code}
<!-- -->
<!-- SEARCH ! -->
<!-- -->
<a4j:commandButton id="doSearchCmd"
value="#{msg['search.command.search']}"
action="#{searchClientController.doSearch}"
render="desktopTabPanel">
</a4j:commandButton>
{code}
was:
1) make a tabPanel as below - At the begin, there is only on tab (the static one). Then,
imagine that you click somewhere to add a new tab to display a list (from a search
request).
{code}
<h:form id="tabbedForm">
<rich:tabPanel id="desktopTabPanel" switchType="ajax"
headerPosition="top" headerLocation="center"
activeItem="#{desktopTabController.activeTab}">
<rich:tab id="tab-workitems" name="tab-workitems"
header="#{msg['desktop.tab.workitems']}">
<!-- -->
<!-- WORKITEMS TAB -->
<!-- -->
</rich:tab>
<rich:tab id="tab-search" name="tab-search"
header="#{msg['desktop.tab.search']}">
<!-- -->
<!-- SEARCH TAB -->
<!-- -->
<ui:include src="client/searchClient.xhtml" />
</rich:tab>
<c:forEach items="#{desktopTabController.desktopTabBean.tabElements}"
var="tab">
<rich:tab id="#{tab.id}" name="#{tab.id}">
<!-- -->
<!-- RESULT TAB -->
<!-- -->
<f:facet name="header">
<h:panelGrid columns="2">
<h:outputText value="#{tab.id}" />
<a4j:commandButton image="/images/closeButton.png"
styleClass="closeButton"
action="#{desktopTabController.closeTab(tab.id)}"
render="desktopTabPanel">
</a4j:commandButton>
</h:panelGrid>
</f:facet>
<ui:include src="client/listClient.xhtml" />
</rich:tab>
</c:forEach>
</rich:tabPanel>
{code}
2) Here is the include file
{code}
<!-- -->
<!-- CLIENT LIST -->
<!-- -->
<a4j:outputPanel id="#{tab.id}-resultListClientContainer">
<h:outputText value="#{msg['search.message.empty.liste']}"
rendered="#{empty tab.searchResult}">
<!-- -->
<!-- EMPTY CLIENT LIST -->
<!-- -->
</h:outputText>
<rich:dataTable id="#{tab.id}-resultListClient" var="client"
value="#{tab.searchResult.data}" rendered="#{not empty
tab.searchResult}" row="30" rowClasses="odd-row, even-row">
<rich:column id="#{tab.id}-specInd"
accept="#{client.specInd}">
<!-- -->
<!-- SPEC. INDIC. -->
<!-- -->
<f:facet name="header">
<h:outputText value="#{msg['client.label.special.indic']}" />
</f:facet>
<h:outputText value="#{client.specInd}" />
</rich:column>
{code}
3) The code that triggers the rendering of the tabPanel - It is a search form which is
enclosed also in tab.
Below, it is a partial content of the search form : client/searchClient.xhtml
{code}
<!-- -->
<!-- SEARCH ! -->
<!-- -->
<a4j:commandButton id="doSearchCmd"
value="#{msg['search.command.search']}"
action="#{searchClientController.doSearch}"
render="desktopTabPanel">
</a4j:commandButton>
{code}
RF4 : Bad rendering on rich:dataTable header inside ui:include
enclosed in a rich:tabPanel
------------------------------------------------------------------------------------------
Key: RF-11694
URL:
https://issues.jboss.org/browse/RF-11694
Project: RichFaces
Issue Type: Bug
Security Level: Public(Everyone can see)
Affects Versions: 4.0.0.Final
Environment: Websphere 8 - RAD 8 - JSF Mojorra 2.1.4 - Spring 3.0.6 Final - Use
@Inject @Named @SessionScoped as annotations - Firefox 7.0.1 - Windows 7 (6.1 sp1)
Reporter: Jean ANDRE
The header of a rich:dataTable is not rendering with CSS style when the dataTable is
inside a separate file (ui:include src=....) during the ajax rendering on a dynamic insert
of rich:tab.
The error does not appear when the content of the include file is directly moved inside
the final page, I mean without ui:include.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see:
http://www.atlassian.com/software/jira