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
Antonio X WieserJapanOnyama Limba NEGOTIATION
Juan G NestleItalyAmy Elsner PROPOSAL
Leja B TollnerGermanyStephen Shaw RENEWAL
Mayumi T StockhamFranceAmy Elsner NEW
Alejandro O MaletArgentinaXuxue Feng UNQUALIFIED
Aruna N KolmetzRussiaAsiya Javayant PROPOSAL
Izzy G GlickAustraliaBernardo Dominic NEGOTIATION
Claire D RulapaughItalyElwin Sharvill NEW
David F OstroskyJapanXuxue Feng NEGOTIATION
Deepesh U BologniaAustraliaBernardo Dominic QUALIFIED
Rodrigues U BologniaArgentinaIoni Bowcher PROPOSAL
Deepesh D SlusarskiBrazilElwin Sharvill QUALIFIED
Maisha O CaldareraItalyAsiya Javayant UNQUALIFIED
Sinclair E ShinkoRussiaOnyama Limba NEGOTIATION
Jennifer Z DilliardGermanyElwin Sharvill PROPOSAL
Antonio P GillianBrazilAmy Elsner RENEWAL
Emily M TollnerAustraliaIvan Magalhaes PROPOSAL
Jennifer B FollerIndiaIoni Bowcher NEW
Stacey H WaycottSpainAnna Fali RENEWAL
Darci O WaycottUnited KingdomBernardo Dominic UNQUALIFIED
Greenwood M InouyeGermanyStephen Shaw NEGOTIATION
Deepesh S RimRussiaIoni Bowcher QUALIFIED
Salvatore R FigeroaFranceOnyama Limba QUALIFIED
Mayumi V KolmetzBrazilAsiya Javayant NEGOTIATION
Jefferson J WaycottRussiaXuxue Feng PROPOSAL
Octavia K AlbaresJapanIoni Bowcher NEGOTIATION
Maria L DilliardAustraliaAnna Fali NEGOTIATION
Antonio Q TollnerAustraliaIvan Magalhaes NEW
Murillo K PaprockiCanadaOnyama Limba QUALIFIED
Wickens L KuskoSpainAnna Fali PROPOSAL
Ricardo K RutaArgentinaIvan Magalhaes UNQUALIFIED
Leja X MacleadUnited KingdomAnna Fali RENEWAL
Clifford I ChuiRussiaAnna Fali RENEWAL
Francesco W SchemmerItalyIvan Magalhaes QUALIFIED
Jones K SaylorsJapanXuxue Feng PROPOSAL
Sinclair P CampainItalyAsiya Javayant PROPOSAL
Nicolas G FollerIndiaXuxue Feng NEW
Isabel W MaletGermanyIoni Bowcher UNQUALIFIED
Silvio B WaycottUnited KingdomBernardo Dominic NEW
Alejandro W BologniaAustraliaElwin Sharvill QUALIFIED
Greenwood H BologniaJapanStephen Shaw RENEWAL
Cody M OldroydFranceXuxue Feng PROPOSAL
Tony Z PoquetteItalyAnna Fali NEW
Ashley L PerinUnited KingdomAnna Fali NEGOTIATION
Jefferson O AmigonAustraliaStephen Shaw QUALIFIED
Silvio V MorascaUnited KingdomAmy Elsner RENEWAL
Johnson Y DarakjyUnited KingdomBernardo Dominic PROPOSAL
Rodrigues L VenereUnited KingdomIvan Magalhaes QUALIFIED
Morrow Q ShinkoAustraliaIvan Magalhaes RENEWAL
Morrow A SchemmerArgentinaStephen Shaw QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Greenwood C KuskoIndiaElwin Sharvill NEW
Johnson T GlickGermanyStephen Shaw NEGOTIATION
Tony O InouyeUnited KingdomOnyama Limba RENEWAL
Rodrigues T CampainJapanElwin Sharvill UNQUALIFIED
Costa H ShinkoJapanAsiya Javayant RENEWAL
Salvatore O BologniaCanadaOnyama Limba QUALIFIED
Salvatore N RulapaughRussiaBernardo Dominic NEW
Alejandro V InouyeRussiaAsiya Javayant RENEWAL
Isabel U KolmetzItalyIoni Bowcher RENEWAL
Sinclair A RulapaughJapanAnna Fali NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ricardo J IturbideCanada2024-05-23Chapman, Ross E Esq QUALIFIED15Stephen Shaw
1001Aruna B MaletUnited Kingdom2024-06-18King, Christopher A Esq RENEWAL16Onyama Limba
1002Deepesh V PoquetteItaly2024-05-29Truhlar And Truhlar Attys UNQUALIFIED75Anna Fali
1003Aditya Z PerinCanada2024-05-26Rangoni Of Florence RENEWAL15Stephen Shaw
1004Jefferson B GillianArgentina2024-06-07Chanay, Jeffrey A Esq RENEWAL29Elwin Sharvill
1005Deepesh B CampainItaly2024-05-23Chapman, Ross E Esq RENEWAL95Ivan Magalhaes
1006Silvio E GlickArgentina2024-06-15Chapman, Ross E Esq RENEWAL57Anna Fali
1007Leon A NestleCanada2024-06-02Rousseaux, Michael Esq NEGOTIATION30Elwin Sharvill
1008Mayumi C InouyeItaly2024-05-27Benton, John B Jr PROPOSAL73Ivan Magalhaes
1009Mayumi C BologniaItaly2024-06-09Rangoni Of Florence NEW93Bernardo Dominic
1010Munro W RulapaughItaly2024-05-29Commercial Press QUALIFIED79Xuxue Feng
1011Costa P PoquetteItaly2024-06-18Buckley Miller Wright QUALIFIED67Xuxue Feng
1012Greenwood A MaletAustralia2024-05-21Feiner Bros PROPOSAL59Asiya Javayant
1013Deepesh Z StockhamSpain2024-06-07Buckley Miller Wright QUALIFIED64Asiya Javayant
1014Morrow C SaylorsAustralia2024-06-14Printing Dimensions PROPOSAL69Elwin Sharvill
1015Aruna H KolmetzRussia2024-06-05Morlong Associates NEW35Ioni Bowcher
1016Aika V OstroskyCanada2024-06-08Printing Dimensions UNQUALIFIED64Ivan Magalhaes
1017Francesco Q SchemmerArgentina2024-06-15Chapman, Ross E Esq PROPOSAL40Anna Fali
1018Jeanfrancois O OstroskyBrazil2024-06-06Dorl, James J Esq QUALIFIED61Asiya Javayant
1019Aika E AmigonIndia2024-05-21Chemel, James L Cpa PROPOSAL22Elwin Sharvill
1020James R OldroydGermany2024-05-31Truhlar And Truhlar Attys NEGOTIATION96Ioni Bowcher
1021Ricardo S GillianSpain2024-06-02Truhlar And Truhlar Attys PROPOSAL52Ivan Magalhaes
1022Octavia U WhobreyAustralia2024-06-18Benton, John B Jr NEGOTIATION79Anna Fali
1023Johnson E SlusarskiFrance2024-06-15Chapman, Ross E Esq RENEWAL39Amy Elsner
1024Arvin S DilliardGermany2024-06-11Chemel, James L Cpa NEW8Stephen Shaw
1025David G PaprockiIndia2024-06-14Chemel, James L Cpa NEGOTIATION9Anna Fali
1026Jones S KuskoFrance2024-05-21Commercial Press NEGOTIATION73Xuxue Feng
1027Kadeem P ShinkoUnited Kingdom2024-05-30Chapman, Ross E Esq NEW51Bernardo Dominic
1028Francesco L BowleyItaly2024-05-24Feiner Bros NEGOTIATION75Ioni Bowcher
1029Sinclair H PaprockiBrazil2024-06-07Benton, John B Jr RENEWAL60Anna Fali
1030Darci R CaldareraCanada2024-05-22Benton, John B Jr UNQUALIFIED36Bernardo Dominic
1031Wickens W NickaSpain2024-06-03Dorl, James J Esq NEW90Anna Fali
1032Chavez B FlosiAustralia2024-06-08King, Christopher A Esq NEGOTIATION60Anna Fali
1033Antonio D StockhamSpain2024-06-18Truhlar And Truhlar Attys NEGOTIATION9Xuxue Feng
1034Jennifer E FerenczJapan2024-06-07Chemel, James L Cpa PROPOSAL73Bernardo Dominic
1035Costa I RoysterJapan2024-06-05King, Christopher A Esq UNQUALIFIED83Bernardo Dominic
1036Maisha R IturbideCanada2024-05-30Chapman, Ross E Esq RENEWAL9Asiya Javayant
1037Ashley C KolmetzSpain2024-06-07Feltz Printing Service UNQUALIFIED45Elwin Sharvill
1038Francesco Q BologniaIndia2024-06-07Chemel, James L Cpa PROPOSAL61Anna Fali
1039Jeanfrancois B NestleAustralia2024-06-14Chanay, Jeffrey A Esq PROPOSAL36Amy Elsner
1040David W SlusarskiJapan2024-06-18Chanay, Jeffrey A Esq UNQUALIFIED58Asiya Javayant
1041Morrow B StensethSpain2024-06-03Rousseaux, Michael Esq NEGOTIATION65Elwin Sharvill
1042Ricardo I DilliardArgentina2024-06-06Buckley Miller Wright NEGOTIATION2Onyama Limba
1043Clifford D DoeJapan2024-05-20King, Christopher A Esq NEW45Ioni Bowcher
1044Adams D IturbideUnited Kingdom2024-06-08Benton, John B Jr RENEWAL34Xuxue Feng
1045Ricardo C TollnerFrance2024-06-09Truhlar And Truhlar Attys RENEWAL30Ivan Magalhaes
1046Faith B ButtGermany2024-05-28Feltz Printing Service RENEWAL7Anna Fali
1047Jefferson G BriddickGermany2024-06-17Printing Dimensions QUALIFIED76Elwin Sharvill
1048Munro Z DarakjyGermany2024-06-13Chanay, Jeffrey A Esq NEGOTIATION66Amy Elsner
1049Octavia N GillianRussia2024-06-03Chemel, James L Cpa PROPOSAL41Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Silvio K KuskoFranceAnna Fali NEW
Izzy M TollnerJapanElwin Sharvill PROPOSAL
Jones H MaletJapanAnna Fali UNQUALIFIED
Greenwood M PerinRussiaXuxue Feng NEGOTIATION
Aditya N RulapaughFranceIoni Bowcher NEW
David P VocelkaGermanyAsiya Javayant NEW
Misaki R SlusarskiCanadaElwin Sharvill UNQUALIFIED
Jefferson M ShinkoAustraliaStephen Shaw RENEWAL
Tony X VocelkaUnited KingdomElwin Sharvill UNQUALIFIED
Johnson Q RoysterIndiaAnna Fali RENEWAL
Ricardo V FollerAustraliaAmy Elsner NEW
Sinclair I FollerAustraliaIoni Bowcher RENEWAL
Morrow K MaletIndiaAnna Fali UNQUALIFIED
Claire N MarrierCanadaXuxue Feng NEGOTIATION
Tony L FollerItalyXuxue Feng NEW
Chavez F BowleySpainIoni Bowcher QUALIFIED
Johnson W SaylorsIndiaElwin Sharvill NEW
Isabel G MaletBrazilStephen Shaw RENEWAL
Aika O MaletSpainIoni Bowcher PROPOSAL
Maria S OldroydSpainAmy Elsner RENEWAL
Misaki T CaldareraCanadaBernardo Dominic NEW
Smith I DarakjyItalyOnyama Limba RENEWAL
Kadeem Z AlbaresJapanElwin Sharvill PROPOSAL
Arvin S InouyeUnited KingdomElwin Sharvill QUALIFIED
Kadeem H CaudyBrazilElwin Sharvill NEGOTIATION
Isabel T SergiSpainIvan Magalhaes QUALIFIED
Leja U KuskoCanadaAnna Fali RENEWAL
Smith B IturbideBrazilStephen Shaw UNQUALIFIED
Isabel O AmigonFranceIvan Magalhaes QUALIFIED
Antonio H FerenczUnited KingdomXuxue Feng UNQUALIFIED
Chavez I CampainFranceOnyama Limba UNQUALIFIED
Stacey I RulapaughJapanElwin Sharvill QUALIFIED
Clifford E DoeSpainElwin Sharvill NEGOTIATION
Jefferson J ChuiJapanAmy Elsner UNQUALIFIED
Izzy G PoquetteCanadaAmy Elsner NEGOTIATION
Ricardo Y GillianAustraliaElwin Sharvill RENEWAL
Leon K FlosiSpainAnna Fali UNQUALIFIED
Izzy M FigeroaFranceOnyama Limba RENEWAL
Maisha E StensethGermanyStephen Shaw RENEWAL
Jefferson P VenereGermanyIoni Bowcher RENEWAL
James P RimCanadaAnna Fali RENEWAL
Jones A SchemmerCanadaIoni Bowcher NEW
Ashley V RimItalyAsiya Javayant RENEWAL
Antonio S DoeItalyIvan Magalhaes NEW
Izzy X CampainSpainIvan Magalhaes NEW
Sinclair R SlusarskiBrazilElwin Sharvill UNQUALIFIED
Sinclair C PerinUnited KingdomAnna Fali RENEWAL
Francesco K ChuiRussiaBernardo Dominic RENEWAL
Costa N BowleyJapanBernardo Dominic QUALIFIED
Izzy W DilliardCanadaStephen Shaw UNQUALIFIED
Frozen Columns
Name
Rodrigues M Caldarera
Julie V Oldroyd
Salvatore J Perin
Johnson C Bolognia
Adams P Marrier
Munro Y Malet
Aika A Slusarski
Mayumi P Perin
Munro A Nicka
Sinclair H Bolognia
Morrow J Foller
Deepesh X Royster
Aika H Waycott
Salvatore X Bolognia
Deepesh N Sergi
Morrow G Caldarera
Aruna X Ostrosky
Leon N Chui
Jones J Kusko
Alejandro U Doe
Emily H Darakjy
Maisha X Vocelka
Misaki O Briddick
Isabel S Royster
Misaki B Bowley
Emily F Iturbide
Ivar P Morasca
Aruna H Garufi
Isabel S Rim
Nicolas C Ostrosky
Aditya X Rim
Julie J Ruta
Leon J Campain
Izzy E Malet
Adams F Briddick
Kaitlin P Shinko
Aruna J Schemmer
Ashley B Albares
Tony A Nicka
Adams O Whobrey
Salvatore K Dilliard
Smith X Amigon
Wickens P Stenseth
Francesco P Shinko
Alejandro Q Saylors
Ricardo E Vocelka
Silvio U Bolognia
Tony B Malet
Emily T Ostrosky
Costa J Figeroa
IdCountryDate
1000Italy2024-05-25
1001United Kingdom2024-05-26
1002Australia2024-06-01
1003Australia2024-05-20
1004United Kingdom2024-06-02
1005Spain2024-06-10
1006Italy2024-06-12
1007Spain2024-05-29
1008Australia2024-06-09
1009Argentina2024-06-14
1010United Kingdom2024-06-18
1011Australia2024-06-17
1012United Kingdom2024-06-10
1013Argentina2024-05-25
1014Argentina2024-06-05
1015Japan2024-06-09
1016India2024-06-11
1017United Kingdom2024-06-05
1018Germany2024-06-16
1019India2024-06-07
1020Russia2024-06-04
1021Canada2024-06-07
1022France2024-06-02
1023Argentina2024-05-25
1024Germany2024-06-18
1025Russia2024-05-28
1026Australia2024-06-01
1027Spain2024-05-26
1028France2024-06-11
1029United Kingdom2024-06-09
1030Australia2024-06-14
1031India2024-06-08
1032Argentina2024-05-25
1033India2024-05-23
1034Italy2024-05-21
1035India2024-06-08
1036Canada2024-06-09
1037France2024-06-01
1038Canada2024-06-15
1039Argentina2024-06-02
1040Argentina2024-06-02
1041Canada2024-06-16
1042Canada2024-06-12
1043France2024-05-31
1044Russia2024-06-03
1045France2024-05-25
1046India2024-06-04
1047Australia2024-06-05
1048Spain2024-06-12
1049Brazil2024-06-16

