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 L OstroskyJapanIoni Bowcher QUALIFIED
Chavez Z AlbaresUnited KingdomIvan Magalhaes PROPOSAL
Clifford B VenereIndiaStephen Shaw NEGOTIATION
Aruna A DilliardGermanyAsiya Javayant RENEWAL
Sinclair V SergiAustraliaAnna Fali PROPOSAL
Aditya V InouyeUnited KingdomAmy Elsner RENEWAL
Ricardo D DilliardRussiaAnna Fali NEGOTIATION
Leon R WhobreyJapanIoni Bowcher PROPOSAL
Alejandro E RimArgentinaStephen Shaw RENEWAL
Francesco T OldroydSpainStephen Shaw RENEWAL
Clifford G SlusarskiIndiaAsiya Javayant NEGOTIATION
Misaki D OldroydItalyIvan Magalhaes PROPOSAL
Aditya V RulapaughItalyIoni Bowcher NEW
Jeanfrancois T BriddickCanadaAsiya Javayant PROPOSAL
Izzy N StockhamCanadaElwin Sharvill PROPOSAL
Ashley X CampainFranceAnna Fali RENEWAL
Kaitlin F RutaUnited KingdomStephen Shaw NEGOTIATION
Kadeem L FlosiBrazilXuxue Feng RENEWAL
Izzy C KolmetzBrazilBernardo Dominic PROPOSAL
Tony Z ChuiItalyIvan Magalhaes NEGOTIATION
Antonio O FlosiJapanIoni Bowcher PROPOSAL
Tony H AmigonGermanyAnna Fali UNQUALIFIED
Salvatore P RutaBrazilOnyama Limba QUALIFIED
Maisha N CaldareraIndiaElwin Sharvill UNQUALIFIED
Mayumi K ShinkoCanadaBernardo Dominic NEW
Stacey U DilliardUnited KingdomOnyama Limba RENEWAL
Greenwood U PaprockiSpainOnyama Limba PROPOSAL
Cody D OstroskyIndiaStephen Shaw UNQUALIFIED
Leja Y GlickCanadaAsiya Javayant QUALIFIED
Leja Y SlusarskiItalyAsiya Javayant RENEWAL
Stacey K DarakjyJapanAsiya Javayant QUALIFIED
Juan G ShinkoRussiaOnyama Limba QUALIFIED
Jeanfrancois A VocelkaBrazilAsiya Javayant RENEWAL
Chavez X RutaItalyOnyama Limba UNQUALIFIED
Munro T AmigonAustraliaBernardo Dominic NEW
Silvio N SaylorsFranceAmy Elsner NEGOTIATION
Misaki G OstroskySpainOnyama Limba RENEWAL
Maisha R StockhamGermanyAmy Elsner RENEWAL
Jefferson J FollerSpainAsiya Javayant QUALIFIED
Kaitlin F DilliardGermanyBernardo Dominic QUALIFIED
Smith V KuskoAustraliaAmy Elsner UNQUALIFIED
Murillo H NickaJapanBernardo Dominic NEGOTIATION
Maria A VenereSpainIvan Magalhaes UNQUALIFIED
Jennifer P CaldareraBrazilXuxue Feng UNQUALIFIED
Adams X VenereGermanyBernardo Dominic NEW
Octavia D GillianCanadaAsiya Javayant QUALIFIED
Alejandro U GillianGermanyOnyama Limba NEGOTIATION
Aruna G RimFranceStephen Shaw NEGOTIATION
Johnson O MarrierAustraliaIvan Magalhaes UNQUALIFIED
Kadeem S WhobreyIndiaIoni Bowcher UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Leja U IturbideUnited KingdomXuxue Feng UNQUALIFIED
Munro B MaletJapanAmy Elsner RENEWAL
Deepesh B KolmetzCanadaXuxue Feng UNQUALIFIED
Greenwood Z GauchoRussiaBernardo Dominic RENEWAL
Octavia E IturbideCanadaAsiya Javayant QUALIFIED
Greenwood R NestleSpainBernardo Dominic UNQUALIFIED
Leja R CampainBrazilIoni Bowcher NEGOTIATION
Misaki L RimIndiaAsiya Javayant NEGOTIATION
Salvatore F CampainAustraliaOnyama Limba QUALIFIED
Aditya F TollnerAustraliaAmy Elsner NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Murillo I StensethBrazil2024-06-08Feltz Printing Service NEW19Anna Fali
1001Ivar S VocelkaGermany2024-06-11Benton, John B Jr PROPOSAL34Xuxue Feng
1002David M SlusarskiUnited Kingdom2024-05-23Rangoni Of Florence NEGOTIATION65Stephen Shaw
1003Misaki U IturbideCanada2024-06-01Chapman, Ross E Esq NEW0Xuxue Feng
1004Ivar Q OldroydRussia2024-06-08Chemel, James L Cpa PROPOSAL70Anna Fali
1005Emily R IturbideItaly2024-06-12Rangoni Of Florence NEW36Stephen Shaw
1006Wickens P WhobreyArgentina2024-05-19Feiner Bros UNQUALIFIED66Asiya Javayant
1007Juan O GarufiArgentina2024-06-14Feiner Bros NEGOTIATION63Xuxue Feng
1008Smith Y AlbaresCanada2024-06-09Commercial Press NEGOTIATION82Ioni Bowcher
1009Munro V TollnerCanada2024-05-20Chanay, Jeffrey A Esq PROPOSAL42Onyama Limba
1010Nicolas H BologniaJapan2024-05-22Feltz Printing Service QUALIFIED78Asiya Javayant
1011Octavia G MaletRussia2024-05-16Printing Dimensions RENEWAL53Ioni Bowcher
1012James D SchemmerGermany2024-06-09Buckley Miller Wright UNQUALIFIED29Bernardo Dominic
1013Izzy O RutaUnited Kingdom2024-05-29Feltz Printing Service PROPOSAL63Onyama Limba
1014Aruna V DarakjyGermany2024-05-27Morlong Associates NEGOTIATION29Bernardo Dominic
1015Mujtaba B DoeSpain2024-06-08Benton, John B Jr UNQUALIFIED78Stephen Shaw
1016Jennifer K SergiFrance2024-06-14Printing Dimensions RENEWAL98Ivan Magalhaes
1017Murillo H SlusarskiAustralia2024-05-16Rousseaux, Michael Esq QUALIFIED47Xuxue Feng
1018Jones K FlosiBrazil2024-05-29Truhlar And Truhlar Attys UNQUALIFIED19Ivan Magalhaes
1019Darci F BowleyJapan2024-05-26Feltz Printing Service UNQUALIFIED75Stephen Shaw
1020Deepesh D PaprockiJapan2024-06-09Benton, John B Jr NEW12Ivan Magalhaes
1021Kaitlin X DilliardItaly2024-05-28Buckley Miller Wright NEW46Anna Fali
1022Johnson K SlusarskiAustralia2024-05-21Commercial Press QUALIFIED88Elwin Sharvill
1023Alejandro T PoquetteItaly2024-06-09King, Christopher A Esq UNQUALIFIED42Stephen Shaw
1024Faith D ShinkoJapan2024-06-07Buckley Miller Wright RENEWAL69Bernardo Dominic
1025Ashley Q WaycottJapan2024-05-26Feiner Bros NEGOTIATION90Xuxue Feng
1026Aika W MaletUnited Kingdom2024-06-02Chapman, Ross E Esq UNQUALIFIED7Xuxue Feng
1027Cody X MaletJapan2024-06-07Chapman, Ross E Esq NEGOTIATION20Anna Fali
1028Morrow S MacleadSpain2024-05-31Feiner Bros QUALIFIED34Anna Fali
1029Jefferson Z TollnerJapan2024-05-17Rangoni Of Florence NEW11Amy Elsner
1030Antonio X SaylorsBrazil2024-06-07Commercial Press PROPOSAL27Xuxue Feng
1031Ivar I StockhamUnited Kingdom2024-05-18Chemel, James L Cpa PROPOSAL81Amy Elsner
1032Emily A SaylorsIndia2024-06-07Rangoni Of Florence UNQUALIFIED39Xuxue Feng
1033Faith Q RoysterRussia2024-05-16Chapman, Ross E Esq NEW46Elwin Sharvill
1034Aditya J SlusarskiBrazil2024-05-26Rangoni Of Florence UNQUALIFIED64Asiya Javayant
1035Mujtaba H FerenczBrazil2024-05-25Dorl, James J Esq NEW0Onyama Limba
1036Murillo B ButtCanada2024-06-01Dorl, James J Esq RENEWAL92Asiya Javayant
1037Juan P GlickBrazil2024-05-25Chemel, James L Cpa PROPOSAL59Elwin Sharvill
1038Tony R PerinArgentina2024-06-09King, Christopher A Esq QUALIFIED63Amy Elsner
1039Izzy N MacleadCanada2024-05-21Benton, John B Jr RENEWAL11Anna Fali
1040Deepesh C PerinBrazil2024-06-06Truhlar And Truhlar Attys UNQUALIFIED49Amy Elsner
1041Johnson Z NickaUnited Kingdom2024-06-08Feiner Bros RENEWAL35Ioni Bowcher
1042Jeanfrancois E KolmetzCanada2024-05-24Benton, John B Jr RENEWAL17Anna Fali
1043Antonio P SlusarskiJapan2024-05-20Commercial Press NEW60Bernardo Dominic
1044Leja C FigeroaIndia2024-05-17Feltz Printing Service PROPOSAL46Xuxue Feng
1045Nicolas D SlusarskiBrazil2024-05-29Commercial Press PROPOSAL3Bernardo Dominic
1046Morrow N SlusarskiUnited Kingdom2024-05-24Feltz Printing Service RENEWAL96Xuxue Feng
1047Juan I FerenczGermany2024-06-11Buckley Miller Wright NEGOTIATION96Amy Elsner
1048James T ButtRussia2024-06-07Dorl, James J Esq NEGOTIATION86Stephen Shaw
1049Munro F GauchoBrazil2024-05-19Feiner Bros NEW22Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Juan F MaletRussiaAnna Fali PROPOSAL
Juan B WhobreyRussiaAsiya Javayant RENEWAL
Clifford M BowleyRussiaXuxue Feng NEGOTIATION
Silvio R ChuiArgentinaAsiya Javayant RENEWAL
Ashley V DoeIndiaAnna Fali QUALIFIED
Izzy B KolmetzCanadaStephen Shaw PROPOSAL
Mayumi B DilliardGermanyAmy Elsner UNQUALIFIED
Claire G VocelkaUnited KingdomBernardo Dominic RENEWAL
Greenwood D MorascaFranceStephen Shaw RENEWAL
Darci V MarrierBrazilXuxue Feng RENEWAL
Alejandro K MaletJapanIoni Bowcher QUALIFIED
Octavia P DarakjyRussiaStephen Shaw QUALIFIED
Ricardo U NestleUnited KingdomOnyama Limba RENEWAL
Juan R FlosiIndiaIvan Magalhaes QUALIFIED
Misaki P GillianBrazilIoni Bowcher NEW
Jennifer I NestleBrazilOnyama Limba NEGOTIATION
Munro D VocelkaIndiaIvan Magalhaes NEW
Claire I NickaBrazilBernardo Dominic NEW
Juan P RoysterAustraliaElwin Sharvill PROPOSAL
Maisha C VenereGermanyAsiya Javayant UNQUALIFIED
Arvin O OstroskyJapanAsiya Javayant NEGOTIATION
Misaki H BriddickArgentinaIvan Magalhaes NEGOTIATION
Cody Q AlbaresFranceIoni Bowcher PROPOSAL
Maria R FerenczCanadaAnna Fali UNQUALIFIED
Jeanfrancois M FigeroaFranceAnna Fali PROPOSAL
David A FerenczCanadaAnna Fali NEW
Johnson L FerenczGermanyAsiya Javayant NEW
Jeanfrancois S ButtGermanyAsiya Javayant RENEWAL
Ivar M BologniaItalyAmy Elsner PROPOSAL
Clifford U PerinUnited KingdomIvan Magalhaes PROPOSAL
Clifford D VenereRussiaIoni Bowcher RENEWAL
Stacey D StensethCanadaAmy Elsner UNQUALIFIED
Maria S PaprockiFranceAmy Elsner PROPOSAL
Arvin H GauchoItalyBernardo Dominic NEW
Kadeem K PerinUnited KingdomIvan Magalhaes NEGOTIATION
Darci V SergiFranceAsiya Javayant PROPOSAL
Darci M GarufiUnited KingdomBernardo Dominic NEGOTIATION
Rodrigues F WaycottBrazilIoni Bowcher NEW
David I WhobreyJapanStephen Shaw UNQUALIFIED
Kaitlin C MacleadUnited KingdomAnna Fali RENEWAL
Izzy R StensethIndiaAnna Fali PROPOSAL
Antonio M GauchoAustraliaAsiya Javayant NEGOTIATION
Greenwood L NestleAustraliaElwin Sharvill UNQUALIFIED
Darci H BriddickBrazilAmy Elsner NEW
David N VocelkaArgentinaIoni Bowcher RENEWAL
Kadeem O RutaItalyAsiya Javayant NEGOTIATION
Aditya H NickaItalyXuxue Feng NEW
Greenwood U SchemmerIndiaAnna Fali NEGOTIATION
Juan M WhobreyGermanyAmy Elsner NEGOTIATION
Munro I BologniaIndiaStephen Shaw QUALIFIED
Frozen Columns
Name
Antonio T Doe
Stacey O Nicka
Leon O Amigon
Darci X Paprocki
Ricardo X Ruta
Morrow Q Caudy
Murillo Q Rim
Cody Z Kusko
Maria Z Butt
Greenwood B Venere
Francesco J Foller
Silvio C Gillian
Alejandro K Royster
Murillo P Paprocki
Juan U Garufi
Jennifer H Rim
Tony Y Amigon
Silvio M Whobrey
Ashley I Caldarera
Clifford A Darakjy
Kadeem F Caldarera
Aruna C Morasca
Mujtaba B Waycott
Morrow Q Paprocki
Jennifer D Slusarski
Wickens S Stenseth
Maisha H Gaucho
Mayumi T Oldroyd
Emily U Slusarski
Ricardo B Perin
Ricardo H Royster
Misaki X Caldarera
Claire S Saylors
Wickens R Darakjy
Claire E Perin
Jefferson E Gillian
Claire O Dilliard
Sinclair L Albares
Juan S Venere
Jefferson M Doe
Leon A Morasca
Jones N Iturbide
Emily H Dilliard
James M Caldarera
Smith K Albares
Jennifer W Morasca
Francesco Q Stenseth
Jefferson F Nicka
Ivar S Morasca
Sinclair I Gillian
IdCountryDate
1000Canada2024-05-30
1001Russia2024-05-24
1002Japan2024-05-20
1003Italy2024-06-09
1004United Kingdom2024-05-25
1005Japan2024-06-10
1006Australia2024-06-01
1007Spain2024-06-09
1008Japan2024-05-31
1009Argentina2024-06-04
1010India2024-05-22
1011Canada2024-05-31
1012Italy2024-05-18
1013France2024-05-25
1014Spain2024-05-24
1015Japan2024-05-21
1016Argentina2024-06-06
1017Italy2024-06-08
1018Japan2024-06-04
1019India2024-06-12
1020Russia2024-06-03
1021Japan2024-06-02
1022Spain2024-05-16
1023Canada2024-06-10
1024United Kingdom2024-06-07
1025Australia2024-06-09
1026Argentina2024-06-09
1027Spain2024-06-07
1028Italy2024-06-05
1029France2024-05-26
1030Spain2024-06-13
1031Brazil2024-05-22
1032Germany2024-05-19
1033India2024-05-16
1034India2024-06-08
1035Australia2024-05-18
1036Italy2024-06-08
1037Japan2024-05-25
1038Argentina2024-06-13
1039Italy2024-05-24
1040Japan2024-06-04
1041France2024-05-31
1042Argentina2024-05-22
1043France2024-06-09
1044Germany2024-05-24
1045Brazil2024-06-09
1046Germany2024-05-26
1047United Kingdom2024-05-22
1048United Kingdom2024-05-16
1049Germany2024-05-28

