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
Alejandro X FerenczSpainAmy Elsner NEGOTIATION
Leon W FerenczRussiaBernardo Dominic UNQUALIFIED
Silvio M ShinkoJapanIoni Bowcher PROPOSAL
Costa S MaletCanadaIvan Magalhaes UNQUALIFIED
Stacey V BologniaGermanyAsiya Javayant RENEWAL
Misaki R GlickUnited KingdomXuxue Feng NEGOTIATION
David B VenereFranceElwin Sharvill NEW
James A PoquetteUnited KingdomElwin Sharvill PROPOSAL
Francesco A PaprockiCanadaElwin Sharvill RENEWAL
Munro B PaprockiJapanBernardo Dominic QUALIFIED
Izzy A MarrierGermanyBernardo Dominic NEW
Nicolas W MaletCanadaOnyama Limba NEW
Faith V OldroydFranceAsiya Javayant UNQUALIFIED
Emily B SchemmerRussiaAsiya Javayant RENEWAL
Arvin Y SaylorsRussiaXuxue Feng QUALIFIED
Deepesh D VenereBrazilOnyama Limba NEGOTIATION
Ricardo K BologniaUnited KingdomAmy Elsner QUALIFIED
Rodrigues J IturbideIndiaAsiya Javayant PROPOSAL
Maisha C PerinSpainElwin Sharvill UNQUALIFIED
Smith S SlusarskiRussiaIvan Magalhaes NEW
Nicolas R MarrierArgentinaStephen Shaw RENEWAL
Leon X ChuiArgentinaStephen Shaw QUALIFIED
Octavia N StensethFranceStephen Shaw UNQUALIFIED
Juan F TollnerRussiaAnna Fali RENEWAL
Costa Y ShinkoRussiaAsiya Javayant NEW
Jones X GarufiItalyAsiya Javayant RENEWAL
Smith H SlusarskiJapanAmy Elsner NEW
Mayumi N KolmetzArgentinaAnna Fali PROPOSAL
Deepesh C PerinSpainOnyama Limba NEW
Claire G InouyeGermanyIvan Magalhaes UNQUALIFIED
Salvatore Z SergiGermanyAmy Elsner NEGOTIATION
Emily Q SaylorsBrazilElwin Sharvill UNQUALIFIED
Leja W MaletItalyXuxue Feng QUALIFIED
Cody L OldroydBrazilIvan Magalhaes UNQUALIFIED
Jones X TollnerItalyIvan Magalhaes RENEWAL
Ivar H RoysterCanadaOnyama Limba NEW
Greenwood Z ChuiIndiaBernardo Dominic NEGOTIATION
Aditya U ButtFranceIoni Bowcher NEGOTIATION
Smith I StockhamBrazilAsiya Javayant UNQUALIFIED
Ashley O MacleadAustraliaIvan Magalhaes QUALIFIED
Emily X SaylorsItalyAnna Fali RENEWAL
Claire F GlickRussiaOnyama Limba UNQUALIFIED
Greenwood T RulapaughItalyAmy Elsner PROPOSAL
Deepesh J WhobreyRussiaAnna Fali PROPOSAL
Kaitlin R OstroskyArgentinaBernardo Dominic UNQUALIFIED
Munro B DoeAustraliaAmy Elsner NEW
Clifford D FigeroaJapanElwin Sharvill PROPOSAL
Munro N BowleySpainStephen Shaw RENEWAL
Juan D ChuiArgentinaBernardo Dominic NEW
Greenwood O ChuiGermanyIoni Bowcher PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Ricardo X IturbideArgentinaIvan Magalhaes QUALIFIED
Antonio G ChuiSpainAsiya Javayant RENEWAL
Aika D MorascaSpainAnna Fali NEW
Juan M DoeArgentinaAsiya Javayant RENEWAL
Jones U CampainArgentinaOnyama Limba PROPOSAL
Octavia O DoeUnited KingdomElwin Sharvill NEGOTIATION
James R RulapaughFranceAmy Elsner PROPOSAL
Isabel S VenereGermanyAsiya Javayant NEGOTIATION
Mayumi C OldroydItalyAmy Elsner QUALIFIED
Aika U KuskoJapanOnyama Limba NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Deepesh F NestleSpain2024-05-11King, Christopher A Esq QUALIFIED1Elwin Sharvill
1001David D OldroydSpain2024-05-08Chanay, Jeffrey A Esq NEGOTIATION40Xuxue Feng
1002Octavia G NestleCanada2024-05-23Feiner Bros PROPOSAL34Xuxue Feng
1003David A NestleArgentina2024-05-24Truhlar And Truhlar Attys RENEWAL67Ivan Magalhaes
1004Claire V ChuiJapan2024-05-19King, Christopher A Esq QUALIFIED74Anna Fali
1005Leja W BriddickCanada2024-05-16Dorl, James J Esq QUALIFIED76Amy Elsner
1006Juan E CampainItaly2024-05-17Feiner Bros NEW73Onyama Limba
1007Maisha V OldroydCanada2024-05-10Truhlar And Truhlar Attys NEW80Elwin Sharvill
1008Salvatore Q ShinkoCanada2024-05-14Rangoni Of Florence RENEWAL15Onyama Limba
1009Maria R ShinkoIndia2024-05-03Feiner Bros UNQUALIFIED96Elwin Sharvill
1010Johnson Q PoquetteItaly2024-05-03Truhlar And Truhlar Attys PROPOSAL22Bernardo Dominic
1011Ricardo O DilliardArgentina2024-05-02Benton, John B Jr NEGOTIATION40Ioni Bowcher
1012Clifford Q VenereAustralia2024-05-06Rousseaux, Michael Esq RENEWAL57Ioni Bowcher
1013Munro D RutaBrazil2024-05-11Truhlar And Truhlar Attys NEGOTIATION74Elwin Sharvill
1014Cody A MorascaIndia2024-05-10Dorl, James J Esq RENEWAL8Amy Elsner
1015Misaki M ShinkoCanada2024-05-16Chemel, James L Cpa UNQUALIFIED20Anna Fali
1016Claire K RoysterUnited Kingdom2024-05-27Rangoni Of Florence NEW83Xuxue Feng
1017Munro M RoysterRussia2024-05-11Buckley Miller Wright QUALIFIED87Bernardo Dominic
1018Maisha R FlosiArgentina2024-05-02Chapman, Ross E Esq RENEWAL40Ivan Magalhaes
1019Ashley E BologniaBrazil2024-05-19Feltz Printing Service RENEWAL23Anna Fali
1020Ricardo D FlosiAustralia2024-05-03Chanay, Jeffrey A Esq NEW74Amy Elsner
1021Munro J OldroydIndia2024-05-24Rangoni Of Florence NEGOTIATION78Stephen Shaw
1022Maria O AmigonBrazil2024-05-03King, Christopher A Esq UNQUALIFIED57Anna Fali
1023Emily N FollerUnited Kingdom2024-05-02Morlong Associates QUALIFIED91Onyama Limba
1024Darci O OldroydAustralia2024-05-09Feiner Bros NEGOTIATION9Stephen Shaw
1025Mujtaba K FigeroaUnited Kingdom2024-05-23Dorl, James J Esq NEW66Asiya Javayant
1026Cody S MorascaIndia2024-04-29Buckley Miller Wright NEW37Anna Fali
1027Stacey O CaudyIndia2024-05-06Feltz Printing Service PROPOSAL9Amy Elsner
1028Izzy N AlbaresIndia2024-05-08Rangoni Of Florence PROPOSAL12Anna Fali
1029Antonio L PerinAustralia2024-05-23Morlong Associates PROPOSAL30Onyama Limba
1030Adams Y NickaArgentina2024-05-06Benton, John B Jr PROPOSAL7Onyama Limba
1031Maisha V DilliardCanada2024-05-05Feiner Bros PROPOSAL40Stephen Shaw
1032Alejandro L AlbaresArgentina2024-04-30Commercial Press RENEWAL35Stephen Shaw
1033Stacey S ButtRussia2024-05-17Morlong Associates UNQUALIFIED19Anna Fali
1034David K IturbideArgentina2024-04-28Benton, John B Jr PROPOSAL35Anna Fali
1035Juan B BriddickBrazil2024-05-15Chanay, Jeffrey A Esq UNQUALIFIED83Anna Fali
1036Izzy D GauchoAustralia2024-05-26Chapman, Ross E Esq NEGOTIATION11Ioni Bowcher
1037Mujtaba I BriddickIndia2024-05-06Rousseaux, Michael Esq NEW97Onyama Limba
1038Munro J RoysterArgentina2024-05-23Commercial Press PROPOSAL0Bernardo Dominic
1039Claire N GauchoBrazil2024-05-04Commercial Press PROPOSAL78Bernardo Dominic
1040Aditya I KolmetzBrazil2024-05-20Morlong Associates NEGOTIATION47Amy Elsner
1041Sinclair T MacleadRussia2024-04-30Truhlar And Truhlar Attys RENEWAL41Ioni Bowcher
1042Wickens S StensethGermany2024-05-06Benton, John B Jr RENEWAL28Amy Elsner
1043Isabel M RulapaughBrazil2024-05-21Feltz Printing Service QUALIFIED39Onyama Limba
1044Jennifer D RimAustralia2024-05-26King, Christopher A Esq PROPOSAL49Amy Elsner
1045Faith S PaprockiFrance2024-05-11Chapman, Ross E Esq PROPOSAL1Ivan Magalhaes
1046Arvin I GillianGermany2024-05-24Buckley Miller Wright NEW47Asiya Javayant
1047Aruna T GauchoUnited Kingdom2024-05-20Buckley Miller Wright PROPOSAL33Amy Elsner
1048Octavia P GillianBrazil2024-05-24Dorl, James J Esq RENEWAL63Xuxue Feng
1049Antonio K MacleadCanada2024-05-04Feltz Printing Service UNQUALIFIED92Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Chavez Z KuskoAustraliaAnna Fali NEW
Julie J DarakjyJapanBernardo Dominic QUALIFIED
Claire R FollerRussiaAmy Elsner PROPOSAL
David V SlusarskiAustraliaXuxue Feng NEGOTIATION
James G IturbideSpainAsiya Javayant RENEWAL
James C MorascaAustraliaIvan Magalhaes PROPOSAL
Chavez Y PoquetteJapanStephen Shaw QUALIFIED
Antonio L RulapaughFranceOnyama Limba PROPOSAL
Faith E ChuiGermanyIoni Bowcher QUALIFIED
Ivar O MacleadRussiaAnna Fali QUALIFIED
Johnson K MarrierGermanyAnna Fali UNQUALIFIED
Francesco R BriddickAustraliaAsiya Javayant NEGOTIATION
Murillo W IturbideSpainBernardo Dominic NEGOTIATION
Maria X OstroskyIndiaBernardo Dominic RENEWAL
Salvatore G VocelkaUnited KingdomAnna Fali UNQUALIFIED
Julie B NickaCanadaOnyama Limba UNQUALIFIED
Maria D DoeGermanyAsiya Javayant QUALIFIED
Greenwood G CampainBrazilElwin Sharvill RENEWAL
Jones M OldroydJapanAnna Fali PROPOSAL
Silvio T FlosiItalyIoni Bowcher NEW
Claire Z InouyeFranceAnna Fali PROPOSAL
Izzy J BriddickSpainIoni Bowcher RENEWAL
Kaitlin V RimCanadaIoni Bowcher PROPOSAL
Juan V DoeUnited KingdomBernardo Dominic PROPOSAL
Nicolas S DarakjyBrazilAnna Fali UNQUALIFIED
Francesco T ShinkoSpainXuxue Feng RENEWAL
Arvin Z RulapaughRussiaElwin Sharvill NEGOTIATION
Maisha S MorascaItalyAnna Fali RENEWAL
Kadeem P WhobreyRussiaAnna Fali QUALIFIED
Misaki T StockhamArgentinaElwin Sharvill NEGOTIATION
Francesco V OldroydFranceAsiya Javayant RENEWAL
Leon S NickaItalyAmy Elsner PROPOSAL
Stacey M KolmetzArgentinaBernardo Dominic NEGOTIATION
Johnson H VenereUnited KingdomAnna Fali RENEWAL
Aika Z OldroydJapanStephen Shaw NEW
Rodrigues I GauchoCanadaStephen Shaw QUALIFIED
Izzy T PoquetteFranceXuxue Feng QUALIFIED
Leon A FigeroaCanadaAsiya Javayant NEGOTIATION
Izzy F WhobreyAustraliaIoni Bowcher QUALIFIED
Jeanfrancois V StensethFranceElwin Sharvill UNQUALIFIED
Munro C RutaSpainAmy Elsner PROPOSAL
Emily Y ChuiGermanyAnna Fali NEW
Johnson I CaldareraBrazilXuxue Feng QUALIFIED
Stacey A GlickSpainStephen Shaw NEW
Arvin R BologniaIndiaAsiya Javayant PROPOSAL
Antonio W FollerGermanyAmy Elsner PROPOSAL
Darci T FlosiJapanStephen Shaw UNQUALIFIED
Juan M CaldareraIndiaIvan Magalhaes RENEWAL
Mujtaba U InouyeSpainAsiya Javayant NEW
Johnson F RimUnited KingdomIvan Magalhaes NEW
Frozen Columns
Name
Deepesh R Caudy
Emily C Figeroa
Faith R Gaucho
Kadeem H Nestle
Kadeem T Briddick
Ricardo A Albares
David B Nicka
Stacey U Malet
Costa D Malet
Ricardo L Shinko
Kaitlin J Saylors
Ricardo G Saylors
Murillo S Campain
Cody J Paprocki
Octavia Q Sergi
Mujtaba I Caudy
Clifford I Malet
Smith V Butt
Aruna T Schemmer
Jeanfrancois J Bolognia
Clifford S Stenseth
Costa M Albares
Claire Z Whobrey
Chavez R Wieser
Rodrigues E Caudy
Juan E Kusko
Wickens S Waycott
Wickens S Malet
Aruna Y Malet
Emily Q Ferencz
Ricardo E Caudy
Nicolas W Foller
Emily N Caldarera
Ricardo M Butt
Munro R Glick
Clifford E Tollner
Wickens A Briddick
Antonio Y Saylors
Tony P Dilliard
Jennifer R Malet
Johnson L Inouye
Aruna U Shinko
Stacey A Campain
Claire H Nicka
Isabel E Gaucho
Ricardo I Doe
David O Perin
Salvatore B Campain
Smith J Briddick
Maisha W Stockham
IdCountryDate
1000Spain2024-05-09
1001France2024-05-22
1002Germany2024-04-29
1003Spain2024-05-05
1004Russia2024-05-06
1005United Kingdom2024-04-30
1006Germany2024-05-09
1007India2024-05-20
1008Brazil2024-04-28
1009Australia2024-05-16
1010India2024-05-18
1011India2024-04-29
1012Australia2024-05-12
1013Spain2024-04-29
1014Canada2024-05-02
1015Argentina2024-04-29
1016India2024-05-20
1017Brazil2024-05-16
1018Canada2024-05-20
1019Russia2024-05-22
1020Italy2024-04-30
1021Brazil2024-05-24
1022Australia2024-05-04
1023Argentina2024-05-03
1024Japan2024-05-14
1025India2024-05-13
1026France2024-05-05
1027Australia2024-05-18
1028India2024-05-04
1029Germany2024-05-08
1030France2024-05-02
1031United Kingdom2024-05-03
1032Japan2024-05-02
1033Brazil2024-05-05
1034Italy2024-05-11
1035France2024-05-03
1036Argentina2024-05-16
1037Japan2024-04-30
1038Argentina2024-04-30
1039Japan2024-05-21
1040Russia2024-05-05
1041India2024-05-18
1042Germany2024-05-02
1043Argentina2024-04-29
1044Spain2024-05-02
1045Spain2024-05-02
1046Brazil2024-05-27
1047United Kingdom2024-05-01
1048Canada2024-05-16
1049Canada2024-05-18

