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
Aditya H RulapaughGermanyStephen Shaw PROPOSAL
Greenwood G ChuiArgentinaIvan Magalhaes PROPOSAL
Jefferson F KolmetzIndiaAnna Fali PROPOSAL
Greenwood K WaycottAustraliaBernardo Dominic QUALIFIED
Maria J VenereGermanyElwin Sharvill NEW
Aditya B WhobreyFranceElwin Sharvill UNQUALIFIED
David C BologniaUnited KingdomStephen Shaw RENEWAL
Isabel L OstroskyRussiaElwin Sharvill PROPOSAL
Morrow K CaudyUnited KingdomBernardo Dominic PROPOSAL
Darci Z MaletCanadaAsiya Javayant UNQUALIFIED
Maria J CampainJapanStephen Shaw QUALIFIED
Misaki Z MaletAustraliaBernardo Dominic QUALIFIED
Jefferson H SaylorsJapanOnyama Limba QUALIFIED
Wickens A SlusarskiAustraliaAnna Fali NEGOTIATION
Murillo A AlbaresIndiaElwin Sharvill PROPOSAL
Jennifer B DilliardGermanyAmy Elsner UNQUALIFIED
Jones X CaudyAustraliaAsiya Javayant NEGOTIATION
Ashley J PoquetteBrazilIvan Magalhaes UNQUALIFIED
Ashley Q BowleyArgentinaXuxue Feng NEGOTIATION
Greenwood D FlosiRussiaAsiya Javayant RENEWAL
Jones H BriddickArgentinaAnna Fali NEGOTIATION
Darci O InouyeJapanIvan Magalhaes QUALIFIED
Mayumi Q TollnerRussiaBernardo Dominic RENEWAL
Arvin F ShinkoFranceIvan Magalhaes NEW
Morrow O ShinkoAustraliaAsiya Javayant NEGOTIATION
Ashley A SergiArgentinaIoni Bowcher NEGOTIATION
Arvin C VenereBrazilElwin Sharvill QUALIFIED
Mujtaba G GillianIndiaStephen Shaw PROPOSAL
Smith X InouyeJapanOnyama Limba NEW
Salvatore B WhobreyBrazilIvan Magalhaes RENEWAL
Ivar T ShinkoJapanStephen Shaw QUALIFIED
Sinclair K DoeGermanyIvan Magalhaes NEW
Alejandro I PoquetteCanadaStephen Shaw RENEWAL
Mayumi O PaprockiGermanyStephen Shaw QUALIFIED
Aditya N FigeroaRussiaIvan Magalhaes QUALIFIED
Alejandro B AmigonRussiaAnna Fali RENEWAL
Adams P SlusarskiBrazilAsiya Javayant RENEWAL
Munro H GauchoCanadaElwin Sharvill RENEWAL
Mayumi D VenereBrazilIvan Magalhaes RENEWAL
Salvatore H SaylorsItalyAsiya Javayant NEW
Emily V FlosiArgentinaOnyama Limba PROPOSAL
Juan K SaylorsItalyBernardo Dominic PROPOSAL
Isabel E SlusarskiJapanOnyama Limba UNQUALIFIED
Smith Y VenereItalyIvan Magalhaes PROPOSAL
Alejandro N IturbideBrazilStephen Shaw QUALIFIED
Mayumi K MaletSpainOnyama Limba RENEWAL
Aruna N NickaAustraliaXuxue Feng QUALIFIED
Chavez R OldroydItalyElwin Sharvill NEW
Johnson C FlosiGermanyAnna Fali PROPOSAL
Izzy U BowleySpainOnyama Limba PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Mujtaba H SergiJapanBernardo Dominic QUALIFIED
Maria A CampainGermanyAnna Fali NEW
Deepesh Z ButtSpainElwin Sharvill NEGOTIATION
Smith U MacleadIndiaElwin Sharvill RENEWAL
Julie H ShinkoIndiaAmy Elsner NEGOTIATION
Antonio J MacleadIndiaStephen Shaw NEGOTIATION
Silvio I SchemmerFranceXuxue Feng RENEWAL
David R WieserUnited KingdomIvan Magalhaes UNQUALIFIED
Ricardo Q StockhamArgentinaIvan Magalhaes PROPOSAL
Ricardo K NestleJapanBernardo Dominic UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Greenwood K DilliardUnited Kingdom2024-06-04Rangoni Of Florence QUALIFIED75Onyama Limba
1001Antonio T PoquetteItaly2024-06-07Chemel, James L Cpa RENEWAL28Anna Fali
1002Jennifer S AmigonItaly2024-05-17Morlong Associates NEW71Amy Elsner
1003Mayumi B VocelkaFrance2024-05-19Feltz Printing Service PROPOSAL55Asiya Javayant
1004Aika S PaprockiJapan2024-06-04Feiner Bros NEW0Ioni Bowcher
1005David S VenereArgentina2024-06-06Printing Dimensions QUALIFIED3Ivan Magalhaes
1006Nicolas F OldroydIndia2024-05-23Chemel, James L Cpa PROPOSAL20Anna Fali
1007Adams H BowleyBrazil2024-06-08Feltz Printing Service NEGOTIATION43Bernardo Dominic
1008Munro X WaycottJapan2024-05-25Morlong Associates UNQUALIFIED68Bernardo Dominic
1009Salvatore J CaudyGermany2024-05-16Rangoni Of Florence NEW4Ivan Magalhaes
1010Kaitlin Q OstroskyCanada2024-06-06Chemel, James L Cpa RENEWAL82Amy Elsner
1011Aika E DarakjyCanada2024-05-16Buckley Miller Wright NEGOTIATION54Xuxue Feng
1012Jones F RoysterGermany2024-06-09Chemel, James L Cpa UNQUALIFIED46Amy Elsner
1013Octavia T FigeroaArgentina2024-06-13Truhlar And Truhlar Attys PROPOSAL95Elwin Sharvill
1014Wickens H SlusarskiUnited Kingdom2024-05-28Rousseaux, Michael Esq QUALIFIED51Xuxue Feng
1015Julie I InouyeCanada2024-05-19Printing Dimensions NEW24Onyama Limba
1016Clifford J WieserRussia2024-05-25King, Christopher A Esq UNQUALIFIED49Asiya Javayant
1017Leon H RoysterGermany2024-06-01Benton, John B Jr NEGOTIATION69Bernardo Dominic
1018Aika N DilliardJapan2024-05-20Morlong Associates PROPOSAL60Ivan Magalhaes
1019Ivar Z OstroskyAustralia2024-06-02Chapman, Ross E Esq NEW34Asiya Javayant
1020Rodrigues F RutaSpain2024-05-24Feltz Printing Service NEGOTIATION40Amy Elsner
1021James Y KolmetzFrance2024-06-12Dorl, James J Esq RENEWAL15Stephen Shaw
1022Antonio N PaprockiUnited Kingdom2024-05-28Buckley Miller Wright NEGOTIATION71Stephen Shaw
1023Chavez H GillianGermany2024-06-01Benton, John B Jr QUALIFIED61Xuxue Feng
1024Munro E VocelkaGermany2024-06-10Rangoni Of Florence PROPOSAL32Bernardo Dominic
1025Nicolas R RoysterFrance2024-06-01Commercial Press RENEWAL54Stephen Shaw
1026Aika Y PaprockiIndia2024-06-12Chapman, Ross E Esq QUALIFIED73Onyama Limba
1027Deepesh A DoeCanada2024-06-06Feiner Bros UNQUALIFIED31Amy Elsner
1028Faith A VocelkaSpain2024-06-12Commercial Press PROPOSAL48Elwin Sharvill
1029Izzy P PoquetteJapan2024-06-13Benton, John B Jr NEW86Stephen Shaw
1030Francesco H OstroskyAustralia2024-06-09Benton, John B Jr QUALIFIED45Ivan Magalhaes
1031Jeanfrancois Q MaletJapan2024-05-25King, Christopher A Esq NEW65Ivan Magalhaes
1032Morrow C ShinkoRussia2024-05-22Truhlar And Truhlar Attys PROPOSAL91Ioni Bowcher
1033Darci N WaycottGermany2024-05-30Buckley Miller Wright RENEWAL10Anna Fali
1034Cody A SchemmerItaly2024-06-10King, Christopher A Esq QUALIFIED14Xuxue Feng
1035Smith P SchemmerUnited Kingdom2024-05-15Rousseaux, Michael Esq UNQUALIFIED90Ivan Magalhaes
1036Wickens I ShinkoArgentina2024-06-13Dorl, James J Esq QUALIFIED51Xuxue Feng
1037Wickens N RimSpain2024-05-28Rousseaux, Michael Esq QUALIFIED42Anna Fali
1038Kadeem G MaletGermany2024-06-08Printing Dimensions PROPOSAL91Xuxue Feng
1039Jennifer F VocelkaIndia2024-05-19Chapman, Ross E Esq NEW55Stephen Shaw
1040Nicolas M PerinRussia2024-06-01King, Christopher A Esq RENEWAL73Anna Fali
1041Murillo M PoquetteAustralia2024-05-24Morlong Associates NEW9Asiya Javayant
1042Sinclair Q StockhamBrazil2024-06-01Benton, John B Jr QUALIFIED0Xuxue Feng
1043Isabel R SlusarskiRussia2024-06-12Chemel, James L Cpa RENEWAL34Bernardo Dominic
1044Claire J TollnerUnited Kingdom2024-05-25Benton, John B Jr NEGOTIATION5Stephen Shaw
1045Kadeem P PoquetteBrazil2024-06-08Chemel, James L Cpa NEW44Elwin Sharvill
1046Tony B InouyeRussia2024-05-25Dorl, James J Esq RENEWAL94Ivan Magalhaes
1047Juan G OstroskyRussia2024-05-20Feltz Printing Service NEGOTIATION57Ivan Magalhaes
1048Leja E FlosiGermany2024-05-19Truhlar And Truhlar Attys NEW71Onyama Limba
1049Alejandro Y FollerArgentina2024-06-10King, Christopher A Esq PROPOSAL8Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Ricardo F MorascaSpainAnna Fali PROPOSAL
Juan T ChuiRussiaStephen Shaw UNQUALIFIED
Aruna B RulapaughArgentinaBernardo Dominic NEGOTIATION
Kadeem D FerenczBrazilAmy Elsner NEGOTIATION
Johnson F MaletCanadaElwin Sharvill QUALIFIED
Murillo Z RutaAustraliaAsiya Javayant PROPOSAL
Leja I BriddickBrazilAnna Fali NEW
Francesco E InouyeCanadaAnna Fali RENEWAL
Ashley F FollerJapanOnyama Limba PROPOSAL
Jefferson R BowleyCanadaBernardo Dominic PROPOSAL
Leon S DilliardJapanIoni Bowcher RENEWAL
Jeanfrancois A SaylorsItalyElwin Sharvill UNQUALIFIED
Darci Y RulapaughCanadaElwin Sharvill PROPOSAL
Kaitlin N ChuiCanadaStephen Shaw NEW
Alejandro Y AlbaresSpainIoni Bowcher QUALIFIED
Maria J OstroskyBrazilOnyama Limba RENEWAL
Mujtaba C SergiItalyOnyama Limba QUALIFIED
Cody Y CampainUnited KingdomOnyama Limba PROPOSAL
Sinclair X FigeroaBrazilAsiya Javayant NEGOTIATION
Tony N CampainUnited KingdomAnna Fali NEW
Munro W AmigonBrazilBernardo Dominic UNQUALIFIED
Misaki W AlbaresSpainElwin Sharvill UNQUALIFIED
Kadeem Z AmigonItalyIoni Bowcher PROPOSAL
Mayumi I MacleadUnited KingdomAmy Elsner QUALIFIED
Salvatore Z VocelkaBrazilElwin Sharvill QUALIFIED
Francesco R NestleUnited KingdomAsiya Javayant NEW
Isabel D MorascaJapanStephen Shaw RENEWAL
Alejandro Y PaprockiJapanAsiya Javayant UNQUALIFIED
Tony B ShinkoFranceAmy Elsner QUALIFIED
Silvio V MarrierItalyIvan Magalhaes NEGOTIATION
Deepesh H StockhamGermanyIvan Magalhaes QUALIFIED
Tony M CaldareraGermanyIvan Magalhaes PROPOSAL
Mujtaba B StensethIndiaIoni Bowcher PROPOSAL
Clifford Y FlosiBrazilOnyama Limba QUALIFIED
Isabel B GillianGermanyElwin Sharvill RENEWAL
Kaitlin R GauchoGermanyXuxue Feng PROPOSAL
Ivar B PaprockiIndiaAnna Fali PROPOSAL
Nicolas X RoysterItalyAmy Elsner NEGOTIATION
Sinclair H StockhamBrazilOnyama Limba PROPOSAL
Wickens X BriddickAustraliaIvan Magalhaes UNQUALIFIED
Mujtaba U WieserArgentinaAmy Elsner NEGOTIATION
Nicolas F OldroydItalyXuxue Feng RENEWAL
Ashley Z VocelkaBrazilXuxue Feng PROPOSAL
Ashley E RoysterUnited KingdomIoni Bowcher PROPOSAL
Izzy W CampainArgentinaIoni Bowcher NEGOTIATION
Aditya V BologniaAustraliaStephen Shaw QUALIFIED
Kadeem S RutaGermanyIoni Bowcher NEGOTIATION
Deepesh Z WieserItalyIvan Magalhaes QUALIFIED
James O SlusarskiBrazilBernardo Dominic UNQUALIFIED
Wickens J BriddickBrazilAmy Elsner RENEWAL
Frozen Columns
Name
Mujtaba H Dilliard
Jennifer B Gillian
Francesco D Briddick
Mujtaba Z Poquette
Ashley E Amigon
Adams O Saylors
Faith I Paprocki
David O Oldroyd
Kaitlin J Nestle
Claire R Slusarski
Kaitlin A Ruta
Alejandro S Schemmer
Munro K Bolognia
Mujtaba Z Ferencz
Ivar L Rulapaugh
Greenwood C Briddick
Rodrigues E Garufi
Jones K Nicka
Munro I Inouye
Misaki W Poquette
Tony O Caudy
Izzy Y Maclead
Arvin P Butt
Salvatore B Whobrey
Darci B Gillian
Leja B Darakjy
Jennifer U Glick
Mujtaba E Chui
Jones Z Amigon
Costa A Saylors
Maisha V Vocelka
Julie Z Venere
Izzy G Poquette
Aika E Garufi
Jones L Rim
Jefferson N Campain
Rodrigues J Tollner
Munro E Stenseth
Maria O Iturbide
Nicolas O Ruta
Costa W Perin
David P Foller
Maria A Dilliard
James A Nestle
Greenwood I Rim
Murillo O Figeroa
Juan S Caudy
Kadeem W Paprocki
Ricardo S Darakjy
Alejandro P Schemmer
IdCountryDate
1000Russia2024-06-06
1001United Kingdom2024-05-23
1002Italy2024-05-24
1003Russia2024-06-03
1004Germany2024-05-17
1005Russia2024-05-23
1006Canada2024-05-26
1007France2024-05-23
1008France2024-05-18
1009Russia2024-06-08
1010Germany2024-06-07
1011Brazil2024-05-22
1012United Kingdom2024-05-17
1013India2024-06-07
1014Australia2024-05-24
1015Brazil2024-06-10
1016Russia2024-05-23
1017United Kingdom2024-05-28
1018Italy2024-06-13
1019Japan2024-06-01
1020India2024-05-27
1021Japan2024-06-06
1022Russia2024-05-29
1023Italy2024-06-02
1024Brazil2024-05-18
1025Argentina2024-06-12
1026Brazil2024-06-13
1027France2024-06-07
1028Italy2024-05-23
1029Argentina2024-05-23
1030Italy2024-05-26
1031Brazil2024-05-25
1032Canada2024-06-02
1033Brazil2024-05-30
1034Japan2024-05-19
1035Argentina2024-06-08
1036Germany2024-05-17
1037Japan2024-05-17
1038Italy2024-05-15
1039Canada2024-06-13
1040France2024-06-03
1041Germany2024-05-15
1042Russia2024-06-02
1043Germany2024-05-27
1044Italy2024-05-22
1045Argentina2024-06-04
1046Italy2024-05-18
1047Russia2024-06-03
1048Brazil2024-06-02
1049Canada2024-06-11