On-Demand Data

NameIdCountryDate
Jeanfrancois R Malet1000France2024-05-17
Jefferson Q Poquette1001Italy2024-05-22
Octavia F Kolmetz1002Argentina2024-05-22
Faith F Caudy1003Brazil2024-06-07
Aditya I Ostrosky1004Australia2024-06-12
Leon E Ruta1005France2024-05-19
Mujtaba K Rim1006Russia2024-05-17
Kadeem O Stockham1007France2024-05-24
Clifford K Rim1008Argentina2024-06-10
David Q Bowley1009Brazil2024-06-14
Darci L Iturbide1010Brazil2024-05-27
Faith G Oldroyd1011France2024-06-05
Kaitlin X Caldarera1012Brazil2024-05-19
Francesco K Dilliard1013Canada2024-06-13
Ivar I Waycott1014France2024-05-22
Aditya G Sergi1015Australia2024-06-11
Adams Q Malet1016Japan2024-05-28
Salvatore Y Malet1017United Kingdom2024-05-17
Kadeem X Ostrosky1018India2024-06-03
David U Foller1019Spain2024-06-09
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Kaitlin D BowleyJapanAnna Fali QUALIFIED
Salvatore D MacleadSpainAmy Elsner RENEWAL
James B OstroskyGermanyIoni Bowcher QUALIFIED
Ashley S SaylorsItalyAnna Fali QUALIFIED
Nicolas K MarrierBrazilAsiya Javayant PROPOSAL
Nicolas X CaudyIndiaAnna Fali NEW
Sinclair E NickaJapanXuxue Feng RENEWAL
Arvin Z SchemmerIndiaAsiya Javayant NEW
Arvin I MaletItalyIoni Bowcher NEGOTIATION
Isabel T SergiIndiaElwin Sharvill NEW
Tony J PaprockiArgentinaAnna Fali RENEWAL
David G InouyeGermanyStephen Shaw RENEWAL
Wickens E NestleArgentinaIvan Magalhaes PROPOSAL
Smith P FollerBrazilIoni Bowcher NEW
Jennifer U InouyeUnited KingdomAsiya Javayant NEW
Jeanfrancois C TollnerBrazilIvan Magalhaes UNQUALIFIED
Stacey Q SchemmerItalyIoni Bowcher RENEWAL
Antonio S CampainIndiaElwin Sharvill NEW
Sinclair Q DarakjyBrazilStephen Shaw RENEWAL
Ricardo U FigeroaItalyXuxue Feng NEGOTIATION
Murillo B TollnerRussiaOnyama Limba QUALIFIED
Costa T MorascaBrazilIvan Magalhaes PROPOSAL
Tony Y CaudyFranceAnna Fali NEW
Julie L DarakjyJapanXuxue Feng UNQUALIFIED
Chavez F RimFranceIvan Magalhaes PROPOSAL
Nicolas Y TollnerRussiaAsiya Javayant UNQUALIFIED
Darci L MacleadArgentinaElwin Sharvill RENEWAL
Octavia B DilliardSpainIoni Bowcher PROPOSAL
Claire S BowleyUnited KingdomAsiya Javayant UNQUALIFIED
Jeanfrancois F WhobreyCanadaBernardo Dominic NEW
Isabel M BriddickAustraliaAnna Fali UNQUALIFIED
Salvatore Z WhobreyAustraliaOnyama Limba RENEWAL
Kadeem Y KolmetzRussiaAmy Elsner RENEWAL
Cody B IturbideBrazilAsiya Javayant PROPOSAL
Rodrigues R GlickSpainBernardo Dominic RENEWAL
Aruna G RutaSpainOnyama Limba QUALIFIED
Misaki I MaletCanadaXuxue Feng UNQUALIFIED
Octavia U GarufiUnited KingdomBernardo Dominic QUALIFIED
Johnson Q WieserFranceStephen Shaw NEW
Chavez F MacleadAustraliaOnyama Limba NEGOTIATION

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