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
Sinclair P BologniaJapanIvan Magalhaes NEGOTIATION
Emily P GauchoJapanOnyama Limba UNQUALIFIED
Jeanfrancois D CampainItalyStephen Shaw QUALIFIED
Jennifer H RutaItalyAsiya Javayant QUALIFIED
Darci F SchemmerFranceBernardo Dominic RENEWAL
Kaitlin D SergiJapanStephen Shaw RENEWAL
Cody S RutaJapanAnna Fali PROPOSAL
Johnson W FigeroaUnited KingdomAnna Fali PROPOSAL
Stacey L RutaRussiaAsiya Javayant RENEWAL
Claire G OldroydFranceIvan Magalhaes NEW
Aika W NickaBrazilStephen Shaw RENEWAL
Jones Q ButtIndiaAmy Elsner NEW
Jefferson Y DilliardBrazilStephen Shaw PROPOSAL
Mujtaba N KolmetzGermanyAnna Fali RENEWAL
Cody P SlusarskiGermanyAmy Elsner NEW
Nicolas A GlickAustraliaBernardo Dominic NEW
Misaki A ButtItalyIvan Magalhaes QUALIFIED
Kadeem K GlickCanadaBernardo Dominic NEGOTIATION
Mayumi H StensethRussiaStephen Shaw QUALIFIED
Aika B SergiUnited KingdomOnyama Limba NEGOTIATION
Izzy Y WaycottCanadaAmy Elsner RENEWAL
Faith P ButtSpainIoni Bowcher QUALIFIED
Faith C BriddickSpainAmy Elsner QUALIFIED
Misaki Q MarrierIndiaStephen Shaw RENEWAL
Tony Y GlickAustraliaIoni Bowcher NEW
Leon M SergiSpainAmy Elsner RENEWAL
Rodrigues M GarufiUnited KingdomIvan Magalhaes NEGOTIATION
Silvio F TollnerItalyIoni Bowcher PROPOSAL
Murillo W MarrierCanadaStephen Shaw RENEWAL
Julie R FigeroaItalyElwin Sharvill QUALIFIED
Octavia C WaycottJapanStephen Shaw RENEWAL
Greenwood P BologniaAustraliaIoni Bowcher NEW
Kadeem B MaletSpainXuxue Feng NEGOTIATION
Darci D FollerArgentinaIvan Magalhaes UNQUALIFIED
Stacey U StensethIndiaIvan Magalhaes NEW
Chavez N MacleadJapanStephen Shaw NEW
Morrow S GauchoRussiaIoni Bowcher UNQUALIFIED
Rodrigues W GauchoIndiaIvan Magalhaes PROPOSAL
Francesco D AlbaresSpainStephen Shaw RENEWAL
Ashley H FigeroaSpainAmy Elsner NEGOTIATION
Costa W StensethAustraliaAsiya Javayant NEGOTIATION
Ricardo O DoeAustraliaIvan Magalhaes RENEWAL
Greenwood T VocelkaGermanyAsiya Javayant RENEWAL
Jeanfrancois W AlbaresItalyBernardo Dominic RENEWAL
Jefferson M InouyeBrazilIvan Magalhaes QUALIFIED
Isabel D BowleyBrazilAmy Elsner UNQUALIFIED
Aruna V WhobreyCanadaAmy Elsner NEGOTIATION
Jones E NickaArgentinaAnna Fali PROPOSAL
Faith W SlusarskiAustraliaAsiya Javayant UNQUALIFIED
Jennifer M InouyeAustraliaAnna Fali NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Jefferson A InouyeBrazilIoni Bowcher RENEWAL
Darci W AlbaresBrazilIoni Bowcher RENEWAL
Jefferson K StockhamSpainAsiya Javayant QUALIFIED
Stacey R StockhamFranceXuxue Feng PROPOSAL
Kadeem Q MorascaUnited KingdomIoni Bowcher UNQUALIFIED
Juan M PaprockiFranceIvan Magalhaes UNQUALIFIED
Claire T WhobreyIndiaIoni Bowcher RENEWAL
Ashley A SergiGermanyBernardo Dominic UNQUALIFIED
Mujtaba T SaylorsRussiaIvan Magalhaes NEGOTIATION
Greenwood B StensethSpainStephen Shaw PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Mayumi S PaprockiAustralia2024-05-25Chanay, Jeffrey A Esq RENEWAL85Ivan Magalhaes
1001Jefferson F FerenczSpain2024-05-09King, Christopher A Esq QUALIFIED89Asiya Javayant
1002Misaki V MorascaArgentina2024-05-18Feiner Bros UNQUALIFIED79Ioni Bowcher
1003Chavez K NestleUnited Kingdom2024-05-24Benton, John B Jr NEGOTIATION88Bernardo Dominic
1004Emily U SaylorsSpain2024-05-23Chapman, Ross E Esq NEW51Amy Elsner
1005Octavia O DoeUnited Kingdom2024-05-11Truhlar And Truhlar Attys QUALIFIED0Xuxue Feng
1006Munro T GauchoAustralia2024-05-26Rangoni Of Florence QUALIFIED67Asiya Javayant
1007Aditya Y NestleUnited Kingdom2024-05-08Benton, John B Jr NEGOTIATION48Asiya Javayant
1008Isabel U SergiAustralia2024-05-21Commercial Press PROPOSAL50Ioni Bowcher
1009Rodrigues X BowleySpain2024-05-03Buckley Miller Wright QUALIFIED86Amy Elsner
1010Maisha B DilliardGermany2024-05-07King, Christopher A Esq NEW48Elwin Sharvill
1011Kaitlin A GlickItaly2024-05-04Feiner Bros RENEWAL65Asiya Javayant
1012Maria G WieserArgentina2024-05-25Morlong Associates NEW2Amy Elsner
1013Jefferson T DilliardGermany2024-04-28Chapman, Ross E Esq QUALIFIED57Elwin Sharvill
1014Maria X ChuiSpain2024-05-10Feiner Bros QUALIFIED22Elwin Sharvill
1015David D RimCanada2024-05-09Rousseaux, Michael Esq NEGOTIATION95Amy Elsner
1016Aruna E CaldareraBrazil2024-05-26Chapman, Ross E Esq NEW59Elwin Sharvill
1017Silvio O AmigonRussia2024-05-11Commercial Press PROPOSAL56Asiya Javayant
1018Munro T KolmetzArgentina2024-05-21Rousseaux, Michael Esq PROPOSAL25Onyama Limba
1019Aditya W OstroskyBrazil2024-05-24Dorl, James J Esq PROPOSAL5Stephen Shaw
1020Alejandro O SergiGermany2024-04-28King, Christopher A Esq NEGOTIATION27Ioni Bowcher
1021Sinclair Y MorascaBrazil2024-05-10Chemel, James L Cpa QUALIFIED98Xuxue Feng
1022Stacey Y MarrierFrance2024-05-23Chemel, James L Cpa NEGOTIATION40Asiya Javayant
1023Kaitlin K FigeroaGermany2024-05-10Chanay, Jeffrey A Esq NEGOTIATION74Stephen Shaw
1024Alejandro C RoysterFrance2024-05-21Chapman, Ross E Esq NEGOTIATION38Bernardo Dominic
1025Darci L GlickFrance2024-05-14Chanay, Jeffrey A Esq PROPOSAL78Stephen Shaw
1026Emily U WhobreyArgentina2024-05-15Chemel, James L Cpa UNQUALIFIED77Xuxue Feng
1027Maria H SchemmerGermany2024-04-30Chanay, Jeffrey A Esq NEW54Bernardo Dominic
1028Jennifer F FigeroaGermany2024-05-04Morlong Associates RENEWAL99Bernardo Dominic
1029David X GlickCanada2024-05-24Chanay, Jeffrey A Esq PROPOSAL74Anna Fali
1030Aditya C NestleIndia2024-05-09Printing Dimensions NEW36Anna Fali
1031Stacey W StensethAustralia2024-05-21Feltz Printing Service UNQUALIFIED13Xuxue Feng
1032Chavez M RutaCanada2024-05-21Feltz Printing Service RENEWAL78Ivan Magalhaes
1033Munro Q ShinkoJapan2024-05-19Feltz Printing Service RENEWAL66Ivan Magalhaes
1034Julie E RoysterIndia2024-05-03Feltz Printing Service QUALIFIED49Asiya Javayant
1035Ricardo A FollerGermany2024-05-12Chanay, Jeffrey A Esq NEW73Bernardo Dominic
1036Isabel B DoeUnited Kingdom2024-05-17Dorl, James J Esq RENEWAL48Bernardo Dominic
1037Munro L MaletArgentina2024-05-13Printing Dimensions QUALIFIED79Xuxue Feng
1038Ashley H TollnerUnited Kingdom2024-05-13Rangoni Of Florence UNQUALIFIED23Xuxue Feng
1039Maria F OstroskyRussia2024-05-08King, Christopher A Esq NEW22Bernardo Dominic
1040Stacey F RoysterItaly2024-05-21Rousseaux, Michael Esq NEGOTIATION36Ioni Bowcher
1041Greenwood T NickaRussia2024-05-02Chanay, Jeffrey A Esq UNQUALIFIED85Stephen Shaw
1042Morrow Q NestleItaly2024-05-21Benton, John B Jr NEW65Asiya Javayant
1043Kadeem E InouyeCanada2024-05-06Feltz Printing Service NEW71Bernardo Dominic
1044Clifford D FollerArgentina2024-05-17Truhlar And Truhlar Attys UNQUALIFIED7Anna Fali
1045Johnson I BologniaRussia2024-05-05Truhlar And Truhlar Attys NEW52Xuxue Feng
1046Tony O SlusarskiIndia2024-05-09Feiner Bros QUALIFIED25Amy Elsner
1047Nicolas O GillianCanada2024-05-20Feiner Bros UNQUALIFIED81Amy Elsner
1048Arvin G RulapaughArgentina2024-05-10Dorl, James J Esq QUALIFIED30Bernardo Dominic
1049Murillo C StockhamIndia2024-05-11Printing Dimensions QUALIFIED22Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Munro H MarrierItalyElwin Sharvill QUALIFIED
Arvin E DarakjySpainElwin Sharvill NEGOTIATION
Jefferson F GauchoCanadaElwin Sharvill QUALIFIED
Adams H SlusarskiCanadaIvan Magalhaes PROPOSAL
Stacey N BologniaBrazilIoni Bowcher UNQUALIFIED
Francesco M CaudyGermanyIoni Bowcher PROPOSAL
Smith U FigeroaItalyXuxue Feng QUALIFIED
Leja Y PerinRussiaOnyama Limba QUALIFIED
Isabel I SchemmerCanadaAsiya Javayant NEGOTIATION
Chavez D ButtRussiaIvan Magalhaes RENEWAL
Ricardo Z ShinkoAustraliaElwin Sharvill NEGOTIATION
Faith T KuskoUnited KingdomAnna Fali UNQUALIFIED
Aruna G RoysterBrazilXuxue Feng RENEWAL
Munro A NickaIndiaXuxue Feng RENEWAL
Jeanfrancois Q CaldareraRussiaStephen Shaw PROPOSAL
Mujtaba O GillianUnited KingdomAnna Fali RENEWAL
Faith X BowleySpainAmy Elsner PROPOSAL
Chavez S DarakjyCanadaOnyama Limba QUALIFIED
Stacey K GillianSpainAsiya Javayant PROPOSAL
Johnson F FlosiUnited KingdomAnna Fali QUALIFIED
Jeanfrancois E PerinRussiaAmy Elsner RENEWAL
Alejandro V StensethBrazilAsiya Javayant QUALIFIED
Murillo G SlusarskiItalyAmy Elsner QUALIFIED
Wickens P BriddickRussiaOnyama Limba QUALIFIED
Ricardo D OstroskyItalyElwin Sharvill QUALIFIED
Kadeem Q WaycottRussiaBernardo Dominic PROPOSAL
Sinclair F MorascaArgentinaXuxue Feng QUALIFIED
Misaki W OstroskyAustraliaBernardo Dominic QUALIFIED
Faith L ButtArgentinaAsiya Javayant NEW
Emily F NestleSpainAsiya Javayant NEGOTIATION
Kadeem E WieserSpainOnyama Limba NEW
Morrow Q PerinJapanBernardo Dominic UNQUALIFIED
Silvio M VocelkaRussiaIoni Bowcher PROPOSAL
Faith W MorascaIndiaOnyama Limba QUALIFIED
Mujtaba U GillianItalyOnyama Limba PROPOSAL
Wickens Q BologniaGermanyStephen Shaw RENEWAL
Jeanfrancois Z SaylorsItalyXuxue Feng NEW
Aruna Y ChuiItalyBernardo Dominic QUALIFIED
Juan R VocelkaSpainAmy Elsner UNQUALIFIED
Deepesh Z ShinkoSpainIvan Magalhaes RENEWAL
Tony Q DoeRussiaOnyama Limba NEGOTIATION
Silvio T TollnerIndiaElwin Sharvill PROPOSAL
Adams I DoeItalyElwin Sharvill RENEWAL
David W FerenczSpainElwin Sharvill RENEWAL
Jennifer J KolmetzFranceXuxue Feng PROPOSAL
Mujtaba V RulapaughSpainOnyama Limba QUALIFIED
Murillo V FigeroaUnited KingdomIvan Magalhaes PROPOSAL
Munro R GillianUnited KingdomIoni Bowcher PROPOSAL
Chavez V WhobreyBrazilAsiya Javayant UNQUALIFIED
Stacey N NickaGermanyAnna Fali NEGOTIATION
Frozen Columns
Name
Adams J Chui
Misaki J Slusarski
Arvin X Kusko
Jefferson X Caldarera
Ashley R Whobrey
David P Nicka
Silvio R Malet
Deepesh G Waycott
Juan M Perin
David B Garufi
Murillo M Briddick
Stacey M Morasca
Stacey V Schemmer
Stacey K Iturbide
Julie A Iturbide
Aditya W Wieser
Ivar N Ferencz
Antonio G Malet
Claire T Caudy
Johnson Q Vocelka
Julie Y Gillian
Claire T Bolognia
Chavez M Foller
Antonio G Wieser
Jones S Venere
Aruna U Campain
Ricardo G Campain
Francesco I Kolmetz
Wickens K Paprocki
Clifford V Sergi
David D Waycott
Maria H Butt
Tony M Figeroa
Claire J Inouye
Izzy Y Doe
Stacey Z Kolmetz
Ricardo L Morasca
Costa L Bowley
Kaitlin F Malet
Jones B Saylors
Clifford L Glick
Costa V Figeroa
Stacey U Amigon
Leja N Kusko
Leja O Bowley
Isabel O Figeroa
Nicolas S Gaucho
David J Saylors
Deepesh W Darakjy
Faith Y Foller
IdCountryDate
1000Italy2024-05-09
1001United Kingdom2024-05-15
1002Russia2024-05-10
1003United Kingdom2024-05-18
1004India2024-05-16
1005Brazil2024-05-15
1006Japan2024-05-16
1007Canada2024-05-16
1008Spain2024-05-01
1009France2024-05-17
1010United Kingdom2024-05-11
1011Canada2024-05-20
1012United Kingdom2024-05-01
1013Japan2024-05-19
1014Germany2024-05-27
1015Argentina2024-05-13
1016Russia2024-05-14
1017Canada2024-05-06
1018Brazil2024-04-29
1019Argentina2024-04-29
1020Russia2024-05-05
1021United Kingdom2024-05-11
1022Russia2024-05-10
1023Australia2024-05-03
1024Brazil2024-05-14
1025Japan2024-05-21
1026Italy2024-05-05
1027France2024-05-03
1028India2024-05-09
1029Spain2024-05-12
1030Brazil2024-04-29
1031Spain2024-05-04
1032India2024-05-15
1033India2024-05-19
1034United Kingdom2024-05-04
1035Canada2024-05-07
1036France2024-05-26
1037Italy2024-05-13
1038Argentina2024-05-22
1039Australia2024-05-05
1040Japan2024-05-09
1041Canada2024-05-23
1042Spain2024-05-02
1043Spain2024-05-17
1044France2024-04-30
1045Brazil2024-05-01
1046Argentina2024-05-07
1047Argentina2024-05-03
1048France2024-05-14
1049Italy2024-05-22

