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
Francesco T OstroskyUnited KingdomAsiya Javayant PROPOSAL
Morrow Z OldroydSpainElwin Sharvill NEW
Wickens T BriddickJapanAnna Fali RENEWAL
Ivar I IturbideItalyStephen Shaw UNQUALIFIED
Leon X DarakjyUnited KingdomOnyama Limba UNQUALIFIED
Salvatore V WaycottIndiaOnyama Limba RENEWAL
Wickens O OldroydFranceXuxue Feng PROPOSAL
Aruna X AlbaresJapanIvan Magalhaes UNQUALIFIED
David L BowleyCanadaBernardo Dominic RENEWAL
Mayumi E VocelkaRussiaElwin Sharvill PROPOSAL
Nicolas P CampainGermanyIoni Bowcher RENEWAL
Sinclair F DoeRussiaXuxue Feng NEGOTIATION
Misaki R OstroskyBrazilAnna Fali RENEWAL
Ricardo Q OstroskyJapanBernardo Dominic UNQUALIFIED
Deepesh K BriddickFranceXuxue Feng NEW
Adams Y NickaItalyElwin Sharvill NEW
Nicolas N BowleyRussiaStephen Shaw NEGOTIATION
Kadeem C CampainItalyAmy Elsner UNQUALIFIED
Rodrigues I BriddickUnited KingdomIoni Bowcher QUALIFIED
Jefferson I WieserItalyElwin Sharvill NEGOTIATION
Salvatore T PaprockiItalyAsiya Javayant QUALIFIED
James U WaycottGermanyBernardo Dominic UNQUALIFIED
Greenwood G WhobreyItalyOnyama Limba RENEWAL
Jefferson D ChuiUnited KingdomAsiya Javayant NEW
Izzy G OstroskyArgentinaOnyama Limba NEW
Munro V GauchoCanadaIvan Magalhaes NEGOTIATION
Mayumi O WhobreyGermanyOnyama Limba PROPOSAL
Aruna I WhobreyRussiaIoni Bowcher RENEWAL
Tony N WieserIndiaIvan Magalhaes QUALIFIED
Adams I MaletItalyIvan Magalhaes RENEWAL
Maisha J RulapaughBrazilAnna Fali NEGOTIATION
Julie G TollnerSpainXuxue Feng PROPOSAL
Smith V FollerBrazilBernardo Dominic NEGOTIATION
Maisha R GarufiAustraliaElwin Sharvill NEGOTIATION
Salvatore D PaprockiItalyAnna Fali UNQUALIFIED
David D MaletIndiaAnna Fali NEGOTIATION
Ashley B GlickIndiaElwin Sharvill NEW
Stacey G StensethRussiaElwin Sharvill RENEWAL
Jeanfrancois X CampainUnited KingdomElwin Sharvill NEW
Clifford V PerinItalyElwin Sharvill RENEWAL
Jones T InouyeUnited KingdomAsiya Javayant RENEWAL
Adams O RulapaughAustraliaOnyama Limba QUALIFIED
Kadeem D WieserRussiaBernardo Dominic QUALIFIED
Cody I CaldareraBrazilBernardo Dominic NEW
Johnson N OldroydAustraliaStephen Shaw UNQUALIFIED
Alejandro L InouyeRussiaIoni Bowcher NEGOTIATION
Leja E BowleyJapanStephen Shaw RENEWAL
Aditya F FollerBrazilIvan Magalhaes RENEWAL
Sinclair G MaletUnited KingdomElwin Sharvill QUALIFIED
Emily W RulapaughRussiaXuxue Feng QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Kadeem K WieserArgentinaIvan Magalhaes PROPOSAL
Jefferson Y StockhamItalyAmy Elsner QUALIFIED
Leja G BriddickGermanyAsiya Javayant NEGOTIATION
Alejandro T AlbaresAustraliaAmy Elsner NEW
Alejandro J WaycottBrazilIvan Magalhaes NEGOTIATION
Francesco B MacleadCanadaXuxue Feng UNQUALIFIED
Maria I FlosiRussiaXuxue Feng RENEWAL
Jeanfrancois F SaylorsJapanIoni Bowcher UNQUALIFIED
Cody W ChuiItalyIoni Bowcher RENEWAL
Costa P MacleadGermanyAsiya Javayant PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Morrow N CaudyFrance2024-06-04Buckley Miller Wright NEGOTIATION55Elwin Sharvill
1001Jeanfrancois D ShinkoUnited Kingdom2024-05-24Chanay, Jeffrey A Esq RENEWAL79Ioni Bowcher
1002Isabel S NestleUnited Kingdom2024-06-13Feltz Printing Service QUALIFIED43Anna Fali
1003Stacey R ButtCanada2024-06-19Chanay, Jeffrey A Esq NEW58Bernardo Dominic
1004Ashley G TollnerGermany2024-06-13King, Christopher A Esq NEW79Xuxue Feng
1005Jefferson L IturbideGermany2024-05-25Feltz Printing Service PROPOSAL85Stephen Shaw
1006Sinclair S FollerRussia2024-06-19Truhlar And Truhlar Attys QUALIFIED77Anna Fali
1007Silvio S BowleyArgentina2024-06-18Chanay, Jeffrey A Esq NEW24Bernardo Dominic
1008Ashley W TollnerSpain2024-06-18Chapman, Ross E Esq NEW43Bernardo Dominic
1009Julie O CampainUnited Kingdom2024-06-19Chanay, Jeffrey A Esq NEW55Onyama Limba
1010Jefferson F RulapaughSpain2024-05-27Chanay, Jeffrey A Esq NEW70Ioni Bowcher
1011Morrow X RimUnited Kingdom2024-06-11Chapman, Ross E Esq NEW79Ivan Magalhaes
1012Octavia A VocelkaSpain2024-05-24Benton, John B Jr NEGOTIATION80Elwin Sharvill
1013Adams Q InouyeSpain2024-06-06Dorl, James J Esq NEGOTIATION87Stephen Shaw
1014Greenwood D DilliardArgentina2024-06-06King, Christopher A Esq QUALIFIED78Bernardo Dominic
1015Francesco J FlosiJapan2024-06-20Chanay, Jeffrey A Esq PROPOSAL72Ioni Bowcher
1016Leon M AmigonCanada2024-06-07Benton, John B Jr NEW5Xuxue Feng
1017Maisha D VocelkaFrance2024-05-25Buckley Miller Wright PROPOSAL40Amy Elsner
1018Emily B MaletIndia2024-06-08Benton, John B Jr NEGOTIATION27Onyama Limba
1019Alejandro O IturbideAustralia2024-05-28Dorl, James J Esq NEW75Ioni Bowcher
1020Ivar T PoquetteArgentina2024-06-17Dorl, James J Esq NEW96Xuxue Feng
1021Salvatore E FigeroaUnited Kingdom2024-06-03Feiner Bros RENEWAL85Stephen Shaw
1022Tony Z FerenczGermany2024-06-17Chapman, Ross E Esq NEGOTIATION18Ivan Magalhaes
1023James R BowleyCanada2024-06-18Feiner Bros NEGOTIATION86Elwin Sharvill
1024Stacey P SchemmerFrance2024-06-11Rangoni Of Florence NEW41Anna Fali
1025Francesco D VenereItaly2024-06-08Commercial Press PROPOSAL61Anna Fali
1026Aditya P RutaUnited Kingdom2024-06-07Chemel, James L Cpa NEGOTIATION4Elwin Sharvill
1027Antonio L MaletAustralia2024-06-10Feiner Bros NEGOTIATION50Asiya Javayant
1028Francesco S CaldareraUnited Kingdom2024-06-16Commercial Press NEW90Xuxue Feng
1029Deepesh Q SaylorsRussia2024-06-01Chanay, Jeffrey A Esq NEW63Onyama Limba
1030Chavez W CaudySpain2024-06-17Printing Dimensions QUALIFIED9Amy Elsner
1031Aditya K MorascaArgentina2024-05-31Truhlar And Truhlar Attys PROPOSAL28Ioni Bowcher
1032Faith X MarrierJapan2024-06-22Benton, John B Jr QUALIFIED44Ioni Bowcher
1033Aruna I WaycottJapan2024-06-14Dorl, James J Esq RENEWAL61Ivan Magalhaes
1034Julie K DoeCanada2024-06-13King, Christopher A Esq QUALIFIED76Stephen Shaw
1035Wickens T SergiIndia2024-05-31Chapman, Ross E Esq UNQUALIFIED73Stephen Shaw
1036Salvatore Y WhobreyAustralia2024-06-04Rangoni Of Florence NEGOTIATION55Stephen Shaw
1037Kadeem Q BologniaRussia2024-05-31Printing Dimensions UNQUALIFIED34Anna Fali
1038Isabel N RoysterAustralia2024-06-04Morlong Associates QUALIFIED94Onyama Limba
1039Kaitlin M FigeroaCanada2024-06-18Feiner Bros PROPOSAL7Asiya Javayant
1040Maria V PerinIndia2024-06-16Chemel, James L Cpa QUALIFIED86Onyama Limba
1041Sinclair K CampainCanada2024-06-21Rousseaux, Michael Esq NEGOTIATION5Stephen Shaw
1042Aika D KolmetzRussia2024-05-31Printing Dimensions PROPOSAL92Anna Fali
1043Clifford Q ButtCanada2024-06-22Truhlar And Truhlar Attys PROPOSAL0Bernardo Dominic
1044Morrow S RutaIndia2024-06-04Printing Dimensions PROPOSAL3Bernardo Dominic
1045Munro Y StockhamItaly2024-05-31Morlong Associates NEW69Amy Elsner
1046Ivar X CampainRussia2024-06-05Benton, John B Jr UNQUALIFIED66Stephen Shaw
1047Faith B KolmetzArgentina2024-06-10Chanay, Jeffrey A Esq PROPOSAL13Xuxue Feng
1048Ashley M WieserGermany2024-06-18Chapman, Ross E Esq PROPOSAL69Elwin Sharvill
1049Juan Z GauchoCanada2024-05-25Commercial Press NEGOTIATION19Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Murillo U BowleyRussiaOnyama Limba QUALIFIED
Jeanfrancois N FollerItalyBernardo Dominic PROPOSAL
Darci V KuskoUnited KingdomElwin Sharvill RENEWAL
Costa V DarakjySpainAmy Elsner QUALIFIED
Morrow R OstroskyFranceIvan Magalhaes RENEWAL
Aditya R VenereArgentinaAsiya Javayant NEW
Octavia A OldroydCanadaOnyama Limba NEGOTIATION
Silvio U MarrierArgentinaOnyama Limba NEGOTIATION
Faith O WaycottGermanyIvan Magalhaes PROPOSAL
Jones V StensethCanadaAsiya Javayant RENEWAL
Aruna V WhobreyGermanyIvan Magalhaes NEGOTIATION
Mayumi S CampainItalyIvan Magalhaes PROPOSAL
Leon W FerenczBrazilAsiya Javayant NEW
Aika V AmigonJapanBernardo Dominic PROPOSAL
Ashley D RulapaughArgentinaBernardo Dominic RENEWAL
Morrow I NickaBrazilAmy Elsner QUALIFIED
Munro D PerinItalyBernardo Dominic RENEWAL
Munro W PerinIndiaAmy Elsner RENEWAL
Ricardo M SaylorsFranceStephen Shaw RENEWAL
Deepesh K GauchoGermanyIoni Bowcher QUALIFIED
Leja Z SchemmerIndiaAnna Fali UNQUALIFIED
Ivar F InouyeItalyBernardo Dominic NEGOTIATION
Sinclair S SaylorsBrazilAmy Elsner QUALIFIED
Mayumi D FlosiUnited KingdomIoni Bowcher UNQUALIFIED
Mujtaba E MaletJapanIoni Bowcher NEGOTIATION
Ricardo G KolmetzSpainAnna Fali NEW
Aditya W VenereGermanyIvan Magalhaes RENEWAL
Antonio B GlickGermanyBernardo Dominic PROPOSAL
Kadeem Q RutaFranceStephen Shaw UNQUALIFIED
Octavia X MarrierCanadaAmy Elsner NEGOTIATION
Aditya H BriddickIndiaIvan Magalhaes RENEWAL
Aika F FigeroaGermanyXuxue Feng QUALIFIED
Alejandro Z CampainItalyAnna Fali NEW
Julie S NestleGermanyIoni Bowcher UNQUALIFIED
David T OstroskyBrazilXuxue Feng RENEWAL
Mayumi W AmigonGermanyOnyama Limba PROPOSAL
Jeanfrancois J SlusarskiRussiaStephen Shaw PROPOSAL
Jeanfrancois M MarrierCanadaAsiya Javayant PROPOSAL
Jennifer G RimSpainXuxue Feng UNQUALIFIED
Ivar W GauchoArgentinaXuxue Feng NEW
Juan F VocelkaGermanyAsiya Javayant NEGOTIATION
Jeanfrancois U SergiGermanyXuxue Feng QUALIFIED
Antonio V WaycottIndiaAmy Elsner PROPOSAL
Aika D PaprockiItalyElwin Sharvill NEGOTIATION
Costa E BologniaIndiaAmy Elsner NEW
Jennifer D SchemmerFranceOnyama Limba UNQUALIFIED
Julie R OstroskyUnited KingdomOnyama Limba UNQUALIFIED
Maria S ShinkoIndiaStephen Shaw RENEWAL
Julie W VocelkaRussiaAnna Fali QUALIFIED
Jeanfrancois N FigeroaRussiaIvan Magalhaes RENEWAL
Frozen Columns
Name
Leon Y Oldroyd
Johnson X Royster
Mayumi H Nestle
Jennifer V Saylors
Silvio J Poquette
Julie R Venere
James W Venere
Leja K Venere
Isabel U Vocelka
Ricardo C Nicka
Alejandro O Saylors
Jennifer A Vocelka
Ashley Z Marrier
Ashley Q Darakjy
Izzy B Shinko
Kaitlin M Oldroyd
Smith I Venere
Costa Y Ferencz
Greenwood A Rim
Tony J Ferencz
Leja K Maclead
Alejandro O Slusarski
Maisha A Slusarski
Izzy G Tollner
Faith A Poquette
Darci D Gillian
Francesco U Waycott
Cody Q Bolognia
Jefferson W Figeroa
Misaki J Gillian
Costa A Amigon
Aika O Paprocki
Silvio N Sergi
Jeanfrancois P Morasca
Kaitlin E Bowley
Octavia V Maclead
Izzy S Chui
Darci C Caldarera
James Q Shinko
Darci G Marrier
James X Maclead
Salvatore C Gaucho
Murillo T Dilliard
Francesco N Malet
Salvatore H Rulapaugh
Ashley L Inouye
Nicolas L Tollner
Darci M Gaucho
Isabel W Venere
Jennifer L Darakjy
IdCountryDate
1000United Kingdom2024-06-19
1001Argentina2024-06-14
1002Italy2024-06-22
1003Russia2024-06-08
1004Russia2024-06-01
1005Japan2024-05-28
1006Italy2024-06-07
1007Spain2024-06-17
1008France2024-06-20
1009Argentina2024-06-11
1010Australia2024-05-30
1011Australia2024-06-07
1012India2024-06-11
1013Italy2024-06-16
1014Brazil2024-06-09
1015Russia2024-05-25
1016Japan2024-06-14
1017Argentina2024-06-16
1018France2024-05-28
1019India2024-06-14
1020Spain2024-05-25
1021Russia2024-06-22
1022Russia2024-06-13
1023India2024-06-09
1024Germany2024-06-13
1025Argentina2024-06-08
1026Germany2024-06-21
1027Australia2024-06-09
1028Spain2024-06-03
1029Germany2024-05-31
1030Spain2024-06-05
1031Argentina2024-06-08
1032United Kingdom2024-06-11
1033Spain2024-06-18
1034Germany2024-06-07
1035Spain2024-06-14
1036Canada2024-06-06
1037Australia2024-06-13
1038Argentina2024-05-30
1039Germany2024-06-10
1040Japan2024-06-08
1041Brazil2024-06-09
1042United Kingdom2024-06-09
1043France2024-05-25
1044Australia2024-06-17
1045Canada2024-06-18
1046Japan2024-06-19
1047Canada2024-06-06
1048Brazil2024-05-27
1049Canada2024-06-05

