Locale

Change the locale of the datepicker, schedule and client side validation messages.

Language
English
English
English
French
German
German
German
Italian
Korean
Spanish
Catalan
Dutch
Portuguese
Portuguese
Arabic
Arabic
Bulgarian
Czech
Greek
Persian
Finnish
Danish
Hindi
Indonesian
Croatian
Japanese
Hungarian
Hebrew
Georgian
Central Kurdish
Khmer
Kyrgyz
Kazakh
Lithuanian
Latvian
Malay
Norwegian
Polish
Romanian
Russian
Slovak
Slovenian
Serbian
Serbian
Swedish
Thai
Turkish
Ukrainian
Vietnamese
Chinese
Chinese

Input Style

Themes

PrimeOne
Saga Saga
Vela Vela
Arya Arya
Bootstrap
bootstrap4-blue-light Bootstrap Blue
bootstrap4-purple-light Bootstrap Purple
bootstrap4-blue-dark Bootstrap Blue
bootstrap4-purple-dark Bootstrap Purple
Material Design
material-indigo-light Indigo
material-deeppurple-light' Deep Purple
material-indigo-dark Indigo
material-deeppurple-dark' Deep Purple
Material Design Compact
material-indigo-light Indigo
material-deeppurple-light' Deep Purple
material-indigo-dark Indigo
material-deeppurple-dark' Deep Purple

DataTable Scroll

Both vertical and horizontal scrolling of the data is supported with optional frozen rows-columns and on-demand loading features.

