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
James E WhobreyGermanyAmy Elsner QUALIFIED
Munro F FlosiSpainXuxue Feng PROPOSAL
Juan I RutaArgentinaOnyama Limba UNQUALIFIED
Ivar D FerenczUnited KingdomBernardo Dominic PROPOSAL
Rodrigues S AlbaresUnited KingdomAmy Elsner PROPOSAL
Julie N BologniaSpainIvan Magalhaes QUALIFIED
Arvin N NestleUnited KingdomXuxue Feng NEGOTIATION
Aditya K WhobreyJapanAnna Fali QUALIFIED
Wickens A DilliardAustraliaOnyama Limba NEGOTIATION
Leon X RulapaughSpainXuxue Feng PROPOSAL
Leja I DilliardFranceBernardo Dominic NEW
Emily K WieserAustraliaOnyama Limba NEGOTIATION
Ashley U PoquetteFranceAsiya Javayant UNQUALIFIED
Aika Z FigeroaCanadaAsiya Javayant NEGOTIATION
Izzy Y WaycottBrazilAmy Elsner UNQUALIFIED
Munro M PaprockiItalyOnyama Limba NEGOTIATION
Octavia U IturbideBrazilBernardo Dominic QUALIFIED
Murillo M DoeFranceAsiya Javayant NEGOTIATION
Ricardo S OldroydArgentinaOnyama Limba QUALIFIED
David O GarufiIndiaIoni Bowcher NEW
Clifford C WhobreyUnited KingdomBernardo Dominic NEW
Jennifer C CaldareraAustraliaAmy Elsner NEW
Silvio Q FlosiIndiaAsiya Javayant UNQUALIFIED
Jones L SergiCanadaAmy Elsner PROPOSAL
Ashley I ChuiItalyAnna Fali RENEWAL
Antonio O GlickIndiaStephen Shaw NEW
Aika M VenereCanadaXuxue Feng PROPOSAL
Stacey G IturbideFranceBernardo Dominic PROPOSAL
Arvin M ChuiGermanyOnyama Limba NEGOTIATION
Smith H BologniaArgentinaAmy Elsner QUALIFIED
Cody V FigeroaUnited KingdomAsiya Javayant RENEWAL
Alejandro D GlickAustraliaAsiya Javayant QUALIFIED
Julie Q OldroydRussiaBernardo Dominic RENEWAL
Clifford D BologniaGermanyIvan Magalhaes UNQUALIFIED
Tony S SlusarskiIndiaAnna Fali NEW
Mujtaba T GarufiGermanyOnyama Limba RENEWAL
Emily B OldroydCanadaAmy Elsner PROPOSAL
Silvio L TollnerSpainBernardo Dominic NEGOTIATION
Nicolas O NickaBrazilIvan Magalhaes PROPOSAL
Kaitlin V GauchoItalyAsiya Javayant NEW
Nicolas Q SaylorsItalyElwin Sharvill NEGOTIATION
Jones H PoquetteBrazilOnyama Limba UNQUALIFIED
Smith M SaylorsCanadaBernardo Dominic UNQUALIFIED
Clifford K KuskoSpainOnyama Limba NEW
Izzy P RoysterBrazilIvan Magalhaes RENEWAL
Ivar H OldroydGermanyStephen Shaw NEW
Clifford N RoysterItalyStephen Shaw NEW
Sinclair E PerinIndiaAmy Elsner NEW
Faith J IturbideArgentinaBernardo Dominic UNQUALIFIED
Munro G StockhamJapanOnyama Limba UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Sinclair D ChuiUnited KingdomOnyama Limba QUALIFIED
Kadeem X ChuiItalyElwin Sharvill RENEWAL
Ashley T AmigonAustraliaOnyama Limba UNQUALIFIED
Darci U MarrierCanadaAsiya Javayant NEGOTIATION
Arvin K RimJapanXuxue Feng UNQUALIFIED
Aditya A DarakjyIndiaAsiya Javayant QUALIFIED
Nicolas J PerinBrazilIoni Bowcher PROPOSAL
Alejandro D CaldareraJapanBernardo Dominic QUALIFIED
Faith E FlosiArgentinaIvan Magalhaes PROPOSAL
Nicolas V ShinkoIndiaElwin Sharvill PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Munro A GlickArgentina2024-05-24Rousseaux, Michael Esq PROPOSAL75Amy Elsner
1001David B FigeroaCanada2024-05-29Feiner Bros PROPOSAL62Asiya Javayant
1002Aruna T StockhamSpain2024-06-02Chanay, Jeffrey A Esq UNQUALIFIED1Stephen Shaw
1003Tony X GlickBrazil2024-05-20Chapman, Ross E Esq QUALIFIED82Amy Elsner
1004Aika R AlbaresBrazil2024-05-07Chemel, James L Cpa RENEWAL67Asiya Javayant
1005Salvatore W BriddickFrance2024-06-02King, Christopher A Esq UNQUALIFIED10Elwin Sharvill
1006Leja B DoeIndia2024-05-05Buckley Miller Wright NEGOTIATION88Bernardo Dominic
1007David H AlbaresIndia2024-05-27Chemel, James L Cpa NEGOTIATION49Bernardo Dominic
1008Emily T ButtBrazil2024-05-09Truhlar And Truhlar Attys RENEWAL29Asiya Javayant
1009Smith C BowleyBrazil2024-05-21Benton, John B Jr RENEWAL48Bernardo Dominic
1010Jennifer K AlbaresGermany2024-05-09Chapman, Ross E Esq NEGOTIATION85Bernardo Dominic
1011Stacey T MacleadSpain2024-05-08Chapman, Ross E Esq QUALIFIED19Bernardo Dominic
1012Julie A MorascaItaly2024-05-27Chapman, Ross E Esq UNQUALIFIED97Ivan Magalhaes
1013Tony C MorascaRussia2024-05-21Buckley Miller Wright RENEWAL67Xuxue Feng
1014Maisha P SergiJapan2024-05-27Morlong Associates NEGOTIATION77Anna Fali
1015Greenwood S DarakjyBrazil2024-05-14Rangoni Of Florence UNQUALIFIED52Onyama Limba
1016Johnson P MaletCanada2024-06-03Truhlar And Truhlar Attys PROPOSAL51Stephen Shaw
1017Maisha D PoquetteRussia2024-05-15Benton, John B Jr NEGOTIATION52Asiya Javayant
1018Maisha E SchemmerJapan2024-05-12King, Christopher A Esq RENEWAL42Amy Elsner
1019Costa N SaylorsItaly2024-05-05Feiner Bros RENEWAL10Anna Fali
1020Deepesh B RutaFrance2024-05-07Feiner Bros QUALIFIED60Bernardo Dominic
1021Leja R MorascaRussia2024-05-12Benton, John B Jr QUALIFIED81Stephen Shaw
1022Leon R ChuiCanada2024-05-19Chemel, James L Cpa NEGOTIATION72Anna Fali
1023Kaitlin X MorascaGermany2024-05-09Commercial Press NEW98Xuxue Feng
1024Claire N BriddickIndia2024-05-12Chemel, James L Cpa RENEWAL36Xuxue Feng
1025Maisha P MaletGermany2024-05-14Rousseaux, Michael Esq NEGOTIATION7Stephen Shaw
1026Aruna G WieserFrance2024-05-14Printing Dimensions NEGOTIATION36Anna Fali
1027Octavia Z SaylorsAustralia2024-06-03Printing Dimensions NEW22Stephen Shaw
1028Juan V KolmetzArgentina2024-05-29Truhlar And Truhlar Attys NEW22Ioni Bowcher
1029Isabel N PoquetteCanada2024-05-21Buckley Miller Wright NEW96Onyama Limba
1030Rodrigues C DarakjyBrazil2024-05-27Printing Dimensions PROPOSAL95Elwin Sharvill
1031Aika D MacleadItaly2024-05-27King, Christopher A Esq QUALIFIED89Anna Fali
1032Alejandro Q FollerIndia2024-05-08Feltz Printing Service PROPOSAL7Elwin Sharvill
1033David D FerenczBrazil2024-05-28Feiner Bros UNQUALIFIED87Stephen Shaw
1034Greenwood X OldroydItaly2024-05-06Commercial Press UNQUALIFIED5Amy Elsner
1035David G DarakjySpain2024-05-25Dorl, James J Esq NEGOTIATION74Onyama Limba
1036Stacey X CaldareraItaly2024-05-25Chemel, James L Cpa RENEWAL25Xuxue Feng
1037Emily I WaycottGermany2024-05-11Dorl, James J Esq PROPOSAL3Amy Elsner
1038Emily D ChuiCanada2024-05-06Truhlar And Truhlar Attys PROPOSAL60Elwin Sharvill
1039Murillo T SchemmerItaly2024-05-22Rousseaux, Michael Esq NEGOTIATION65Onyama Limba
1040David M VocelkaCanada2024-05-15Printing Dimensions NEGOTIATION27Onyama Limba
1041Leon V PaprockiItaly2024-05-05Morlong Associates NEGOTIATION46Xuxue Feng
1042James C FollerJapan2024-05-31Chanay, Jeffrey A Esq UNQUALIFIED19Xuxue Feng
1043Francesco F ButtItaly2024-05-17Benton, John B Jr NEGOTIATION13Xuxue Feng
1044Jennifer V FerenczAustralia2024-05-31Printing Dimensions NEW77Bernardo Dominic
1045Darci J WhobreySpain2024-06-01Dorl, James J Esq RENEWAL85Bernardo Dominic
1046Aruna F PerinAustralia2024-05-09Printing Dimensions NEGOTIATION22Xuxue Feng
1047Tony N MacleadItaly2024-05-15Rangoni Of Florence UNQUALIFIED61Bernardo Dominic
1048Munro H KuskoIndia2024-05-10Buckley Miller Wright RENEWAL43Onyama Limba
1049Wickens Y DilliardSpain2024-05-26Feiner Bros RENEWAL46Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Ricardo N VenereItalyElwin Sharvill PROPOSAL
Leja V PaprockiGermanyOnyama Limba QUALIFIED
Tony D FollerIndiaAmy Elsner NEW
David E IturbideItalyBernardo Dominic UNQUALIFIED
Costa A GillianGermanyXuxue Feng NEGOTIATION
Izzy N MaletJapanStephen Shaw QUALIFIED
Cody A VocelkaItalyAmy Elsner NEGOTIATION
Jeanfrancois J RimArgentinaStephen Shaw RENEWAL
David Y RutaBrazilBernardo Dominic QUALIFIED
Claire A AmigonArgentinaElwin Sharvill NEW
Aditya P FollerUnited KingdomIoni Bowcher PROPOSAL
Adams E TollnerIndiaAnna Fali QUALIFIED
Aika R DilliardBrazilOnyama Limba RENEWAL
Aditya Y BowleyIndiaStephen Shaw NEW
Ivar T AlbaresAustraliaStephen Shaw RENEWAL
David G MacleadFranceAmy Elsner QUALIFIED
James Z MarrierBrazilIvan Magalhaes PROPOSAL
Tony I RoysterBrazilAnna Fali PROPOSAL
Leon X ShinkoFranceBernardo Dominic NEW
Maria H SaylorsUnited KingdomAsiya Javayant QUALIFIED
Ricardo Z GarufiAustraliaOnyama Limba QUALIFIED
Kadeem Y FlosiItalyIoni Bowcher UNQUALIFIED
Chavez M StockhamItalyAsiya Javayant UNQUALIFIED
Jefferson R GlickUnited KingdomStephen Shaw NEGOTIATION
Mujtaba J GillianArgentinaAnna Fali QUALIFIED
Misaki C VocelkaSpainAmy Elsner NEGOTIATION
Juan Q BriddickIndiaStephen Shaw PROPOSAL
Alejandro L AmigonUnited KingdomBernardo Dominic RENEWAL
Izzy L KolmetzCanadaXuxue Feng UNQUALIFIED
Kaitlin I ShinkoArgentinaXuxue Feng NEGOTIATION
Silvio W RimItalyXuxue Feng UNQUALIFIED
James J SaylorsIndiaAsiya Javayant PROPOSAL
Jones F DarakjyCanadaOnyama Limba PROPOSAL
Julie U FollerItalyAnna Fali UNQUALIFIED
Octavia I PerinFranceBernardo Dominic RENEWAL
Kaitlin U ShinkoFranceAmy Elsner UNQUALIFIED
Arvin Y CaldareraBrazilStephen Shaw PROPOSAL
Leon Y SaylorsItalyAsiya Javayant NEW
Johnson W DarakjyArgentinaIvan Magalhaes RENEWAL
Leja O VenereBrazilAnna Fali RENEWAL
Kaitlin L ButtAustraliaIoni Bowcher NEW
Morrow E NickaFranceElwin Sharvill UNQUALIFIED
Francesco H VocelkaFranceIoni Bowcher UNQUALIFIED
Salvatore N DoeGermanyElwin Sharvill NEW
Jones W MorascaArgentinaOnyama Limba NEW
Jeanfrancois G FollerBrazilElwin Sharvill UNQUALIFIED
Jennifer V SergiJapanIvan Magalhaes QUALIFIED
Leon W SaylorsArgentinaIvan Magalhaes PROPOSAL
Izzy P PerinFranceIvan Magalhaes UNQUALIFIED
Greenwood E RimJapanBernardo Dominic QUALIFIED
Frozen Columns
Name
Kaitlin A Albares
Aruna J Nestle
Jones V Foller
Mujtaba H Wieser
Maisha A Albares
Aruna B Malet
Maisha V Wieser
Smith S Campain
Antonio F Perin
Jennifer H Caudy
Claire K Whobrey
Jennifer X Briddick
Adams U Whobrey
Ivar I Briddick
Salvatore W Slusarski
Darci N Wieser
Jones D Malet
Emily I Rulapaugh
Izzy V Oldroyd
Darci I Nicka
Aruna B Marrier
Smith A Briddick
Aditya C Iturbide
Greenwood G Sergi
Arvin S Perin
Jeanfrancois G Gaucho
Greenwood U Bolognia
Adams N Malet
David I Slusarski
Johnson G Bolognia
Chavez U Kolmetz
Morrow Q Inouye
Murillo M Gaucho
Claire P Glick
Johnson W Gaucho
Faith Z Garufi
Salvatore S Caudy
Clifford B Iturbide
Tony B Waycott
Ivar S Figeroa
Faith T Bowley
Faith Y Perin
Ivar E Malet
Arvin W Wieser
Deepesh R Garufi
Maria O Sergi
Jefferson B Ferencz
Emily U Flosi
Darci B Gillian
Smith L Shinko
IdCountryDate
1000Germany2024-05-20
1001Brazil2024-05-23
1002Italy2024-05-11
1003United Kingdom2024-05-06
1004Germany2024-05-14
1005Germany2024-05-09
1006Japan2024-05-20
1007Canada2024-05-26
1008Germany2024-05-11
1009Japan2024-05-11
1010France2024-06-02
1011France2024-05-20
1012Argentina2024-05-27
1013Russia2024-05-19
1014Brazil2024-06-03
1015Russia2024-06-03
1016Spain2024-05-13
1017Japan2024-05-14
1018Spain2024-05-05
1019United Kingdom2024-05-22
1020France2024-05-19
1021Germany2024-05-21
1022Germany2024-05-08
1023Russia2024-05-05
1024Canada2024-06-01
1025Canada2024-05-11
1026France2024-05-28
1027United Kingdom2024-06-03
1028Argentina2024-05-25
1029Brazil2024-05-24
1030United Kingdom2024-05-20
1031Canada2024-05-08
1032Australia2024-05-12
1033Russia2024-05-30
1034Canada2024-05-27
1035Germany2024-05-19
1036United Kingdom2024-05-12
1037Brazil2024-05-30
1038Argentina2024-05-05
1039Spain2024-05-20
1040Spain2024-05-20
1041Italy2024-05-06
1042France2024-05-25
1043India2024-05-31
1044Brazil2024-05-08
1045Australia2024-06-03
1046France2024-05-29
1047United Kingdom2024-05-09
1048Spain2024-06-01
1049Argentina2024-05-12

