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
Rodrigues I MarrierRussiaBernardo Dominic NEW
Jones G GauchoRussiaAnna Fali NEGOTIATION
Faith Y WhobreyGermanyAsiya Javayant UNQUALIFIED
Maisha C ButtSpainXuxue Feng UNQUALIFIED
Ashley E RoysterIndiaAsiya Javayant NEGOTIATION
Greenwood T AmigonRussiaBernardo Dominic NEW
Tony Y DilliardAustraliaAsiya Javayant UNQUALIFIED
Misaki W VenereRussiaStephen Shaw NEGOTIATION
Izzy N BriddickUnited KingdomAmy Elsner PROPOSAL
Munro T StockhamArgentinaOnyama Limba NEGOTIATION
Claire G PoquetteSpainAsiya Javayant UNQUALIFIED
Cody S GlickItalyAnna Fali NEGOTIATION
Misaki U BowleyUnited KingdomElwin Sharvill PROPOSAL
Juan E ShinkoAustraliaXuxue Feng PROPOSAL
Arvin S FlosiArgentinaIoni Bowcher NEW
Deepesh A RimRussiaBernardo Dominic NEW
Chavez A IturbideRussiaIvan Magalhaes UNQUALIFIED
Leja D AlbaresArgentinaIoni Bowcher QUALIFIED
Rodrigues P SergiAustraliaIvan Magalhaes NEGOTIATION
Tony H WaycottGermanyAmy Elsner NEGOTIATION
Antonio O SlusarskiGermanyAmy Elsner NEGOTIATION
Smith H DilliardArgentinaStephen Shaw PROPOSAL
Ashley S CaudyIndiaAnna Fali NEGOTIATION
Leon M CaudyGermanyXuxue Feng QUALIFIED
Jefferson R MaletIndiaIoni Bowcher NEW
Sinclair M RimJapanOnyama Limba RENEWAL
Misaki O WieserItalyAmy Elsner NEW
Alejandro J CampainIndiaXuxue Feng QUALIFIED
Misaki T RoysterItalyBernardo Dominic NEW
Ricardo P InouyeItalyOnyama Limba QUALIFIED
Arvin T MacleadCanadaBernardo Dominic NEGOTIATION
Emily X RutaUnited KingdomAmy Elsner NEGOTIATION
Salvatore N DilliardGermanyOnyama Limba PROPOSAL
Sinclair I VenereCanadaAmy Elsner PROPOSAL
Mujtaba Q FerenczRussiaIvan Magalhaes NEW
Aika C MaletAustraliaIoni Bowcher RENEWAL
Alejandro C OstroskyItalyIoni Bowcher RENEWAL
Ashley G TollnerJapanOnyama Limba NEW
Arvin A FollerBrazilElwin Sharvill QUALIFIED
Ricardo I InouyeIndiaAnna Fali UNQUALIFIED
Juan Z RulapaughAustraliaAnna Fali NEGOTIATION
Jeanfrancois L SaylorsIndiaAnna Fali RENEWAL
Adams N RoysterFranceOnyama Limba QUALIFIED
Maisha I SlusarskiSpainBernardo Dominic PROPOSAL
Ivar U FollerSpainAsiya Javayant RENEWAL
Juan G SaylorsJapanIvan Magalhaes NEGOTIATION
Munro C GarufiUnited KingdomStephen Shaw NEW
Ashley U StockhamJapanIvan Magalhaes UNQUALIFIED
Salvatore U ButtBrazilAsiya Javayant PROPOSAL
Murillo N SergiFranceAnna Fali UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Ashley C FerenczUnited KingdomOnyama Limba NEW
Kaitlin A PaprockiItalyXuxue Feng NEGOTIATION
Aditya W RulapaughSpainXuxue Feng UNQUALIFIED
Arvin P CaldareraGermanyStephen Shaw NEW
Antonio Y ShinkoJapanIvan Magalhaes NEGOTIATION
David M ShinkoRussiaAsiya Javayant PROPOSAL
Maria J DoeRussiaElwin Sharvill NEGOTIATION
Murillo S WieserAustraliaOnyama Limba NEGOTIATION
Adams D ChuiJapanXuxue Feng NEGOTIATION
Leon S MaletRussiaElwin Sharvill PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Adams G RimSpain2024-05-26Printing Dimensions RENEWAL81Ivan Magalhaes
1001Salvatore Z BowleyFrance2024-06-19Chanay, Jeffrey A Esq QUALIFIED41Onyama Limba
1002Aruna O BologniaItaly2024-06-14Rousseaux, Michael Esq RENEWAL47Elwin Sharvill
1003Maisha O NestleFrance2024-06-14Buckley Miller Wright NEGOTIATION61Stephen Shaw
1004Nicolas Y RimItaly2024-05-29Buckley Miller Wright RENEWAL34Onyama Limba
1005Clifford M GillianSpain2024-06-15Chemel, James L Cpa QUALIFIED6Bernardo Dominic
1006Wickens L CampainSpain2024-06-14Chanay, Jeffrey A Esq RENEWAL14Elwin Sharvill
1007Greenwood E ButtRussia2024-06-21Chanay, Jeffrey A Esq UNQUALIFIED41Xuxue Feng
1008Clifford U FollerCanada2024-06-21Morlong Associates UNQUALIFIED6Stephen Shaw
1009Costa S SchemmerItaly2024-05-28Feiner Bros UNQUALIFIED50Onyama Limba
1010Clifford J SchemmerGermany2024-05-24Feltz Printing Service PROPOSAL65Ivan Magalhaes
1011Misaki F AmigonAustralia2024-05-23Morlong Associates RENEWAL7Amy Elsner
1012Cody L ChuiCanada2024-05-28Chapman, Ross E Esq UNQUALIFIED26Onyama Limba
1013Clifford D GillianArgentina2024-06-14Commercial Press NEW45Elwin Sharvill
1014Darci E GillianCanada2024-05-31Morlong Associates NEW59Bernardo Dominic
1015Tony Y MaletBrazil2024-06-12Commercial Press PROPOSAL83Elwin Sharvill
1016Wickens S StensethBrazil2024-06-01Truhlar And Truhlar Attys RENEWAL13Asiya Javayant
1017Stacey G ChuiUnited Kingdom2024-05-25Morlong Associates NEGOTIATION72Anna Fali
1018Claire B OstroskyGermany2024-06-05Dorl, James J Esq NEGOTIATION91Ivan Magalhaes
1019Emily V ChuiAustralia2024-06-21Rangoni Of Florence RENEWAL73Elwin Sharvill
1020Nicolas L InouyeAustralia2024-06-09Feiner Bros NEW10Xuxue Feng
1021Rodrigues P NickaUnited Kingdom2024-05-30Chanay, Jeffrey A Esq RENEWAL6Asiya Javayant
1022Jeanfrancois S PoquetteItaly2024-05-28Commercial Press QUALIFIED19Xuxue Feng
1023Leja C RulapaughAustralia2024-05-30Feiner Bros UNQUALIFIED22Amy Elsner
1024Smith W KuskoAustralia2024-06-15Truhlar And Truhlar Attys QUALIFIED79Bernardo Dominic
1025Deepesh Q InouyeUnited Kingdom2024-06-03Chapman, Ross E Esq UNQUALIFIED7Ivan Magalhaes
1026Clifford Z AlbaresAustralia2024-05-31Dorl, James J Esq UNQUALIFIED50Xuxue Feng
1027Ricardo O MaletCanada2024-06-18Rangoni Of Florence NEW18Xuxue Feng
1028Jeanfrancois X TollnerBrazil2024-05-31Feltz Printing Service QUALIFIED39Bernardo Dominic
1029Julie D PaprockiItaly2024-06-19Dorl, James J Esq PROPOSAL8Asiya Javayant
1030Aruna U AmigonArgentina2024-05-25Truhlar And Truhlar Attys UNQUALIFIED94Amy Elsner
1031Sinclair C RimArgentina2024-06-14Dorl, James J Esq NEW76Onyama Limba
1032Antonio C NestleBrazil2024-06-01Benton, John B Jr PROPOSAL55Anna Fali
1033Faith D IturbideBrazil2024-05-30Chemel, James L Cpa PROPOSAL27Ivan Magalhaes
1034Francesco G MorascaAustralia2024-06-21Printing Dimensions NEW1Ivan Magalhaes
1035James H RoysterFrance2024-06-18Chanay, Jeffrey A Esq NEGOTIATION63Ivan Magalhaes
1036Cody D KuskoIndia2024-06-09Rousseaux, Michael Esq NEGOTIATION85Stephen Shaw
1037Rodrigues V RutaJapan2024-06-01Dorl, James J Esq NEW42Stephen Shaw
1038Mujtaba V InouyeIndia2024-06-10Dorl, James J Esq UNQUALIFIED40Asiya Javayant
1039Stacey L InouyeUnited Kingdom2024-05-30Truhlar And Truhlar Attys PROPOSAL66Ioni Bowcher
1040Aditya I GarufiIndia2024-06-09Buckley Miller Wright RENEWAL84Asiya Javayant
1041Jeanfrancois U CampainUnited Kingdom2024-05-28Rangoni Of Florence QUALIFIED43Elwin Sharvill
1042Ashley R FlosiCanada2024-06-21Feltz Printing Service NEGOTIATION50Elwin Sharvill
1043Adams D FigeroaAustralia2024-05-25King, Christopher A Esq QUALIFIED45Anna Fali
1044Chavez W FerenczAustralia2024-06-09Rousseaux, Michael Esq PROPOSAL58Anna Fali
1045Aruna M InouyeUnited Kingdom2024-05-26Printing Dimensions NEGOTIATION23Xuxue Feng
1046David F RutaAustralia2024-05-26Rousseaux, Michael Esq RENEWAL23Stephen Shaw
1047Kadeem V BologniaFrance2024-05-30Rousseaux, Michael Esq NEGOTIATION30Stephen Shaw
1048Ivar M SchemmerSpain2024-06-10Buckley Miller Wright PROPOSAL10Amy Elsner
1049Francesco J RimGermany2024-06-18Dorl, James J Esq PROPOSAL53Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Antonio P RutaBrazilIvan Magalhaes RENEWAL
Munro K GlickRussiaAsiya Javayant RENEWAL
Leon A ButtJapanXuxue Feng QUALIFIED
Claire E MarrierBrazilAmy Elsner QUALIFIED
Isabel P WaycottBrazilAmy Elsner PROPOSAL
Ashley P SchemmerAustraliaOnyama Limba QUALIFIED
Silvio D IturbideSpainStephen Shaw PROPOSAL
Aruna J CampainBrazilAnna Fali PROPOSAL
Izzy A OldroydBrazilAmy Elsner QUALIFIED
Arvin X GillianCanadaIvan Magalhaes QUALIFIED
Tony J ButtArgentinaAsiya Javayant RENEWAL
Greenwood O PoquetteJapanIvan Magalhaes PROPOSAL
Ashley M NickaItalyAsiya Javayant PROPOSAL
Costa U KolmetzSpainAmy Elsner QUALIFIED
Tony Y ButtSpainIoni Bowcher QUALIFIED
Maisha K MaletCanadaAsiya Javayant RENEWAL
Maria X TollnerArgentinaIoni Bowcher NEGOTIATION
Smith B GarufiUnited KingdomAsiya Javayant NEW
Izzy O WieserItalyXuxue Feng PROPOSAL
Salvatore U WieserJapanXuxue Feng NEW
Ivar Y BologniaItalyXuxue Feng QUALIFIED
Tony O CampainIndiaOnyama Limba NEGOTIATION
David H MorascaIndiaAmy Elsner NEW
Ashley C StockhamArgentinaIvan Magalhaes UNQUALIFIED
Deepesh K RutaJapanXuxue Feng NEGOTIATION
Silvio A RoysterSpainAmy Elsner PROPOSAL
Emily W FollerJapanBernardo Dominic NEGOTIATION
Claire B PaprockiUnited KingdomElwin Sharvill NEGOTIATION
Kadeem P WieserFranceAmy Elsner UNQUALIFIED
Chavez S RoysterUnited KingdomBernardo Dominic RENEWAL
Deepesh H GlickUnited KingdomIvan Magalhaes PROPOSAL
Costa A WhobreyBrazilAnna Fali PROPOSAL
Rodrigues N RutaSpainAmy Elsner QUALIFIED
Chavez C ShinkoFranceIoni Bowcher PROPOSAL
Johnson U KuskoJapanAmy Elsner UNQUALIFIED
Antonio X NickaSpainElwin Sharvill NEW
Morrow P StockhamAustraliaBernardo Dominic QUALIFIED
Clifford H KuskoUnited KingdomAmy Elsner NEW
Misaki L PaprockiCanadaAmy Elsner PROPOSAL
Kaitlin Q PoquetteBrazilBernardo Dominic UNQUALIFIED
Rodrigues C BologniaSpainAmy Elsner PROPOSAL
Darci S SaylorsBrazilAmy Elsner PROPOSAL
Claire U CaudyItalyElwin Sharvill NEW
Arvin L PaprockiItalyStephen Shaw QUALIFIED
Ricardo T RulapaughFranceAsiya Javayant NEGOTIATION
Leon T DarakjyRussiaAnna Fali NEW
Munro Q MorascaSpainAnna Fali PROPOSAL
Morrow J SchemmerItalyAsiya Javayant UNQUALIFIED
Aruna L DoeUnited KingdomAmy Elsner NEW
Sinclair G DilliardArgentinaOnyama Limba NEGOTIATION
Frozen Columns
Name
Silvio Z Waycott
Maria V Maclead
Murillo Y Caldarera
Stacey M Oldroyd
Rodrigues O Perin
Misaki M Wieser
Silvio N Paprocki
Maisha R Figeroa
Rodrigues D Darakjy
Mayumi R Doe
Deepesh H Perin
Jones W Vocelka
David Z Perin
Emily M Kusko
Greenwood H Briddick
Jennifer G Darakjy
Johnson Q Gaucho
Jeanfrancois C Maclead
Costa I Rim
Adams P Figeroa
Isabel O Glick
David W Whobrey
Cody X Foller
Johnson E Oldroyd
Stacey E Vocelka
Ashley Y Kolmetz
Maisha M Gillian
Munro S Flosi
Greenwood I Ostrosky
Claire I Caudy
Kaitlin R Venere
Sinclair Y Sergi
Leja W Morasca
Greenwood O Kusko
Salvatore Z Perin
Ashley U Sergi
Faith C Caudy
Wickens A Garufi
Silvio V Bowley
Alejandro P Venere
David A Ostrosky
Mayumi W Flosi
Wickens K Iturbide
Maria X Ruta
Leja L Flosi
Misaki B Maclead
Ivar H Glick
Octavia G Royster
David F Garufi
Deepesh S Slusarski
IdCountryDate
1000Japan2024-06-09
1001Germany2024-06-03
1002Canada2024-05-29
1003Argentina2024-05-31
1004United Kingdom2024-05-30
1005France2024-06-05
1006Japan2024-06-19
1007Argentina2024-06-10
1008Germany2024-05-29
1009Italy2024-06-04
1010Argentina2024-06-19
1011Italy2024-06-03
1012Japan2024-06-07
1013Italy2024-05-28
1014Australia2024-06-05
1015United Kingdom2024-06-09
1016Russia2024-06-01
1017Canada2024-06-12
1018India2024-06-09
1019Russia2024-06-05
1020Canada2024-06-11
1021Russia2024-05-25
1022Brazil2024-06-05
1023Australia2024-05-26
1024Russia2024-05-31
1025Japan2024-06-07
1026Australia2024-06-16
1027Germany2024-06-19
1028Italy2024-06-03
1029Russia2024-06-01
1030Italy2024-06-06
1031Russia2024-06-20
1032India2024-05-23
1033Spain2024-06-20
1034Russia2024-06-09
1035France2024-06-21
1036Brazil2024-06-11
1037Argentina2024-06-10
1038India2024-06-14
1039France2024-06-13
1040Canada2024-06-16
1041Australia2024-06-06
1042India2024-05-31
1043India2024-06-07
1044Italy2024-06-16
1045India2024-05-25
1046Italy2024-06-19
1047Argentina2024-06-07
1048Italy2024-06-19
1049Brazil2024-05-26