On-Demand Data

NameIdCountryDate
Leja A Bowley1000Italy2024-05-10
Izzy R Rulapaugh1001Japan2024-05-10
Leon K Slusarski1002France2024-05-04
Claire A Gillian1003Canada2024-05-04
Jones Z Bowley1004Spain2024-05-20
Clifford A Slusarski1005Argentina2024-05-26
Maria C Waycott1006Argentina2024-05-07
Aika W Ostrosky1007India2024-05-15
Kadeem C Garufi1008India2024-04-29
David S Iturbide1009India2024-05-04
Jennifer Z Inouye1010Japan2024-05-06
James Z Briddick1011Germany2024-05-02
Francesco I Butt1012Italy2024-05-27
Ivar D Schemmer1013Russia2024-05-06
Francesco K Poquette1014France2024-05-10
Ashley Z Caldarera1015India2024-05-22
David C Nicka1016Spain2024-05-27
Adams Z Maclead1017Argentina2024-05-21
Leon L Morasca1018Spain2024-05-13
Alejandro F Amigon1019Japan2024-05-19
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Murillo R BowleyUnited KingdomAnna Fali RENEWAL
Sinclair M SaylorsArgentinaAmy Elsner UNQUALIFIED
Arvin A FollerIndiaIoni Bowcher UNQUALIFIED
Salvatore A SlusarskiAustraliaBernardo Dominic NEW
Emily P RoysterGermanyAnna Fali QUALIFIED
Jefferson W WaycottIndiaBernardo Dominic NEGOTIATION
Aruna S RulapaughGermanyAnna Fali NEW
Jefferson J NestleRussiaBernardo Dominic NEW
Johnson V ButtFranceStephen Shaw NEGOTIATION
Smith P OstroskyBrazilIvan Magalhaes UNQUALIFIED
Leon E GauchoItalyOnyama Limba NEGOTIATION
Adams M SchemmerRussiaIvan Magalhaes UNQUALIFIED
Aditya G IturbideRussiaIvan Magalhaes NEGOTIATION
Morrow P AmigonSpainIoni Bowcher UNQUALIFIED
Aditya D PerinAustraliaAsiya Javayant QUALIFIED
Deepesh S ButtArgentinaXuxue Feng QUALIFIED
Ricardo X GlickIndiaIoni Bowcher NEGOTIATION
Stacey T FlosiIndiaOnyama Limba PROPOSAL
Francesco N StockhamGermanyAmy Elsner NEGOTIATION
Claire J BologniaRussiaElwin Sharvill PROPOSAL
Jennifer S NickaItalyStephen Shaw NEW
Octavia M VenereCanadaOnyama Limba UNQUALIFIED
Maisha R WieserAustraliaIvan Magalhaes NEGOTIATION
Stacey F SlusarskiFranceAnna Fali UNQUALIFIED
Jefferson Y AlbaresArgentinaAnna Fali QUALIFIED
Arvin N SaylorsIndiaAnna Fali NEGOTIATION
Leon P MaletUnited KingdomXuxue Feng RENEWAL
Greenwood R GlickBrazilBernardo Dominic RENEWAL
Kaitlin S DarakjyUnited KingdomStephen Shaw NEGOTIATION
Darci D FlosiItalyIoni Bowcher NEW
Maisha J DilliardAustraliaXuxue Feng NEW
Smith E KuskoJapanAsiya Javayant PROPOSAL
Rodrigues G CampainItalyIvan Magalhaes NEGOTIATION
Munro P NestleUnited KingdomIvan Magalhaes NEGOTIATION
Clifford K PerinUnited KingdomElwin Sharvill UNQUALIFIED
Johnson X RimGermanyStephen Shaw PROPOSAL
Wickens T MorascaBrazilXuxue Feng QUALIFIED
Cody S RimCanadaBernardo Dominic UNQUALIFIED
Jeanfrancois N WieserSpainAnna Fali PROPOSAL
Octavia Q InouyeGermanyIoni Bowcher 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>