On-Demand Data

NameIdCountryDate
Jones K Royster1000Australia2024-05-16
Jeanfrancois G Malet1001Italy2024-05-19
Morrow Q Waycott1002France2024-05-11
James P Maclead1003Canada2024-05-08
Leon M Ruta1004Argentina2024-05-22
James D Flosi1005Canada2024-05-07
Aruna B Stenseth1006Germany2024-05-16
Ashley T Saylors1007India2024-05-12
Kadeem I Rim1008Japan2024-05-07
Leja K Royster1009Argentina2024-05-19
Emily R Ostrosky1010France2024-05-22
Alejandro T Chui1011Australia2024-05-11
Costa B Marrier1012Australia2024-05-26
Adams G Dilliard1013Canada2024-05-05
Maria K Gaucho1014Canada2024-05-31
Rodrigues H Ostrosky1015France2024-05-28
Aditya V Royster1016Russia2024-05-26
Deepesh G Schemmer1017Brazil2024-06-02
Octavia N Amigon1018Russia2024-05-19
Johnson N Marrier1019Canada2024-05-23
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Greenwood H BologniaGermanyAnna Fali RENEWAL
Jefferson K BologniaJapanElwin Sharvill UNQUALIFIED
Costa Y PerinBrazilStephen Shaw NEW
Adams T MaletSpainAnna Fali NEGOTIATION
Francesco H StockhamGermanyAsiya Javayant NEW
Mayumi L IturbideUnited KingdomAnna Fali QUALIFIED
Kadeem A KuskoUnited KingdomAsiya Javayant NEGOTIATION
Mujtaba D MorascaBrazilAmy Elsner NEW
Murillo M PaprockiSpainIvan Magalhaes PROPOSAL
Leon W MorascaItalyOnyama Limba QUALIFIED
Murillo R PoquetteIndiaAsiya Javayant RENEWAL
Misaki U WhobreyUnited KingdomElwin Sharvill PROPOSAL
Claire T DarakjyUnited KingdomAsiya Javayant UNQUALIFIED
Aika H PoquetteIndiaIvan Magalhaes QUALIFIED
Antonio X PerinBrazilOnyama Limba PROPOSAL
Izzy I DoeRussiaXuxue Feng NEW
Costa K OldroydJapanElwin Sharvill QUALIFIED
Silvio G MaletFranceXuxue Feng PROPOSAL
Jennifer M ButtAustraliaElwin Sharvill QUALIFIED
Wickens A BriddickUnited KingdomElwin Sharvill QUALIFIED
Ivar O OldroydBrazilXuxue Feng NEW
Munro Q BowleyUnited KingdomIoni Bowcher NEGOTIATION
Isabel E GauchoFranceAmy Elsner PROPOSAL
Alejandro P VocelkaGermanyBernardo Dominic NEGOTIATION
Clifford I ChuiFranceBernardo Dominic PROPOSAL
Nicolas R NestleRussiaStephen Shaw NEW
Aditya V StockhamArgentinaAsiya Javayant UNQUALIFIED
Salvatore L PerinIndiaElwin Sharvill PROPOSAL
Kadeem Q RutaRussiaAsiya Javayant NEGOTIATION
Maisha Z MorascaJapanOnyama Limba NEGOTIATION
Ricardo H MacleadArgentinaOnyama Limba NEW
Mayumi S CampainBrazilAmy Elsner NEW
Costa F BologniaIndiaBernardo Dominic QUALIFIED
Faith W PerinItalyIoni Bowcher PROPOSAL
Clifford O DoeUnited KingdomAnna Fali NEW
Maria N IturbideItalyAsiya Javayant NEGOTIATION
Rodrigues W VenereRussiaStephen Shaw UNQUALIFIED
Tony D BriddickIndiaBernardo Dominic RENEWAL
Jefferson R OldroydCanadaOnyama Limba RENEWAL
Mujtaba D FigeroaAustraliaIvan Magalhaes 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>