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
Deepesh P DarakjyJapanBernardo Dominic UNQUALIFIED
Smith J RoysterSpainXuxue Feng UNQUALIFIED
Kadeem L IturbideSpainIoni Bowcher NEGOTIATION
Claire E OstroskyFranceAmy Elsner NEW
Salvatore V BriddickSpainAsiya Javayant QUALIFIED
Mujtaba C OstroskyArgentinaOnyama Limba NEW
Greenwood E PerinGermanyAmy Elsner RENEWAL
Darci M KuskoFranceOnyama Limba NEGOTIATION
Jeanfrancois Z ButtIndiaOnyama Limba NEW
Johnson H RoysterJapanIoni Bowcher RENEWAL
Ashley I ChuiCanadaElwin Sharvill QUALIFIED
Aditya C WhobreyIndiaStephen Shaw NEW
Tony A WaycottArgentinaIoni Bowcher PROPOSAL
Costa A ChuiUnited KingdomAsiya Javayant NEGOTIATION
Izzy A TollnerSpainIoni Bowcher NEW
Claire Q InouyeJapanAnna Fali RENEWAL
Clifford E CaldareraCanadaStephen Shaw UNQUALIFIED
David Q VenereAustraliaAsiya Javayant NEGOTIATION
Johnson F FerenczAustraliaXuxue Feng PROPOSAL
Emily N FlosiGermanyBernardo Dominic UNQUALIFIED
Ricardo I TollnerItalyIoni Bowcher RENEWAL
Jefferson R BowleyJapanAsiya Javayant NEW
Wickens R CampainJapanOnyama Limba PROPOSAL
Ivar X SlusarskiCanadaOnyama Limba UNQUALIFIED
Emily G SergiGermanyBernardo Dominic RENEWAL
Maisha W FigeroaJapanXuxue Feng NEW
Maisha X MaletAustraliaElwin Sharvill PROPOSAL
Jennifer I NestleFranceIoni Bowcher NEGOTIATION
Kaitlin M SlusarskiUnited KingdomOnyama Limba NEGOTIATION
Jeanfrancois P DoeFranceXuxue Feng NEW
Arvin C SlusarskiCanadaIoni Bowcher NEW
David A FerenczRussiaElwin Sharvill RENEWAL
Mujtaba W PaprockiSpainBernardo Dominic NEGOTIATION
Stacey X SergiBrazilAsiya Javayant QUALIFIED
Silvio T GlickGermanyXuxue Feng NEW
Jeanfrancois O SergiCanadaXuxue Feng NEW
Cody N MacleadArgentinaAsiya Javayant UNQUALIFIED
Ivar V FerenczUnited KingdomStephen Shaw NEGOTIATION
Murillo O GillianFranceAsiya Javayant QUALIFIED
Deepesh H SaylorsSpainIoni Bowcher RENEWAL
Emily S GarufiSpainAnna Fali PROPOSAL
Chavez O MaletJapanBernardo Dominic QUALIFIED
Tony M FlosiItalyBernardo Dominic NEGOTIATION
Smith E MaletFranceAnna Fali UNQUALIFIED
Nicolas P WieserJapanElwin Sharvill RENEWAL
Johnson U PaprockiJapanBernardo Dominic UNQUALIFIED
Kadeem N GarufiBrazilAsiya Javayant UNQUALIFIED
Maria C KuskoUnited KingdomBernardo Dominic UNQUALIFIED
Julie V OldroydFranceIoni Bowcher QUALIFIED
Leja Y BriddickJapanAmy Elsner UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Izzy V WaycottUnited KingdomXuxue Feng QUALIFIED
Julie H GarufiUnited KingdomXuxue Feng NEGOTIATION
Alejandro W RulapaughFranceElwin Sharvill UNQUALIFIED
Juan I MarrierUnited KingdomIvan Magalhaes PROPOSAL
Kadeem R ChuiCanadaXuxue Feng PROPOSAL
Maisha S RutaCanadaIoni Bowcher NEW
Mujtaba O SlusarskiIndiaAmy Elsner RENEWAL
Deepesh A DoeSpainIvan Magalhaes PROPOSAL
Leja Z WieserItalyAmy Elsner PROPOSAL
Francesco Q NickaFranceAmy Elsner RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Claire X FlosiFrance2024-05-03Dorl, James J Esq PROPOSAL57Asiya Javayant
1001Jefferson G PerinArgentina2024-05-10King, Christopher A Esq NEGOTIATION37Bernardo Dominic
1002Chavez E AmigonFrance2024-05-16Commercial Press NEGOTIATION55Xuxue Feng
1003Aditya E BriddickGermany2024-04-30Buckley Miller Wright PROPOSAL54Bernardo Dominic
1004Alejandro L MarrierSpain2024-05-13Rousseaux, Michael Esq NEW37Elwin Sharvill
1005Jones G GarufiSpain2024-05-26Chapman, Ross E Esq PROPOSAL54Amy Elsner
1006Adams K PerinCanada2024-05-23Truhlar And Truhlar Attys NEGOTIATION7Anna Fali
1007Ashley B VocelkaIndia2024-05-18Morlong Associates QUALIFIED58Ioni Bowcher
1008Cody N VocelkaItaly2024-05-15Commercial Press QUALIFIED18Elwin Sharvill
1009Rodrigues D PaprockiIndia2024-05-16King, Christopher A Esq PROPOSAL87Anna Fali
1010Clifford D DilliardItaly2024-05-23Chanay, Jeffrey A Esq RENEWAL94Stephen Shaw
1011Claire X BriddickJapan2024-05-12Morlong Associates QUALIFIED66Stephen Shaw
1012Leon G KolmetzAustralia2024-05-14Chemel, James L Cpa RENEWAL3Elwin Sharvill
1013Mujtaba K SergiAustralia2024-05-11Buckley Miller Wright RENEWAL34Anna Fali
1014David G SaylorsBrazil2024-04-29Rangoni Of Florence NEGOTIATION49Xuxue Feng
1015Costa J RimIndia2024-05-17Chapman, Ross E Esq UNQUALIFIED76Bernardo Dominic
1016Salvatore L VenereBrazil2024-05-04Rangoni Of Florence UNQUALIFIED41Amy Elsner
1017Nicolas D GarufiArgentina2024-05-01Feiner Bros QUALIFIED63Ivan Magalhaes
1018Munro N TollnerJapan2024-05-09Commercial Press UNQUALIFIED28Asiya Javayant
1019Clifford X PerinUnited Kingdom2024-05-14Rangoni Of Florence RENEWAL58Xuxue Feng
1020Emily F OstroskyBrazil2024-05-12Buckley Miller Wright NEW79Amy Elsner
1021Cody K KolmetzBrazil2024-05-06Truhlar And Truhlar Attys QUALIFIED35Anna Fali
1022Isabel N FlosiSpain2024-05-18King, Christopher A Esq NEW31Bernardo Dominic
1023Johnson V MacleadJapan2024-05-08Chanay, Jeffrey A Esq NEW12Ioni Bowcher
1024Chavez G MaletBrazil2024-05-09Feiner Bros UNQUALIFIED90Ioni Bowcher
1025Munro J RimIndia2024-05-23Chanay, Jeffrey A Esq PROPOSAL83Anna Fali
1026Deepesh D OstroskyItaly2024-05-07Chemel, James L Cpa QUALIFIED47Stephen Shaw
1027Mayumi V KuskoJapan2024-05-04Truhlar And Truhlar Attys QUALIFIED52Elwin Sharvill
1028Aditya Z PerinItaly2024-05-14Morlong Associates RENEWAL6Onyama Limba
1029Jeanfrancois I IturbideCanada2024-05-21Chanay, Jeffrey A Esq NEW84Ioni Bowcher
1030Munro N FlosiGermany2024-05-06Chanay, Jeffrey A Esq RENEWAL62Anna Fali
1031Smith Q DoeArgentina2024-05-14Chemel, James L Cpa NEW75Anna Fali
1032Kaitlin X FollerFrance2024-05-04Chapman, Ross E Esq QUALIFIED9Bernardo Dominic
1033Rodrigues W DoeGermany2024-05-25Feiner Bros RENEWAL60Onyama Limba
1034Munro M BowleyCanada2024-05-03Chapman, Ross E Esq QUALIFIED22Amy Elsner
1035Adams X NestleJapan2024-05-20Morlong Associates UNQUALIFIED74Amy Elsner
1036Wickens K OstroskyIndia2024-05-05Morlong Associates NEW89Elwin Sharvill
1037Adams Z StensethFrance2024-05-27Chapman, Ross E Esq RENEWAL65Ivan Magalhaes
1038Juan X RimIndia2024-05-22Feiner Bros NEGOTIATION46Asiya Javayant
1039Ashley W SchemmerIndia2024-04-30Rangoni Of Florence UNQUALIFIED52Amy Elsner
1040Maisha C PoquetteGermany2024-05-17Truhlar And Truhlar Attys RENEWAL37Ivan Magalhaes
1041Salvatore D ChuiRussia2024-04-29Buckley Miller Wright NEGOTIATION85Xuxue Feng
1042Cody M AlbaresBrazil2024-05-01Rangoni Of Florence NEW39Stephen Shaw
1043Kaitlin S OstroskyGermany2024-05-02Rangoni Of Florence UNQUALIFIED91Bernardo Dominic
1044Juan Y PoquetteSpain2024-05-14Benton, John B Jr NEW29Asiya Javayant
1045Salvatore Q MarrierSpain2024-05-27Chemel, James L Cpa PROPOSAL55Onyama Limba
1046Smith S WaycottJapan2024-05-16Feltz Printing Service NEW86Asiya Javayant
1047Kaitlin V PoquetteBrazil2024-05-21Commercial Press RENEWAL86Ioni Bowcher
1048Sinclair G DarakjyUnited Kingdom2024-05-16Feiner Bros UNQUALIFIED8Ivan Magalhaes
1049Cody M PaprockiItaly2024-05-25Rangoni Of Florence NEW77Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Morrow I FigeroaArgentinaBernardo Dominic NEGOTIATION
Adams F SergiBrazilAnna Fali RENEWAL
Tony Q NickaIndiaAnna Fali PROPOSAL
Julie T CampainJapanAnna Fali PROPOSAL
Misaki L TollnerIndiaIvan Magalhaes PROPOSAL
Mujtaba V ChuiAustraliaAnna Fali NEGOTIATION
Rodrigues L StensethArgentinaAnna Fali NEGOTIATION
Octavia K OstroskyUnited KingdomAmy Elsner UNQUALIFIED
Aika R CaudyCanadaIoni Bowcher PROPOSAL
Izzy F PoquetteBrazilAnna Fali NEW
Maria D PoquetteSpainAnna Fali NEW
Aditya I BriddickGermanyAmy Elsner NEGOTIATION
Ivar F DarakjyRussiaElwin Sharvill UNQUALIFIED
Deepesh P VocelkaSpainIoni Bowcher RENEWAL
Francesco T ButtGermanyElwin Sharvill QUALIFIED
Juan Z DoeFranceElwin Sharvill RENEWAL
Sinclair S KuskoCanadaOnyama Limba NEGOTIATION
Johnson F SaylorsCanadaAnna Fali NEGOTIATION
James B VocelkaArgentinaElwin Sharvill PROPOSAL
Jennifer X IturbideUnited KingdomBernardo Dominic QUALIFIED
Leja K MaletJapanIvan Magalhaes NEW
Jefferson I OldroydItalyAsiya Javayant NEGOTIATION
Johnson F StensethBrazilIvan Magalhaes QUALIFIED
Kaitlin D DarakjyBrazilAmy Elsner QUALIFIED
Rodrigues P OldroydGermanyIvan Magalhaes RENEWAL
Claire F FigeroaAustraliaIoni Bowcher RENEWAL
Jones V NestleBrazilBernardo Dominic PROPOSAL
Kaitlin T ButtGermanyXuxue Feng NEGOTIATION
Aika D KolmetzGermanyAsiya Javayant QUALIFIED
Octavia E ChuiJapanBernardo Dominic QUALIFIED
Emily Q RulapaughSpainBernardo Dominic NEW
Greenwood R BologniaIndiaElwin Sharvill NEGOTIATION
Mujtaba J GauchoCanadaIvan Magalhaes UNQUALIFIED
Clifford X MarrierCanadaElwin Sharvill QUALIFIED
Murillo I SlusarskiUnited KingdomAsiya Javayant NEGOTIATION
Nicolas N GillianGermanyIvan Magalhaes QUALIFIED
Deepesh L DoeBrazilIoni Bowcher PROPOSAL
Jeanfrancois R StensethItalyAmy Elsner QUALIFIED
Morrow R FollerJapanElwin Sharvill NEGOTIATION
Leja D GlickUnited KingdomStephen Shaw RENEWAL
Kaitlin Y CaldareraRussiaXuxue Feng PROPOSAL
Aditya H OstroskyBrazilElwin Sharvill QUALIFIED
Morrow K FollerItalyBernardo Dominic QUALIFIED
Jennifer O FerenczItalyIvan Magalhaes UNQUALIFIED
Faith V BowleySpainAmy Elsner NEW
Jennifer N MarrierGermanyElwin Sharvill RENEWAL
Leon L GlickCanadaAnna Fali RENEWAL
Adams T StockhamUnited KingdomXuxue Feng NEW
Juan H NickaSpainAmy Elsner UNQUALIFIED
Octavia P PaprockiGermanyElwin Sharvill UNQUALIFIED
Frozen Columns
Name
Stacey D Stockham
Ivar X Inouye
Chavez W Darakjy
Arvin O Briddick
Alejandro L Glick
Greenwood Y Oldroyd
Morrow U Paprocki
Mujtaba J Nicka
Cody E Amigon
Ricardo N Glick
Francesco A Rulapaugh
Emily L Marrier
Jennifer U Gillian
Aruna K Perin
Antonio V Morasca
Misaki C Gillian
Julie Z Rulapaugh
Octavia D Ruta
Chavez P Stockham
Clifford A Malet
Nicolas M Slusarski
Darci W Vocelka
Aditya A Tollner
Aika F Schemmer
Leon B Glick
Aditya A Wieser
Faith C Caudy
James D Rim
Salvatore Q Malet
Wickens L Malet
Adams L Stenseth
Jennifer A Briddick
Leon Q Maclead
Emily F Figeroa
Costa S Ruta
Aika S Rulapaugh
Aruna F Glick
Chavez L Paprocki
Cody R Wieser
Silvio R Sergi
Kaitlin M Rulapaugh
Costa T Ruta
Claire K Flosi
Ricardo B Kolmetz
Faith L Rulapaugh
Ashley H Nicka
Johnson M Maclead
Adams I Caldarera
Nicolas X Albares
Alejandro Q Amigon
IdCountryDate
1000India2024-05-20
1001Australia2024-05-23
1002Germany2024-05-12
1003Brazil2024-04-29
1004France2024-04-30
1005France2024-05-01
1006France2024-05-07
1007France2024-04-30
1008India2024-05-05
1009India2024-05-20
1010Germany2024-05-22
1011Russia2024-05-19
1012Argentina2024-05-13
1013France2024-04-29
1014Germany2024-05-27
1015Canada2024-05-21
1016India2024-05-09
1017France2024-05-01
1018India2024-05-24
1019Australia2024-05-20
1020Canada2024-05-06
1021Canada2024-05-23
1022France2024-05-04
1023Argentina2024-05-04
1024Canada2024-05-12
1025Russia2024-05-05
1026Russia2024-05-05
1027Brazil2024-05-12
1028Canada2024-05-22
1029Spain2024-05-11
1030Australia2024-05-14
1031Argentina2024-05-10
1032Japan2024-05-09
1033Russia2024-05-13
1034Germany2024-05-04
1035Australia2024-04-29
1036United Kingdom2024-05-23
1037France2024-05-19
1038United Kingdom2024-05-21
1039France2024-05-12
1040India2024-05-17
1041Brazil2024-05-27
1042Australia2024-05-18
1043India2024-05-01
1044Japan2024-04-30
1045United Kingdom2024-04-29
1046United Kingdom2024-05-08
1047Japan2024-05-14
1048Canada2024-05-21
1049Japan2024-05-17