On-Demand Data

NameIdCountryDate
Misaki S Poquette1000Spain2024-05-28
Antonio F Gillian1001Spain2024-05-23
Jefferson L Kolmetz1002France2024-05-28
Maisha T Rim1003Canada2024-06-14
Mayumi F Caudy1004Australia2024-05-23
Aditya W Rim1005Italy2024-06-08
Aika R Campain1006India2024-05-24
Salvatore H Tollner1007Italy2024-05-23
Octavia N Shinko1008Germany2024-05-28
Emily D Nestle1009Japan2024-06-15
Julie L Figeroa1010Australia2024-05-22
Jeanfrancois Q Stockham1011Spain2024-05-20
Ricardo M Marrier1012Argentina2024-06-04
Cody T Whobrey1013Australia2024-05-24
Antonio X Nestle1014France2024-05-30
David B Stockham1015France2024-06-05
Sinclair N Morasca1016India2024-05-26
Jennifer R Rulapaugh1017Brazil2024-06-17
Adams A Schemmer1018Australia2024-05-24
Chavez T Briddick1019Spain2024-06-13
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Isabel C SchemmerFranceAsiya Javayant NEGOTIATION
Wickens M MaletCanadaIoni Bowcher QUALIFIED
Julie K ButtJapanAmy Elsner QUALIFIED
Claire K VocelkaAustraliaStephen Shaw UNQUALIFIED
Arvin S PoquetteItalyAmy Elsner NEGOTIATION
Ricardo U DilliardSpainXuxue Feng QUALIFIED
Costa N ButtJapanAsiya Javayant QUALIFIED
Leon X DilliardSpainAnna Fali PROPOSAL
Emily T GlickArgentinaOnyama Limba UNQUALIFIED
Leja M FigeroaFranceBernardo Dominic NEGOTIATION
Clifford D BologniaGermanyIvan Magalhaes RENEWAL
Clifford U KuskoSpainOnyama Limba PROPOSAL
Kadeem Z FigeroaJapanXuxue Feng UNQUALIFIED
Aruna G FollerItalyStephen Shaw QUALIFIED
Stacey T FerenczArgentinaElwin Sharvill QUALIFIED
Antonio U TollnerCanadaIoni Bowcher NEW
Emily S RoysterAustraliaStephen Shaw QUALIFIED
Greenwood H SergiGermanyIvan Magalhaes QUALIFIED
Kadeem P MorascaJapanIoni Bowcher NEW
Salvatore J MacleadUnited KingdomStephen Shaw PROPOSAL
Misaki G GillianAustraliaXuxue Feng QUALIFIED
Julie E FlosiJapanAsiya Javayant PROPOSAL
Aika L OstroskyArgentinaXuxue Feng NEGOTIATION
Kadeem Q DarakjySpainAmy Elsner RENEWAL
Morrow X VenereGermanyAmy Elsner NEGOTIATION
Jennifer Y OldroydBrazilAsiya Javayant NEGOTIATION
Julie S CampainBrazilAsiya Javayant QUALIFIED
Nicolas J SergiGermanyAnna Fali NEGOTIATION
Johnson Z DilliardRussiaElwin Sharvill UNQUALIFIED
Stacey R ButtItalyAnna Fali PROPOSAL
Darci P GlickAustraliaXuxue Feng RENEWAL
David K BologniaJapanAsiya Javayant RENEWAL
David S DarakjyBrazilIvan Magalhaes NEW
Isabel Y SlusarskiRussiaBernardo Dominic QUALIFIED
James H FollerAustraliaStephen Shaw UNQUALIFIED
Murillo N KuskoAustraliaXuxue Feng PROPOSAL
Darci S NestleJapanStephen Shaw NEW
Mujtaba W SergiCanadaOnyama Limba RENEWAL
Jeanfrancois Q CaldareraUnited KingdomElwin Sharvill NEW
Jeanfrancois O FerenczBrazilIvan Magalhaes 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>