Vertical
NameCountryRepresentativeStatus
Nicolas D OldroydBrazilStephen Shaw NEW
Cody C FerenczFranceStephen Shaw UNQUALIFIED
Aditya U ChuiItalyIvan Magalhaes QUALIFIED
Octavia O BowleySpainIvan Magalhaes RENEWAL
Aruna L InouyeGermanyOnyama Limba NEGOTIATION
Misaki F AlbaresAustraliaOnyama Limba NEGOTIATION
Jennifer H InouyeIndiaElwin Sharvill QUALIFIED
Chavez N GlickCanadaAmy Elsner UNQUALIFIED
Isabel T FollerIndiaBernardo Dominic PROPOSAL
Darci B TollnerFranceIoni Bowcher NEW
Claire I AmigonArgentinaAnna Fali PROPOSAL
Jeanfrancois G SlusarskiAustraliaAnna Fali QUALIFIED
Stacey T ShinkoRussiaIvan Magalhaes NEGOTIATION
Johnson L GauchoSpainOnyama Limba QUALIFIED
Izzy T RoysterArgentinaIoni Bowcher PROPOSAL
Ricardo D GillianCanadaIoni Bowcher RENEWAL
Johnson Q PoquetteBrazilAsiya Javayant NEGOTIATION
Francesco D NestleArgentinaAnna Fali QUALIFIED
Antonio Z FollerGermanyBernardo Dominic PROPOSAL
Rodrigues B GauchoAustraliaXuxue Feng NEW
Octavia N AmigonGermanyStephen Shaw NEGOTIATION
Jeanfrancois Z GlickRussiaIvan Magalhaes NEW
Octavia O DarakjyItalyOnyama Limba NEW
Morrow E SaylorsCanadaAmy Elsner QUALIFIED
Julie L MaletIndiaIvan Magalhaes UNQUALIFIED
Nicolas V StockhamRussiaElwin Sharvill NEGOTIATION
Leja E FollerRussiaAsiya Javayant RENEWAL
Antonio S SaylorsGermanyStephen Shaw NEGOTIATION
Ivar H AmigonAustraliaXuxue Feng NEW
Juan M RutaItalyOnyama Limba QUALIFIED
Stacey E RimArgentinaElwin Sharvill QUALIFIED
Johnson N DarakjyItalyIoni Bowcher PROPOSAL
Costa O AmigonFranceAnna Fali NEGOTIATION
Maria E MorascaAustraliaAmy Elsner QUALIFIED
Francesco E KuskoRussiaStephen Shaw RENEWAL
Greenwood F DoeSpainElwin Sharvill UNQUALIFIED
Silvio U GauchoAustraliaXuxue Feng UNQUALIFIED
Greenwood S WhobreyCanadaIvan Magalhaes PROPOSAL
Wickens J OstroskyCanadaAnna Fali UNQUALIFIED
Tony L BologniaGermanyAmy Elsner QUALIFIED
James H MaletJapanAnna Fali NEW
Tony J StockhamIndiaAsiya Javayant UNQUALIFIED
Smith I MarrierRussiaAnna Fali UNQUALIFIED
Antonio D GlickAustraliaAsiya Javayant PROPOSAL
Faith P BowleyIndiaIvan Magalhaes PROPOSAL
Chavez J SergiRussiaIoni Bowcher NEGOTIATION
Morrow X OstroskyArgentinaAmy Elsner UNQUALIFIED
Wickens V OldroydUnited KingdomIoni Bowcher NEGOTIATION
Ivar Q DoeIndiaOnyama Limba UNQUALIFIED
Claire Z CaldareraJapanXuxue Feng RENEWAL
Horizontal
NameCountryRepresentativeStatus
Silvio F RimGermanyAmy Elsner UNQUALIFIED
Clifford H GlickArgentinaIoni Bowcher PROPOSAL
Francesco M InouyeJapanIoni Bowcher PROPOSAL
Cody S RimAustraliaIvan Magalhaes PROPOSAL
Leja D OldroydIndiaIoni Bowcher NEGOTIATION
Rodrigues C KolmetzBrazilAmy Elsner NEGOTIATION
James D NestleBrazilAmy Elsner PROPOSAL
Chavez I NickaItalyXuxue Feng QUALIFIED
Silvio O OstroskyIndiaAsiya Javayant UNQUALIFIED
Mujtaba L MacleadAustraliaBernardo Dominic PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Murillo E RulapaughArgentina2024-06-08King, Christopher A Esq UNQUALIFIED18Onyama Limba
1001Isabel H ButtUnited Kingdom2024-06-08Chemel, James L Cpa RENEWAL31Amy Elsner
1002Munro T GarufiFrance2024-05-25Morlong Associates PROPOSAL31Ioni Bowcher
1003David T ButtAustralia2024-06-07King, Christopher A Esq UNQUALIFIED12Anna Fali
1004Morrow T RutaIndia2024-05-30Feltz Printing Service NEGOTIATION85Ioni Bowcher
1005Misaki I PaprockiJapan2024-06-06Morlong Associates PROPOSAL20Xuxue Feng
1006Leon M SchemmerUnited Kingdom2024-06-07Chemel, James L Cpa RENEWAL69Elwin Sharvill
1007Jeanfrancois G StensethArgentina2024-06-05Printing Dimensions QUALIFIED30Asiya Javayant
1008Francesco S RulapaughRussia2024-05-25Rangoni Of Florence NEW50Anna Fali
1009Smith H PerinUnited Kingdom2024-06-13Chemel, James L Cpa RENEWAL73Onyama Limba
1010Julie W SergiUnited Kingdom2024-06-12Benton, John B Jr NEGOTIATION65Xuxue Feng
1011Wickens Q NestleBrazil2024-06-13Buckley Miller Wright QUALIFIED68Stephen Shaw
1012Jennifer Q NickaSpain2024-06-13Feltz Printing Service UNQUALIFIED91Onyama Limba
1013James G TollnerAustralia2024-05-28Morlong Associates PROPOSAL55Elwin Sharvill
1014Julie R MorascaArgentina2024-06-02Printing Dimensions NEGOTIATION81Amy Elsner
1015Leon C SchemmerUnited Kingdom2024-06-09Printing Dimensions UNQUALIFIED52Amy Elsner
1016Munro I DilliardJapan2024-06-06Printing Dimensions PROPOSAL64Elwin Sharvill
1017Costa A SchemmerRussia2024-05-26King, Christopher A Esq QUALIFIED75Elwin Sharvill
1018Juan F CaudyGermany2024-06-16Benton, John B Jr QUALIFIED91Bernardo Dominic
1019Faith T ShinkoJapan2024-06-15King, Christopher A Esq NEW32Stephen Shaw
1020Emily O InouyeSpain2024-06-16King, Christopher A Esq NEW33Elwin Sharvill
1021Octavia D MarrierItaly2024-06-03Morlong Associates NEW95Bernardo Dominic
1022Greenwood H CampainFrance2024-06-08Buckley Miller Wright RENEWAL39Ivan Magalhaes
1023Ashley Q SergiJapan2024-06-11Morlong Associates RENEWAL57Amy Elsner
1024Izzy E StensethGermany2024-06-04Rousseaux, Michael Esq PROPOSAL73Xuxue Feng
1025Wickens A AmigonItaly2024-05-27Rangoni Of Florence QUALIFIED55Xuxue Feng
1026Sinclair M WieserCanada2024-05-25Dorl, James J Esq NEW75Ivan Magalhaes
1027Murillo V SergiAustralia2024-06-17Feiner Bros NEGOTIATION91Elwin Sharvill
1028Misaki L WhobreySpain2024-06-01Buckley Miller Wright RENEWAL30Onyama Limba
1029Jeanfrancois H FigeroaIndia2024-06-14Chanay, Jeffrey A Esq UNQUALIFIED88Elwin Sharvill
1030Jones X PerinGermany2024-06-14Buckley Miller Wright PROPOSAL97Asiya Javayant
1031Claire T GlickFrance2024-06-08Dorl, James J Esq QUALIFIED80Anna Fali
1032Greenwood I WaycottFrance2024-05-26Rousseaux, Michael Esq NEW94Bernardo Dominic
1033Alejandro Q MorascaSpain2024-06-11Chanay, Jeffrey A Esq NEW19Ivan Magalhaes
1034Morrow A AmigonBrazil2024-06-16Buckley Miller Wright PROPOSAL25Stephen Shaw
1035Adams S SaylorsArgentina2024-05-26Truhlar And Truhlar Attys NEGOTIATION40Elwin Sharvill
1036Maria B NickaArgentina2024-06-07Dorl, James J Esq NEGOTIATION94Xuxue Feng
1037Cody M VenereSpain2024-06-07Benton, John B Jr RENEWAL86Stephen Shaw
1038Johnson Q NickaAustralia2024-05-31Buckley Miller Wright RENEWAL93Amy Elsner
1039Antonio X RulapaughIndia2024-05-19Rousseaux, Michael Esq UNQUALIFIED77Bernardo Dominic
1040Costa N ShinkoFrance2024-05-27Buckley Miller Wright QUALIFIED55Xuxue Feng
1041Costa Y PaprockiIndia2024-05-19Feltz Printing Service RENEWAL37Bernardo Dominic
1042Mujtaba V CaldareraIndia2024-05-26Rousseaux, Michael Esq QUALIFIED14Bernardo Dominic
1043Octavia K SlusarskiAustralia2024-06-03Printing Dimensions UNQUALIFIED20Asiya Javayant
1044Rodrigues O SergiGermany2024-06-09Truhlar And Truhlar Attys UNQUALIFIED57Anna Fali
1045Cody W RimJapan2024-06-01Dorl, James J Esq PROPOSAL60Onyama Limba
1046Mayumi F WaycottSpain2024-06-07Morlong Associates RENEWAL10Xuxue Feng
1047Greenwood D TollnerSpain2024-06-04Commercial Press RENEWAL45Elwin Sharvill
1048Chavez R BologniaAustralia2024-06-06Commercial Press QUALIFIED73Elwin Sharvill
1049Jennifer O RutaItaly2024-06-08Rousseaux, Michael Esq QUALIFIED36Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Juan P SaylorsGermanyElwin Sharvill UNQUALIFIED
Maria N VocelkaJapanAmy Elsner RENEWAL
Morrow L NestleSpainElwin Sharvill NEGOTIATION
Aika U WieserUnited KingdomStephen Shaw NEW
David W MaletAustraliaOnyama Limba PROPOSAL
Sinclair M WieserBrazilAnna Fali RENEWAL
Rodrigues C AmigonSpainAsiya Javayant RENEWAL
Johnson W CaldareraRussiaElwin Sharvill NEW
Jennifer W PerinCanadaAnna Fali UNQUALIFIED
Greenwood L GauchoBrazilOnyama Limba RENEWAL
Smith T GauchoIndiaElwin Sharvill NEW
Aika U CaudyFranceXuxue Feng QUALIFIED
Mujtaba K FlosiGermanyXuxue Feng NEW
Aruna X WieserArgentinaElwin Sharvill QUALIFIED
Rodrigues B RutaFranceXuxue Feng NEW
Munro J ChuiSpainXuxue Feng UNQUALIFIED
Johnson D OstroskyIndiaAsiya Javayant UNQUALIFIED
Johnson Z SergiUnited KingdomBernardo Dominic PROPOSAL
Salvatore D DilliardArgentinaXuxue Feng UNQUALIFIED
Deepesh J GauchoArgentinaAsiya Javayant QUALIFIED
Adams W CampainAustraliaAnna Fali UNQUALIFIED
Leon H RulapaughSpainIvan Magalhaes PROPOSAL
Costa S FerenczItalyOnyama Limba QUALIFIED
Izzy P MacleadJapanElwin Sharvill NEW
Faith S RoysterUnited KingdomAnna Fali QUALIFIED
Maria R DilliardArgentinaAmy Elsner RENEWAL
Mayumi Y StensethAustraliaStephen Shaw PROPOSAL
Izzy H RutaGermanyStephen Shaw NEGOTIATION
Jeanfrancois Y CaldareraIndiaAsiya Javayant PROPOSAL
Chavez K BowleyGermanyBernardo Dominic NEW
Clifford F ChuiGermanyElwin Sharvill UNQUALIFIED
Deepesh X DilliardIndiaXuxue Feng QUALIFIED
Misaki O BriddickGermanyBernardo Dominic RENEWAL
Cody X BowleyAustraliaBernardo Dominic NEW
Deepesh E NickaBrazilIoni Bowcher PROPOSAL
Juan P ShinkoBrazilAnna Fali NEGOTIATION
Morrow D WhobreyBrazilAsiya Javayant UNQUALIFIED
Francesco G FlosiIndiaElwin Sharvill PROPOSAL
David J RimSpainAnna Fali NEW
Izzy J MaletIndiaIoni Bowcher UNQUALIFIED
Jeanfrancois Y DilliardCanadaOnyama Limba NEGOTIATION
Sinclair B InouyeRussiaIvan Magalhaes UNQUALIFIED
Johnson P SlusarskiAustraliaElwin Sharvill UNQUALIFIED
Isabel B OstroskyUnited KingdomOnyama Limba QUALIFIED
Cody O TollnerAustraliaIoni Bowcher QUALIFIED
Mujtaba D FerenczFranceElwin Sharvill NEW
Aruna B GillianIndiaAsiya Javayant PROPOSAL
Aditya J DoeSpainAsiya Javayant NEW
Jeanfrancois E BowleyItalyAsiya Javayant QUALIFIED
Maisha H PoquetteUnited KingdomOnyama Limba NEW
Frozen Columns
Name
Stacey T Gaucho
Emily B Darakjy
Faith K Shinko
Costa B Paprocki
Nicolas Q Saylors
Arvin Y Albares
Salvatore S Dilliard
Murillo F Venere
Darci H Schemmer
Rodrigues Z Darakjy
Mujtaba W Foller
Tony J Gaucho
Tony S Oldroyd
Johnson L Whobrey
Leja L Vocelka
Mujtaba V Nestle
Greenwood W Ferencz
Rodrigues M Bowley
David O Venere
Kaitlin M Whobrey
Costa E Dilliard
Kaitlin Y Nicka
Greenwood V Caudy
Stacey M Gaucho
Morrow A Sergi
Juan J Perin
Munro A Chui
Morrow Q Amigon
Leon F Campain
Munro J Nestle
Octavia R Marrier
Leon V Ostrosky
Claire N Schemmer
Adams G Schemmer
Alejandro Q Perin
Tony U Maclead
Deepesh Y Bowley
Kadeem L Rulapaugh
Claire I Nicka
Antonio M Whobrey
Maisha S Whobrey
Clifford K Amigon
Stacey L Nicka
Jeanfrancois Q Ruta
Deepesh T Oldroyd
Darci M Stockham
Jennifer W Kolmetz
Munro R Oldroyd
Adams K Whobrey
Kaitlin Z Whobrey
IdCountryDate
1000Spain2024-05-31
1001India2024-06-17
1002Germany2024-06-02
1003Italy2024-06-10
1004Argentina2024-06-10
1005Brazil2024-06-14
1006Japan2024-06-15
1007Spain2024-05-28
1008Brazil2024-06-01
1009Australia2024-05-28
1010Argentina2024-06-16
1011United Kingdom2024-05-21
1012Argentina2024-05-24
1013Australia2024-06-10
1014Germany2024-05-28
1015Argentina2024-06-11
1016Russia2024-06-06
1017Argentina2024-06-15
1018Italy2024-05-31
1019Germany2024-06-11
1020France2024-06-04
1021France2024-05-26
1022Brazil2024-06-09
1023Italy2024-05-24
1024Canada2024-06-11
1025Russia2024-05-29
1026Japan2024-06-08
1027Japan2024-06-04
1028Germany2024-05-25
1029India2024-06-03
1030Italy2024-05-19
1031United Kingdom2024-05-31
1032United Kingdom2024-06-17
1033Japan2024-05-29
1034Spain2024-05-24
1035Brazil2024-06-10
1036United Kingdom2024-06-13
1037United Kingdom2024-06-09
1038United Kingdom2024-06-08
1039Argentina2024-06-01
1040Spain2024-06-10
1041France2024-06-11
1042Brazil2024-06-13
1043Spain2024-05-26
1044France2024-06-02
1045Canada2024-06-05
1046United Kingdom2024-06-04
1047Japan2024-06-05
1048United Kingdom2024-05-21
1049Japan2024-06-11