On-Demand Data

NameIdCountryDate
Rodrigues W Perin1000Argentina2024-05-17
Alejandro C Flosi1001Japan2024-04-28
James J Schemmer1002United Kingdom2024-05-13
Isabel R Nestle1003Brazil2024-04-30
Murillo N Gillian1004Japan2024-05-15
Nicolas H Oldroyd1005Argentina2024-05-02
Adams Y Bolognia1006France2024-05-11
Misaki D Vocelka1007Brazil2024-05-03
Darci A Iturbide1008France2024-05-08
Juan J Gillian1009Italy2024-05-17
Sinclair Y Ferencz1010Argentina2024-05-27
Mayumi Q Oldroyd1011Japan2024-05-22
Claire V Ferencz1012India2024-05-11
Isabel I Caldarera1013Russia2024-04-29
Kaitlin R Saylors1014Germany2024-04-30
Francesco F Poquette1015Canada2024-04-28
Aditya Q Waycott1016Canada2024-05-17
Kaitlin Q Nestle1017Brazil2024-05-16
Mujtaba Y Schemmer1018Canada2024-05-11
Aruna F Royster1019Canada2024-05-10
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Alejandro C DoeJapanAsiya Javayant UNQUALIFIED
James M VenereAustraliaIvan Magalhaes UNQUALIFIED
Aika J SergiAustraliaXuxue Feng PROPOSAL
Julie R DilliardGermanyIvan Magalhaes PROPOSAL
Mujtaba E GlickGermanyStephen Shaw NEGOTIATION
Maria R SergiGermanyXuxue Feng PROPOSAL
Aruna U WieserFranceAsiya Javayant UNQUALIFIED
Maria G VenereFranceAsiya Javayant QUALIFIED
Stacey B SaylorsIndiaAsiya Javayant NEW
Ricardo K RulapaughJapanXuxue Feng UNQUALIFIED
Jennifer M BowleyItalyIoni Bowcher PROPOSAL
Jennifer N MaletItalyAsiya Javayant NEW
Kaitlin O MaletJapanElwin Sharvill UNQUALIFIED
Mayumi U ChuiSpainAnna Fali UNQUALIFIED
Kaitlin R FerenczSpainAnna Fali QUALIFIED
Kaitlin D DilliardGermanyOnyama Limba PROPOSAL
Arvin G WieserItalyOnyama Limba RENEWAL
Sinclair B RulapaughCanadaStephen Shaw PROPOSAL
Tony H ShinkoUnited KingdomOnyama Limba UNQUALIFIED
Aika G PerinBrazilIoni Bowcher UNQUALIFIED
Tony H KuskoUnited KingdomBernardo Dominic QUALIFIED
Antonio L CaudyUnited KingdomAmy Elsner NEGOTIATION
Alejandro E FigeroaIndiaIoni Bowcher PROPOSAL
Francesco E PaprockiCanadaBernardo Dominic NEW
Emily O MarrierGermanyAmy Elsner RENEWAL
Jones W IturbideAustraliaIoni Bowcher RENEWAL
Tony D GillianFranceXuxue Feng QUALIFIED
Kaitlin T SaylorsIndiaAsiya Javayant NEGOTIATION
Julie R ChuiRussiaAsiya Javayant PROPOSAL
Darci D SergiBrazilIoni Bowcher QUALIFIED
Costa Y NickaItalyIoni Bowcher NEW
Jones K MaletArgentinaIvan Magalhaes QUALIFIED
Jefferson O RimArgentinaIoni Bowcher QUALIFIED
Darci H OstroskyUnited KingdomStephen Shaw PROPOSAL
David J NickaUnited KingdomBernardo Dominic RENEWAL
Salvatore B DoeArgentinaBernardo Dominic UNQUALIFIED
Kadeem R DarakjyItalyAnna Fali NEW
Juan R BowleyGermanyAmy Elsner UNQUALIFIED
Nicolas V FollerJapanIvan Magalhaes NEW
Alejandro F SchemmerItalyXuxue Feng NEW

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