p:datatable Reorder not working with p:headerRow?

UI Components for JSF
Post Reply
vished
Posts: 479
Joined: 02 Feb 2014, 17:38

19 Feb 2019, 20:18

Hi all,

Can someone check if reorder is working for the header (p:headerRow)
I got the following issue:
java.lang.NumberFormatException: For input string: ""
Reordering for the columns inside a group is working....

Here my code:

Code: Select all

<p:dataTable id="mandatoryObjectBookingListDatatable"
											value="#{mandatoryObjectBookingRequestByProjectController.lazyModel}"
											var="mandatoryObjectBooking"
											widgetVar="mandatoryObjectBookingTable" multiViewState="true"
											resizableColumns="true" editable="true" editMode="cell"
											sortBy="#{mandatoryObjectBooking.mandatoryObjectBookingGroup.ordering}"
											selection="#{mandatoryObjectBookingRequestByProjectController.selectedMandatoryObjectBookingList}"
											filteredValue="#{mandatoryObjectBookingRequestByProjectController.filteredMandatoryObjectBooking}"
											rows="50" pageLinks="10" paginatorPosition="bottom"
											lazy="true" paginator="true" reflow="true"
											rowSelectMode="add"
											currentPageReportTemplate="(Eintrag: {startRecord}-{endRecord} von {totalRecords}, Seite: {currentPage} von {totalPages})"
											paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
											rowsPerPageTemplate="50,100,200"
											paginatorAlwaysVisible="false" expandableRowGroups="true"
											draggableRows="true" emptyMessage="Keine Buchungen gefunden">

											<f:facet name="header">
												<p:outputPanel id="functionalityPanel"
													style="float:left; margin-top: -3px">

													<p:menuButton icon="fa fa-ellipsis-h">
														<p:menuitem value="Materialgruppe hinzufügen"
															actionListener="#{mandatoryObjectBookingRequestByProjectController.doAddMandatoryObjectBookingGroup}"
															update=":growl, :projectTab:mandatoryObjectBookingListForm:mandatoryObjectBookingListDatatable"
															icon="fa fa-plus-circle" />
														<p:menuitem value="Löschen"
															actionListener="#{mandatoryObjectBookingRequestByProjectController.doDeleteMandatoryObjectBooking(mandatoryObjectBooking)}"
															update=":growl, :projectTab:mandatoryObjectBookingListForm:mandatoryObjectBookingListDatatable"
															icon="fa fa-trash" />

													</p:menuButton>
												</p:outputPanel>


												<h:outputText id="overviewText"
													value="Übersicht (#{mandatoryObjectBookingRequestByProjectController.numberTotal})" />
												<p:tooltip for="overviewText" position="top"
													value="Die Gesamtzahl der Filterung" />

												<p:outputPanel style="float:right; margin-top: -3px">
													<p:commandButton id="toggler" type="button"
														styleClass="Fs13 White" icon="fa fa-list" />
													<p:tooltip for="toggler" value="Spalten ein-/ ausblenden"
														position="top" />
													<p:columnToggler
														datasource="mandatoryObjectBookingListDatatable"
														trigger="toggler" />
												</p:outputPanel>

											</f:facet>


											<p:ajax event="toggleSelect" ajax="true" immediate="true"
												global="false"
												update=":projectTab:mandatoryObjectBookingListForm:mandatoryObjectBookingListDatatable:functionalityPanel" />
											<p:ajax event="rowSelectCheckbox" ajax="true"
												immediate="true" global="false"
												listener="#{mandatoryObjectBookingRequestByProjectController.onSelectMandatoryObjectBooking}"
												update=":projectTab:mandatoryObjectBookingListForm:mandatoryObjectBookingListDatatable:functionalityPanel" />
											<p:ajax event="rowUnselectCheckbox" ajax="true"
												global="false" immediate="true"
												listener="#{mandatoryObjectBookingRequestByProjectController.onUnSelectMandatoryObjectBooking}"
												update=":projectTab:mandatoryObjectBookingListForm:mandatoryObjectBookingListDatatable:functionalityPanel" />
											<p:ajax event="rowSelect" ajax="true" immediate="true"
												global="false"
												listener="#{mandatoryObjectBookingRequestByProjectController.onSelectMandatoryObjectBooking}"
												update=":projectTab:mandatoryObjectBookingListForm:mandatoryObjectBookingListDatatable:functionalityPanel" />
											<p:ajax event="rowUnselect" ajax="true" immediate="true"
												global="false"
												listener="#{mandatoryObjectBookingRequestByProjectController.onUnSelectMandatoryObjectBooking}"
												update=":projectTab:mandatoryObjectBookingListForm:mandatoryObjectBookingListDatatable:functionalityPanel" />
											<p:ajax event="cellEdit" update=":growl" global="false"
												listener="#{mandatoryObjectBookingRequestByProjectController.onCellEdit(mandatoryObjectBooking)}" />


											<p:headerRow>
												<p:column colspan="8">
													<h:outputText
														value="#{mandatoryObjectBooking.mandatoryObjectBookingGroup.name}" />
												</p:column>
											</p:headerRow>


											<p:column selectionMode="multiple" toggleable="false"
												style="width:16px;text-align:center" />


											<p:column visible="true" style="width: 10px;"
												toggleable="false">
												<p:outputPanel id="mandatoryArticleName"
													rendered="#{mandatoryObjectBooking.mandatoryArticle != null and mandatoryObjectBooking.type == 'ITEM'}">
													<i class="fa fa-shopping-basket Fs12"></i>
													<p:tooltip for="mandatoryArticleName" value="Artikel"
														style="margin-right: 5px;" />
												</p:outputPanel>

												<p:outputPanel id="mandatoryEquipmentName"
													rendered="#{mandatoryObjectBooking.mandatoryEquipment != null and mandatoryObjectBooking.type == 'ITEM'}">
													<i class="fa fa-plus-square Fs12"></i>
													<p:tooltip for="mandatoryEquipmentName" value="Equipment"
														style="margin-right: 5px;" />
												</p:outputPanel>

												<p:outputPanel id="mandatoryEquipmentSetName"
													rendered="#{mandatoryObjectBooking.mandatoryEquipmentSet != null and mandatoryObjectBooking.type == 'ITEM'}">
													<i class="fa fa-sitemap Fs12"></i>
													<p:tooltip for="mandatoryEquipmentSetName"
														value="Equipment Set" style="margin-right: 5px;" />
												</p:outputPanel>

												<p:outputPanel id="mandatoryCaseName"
													rendered="#{mandatoryObjectBooking.mandatoryCase != null and mandatoryObjectBooking.type == 'ITEM'}">
													<i class="fa fa-archive Fs12"></i>
													<p:tooltip for="mandatoryCaseName" value="Case"
														style="margin-right: 5px;" />
												</p:outputPanel>

												<p:outputPanel id="mandatoryArticleUnitName"
													rendered="#{mandatoryObjectBooking.mandatoryArticleUnit != null and mandatoryObjectBooking.type == 'ITEM'}">
													<i class="fa fa-shopping-bag Fs12"></i>
													<p:tooltip for="mandatoryArticleUnitName" value="Anlage"
														style="margin-right: 5px;" />
												</p:outputPanel>
												
												<p:outputPanel id="freeText"
													rendered="#{mandatoryObjectBooking.type == 'FREE_TEXT'}">
													<i class="fa fa-comment Fs12"></i>
													<p:tooltip for="freeText" value="Freitext"
														style="margin-right: 5px;" />
												</p:outputPanel>
												
														<p:outputPanel id="tempProduct"
													rendered="#{mandatoryObjectBooking.type == 'TEMP_PRODUCT'}">
													<i class="fa fa-question-circle Fs12"></i>
													<p:tooltip for="tempProduct" value="Temporäres Produkt"
														style="margin-right: 5px;" />
												</p:outputPanel>
												
											</p:column>


											<p:column sortBy="#{mandatoryObjectBooking.name}" 
												visible="true">

												<f:facet name="header">
													<h:outputText value="Name" />
												</f:facet>

												<p:cellEditor>
													<f:facet name="output">
														<h:outputText value="#{mandatoryObjectBooking.name}" />
													</f:facet>
													<f:facet name="input">
														<p:inputText value="#{mandatoryObjectBooking.name}"
															required="true" style="width:96%" />
													</f:facet>
												</p:cellEditor>
											</p:column>

											<p:column sortBy="#{mandatoryObjectBooking.quantity}"
												visible="true">

												<f:facet name="header">
													<h:outputText value="Anzahl" />
												</f:facet>

												<p:cellEditor 	rendered="#{mandatoryObjectBooking.type == 'ITEM' or mandatoryObjectBooking.type == 'TEMP_PRODUCT'}">
													<f:facet name="output">
														<h:outputText value="#{mandatoryObjectBooking.quantity}">
															<f:convertNumber integerOnly="true" />
														</h:outputText>
													</f:facet>
													<f:facet name="input">
														<p:inputNumber value="#{mandatoryObjectBooking.quantity}"
															required="true" style="width:96%" />
													</f:facet>
												</p:cellEditor>
											</p:column>


											<p:column sortBy="#{mandatoryObjectBooking.price}" 
												visible="true">

												<f:facet name="header">
													<h:outputText value="Einzelpreis" />
												</f:facet>

												<p:cellEditor rendered="#{mandatoryObjectBooking.type == 'ITEM' or mandatoryObjectBooking.type == 'TEMP_PRODUCT'}">
													<f:facet name="output">
														<h:outputText value="#{mandatoryObjectBooking.price}">
															<f:convertNumber type="number" groupingUsed="true"
																minFractionDigits="2" maxFractionDigits="2" />
														</h:outputText>
														<h:outputText
															value=" #{mandatoryObjectBookingRequestByProjectController.mandatoryCurrency.isoCode}" />
													</f:facet>
													<f:facet name="input">
														<p:inputNumber value="#{mandatoryObjectBooking.price}"
															minValue="0" decimalPlaces="2" symbolPosition="s"
															symbol=" #{mandatoryObjectBookingRequestByProjectController.mandatoryCurrency.isoCode}"
															required="true" style="width:96%" />
														<h:outputText
															value=" #{mandatoryObjectBookingRequestByProjectController.mandatoryCurrency.isoCode}" />
													</f:facet>
												</p:cellEditor>
											</p:column>


											<p:column sortBy="#{mandatoryObjectBooking.discount}"
												visible="true">

												<f:facet name="header">
													<h:outputText value="Rabatt" />
												</f:facet>

												<p:cellEditor rendered="#{mandatoryObjectBooking.type == 'ITEM' or mandatoryObjectBooking.type == 'TEMP_PRODUCT'}">
													<f:facet name="output">
														<h:outputText value="#{mandatoryObjectBooking.discount}">
															<f:convertNumber />
														</h:outputText>
														<h:outputText value=" %" />
													</f:facet>
													<f:facet name="input">
														<p:inputNumber value="#{mandatoryObjectBooking.discount}"
															minValue="0" decimalPlaces="2" symbol=" %"
															symbolPosition="s" required="true" style="width:96%" />
													</f:facet>
												</p:cellEditor>
											</p:column>

											<p:column sortBy="#{mandatoryObjectBooking.discount}"
												visible="true">

												<f:facet name="header">
													<h:outputText value="Faktor" />
												</f:facet>

												<p:cellEditor rendered="#{mandatoryObjectBooking.type == 'ITEM' or mandatoryObjectBooking.type == 'TEMP_PRODUCT'}">
													<f:facet name="output">
														<h:outputText value="#{mandatoryObjectBooking.factor}">
															<f:convertNumber />
														</h:outputText>
													</f:facet>
													<f:facet name="input">
														<p:inputNumber value="#{mandatoryObjectBooking.factor}"
															required="true" style="width:96%" />
													</f:facet>
												</p:cellEditor>
											</p:column>


											<p:column sortBy="#{mandatoryObjectBooking.startDate}"
												visible="false">
												<f:facet name="header">
													<h:outputText value="Startdatum" />
												</f:facet>
												<h:outputText value="#{mandatoryObjectBooking.startDate}">
													<f:convertDateTime type="date"
														pattern="#{loginBean.currentUser.dateFormat}" />
												</h:outputText>
												<h:outputText value=" um "
													rstartered="#{mandatoryObjectBooking.startDate != null}" />
												<h:outputText value="#{mandatoryObjectBooking.startDate}">
													<f:convertDateTime type="date"
														pattern="#{loginBean.currentUser.timeFormat}" />
												</h:outputText>
												<h:outputText value=" Uhr"
													rstartered="#{mandatoryObjectBooking.startDate != null}" />
											</p:column>


											<p:column sortBy="#{mandatoryObjectBooking.endDate}"
												visible="false">
												<f:facet name="header">
													<h:outputText value="Enddatum" />
												</f:facet>
												<h:outputText value="#{mandatoryObjectBooking.endDate}">
													<f:convertDateTime type="date"
														pattern="#{loginBean.currentUser.dateFormat}" />
												</h:outputText>
												<h:outputText value=" um "
													rendered="#{mandatoryObjectBooking.endDate != null}" />
												<h:outputText value="#{mandatoryObjectBooking.endDate}">
													<f:convertDateTime type="date"
														pattern="#{loginBean.currentUser.timeFormat}" />
												</h:outputText>
												<h:outputText value=" Uhr"
													rendered="#{mandatoryObjectBooking.endDate != null}" />
											</p:column>


											<p:column sortBy="#{mandatoryObjectBooking.createDate}"
												visible="false">
												<f:facet name="header">
													<h:outputText value="Erstellungsdatum" />
												</f:facet>
												<h:outputText value="#{mandatoryObjectBooking.createDate}">
													<f:convertDateTime type="date"
														pattern="#{loginBean.currentUser.dateFormat}" />
												</h:outputText>
												<h:outputText value=" um "
													rendered="#{mandatoryObjectBooking.createDate != null}" />
												<h:outputText value="#{mandatoryObjectBooking.createDate}">
													<f:convertDateTime type="date"
														pattern="#{loginBean.currentUser.timeFormat}" />
												</h:outputText>
												<h:outputText value=" Uhr"
													rendered="#{mandatoryObjectBooking.createDate != null}" />
											</p:column>


									

																		

									<p:column style="width: 15px;" visible="true">

												<div align="center">
													<p:commandButton id="deleteButton" icon="fa fa-trash"
														style="padding-left:5px; padding-right:5px"
														update=":growl, :projectTab:mandatoryObjectBookingListForm:mandatoryObjectBookingListDatatable"
														styleClass="RedButton" title="Löschen"
														actionListener="#{mandatoryObjectBookingRequestByProjectController.doDeleteMandatoryObjectBooking(mandatoryObjectBooking)}"
														ajax="true">
													</p:commandButton>
													<p:tooltip for="deleteButton" position="top"
														value="Löschen" />
												</div>
											</p:column>


										</p:dataTable>
PF 8.0

vished
Posts: 479
Joined: 02 Feb 2014, 17:38

21 Feb 2019, 12:29

Just one more hint: i was trying to use PF 7.0 RC3
PF 8.0

Post Reply

Return to “PrimeFaces”

  • Information
  • Who is online

    Users browsing this forum: No registered users and 29 guests