On-Demand Data

NameIdCountryDate
Deepesh W Chui1000Italy2024-05-25
Kadeem B Darakjy1001India2024-06-01
Francesco O Chui1002India2024-05-26
Aruna H Vocelka1003Canada2024-06-10
Aika G Shinko1004Brazil2024-05-23
Arvin M Venere1005Russia2024-06-09
Smith C Dilliard1006Germany2024-06-14
Jefferson L Perin1007Australia2024-05-24
Octavia D Foller1008United Kingdom2024-06-16
Antonio K Ruta1009Brazil2024-06-13
Chavez M Nestle1010Germany2024-05-23
Ashley O Royster1011Japan2024-06-03
Claire S Morasca1012France2024-06-02
David U Gaucho1013Spain2024-06-15
Arvin I Slusarski1014Italy2024-05-27
Darci R Rim1015Argentina2024-06-05
Julie L Paprocki1016Brazil2024-06-17
Emily H Butt1017Brazil2024-05-24
Jeanfrancois R Perin1018India2024-06-05
Izzy D Amigon1019Italy2024-05-25
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Sinclair I MorascaJapanBernardo Dominic NEGOTIATION
Wickens X MacleadRussiaAnna Fali UNQUALIFIED
Misaki T ButtRussiaAsiya Javayant PROPOSAL
Juan G BologniaAustraliaIvan Magalhaes PROPOSAL
Stacey H MaletFranceAmy Elsner QUALIFIED
Ivar Y VocelkaRussiaIvan Magalhaes NEGOTIATION
Salvatore B ShinkoItalyElwin Sharvill RENEWAL
Aditya Z PoquetteBrazilBernardo Dominic PROPOSAL
Aika Q RulapaughItalyBernardo Dominic NEW
Wickens J FigeroaFranceStephen Shaw PROPOSAL
David R VocelkaRussiaXuxue Feng QUALIFIED
Julie O StensethGermanyStephen Shaw UNQUALIFIED
Wickens K BologniaCanadaStephen Shaw RENEWAL
Francesco P DarakjyFranceOnyama Limba RENEWAL
Wickens Y ButtBrazilAmy Elsner NEGOTIATION
Cody B PerinUnited KingdomStephen Shaw QUALIFIED
Greenwood C CampainArgentinaIvan Magalhaes RENEWAL
Claire P SchemmerItalyAmy Elsner NEGOTIATION
Aditya F OldroydFranceBernardo Dominic RENEWAL
Kaitlin T AlbaresArgentinaBernardo Dominic PROPOSAL
Aika A MaletIndiaElwin Sharvill RENEWAL
Leon N ChuiCanadaXuxue Feng RENEWAL
Izzy X DoeCanadaAsiya Javayant PROPOSAL
Greenwood A CaudyFranceAsiya Javayant QUALIFIED
Arvin Z StensethUnited KingdomAsiya Javayant NEGOTIATION
Salvatore G StockhamRussiaElwin Sharvill NEGOTIATION
Ivar P FigeroaGermanyOnyama Limba RENEWAL
Clifford H ChuiRussiaStephen Shaw QUALIFIED
Chavez B BowleyItalyOnyama Limba NEGOTIATION
Juan H BriddickJapanXuxue Feng PROPOSAL
Nicolas K ButtUnited KingdomBernardo Dominic RENEWAL
Kaitlin A RoysterJapanBernardo Dominic UNQUALIFIED
Tony R InouyeRussiaAmy Elsner NEW
Mujtaba F SchemmerSpainAsiya Javayant UNQUALIFIED
Octavia U RulapaughAustraliaAsiya Javayant QUALIFIED
Nicolas D StensethGermanyStephen Shaw NEW
Leja V ChuiAustraliaOnyama Limba UNQUALIFIED
Juan C BriddickFranceStephen Shaw NEW
Alejandro L BriddickJapanAmy Elsner NEW
Salvatore F MorascaIndiaIoni Bowcher UNQUALIFIED