On-Demand Data

NameIdCountryDate
Kaitlin Q Rim1000Germany2024-06-14
Morrow Z Shinko1001Brazil2024-06-15
Kaitlin Z Ferencz1002Canada2024-06-21
Maisha R Inouye1003Brazil2024-06-14
Izzy L Maclead1004Spain2024-06-05
Morrow B Briddick1005France2024-05-25
Izzy D Amigon1006Argentina2024-06-11
Arvin Y Malet1007Germany2024-06-09
Stacey Q Poquette1008France2024-06-05
Maria L Vocelka1009France2024-06-16
James U Paprocki1010United Kingdom2024-06-11
Aditya U Foller1011United Kingdom2024-06-20
David N Wieser1012Australia2024-05-28
Adams L Caudy1013United Kingdom2024-06-17
Arvin J Malet1014Canada2024-06-19
Darci R Perin1015France2024-06-13
Wickens U Darakjy1016United Kingdom2024-05-26
Izzy A Rulapaugh1017Brazil2024-06-07
Isabel P Schemmer1018Spain2024-06-16
Munro I Caudy1019Brazil2024-06-10
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Cody K DoeItalyAsiya Javayant QUALIFIED
Rodrigues Y WieserUnited KingdomXuxue Feng UNQUALIFIED
Jennifer O SergiAustraliaOnyama Limba RENEWAL
Arvin W AlbaresRussiaOnyama Limba NEGOTIATION
Misaki F FigeroaSpainAmy Elsner RENEWAL
Kaitlin M CampainCanadaIvan Magalhaes QUALIFIED
Silvio A PerinRussiaBernardo Dominic RENEWAL
Aditya Z NickaAustraliaIoni Bowcher UNQUALIFIED
David M WieserCanadaOnyama Limba RENEWAL
Chavez T GlickArgentinaAmy Elsner QUALIFIED
Morrow A SergiUnited KingdomXuxue Feng UNQUALIFIED
Nicolas N FerenczBrazilOnyama Limba QUALIFIED
Arvin H BriddickJapanXuxue Feng NEGOTIATION
Ivar Q AlbaresArgentinaBernardo Dominic NEGOTIATION
Jones I InouyeBrazilAmy Elsner RENEWAL
Kadeem L DoeUnited KingdomIvan Magalhaes UNQUALIFIED
Mayumi Y PerinJapanIoni Bowcher NEW
Julie Y VenereFranceIoni Bowcher QUALIFIED
Ivar A ChuiCanadaElwin Sharvill RENEWAL
Claire N RoysterIndiaAsiya Javayant QUALIFIED
Antonio A BriddickIndiaStephen Shaw RENEWAL
Jefferson E WaycottFranceIvan Magalhaes PROPOSAL
Nicolas D StensethJapanOnyama Limba NEW
Aika Z GillianJapanIoni Bowcher PROPOSAL
Smith N RoysterIndiaIvan Magalhaes QUALIFIED
Nicolas K FollerSpainXuxue Feng QUALIFIED
Misaki K CampainGermanyBernardo Dominic UNQUALIFIED
Clifford J MaletRussiaElwin Sharvill QUALIFIED
Clifford F WieserAustraliaIoni Bowcher UNQUALIFIED
Mayumi U OstroskyGermanyAnna Fali RENEWAL
Darci J PerinItalyIoni Bowcher NEW
Morrow I WhobreyRussiaElwin Sharvill QUALIFIED
Salvatore D GlickJapanIoni Bowcher PROPOSAL
Antonio L FigeroaCanadaAmy Elsner NEW
Ashley L CaldareraGermanyIvan Magalhaes NEGOTIATION
Ashley Z WieserItalyElwin Sharvill PROPOSAL
Aditya S FigeroaItalyAsiya Javayant RENEWAL
Munro L FlosiBrazilAsiya Javayant NEW
Chavez O FollerUnited KingdomXuxue Feng UNQUALIFIED
Izzy U GillianBrazilStephen Shaw 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>