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
Adams H AmigonCanadaAmy Elsner RENEWAL
Alejandro K DoeRussiaAnna Fali NEGOTIATION
Claire Q BriddickGermanyBernardo Dominic PROPOSAL
Kadeem B SaylorsIndiaIoni Bowcher UNQUALIFIED
Ricardo J CaldareraRussiaElwin Sharvill QUALIFIED
Jeanfrancois B CampainBrazilIvan Magalhaes UNQUALIFIED
Wickens W AlbaresAustraliaBernardo Dominic UNQUALIFIED
Emily Z SergiJapanAnna Fali PROPOSAL
Aruna L GlickIndiaAmy Elsner RENEWAL
Faith W BriddickItalyAmy Elsner PROPOSAL
Mayumi O GlickArgentinaAsiya Javayant NEW
Jennifer G IturbideBrazilXuxue Feng PROPOSAL
Nicolas Y KuskoJapanElwin Sharvill UNQUALIFIED
Maria Z FollerBrazilOnyama Limba PROPOSAL
Nicolas D NickaSpainIvan Magalhaes NEW
Antonio C GlickFranceIvan Magalhaes RENEWAL
Stacey K MaletIndiaAsiya Javayant QUALIFIED
Faith M NickaArgentinaAsiya Javayant QUALIFIED
Greenwood Z OldroydBrazilAsiya Javayant QUALIFIED
Tony F KuskoGermanyOnyama Limba RENEWAL
Kaitlin K VenereAustraliaOnyama Limba PROPOSAL
Costa N CampainSpainAnna Fali UNQUALIFIED
Misaki S RutaBrazilBernardo Dominic QUALIFIED
Juan G ButtFranceAmy Elsner QUALIFIED
Salvatore C OldroydJapanAmy Elsner RENEWAL
Leon L RoysterBrazilStephen Shaw UNQUALIFIED
Murillo L VocelkaUnited KingdomBernardo Dominic QUALIFIED
Juan X StensethFranceElwin Sharvill QUALIFIED
Leon P NestleIndiaAsiya Javayant QUALIFIED
Stacey W ButtIndiaOnyama Limba UNQUALIFIED
Nicolas Z SaylorsBrazilBernardo Dominic NEGOTIATION
Kaitlin L MacleadGermanyAnna Fali NEW
Antonio L DilliardJapanElwin Sharvill QUALIFIED
Chavez T InouyeIndiaXuxue Feng QUALIFIED
Darci Q BriddickAustraliaXuxue Feng NEGOTIATION
Faith L SaylorsUnited KingdomBernardo Dominic PROPOSAL
Costa P CaudyBrazilIoni Bowcher RENEWAL
Smith C FollerArgentinaXuxue Feng NEW
Izzy B AlbaresIndiaStephen Shaw UNQUALIFIED
Julie X VocelkaArgentinaAmy Elsner QUALIFIED
Nicolas T FerenczUnited KingdomAmy Elsner NEW
Maria K MorascaAustraliaAnna Fali RENEWAL
James V ButtItalyElwin Sharvill NEW
Morrow X AmigonUnited KingdomAmy Elsner PROPOSAL
Faith Z SchemmerSpainXuxue Feng QUALIFIED
Jones Z AmigonItalyBernardo Dominic PROPOSAL
Izzy C GillianItalyAnna Fali NEW
Octavia Z CaudySpainElwin Sharvill NEGOTIATION
Clifford W FollerSpainStephen Shaw UNQUALIFIED
Rodrigues V NestleFranceXuxue Feng RENEWAL
Horizontal
NameCountryRepresentativeStatus
Jefferson J MarrierUnited KingdomElwin Sharvill PROPOSAL
Kadeem M WhobreyItalyElwin Sharvill NEGOTIATION
Alejandro R AlbaresRussiaIoni Bowcher QUALIFIED
Aditya V PaprockiUnited KingdomXuxue Feng NEGOTIATION
Leon R GarufiArgentinaElwin Sharvill NEW
Jones R AlbaresArgentinaBernardo Dominic RENEWAL
Jeanfrancois V CampainJapanIoni Bowcher UNQUALIFIED
Stacey G FollerJapanAmy Elsner UNQUALIFIED
Jennifer P SaylorsRussiaElwin Sharvill PROPOSAL
Silvio E AmigonGermanyAnna Fali PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Morrow O SchemmerAustralia2024-06-16Printing Dimensions NEGOTIATION26Asiya Javayant
1001Isabel O GarufiFrance2024-05-30Printing Dimensions RENEWAL4Elwin Sharvill
1002Munro R BowleyJapan2024-06-10Commercial Press NEGOTIATION94Asiya Javayant
1003Sinclair C AmigonCanada2024-06-23Truhlar And Truhlar Attys NEGOTIATION23Xuxue Feng
1004Costa J FollerIndia2024-06-20Rousseaux, Michael Esq PROPOSAL69Amy Elsner
1005Chavez B DilliardSpain2024-06-04Buckley Miller Wright RENEWAL24Amy Elsner
1006Leja T GillianJapan2024-06-13Truhlar And Truhlar Attys UNQUALIFIED23Elwin Sharvill
1007Silvio A KolmetzRussia2024-06-21Printing Dimensions NEGOTIATION47Stephen Shaw
1008James R MaletAustralia2024-06-24Commercial Press RENEWAL74Anna Fali
1009Jefferson A VenereArgentina2024-06-22Benton, John B Jr RENEWAL50Stephen Shaw
1010Johnson I PerinGermany2024-06-02Dorl, James J Esq RENEWAL42Xuxue Feng
1011Chavez S BologniaAustralia2024-06-20Chanay, Jeffrey A Esq RENEWAL90Ivan Magalhaes
1012Juan D CampainSpain2024-06-09Buckley Miller Wright PROPOSAL3Asiya Javayant
1013Mayumi Y WaycottGermany2024-06-09Morlong Associates RENEWAL61Onyama Limba
1014Adams O GillianFrance2024-06-06Truhlar And Truhlar Attys RENEWAL5Stephen Shaw
1015Leon J DoeItaly2024-06-18Chapman, Ross E Esq QUALIFIED79Asiya Javayant
1016Johnson P IturbideArgentina2024-06-19Morlong Associates PROPOSAL8Amy Elsner
1017Julie H DilliardRussia2024-06-03Truhlar And Truhlar Attys QUALIFIED52Anna Fali
1018Misaki B SlusarskiUnited Kingdom2024-06-21Morlong Associates NEGOTIATION76Anna Fali
1019Juan R GauchoIndia2024-06-02Chemel, James L Cpa NEGOTIATION51Stephen Shaw
1020Octavia K SchemmerJapan2024-06-06Benton, John B Jr UNQUALIFIED75Onyama Limba
1021Aditya K CaudyBrazil2024-05-30Rousseaux, Michael Esq QUALIFIED89Asiya Javayant
1022Ricardo Z PaprockiSpain2024-06-11Morlong Associates NEW15Onyama Limba
1023Chavez Z BowleyArgentina2024-06-05Feltz Printing Service NEGOTIATION35Anna Fali
1024Jeanfrancois F ChuiFrance2024-06-23Truhlar And Truhlar Attys NEGOTIATION13Elwin Sharvill
1025Tony A CaudyArgentina2024-06-03Feiner Bros QUALIFIED69Onyama Limba
1026Isabel G CaldareraRussia2024-06-22Chapman, Ross E Esq UNQUALIFIED66Stephen Shaw
1027Leja T StockhamRussia2024-05-28Printing Dimensions UNQUALIFIED8Amy Elsner
1028Chavez E GarufiJapan2024-06-21Rangoni Of Florence UNQUALIFIED46Stephen Shaw
1029Julie S OstroskyGermany2024-06-04Printing Dimensions RENEWAL81Stephen Shaw
1030Wickens W WhobreyJapan2024-06-20Rousseaux, Michael Esq UNQUALIFIED52Xuxue Feng
1031Munro N SchemmerFrance2024-06-13Feiner Bros NEGOTIATION86Bernardo Dominic
1032Murillo N InouyeIndia2024-05-28King, Christopher A Esq UNQUALIFIED30Asiya Javayant
1033Leja I DilliardBrazil2024-06-14Dorl, James J Esq NEGOTIATION44Bernardo Dominic
1034Jefferson O RutaFrance2024-06-01Chemel, James L Cpa NEW71Ivan Magalhaes
1035Cody W SchemmerSpain2024-05-28Rangoni Of Florence NEGOTIATION51Ioni Bowcher
1036Jefferson B OstroskyAustralia2024-05-28Morlong Associates QUALIFIED16Stephen Shaw
1037James V CaldareraBrazil2024-06-03Dorl, James J Esq NEW82Asiya Javayant
1038Morrow X NickaIndia2024-06-01Chanay, Jeffrey A Esq RENEWAL9Ivan Magalhaes
1039Clifford Z OldroydItaly2024-06-22Chanay, Jeffrey A Esq QUALIFIED77Elwin Sharvill
1040Aika P GillianUnited Kingdom2024-06-23Chemel, James L Cpa NEW74Elwin Sharvill
1041Juan O StensethRussia2024-06-20Rangoni Of Florence UNQUALIFIED49Ioni Bowcher
1042Greenwood U CaldareraItaly2024-05-29Feltz Printing Service RENEWAL68Ivan Magalhaes
1043Faith W GlickAustralia2024-06-18Truhlar And Truhlar Attys NEW45Onyama Limba
1044Maisha Q RimAustralia2024-06-01Commercial Press UNQUALIFIED24Elwin Sharvill
1045Juan D RulapaughBrazil2024-06-10Printing Dimensions NEW69Ivan Magalhaes
1046Johnson I CaldareraRussia2024-06-12Truhlar And Truhlar Attys PROPOSAL20Amy Elsner
1047Chavez X FerenczIndia2024-06-23Buckley Miller Wright NEW25Elwin Sharvill
1048Deepesh M SaylorsIndia2024-06-04Chanay, Jeffrey A Esq NEW21Amy Elsner
1049Ivar Q NickaSpain2024-05-27Chemel, James L Cpa PROPOSAL70Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Johnson V BologniaBrazilBernardo Dominic QUALIFIED
Greenwood L MarrierUnited KingdomAmy Elsner NEGOTIATION
Sinclair A MorascaIndiaAsiya Javayant QUALIFIED
Salvatore T TollnerSpainStephen Shaw RENEWAL
Aditya E FigeroaJapanOnyama Limba UNQUALIFIED
Ashley Y RutaSpainIvan Magalhaes QUALIFIED
Jennifer F ShinkoCanadaAsiya Javayant UNQUALIFIED
Ricardo A VocelkaUnited KingdomOnyama Limba PROPOSAL
Sinclair Z CaldareraGermanyStephen Shaw NEW
Ashley T GlickJapanElwin Sharvill NEW
Maisha I BologniaGermanyElwin Sharvill PROPOSAL
Isabel P TollnerGermanyElwin Sharvill QUALIFIED
Cody V KuskoGermanyAmy Elsner NEGOTIATION
Faith K GarufiBrazilBernardo Dominic NEGOTIATION
Izzy F RimIndiaIvan Magalhaes NEW
Leon L BriddickIndiaAmy Elsner NEW
Clifford B SergiCanadaStephen Shaw UNQUALIFIED
Antonio Y KuskoAustraliaAsiya Javayant NEGOTIATION
Isabel Y PaprockiIndiaAsiya Javayant UNQUALIFIED
Mujtaba I FerenczIndiaOnyama Limba RENEWAL
Deepesh C NickaSpainXuxue Feng NEW
Aditya V InouyeJapanAnna Fali RENEWAL
Costa E RoysterRussiaAnna Fali QUALIFIED
Jones W GarufiBrazilElwin Sharvill QUALIFIED
Isabel F VenereJapanXuxue Feng PROPOSAL
Wickens P CaudyAustraliaXuxue Feng PROPOSAL
Jeanfrancois R ChuiIndiaAsiya Javayant RENEWAL
Darci A NickaRussiaAsiya Javayant PROPOSAL
Smith C AlbaresIndiaStephen Shaw QUALIFIED
Mujtaba G BologniaAustraliaElwin Sharvill QUALIFIED
Faith F NestleRussiaAmy Elsner PROPOSAL
Leja O SchemmerSpainBernardo Dominic PROPOSAL
James C DilliardCanadaAmy Elsner NEGOTIATION
Darci X OstroskyAustraliaXuxue Feng NEGOTIATION
Kaitlin Z KolmetzCanadaIvan Magalhaes PROPOSAL
Emily G InouyeFranceIvan Magalhaes QUALIFIED
Leja A MorascaIndiaIvan Magalhaes NEGOTIATION
Antonio K MacleadBrazilBernardo Dominic PROPOSAL
Costa D StockhamJapanAmy Elsner NEW
Izzy G ShinkoBrazilStephen Shaw NEGOTIATION
Aruna A CaudyRussiaAnna Fali QUALIFIED
Maria R CaldareraCanadaBernardo Dominic RENEWAL
Ashley T MacleadBrazilIoni Bowcher UNQUALIFIED
Murillo O StensethUnited KingdomStephen Shaw NEGOTIATION
Costa E PoquetteJapanStephen Shaw NEW
Juan I FigeroaItalyAmy Elsner NEGOTIATION
Alejandro Z NickaArgentinaElwin Sharvill RENEWAL
Ricardo V BriddickFranceIoni Bowcher RENEWAL
Adams M StockhamRussiaBernardo Dominic PROPOSAL
Silvio Q RulapaughAustraliaAsiya Javayant NEW
Frozen Columns
Name
Arvin K Nestle
Misaki N Wieser
Jefferson S Rim
Jefferson G Nicka
Ivar E Gillian
Aika P Gillian
Cody X Rim
Clifford G Ruta
Maria P Amigon
Jennifer H Venere
Cody N Gillian
Chavez O Vocelka
Smith N Campain
Costa P Venere
Adams Z Kusko
Sinclair U Figeroa
James S Flosi
Nicolas F Sergi
Misaki M Ostrosky
James X Marrier
Kadeem E Malet
Jeanfrancois Y Rim
Claire R Nestle
Morrow X Bolognia
Silvio A Whobrey
Smith Q Caudy
Ashley T Tollner
Ivar L Tollner
Jennifer T Schemmer
Nicolas F Kusko
Morrow Y Poquette
Jones C Malet
Ashley O Albares
Mujtaba Y Poquette
Aditya B Venere
Wickens D Bolognia
Claire R Amigon
Silvio U Chui
Johnson U Amigon
Alejandro V Whobrey
Faith V Garufi
Ivar I Stockham
Greenwood Y Shinko
Chavez H Nestle
Johnson R Marrier
Maria L Stenseth
Mayumi F Malet
Aika U Dilliard
Francesco V Flosi
Leon V Maclead
IdCountryDate
1000Canada2024-06-04
1001Brazil2024-06-23
1002France2024-05-26
1003Japan2024-05-30
1004Japan2024-06-13
1005Japan2024-06-04
1006Australia2024-06-15
1007Brazil2024-06-08
1008India2024-05-29
1009Australia2024-05-29
1010France2024-06-17
1011India2024-06-14
1012Argentina2024-06-01
1013Canada2024-06-20
1014Germany2024-06-13
1015Spain2024-05-29
1016Spain2024-05-30
1017Germany2024-06-01
1018Russia2024-06-23
1019Germany2024-06-01
1020Argentina2024-06-06
1021Spain2024-06-15
1022Australia2024-05-29
1023Russia2024-06-09
1024Spain2024-06-19
1025Spain2024-06-21
1026Japan2024-05-31
1027Argentina2024-05-27
1028Japan2024-06-01
1029Italy2024-06-14
1030Spain2024-06-15
1031Japan2024-06-16
1032United Kingdom2024-05-31
1033Brazil2024-06-17
1034Spain2024-06-09
1035Russia2024-06-24
1036Australia2024-05-26
1037Russia2024-05-29
1038Germany2024-06-14
1039France2024-06-04
1040Spain2024-06-15
1041Brazil2024-05-27
1042Australia2024-06-07
1043France2024-06-17
1044France2024-06-10
1045United Kingdom2024-05-27
1046Russia2024-06-23
1047Canada2024-05-31
1048Russia2024-06-09
1049France2024-06-03