On-Demand Data

NameIdCountryDate
Kadeem T Chui1000Australia2024-06-09
Darci F Bolognia1001United Kingdom2024-06-16
Julie W Foller1002Italy2024-06-12
Smith P Campain1003United Kingdom2024-06-21
Silvio I Iturbide1004Italy2024-05-29
Misaki R Poquette1005Australia2024-06-09
Juan H Stenseth1006Russia2024-06-07
Leon T Stenseth1007Brazil2024-06-09
Aruna S Paprocki1008Germany2024-06-01
Silvio C Morasca1009Argentina2024-05-31
James U Ostrosky1010Argentina2024-06-10
Stacey X Rim1011Russia2024-05-31
Mujtaba N Garufi1012Russia2024-06-05
Ricardo X Albares1013Japan2024-06-17
Stacey B Bowley1014Italy2024-05-23
Mayumi I Rim1015Australia2024-06-03
Juan Q Poquette1016Spain2024-06-13
Maisha S Maclead1017Germany2024-06-21
Salvatore J Kolmetz1018Germany2024-06-20
Darci X Vocelka1019Germany2024-05-27
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ivar I ChuiFranceAmy Elsner QUALIFIED
Chavez L CaudyGermanyElwin Sharvill RENEWAL
Morrow X WhobreyAustraliaAnna Fali PROPOSAL
Isabel C BowleyFranceElwin Sharvill QUALIFIED
Deepesh V WieserSpainStephen Shaw NEGOTIATION
Wickens D KuskoFranceAsiya Javayant PROPOSAL
David P AmigonIndiaIvan Magalhaes UNQUALIFIED
Izzy S DarakjyIndiaAnna Fali NEW
Claire W RoysterJapanOnyama Limba NEGOTIATION
Tony D VocelkaRussiaAsiya Javayant PROPOSAL
Jefferson T GauchoUnited KingdomStephen Shaw RENEWAL
Mayumi S FerenczCanadaIoni Bowcher QUALIFIED
Jennifer U ChuiCanadaXuxue Feng RENEWAL
Mayumi N PerinIndiaXuxue Feng QUALIFIED
Alejandro N BowleyItalyIvan Magalhaes NEGOTIATION
Leon Q DarakjyItalyAmy Elsner QUALIFIED
Aditya L BriddickJapanStephen Shaw RENEWAL
Arvin M SergiBrazilIoni Bowcher RENEWAL
Murillo G RimSpainOnyama Limba NEGOTIATION
Costa L VocelkaArgentinaAnna Fali NEGOTIATION
Deepesh M CaldareraSpainBernardo Dominic RENEWAL
Cody U WaycottRussiaIoni Bowcher PROPOSAL
Mujtaba R MaletGermanyAnna Fali PROPOSAL
Johnson M FigeroaCanadaOnyama Limba RENEWAL
Nicolas R SaylorsBrazilBernardo Dominic QUALIFIED
Clifford I KolmetzIndiaAmy Elsner UNQUALIFIED
Adams J BriddickBrazilXuxue Feng NEW
Ashley L CaudyIndiaElwin Sharvill PROPOSAL
Mujtaba L InouyeAustraliaAmy Elsner UNQUALIFIED
Juan N FlosiJapanAmy Elsner QUALIFIED
Misaki Y CampainBrazilElwin Sharvill UNQUALIFIED
Alejandro V OstroskyItalyIoni Bowcher NEGOTIATION
Kaitlin K MaletCanadaElwin Sharvill RENEWAL
Francesco R AmigonCanadaBernardo Dominic UNQUALIFIED
Johnson G BriddickGermanyXuxue Feng QUALIFIED
Julie T DilliardGermanyAnna Fali RENEWAL
Salvatore R OstroskyJapanAmy Elsner NEGOTIATION
Nicolas B FlosiUnited KingdomAmy Elsner UNQUALIFIED
Leon Z KuskoIndiaBernardo Dominic QUALIFIED
Deepesh W SaylorsIndiaXuxue Feng RENEWAL

<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>