tabView dynamic=true causes data loss

UI Components for JSF
Post Reply
mikese
Posts: 8
Joined: 09 Jan 2014, 02:46

22 Aug 2014, 23:07

I have a tabView with several tabs see code below.

When I set dynamic=true there is a loss of data in the following situation:
  • User submits changes but forgets to fill in required field so validation error occurs.
    User corrects data then does second submit.
    Select One Menus do not retain selected values -- value does not make it to backing bean causing more validation errors. See image below.
Workaround:
  • User submits changes but forgets to fill in required field so validation error occurs.
    User corrects data then clicks each tab to open the tab contents then does second submit.
    All works as expected.
When dynamic=true is removed all works as expected.

What can I do to retain the values when dynamic=true?

Unexpected data loss causing validation error
Image

Tab View

Code: Select all

    <p:tabView 
	id="tabViewCustomer" 
	widgetVar="tabViewCustomer" 
	style="border: none;" 
	dynamic="true" effect="fade" effectDuration="fast"
	onTabChange="checkTabChange(index);">

	<p:tab title="Main" id="tabMain" titleStyleClass="#{customerMaintenanceView.getTabStyle('Main', '')}" >
	    <ui:include src="main.xhtml"/>
	</p:tab>

	<p:tab title="Address" id="tabAddress" titleStyleClass="#{customerMaintenanceView.getTabStyle('Address', '')}">
	    <ui:include src="address.xhtml"/>
	</p:tab>

	<p:tab title="Credit" id="tabCredit" titleStyleClass="#{customerMaintenanceView.getTabStyle('Credit', '')}">
	    <ui:include src="credit.xhtml"/>
	</p:tab>    

	<p:tab title="Sales" id="tabSales" titleStyleClass="#{customerMaintenanceView.getTabStyle('Sales', '')}">
	    <ui:include src="sales.xhtml"/>
	</p:tab>    

	<p:tab title="EDI" id="tabEDI" titleStyleClass="#{customerMaintenanceView.getTabStyle('EDI', '')}">
	    <ui:include src="edi.xhtml"/>
	</p:tab> 

	<p:tab title="Remit" id="tabRemit" disabled="#{customerMaintenanceView.isTabDisabled()}" titleStyleClass="#{customerMaintenanceView.getTabStyle('Remit', '')}">
	    <ui:include src="remitAddress.xhtml"/>
	</p:tab> 

	<p:tab title="Misc" id="tabMisc" titleStyleClass="#{customerMaintenanceView.getTabStyle('Misc', '')}" >
	    <ui:include src="misc.xhtml"/>
	</p:tab> 

	<p:tab title="Contacts" id="tabContacts" disabled="#{customerMaintenanceView.isTabDisabled()}" titleStyleClass="#{customerMaintenanceView.getTabStyle('Contacts', '')}" >
	    <ui:include src="contacts.xhtml"/>
	</p:tab> 

	<p:tab title="Send X" id="tabSendX" disabled="#{customerMaintenanceView.isTabDisabled()}" titleStyleClass="#{customerMaintenanceView.getTabStyle('Send X', '')}" >
	    <ui:include src="sendX.xhtml"/>
	</p:tab>  

	<p:tab title="Tax" id="tabTax" disabled="#{customerMaintenanceView.isTabDisabled()}" titleStyleClass="#{customerMaintenanceView.getTabStyle('Tax', '')}" >
	    <ui:include src="tax.xhtml"/>
	</p:tab> 

	<p:tab title="Notes" id="tabNotes" disabled="#{customerMaintenanceView.isTabDisabled()}" titleStyleClass="#{customerMaintenanceView.getTabStyle('Notes', '')}" >
	    <ui:include src="notes.xhtml"/>
	</p:tab> 

	<p:tab title="Ship Address" disabled="#{customerMaintenanceView.isTabDisabled()}" id="tabShipAddress" titleStyleClass="#{customerMaintenanceView.getTabStyle('Ship Address', '')}" >
	    <ui:include src="shipAddress.xhtml"/>
	</p:tab>      

    </p:tabView>
  • Primefaces5 JBoss6.4 JSF2.2 Mojarra2.1.19 Deltaspike0.5

Post Reply

Return to “PrimeFaces”

  • Information
  • Who is online

    Users browsing this forum: No registered users and 51 guests