On-Demand Data

NameIdCountryDate
Morrow M Flosi1000Germany2024-05-17
Nicolas W Caldarera1001Germany2024-05-28
Rodrigues U Oldroyd1002Brazil2024-05-19
Cody A Chui1003Italy2024-05-26
Emily W Whobrey1004France2024-06-04
Faith F Tollner1005Australia2024-06-08
Costa C Malet1006Germany2024-05-17
Salvatore B Rulapaugh1007United Kingdom2024-06-06
Octavia B Caldarera1008Argentina2024-05-27
Greenwood U Doe1009Russia2024-05-24
Costa N Shinko1010Spain2024-05-26
Arvin O Figeroa1011India2024-05-23
Cody B Perin1012United Kingdom2024-06-08
Kaitlin K Oldroyd1013Spain2024-06-05
Francesco D Stenseth1014Italy2024-05-22
Francesco D Bowley1015Spain2024-05-23
Cody Q Rim1016Russia2024-05-27
Darci R Slusarski1017Brazil2024-05-18
Smith B Paprocki1018Argentina2024-06-09
Wickens H Rulapaugh1019Japan2024-05-24
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Julie I SchemmerSpainOnyama Limba PROPOSAL
Adams H ShinkoRussiaIoni Bowcher RENEWAL
Cody P ShinkoGermanyIvan Magalhaes NEW
Octavia C GarufiSpainStephen Shaw PROPOSAL
Sinclair O FollerSpainBernardo Dominic UNQUALIFIED
Jefferson F PoquetteCanadaIoni Bowcher RENEWAL
Greenwood M KuskoSpainStephen Shaw RENEWAL
Jennifer O PoquetteIndiaElwin Sharvill UNQUALIFIED
Chavez W PoquetteItalyAnna Fali UNQUALIFIED
Aika G NickaCanadaXuxue Feng PROPOSAL
Jefferson Q AmigonItalyXuxue Feng PROPOSAL
Greenwood J InouyeSpainAmy Elsner QUALIFIED
Wickens S PerinItalyXuxue Feng PROPOSAL
Aruna U InouyeIndiaIoni Bowcher PROPOSAL
Adams C CampainJapanBernardo Dominic QUALIFIED
Faith R GarufiArgentinaIoni Bowcher PROPOSAL
Aruna T InouyeArgentinaOnyama Limba UNQUALIFIED
Clifford S KuskoItalyAnna Fali QUALIFIED
Silvio Q WhobreyAustraliaAnna Fali QUALIFIED
Ivar F OldroydSpainAmy Elsner PROPOSAL
Leja G StockhamItalyIvan Magalhaes NEW
Clifford Z OldroydJapanIoni Bowcher RENEWAL
Alejandro I WieserJapanAnna Fali UNQUALIFIED
Maisha H FerenczJapanAnna Fali NEW
Alejandro O KuskoIndiaStephen Shaw UNQUALIFIED
Julie I WhobreyGermanyStephen Shaw NEW
Smith W CaldareraIndiaIvan Magalhaes QUALIFIED
Sinclair B SchemmerItalyAmy Elsner NEW
Nicolas S DarakjyGermanyIoni Bowcher NEGOTIATION
Leon C AlbaresBrazilAnna Fali NEW
Johnson U FlosiUnited KingdomStephen Shaw NEGOTIATION
Stacey X FollerRussiaBernardo Dominic QUALIFIED
Silvio P ButtBrazilAmy Elsner QUALIFIED
Claire A RulapaughRussiaIvan Magalhaes NEGOTIATION
Aika Y CaldareraGermanyOnyama Limba RENEWAL
Izzy N DilliardBrazilIoni Bowcher RENEWAL
Alejandro N SlusarskiFranceXuxue Feng QUALIFIED
Darci G GillianIndiaBernardo Dominic QUALIFIED
Octavia D BologniaSpainOnyama Limba NEW
Ricardo V NickaUnited KingdomElwin Sharvill 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>