On-Demand Data

NameIdCountryDate
Misaki K Inouye1000Italy2024-05-26
Wickens C Doe1001Spain2024-06-19
Arvin U Stockham1002Argentina2024-06-15
Aditya D Ostrosky1003France2024-06-11
Kaitlin H Bowley1004Italy2024-06-06
Clifford Y Shinko1005Germany2024-06-20
Wickens F Darakjy1006Canada2024-06-19
Clifford H Slusarski1007Japan2024-06-06
Francesco Z Slusarski1008Spain2024-06-02
Munro H Garufi1009Italy2024-06-19
Rodrigues J Iturbide1010France2024-06-03
Jennifer B Ruta1011France2024-06-11
Jefferson S Iturbide1012United Kingdom2024-05-30
Cody N Waycott1013Japan2024-06-20
Aruna F Tollner1014France2024-06-05
Tony C Bolognia1015Germany2024-05-28
Jeanfrancois Z Malet1016India2024-06-14
Ashley A Caudy1017Japan2024-06-02
Johnson N Ferencz1018Japan2024-05-30
Rodrigues J Amigon1019Australia2024-06-03
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jeanfrancois M CaudyFranceAnna Fali RENEWAL
Aika V StockhamUnited KingdomAmy Elsner UNQUALIFIED
Costa J SchemmerAustraliaAnna Fali UNQUALIFIED
Murillo H IturbideIndiaOnyama Limba UNQUALIFIED
Maisha D MorascaGermanyElwin Sharvill NEW
Greenwood H CampainBrazilIoni Bowcher NEGOTIATION
Tony L CaldareraFranceAnna Fali QUALIFIED
James D OstroskyFranceIvan Magalhaes UNQUALIFIED
Deepesh D StensethRussiaAmy Elsner NEW
Arvin G RoysterAustraliaIoni Bowcher UNQUALIFIED
Ashley Z StockhamUnited KingdomStephen Shaw PROPOSAL
Maria P PerinRussiaIoni Bowcher UNQUALIFIED
Isabel A RutaIndiaXuxue Feng UNQUALIFIED
James K MorascaItalyAsiya Javayant NEW
Julie K RoysterIndiaAnna Fali NEGOTIATION
Jones Y RimUnited KingdomIvan Magalhaes RENEWAL
Antonio R CaudyIndiaAmy Elsner NEW
Claire N DilliardArgentinaAsiya Javayant UNQUALIFIED
Leja W NestleFranceIvan Magalhaes UNQUALIFIED
James Y SaylorsBrazilElwin Sharvill PROPOSAL
Leja I SaylorsJapanIoni Bowcher NEW
Johnson M TollnerIndiaXuxue Feng RENEWAL
Izzy Q NestleUnited KingdomElwin Sharvill PROPOSAL
Nicolas U SaylorsUnited KingdomOnyama Limba QUALIFIED
Julie L VocelkaSpainIoni Bowcher UNQUALIFIED
Clifford A DarakjyUnited KingdomElwin Sharvill NEW
Tony C GauchoSpainElwin Sharvill RENEWAL
Aruna E NickaRussiaIoni Bowcher PROPOSAL
Francesco R RulapaughUnited KingdomAnna Fali RENEWAL
Leja N RulapaughArgentinaElwin Sharvill PROPOSAL
Julie P RimUnited KingdomElwin Sharvill RENEWAL
Aruna T StockhamItalyStephen Shaw NEGOTIATION
Maria R NestleRussiaStephen Shaw NEGOTIATION
Ashley P BriddickRussiaAnna Fali RENEWAL
Arvin W InouyeItalyIvan Magalhaes RENEWAL
David K RimGermanyStephen Shaw RENEWAL
Ricardo X MorascaGermanyIvan Magalhaes QUALIFIED
Claire J FlosiFranceAsiya Javayant NEW
Mujtaba U SaylorsAustraliaIvan Magalhaes PROPOSAL
Octavia V FigeroaRussiaOnyama Limba 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>