On-Demand Data

NameIdCountryDate
Juan C Chui1000Spain2024-05-07
Silvio M Glick1001United Kingdom2024-04-29
Claire J Inouye1002France2024-04-28
Ivar A Dilliard1003Australia2024-05-09
Johnson O Glick1004Italy2024-05-07
Jeanfrancois W Briddick1005Australia2024-05-04
Rodrigues Q Kolmetz1006Argentina2024-05-08
Izzy Z Tollner1007Brazil2024-05-14
Aruna W Malet1008Italy2024-05-12
Francesco F Saylors1009Russia2024-05-01
Adams R Perin1010Brazil2024-05-07
Ricardo C Ferencz1011Canada2024-05-20
Maisha E Caldarera1012Italy2024-05-15
Maria I Marrier1013Argentina2024-05-17
Kaitlin L Gillian1014Canada2024-05-26
Nicolas M Gillian1015Brazil2024-05-18
Kadeem V Shinko1016Germany2024-05-01
Munro L Briddick1017Japan2024-05-04
Aditya T Darakjy1018Argentina2024-05-08
Misaki L Garufi1019Russia2024-05-10
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jefferson L CampainItalyElwin Sharvill NEGOTIATION
Costa B AlbaresGermanyXuxue Feng PROPOSAL
Clifford L MaletFranceIvan Magalhaes RENEWAL
Francesco Q SchemmerAustraliaAmy Elsner NEGOTIATION
Nicolas P ShinkoArgentinaAmy Elsner PROPOSAL
Octavia N MaletRussiaAnna Fali RENEWAL
Mujtaba P CampainGermanyBernardo Dominic NEGOTIATION
Adams U BowleyAustraliaStephen Shaw NEW
Maria R NickaBrazilOnyama Limba NEW
Kaitlin L KuskoArgentinaAnna Fali PROPOSAL
Octavia A PaprockiSpainStephen Shaw NEGOTIATION
Jennifer R SlusarskiCanadaIoni Bowcher QUALIFIED
Ricardo V DilliardArgentinaBernardo Dominic NEGOTIATION
Aika I CampainSpainIoni Bowcher PROPOSAL
Clifford Z NickaBrazilBernardo Dominic NEGOTIATION
Mujtaba O PerinArgentinaElwin Sharvill NEGOTIATION
Salvatore Q IturbideBrazilBernardo Dominic QUALIFIED
Izzy B GarufiUnited KingdomIoni Bowcher NEGOTIATION
Darci O FlosiJapanElwin Sharvill QUALIFIED
Izzy F MarrierRussiaIoni Bowcher PROPOSAL
Jones A WaycottRussiaAsiya Javayant NEW
Leja V CampainBrazilXuxue Feng RENEWAL
Morrow A MorascaJapanIoni Bowcher UNQUALIFIED
Costa V KuskoBrazilAnna Fali UNQUALIFIED
Maisha V PaprockiSpainAnna Fali NEGOTIATION
Izzy A KuskoCanadaIoni Bowcher UNQUALIFIED
Izzy W ShinkoJapanIoni Bowcher UNQUALIFIED
Salvatore R DarakjySpainXuxue Feng QUALIFIED
Jefferson G WaycottGermanyAsiya Javayant PROPOSAL
Mujtaba N MorascaGermanyXuxue Feng QUALIFIED
Antonio H BologniaBrazilIvan Magalhaes PROPOSAL
Tony W VocelkaFranceIoni Bowcher RENEWAL
Silvio L SaylorsBrazilOnyama Limba NEGOTIATION
Adams H VocelkaCanadaBernardo Dominic QUALIFIED
Kadeem N BriddickArgentinaBernardo Dominic NEGOTIATION
Arvin S OldroydCanadaAmy Elsner RENEWAL
Juan L StensethUnited KingdomIvan Magalhaes RENEWAL
Nicolas X CaldareraRussiaIoni Bowcher RENEWAL
Sinclair J RoysterUnited KingdomIoni Bowcher NEW
Costa I MacleadCanadaBernardo Dominic PROPOSAL

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