<style>
    .ui-datatable-frozenlayout-left {
        width: 20%;
    }

    .ui-datatable-frozenlayout-right {
        width: 80%;
    }
</style>


<h:form>
    <div class="card">
        <h5 style="margin-top:0">Vertical</h5>
        <p:dataTable var="customer" value="#{dtScrollView.customers1}" scrollable="true" scrollHeight="250">
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Representative" footerText="Representative">
                <h:outputText value="#{customer.representative.name}"/>
            </p:column>
            <p:column headerText="Status" footerText="Status">
                <span class="customer-badge status-#{customer.status.name().toLowerCase()}">#{customer.status}</span>
            </p:column>
        </p:dataTable>
    </div>

    <div class="card">
        <h5>Horizontal</h5>
        <p:dataTable var="customer" value="#{dtScrollView.customers2}" scrollable="true" scrollWidth="600">
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Representative" footerText="Representative">
                <h:outputText value="#{customer.representative.name}"/>
            </p:column>
            <p:column headerText="Status" footerText="Status">
                <span class="customer-badge status-#{customer.status.name().toLowerCase()}">#{customer.status}</span>
            </p:column>
        </p:dataTable>
    </div>

    <div class="card">
        <h5>Horizontal and Vertical</h5>
        <p:dataTable var="customer" value="#{dtScrollView.customers3}" scrollable="true" scrollWidth="50%" scrollHeight="250">
            <p:column headerText="Id" footerText="Id">
                <h:outputText value="#{customer.id}"/>
            </p:column>
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Date" footerText="Date">
                <h:outputText value="#{customer.date}"/>
            </p:column>
            <p:column headerText="Company" footerText="Company">
                <h:outputText value="#{customer.company}"/>
            </p:column>
            <p:column headerText="Status" footerText="Status">
                <span class="customer-badge status-#{customer.status.name().toLowerCase()}">#{customer.status}</span>
            </p:column>
            <p:column headerText="Activity" footerText="Activity">
                <h:outputText value="#{customer.activity}"/>
            </p:column>
            <p:column headerText="Representative" footerText="Representative">
                <h:outputText value="#{customer.representative.name}"/>
            </p:column>
        </p:dataTable>
    </div>

    <div class="card">
        <h5>Frozen Rows</h5>
        <p:dataTable var="customer" value="#{dtScrollView.customers4}" scrollable="true" scrollHeight="250"
                     frozenRows="2">
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Representative" footerText="Representative">
                <h:outputText value="#{customer.representative.name}"/>
            </p:column>
            <p:column headerText="Status" footerText="Status">
                <span class="customer-badge status-#{customer.status.name().toLowerCase()}">#{customer.status}</span>
            </p:column>
        </p:dataTable>
    </div>

    <div class="card">
        <h5>Frozen Columns</h5>
        <p:dataTable var="customer" value="#{dtScrollView.customers5}" scrollable="true" scrollHeight="250"
                     scrollWidth="300" frozenColumns="1">
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Id" footerText="Id">
                <h:outputText value="#{customer.id}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Date" footerText="Date">
                <h:outputText value="#{customer.date}"/>
            </p:column>
        </p:dataTable>
    </div>

    <div class="card">
        <h3>On-Demand Data</h3>
        <p:dataTable var="customer" value="#{dtScrollView.customers6}" scrollRows="20" scrollable="true" liveScroll="true" scrollHeight="150">
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Id" footerText="Id">
                <h:outputText value="#{customer.id}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Date" footerText="Date">
                <h:outputText value="#{customer.date}"/>
            </p:column>
        </p:dataTable>
    </div>

    <div class="card">
        <h5>Virtual Scrolling - 20000 Rows</h5>
        <p:dataTable var="customer" value="#{dtScrollView.lazyModel}" scrollRows="20" scrollable="true"
                     virtualScroll="true" scrollHeight="200" rows="40" style="margin-bottom:0">
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Representative" footerText="Representative">
                <h:outputText value="#{customer.representative.name}"/>
            </p:column>
            <p:column headerText="Status" footerText="Status">
                <span class="customer-badge status-#{customer.status.name().toLowerCase()}">#{customer.status}</span>
            </p:column>
        </p:dataTable>
    </div>

</h:form>