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
Munro L RoysterItalyElwin Sharvill RENEWAL
David Z PoquetteJapanAsiya Javayant UNQUALIFIED
Adams Q AlbaresJapanAsiya Javayant PROPOSAL
Francesco E WieserRussiaBernardo Dominic NEGOTIATION
Kaitlin R VocelkaUnited KingdomIoni Bowcher NEW
Maria H GarufiArgentinaIvan Magalhaes UNQUALIFIED
Alejandro E RulapaughAustraliaAnna Fali NEW
David E PoquetteUnited KingdomAsiya Javayant UNQUALIFIED
Izzy U OstroskyBrazilOnyama Limba NEGOTIATION
Clifford A IturbideIndiaStephen Shaw PROPOSAL
Chavez M WieserFranceBernardo Dominic NEW
Nicolas B WaycottAustraliaIvan Magalhaes UNQUALIFIED
Leon R RulapaughArgentinaAmy Elsner NEW
Arvin T VenereJapanIvan Magalhaes NEW
Darci O IturbideItalyOnyama Limba RENEWAL
Costa W AlbaresUnited KingdomXuxue Feng NEW
Stacey S PoquetteJapanAmy Elsner RENEWAL
Cody L AlbaresArgentinaIvan Magalhaes NEGOTIATION
Ricardo L KuskoJapanAmy Elsner QUALIFIED
Antonio W VocelkaItalyOnyama Limba RENEWAL
Murillo B RutaUnited KingdomAmy Elsner NEW
Johnson U AmigonUnited KingdomElwin Sharvill UNQUALIFIED
Octavia X TollnerBrazilAsiya Javayant QUALIFIED
Aruna T ButtItalyOnyama Limba PROPOSAL
Ivar S SchemmerItalyElwin Sharvill RENEWAL
Maria J ShinkoAustraliaBernardo Dominic PROPOSAL
Sinclair K BologniaFranceBernardo Dominic NEGOTIATION
Munro P AlbaresBrazilIoni Bowcher NEW
Jefferson H GlickJapanBernardo Dominic NEGOTIATION
Faith B ShinkoBrazilAsiya Javayant UNQUALIFIED
Claire K StensethIndiaAmy Elsner NEW
Antonio I KuskoRussiaAsiya Javayant QUALIFIED
Chavez D FlosiFranceAnna Fali QUALIFIED
Emily G WhobreySpainIoni Bowcher UNQUALIFIED
Mujtaba W DarakjyAustraliaStephen Shaw PROPOSAL
Misaki L WieserIndiaIoni Bowcher NEGOTIATION
Murillo W StockhamSpainAsiya Javayant RENEWAL
Ricardo P KolmetzSpainXuxue Feng NEGOTIATION
Johnson F CampainJapanAsiya Javayant RENEWAL
Izzy B ChuiItalyElwin Sharvill PROPOSAL
Aika C FlosiUnited KingdomIvan Magalhaes QUALIFIED
Antonio T VenereItalyBernardo Dominic NEGOTIATION
Jeanfrancois E MaletItalyXuxue Feng QUALIFIED
Emily M ShinkoFranceAmy Elsner RENEWAL
Jennifer O FigeroaSpainAnna Fali QUALIFIED
Deepesh I TollnerJapanIoni Bowcher QUALIFIED
Maisha A PaprockiIndiaStephen Shaw NEW
Salvatore X KolmetzAustraliaIoni Bowcher RENEWAL
Claire C GlickItalyOnyama Limba RENEWAL
Kaitlin N FlosiFranceOnyama Limba NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Deepesh K InouyeCanadaAmy Elsner NEW
Faith P DarakjyFranceOnyama Limba PROPOSAL
Faith X CaudyItalyAmy Elsner QUALIFIED
Johnson W PerinUnited KingdomElwin Sharvill QUALIFIED
Aika U MacleadFranceAsiya Javayant NEW
Wickens V FerenczArgentinaXuxue Feng QUALIFIED
Ashley Z WaycottRussiaAnna Fali PROPOSAL
Jefferson D PerinCanadaOnyama Limba RENEWAL
Aditya Z StensethFranceAsiya Javayant UNQUALIFIED
Octavia H AlbaresAustraliaAmy Elsner NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aditya A PoquetteUnited Kingdom2024-06-04King, Christopher A Esq QUALIFIED58Stephen Shaw
1001Maria T PoquetteJapan2024-06-07Chemel, James L Cpa NEW55Elwin Sharvill
1002Sinclair R MaletAustralia2024-06-07Commercial Press NEW16Bernardo Dominic
1003Jeanfrancois F GlickFrance2024-06-20Rangoni Of Florence NEGOTIATION37Ivan Magalhaes
1004Stacey A OldroydJapan2024-06-06Chapman, Ross E Esq NEGOTIATION0Ioni Bowcher
1005Mayumi G ShinkoGermany2024-06-03Truhlar And Truhlar Attys NEGOTIATION23Asiya Javayant
1006Francesco J ChuiRussia2024-06-04Rangoni Of Florence NEGOTIATION73Asiya Javayant
1007Deepesh Z SchemmerCanada2024-05-27Dorl, James J Esq QUALIFIED7Onyama Limba
1008Aika Y ShinkoRussia2024-06-22Feiner Bros QUALIFIED39Onyama Limba
1009Arvin Q RulapaughBrazil2024-06-03Chapman, Ross E Esq NEGOTIATION66Asiya Javayant
1010Tony W GauchoCanada2024-06-02Morlong Associates NEW91Ivan Magalhaes
1011Deepesh V VenereUnited Kingdom2024-06-24Morlong Associates PROPOSAL57Elwin Sharvill
1012Tony L VocelkaCanada2024-06-07Morlong Associates NEW77Elwin Sharvill
1013Mujtaba Q CampainFrance2024-06-18Benton, John B Jr PROPOSAL29Ivan Magalhaes
1014Tony E PaprockiGermany2024-06-23Benton, John B Jr NEGOTIATION93Amy Elsner
1015Greenwood S FerenczRussia2024-06-21Rousseaux, Michael Esq UNQUALIFIED21Xuxue Feng
1016Claire M MacleadGermany2024-06-22Chapman, Ross E Esq QUALIFIED3Asiya Javayant
1017Morrow L CaldareraRussia2024-06-19Rousseaux, Michael Esq UNQUALIFIED43Elwin Sharvill
1018Silvio R MacleadItaly2024-06-06Feltz Printing Service UNQUALIFIED94Elwin Sharvill
1019James H KuskoBrazil2024-05-31Benton, John B Jr NEW99Ivan Magalhaes
1020Izzy U FlosiArgentina2024-06-11Chapman, Ross E Esq NEGOTIATION82Elwin Sharvill
1021Maisha A BowleySpain2024-06-03Chanay, Jeffrey A Esq PROPOSAL96Ioni Bowcher
1022Aditya J ButtSpain2024-05-30Benton, John B Jr PROPOSAL52Stephen Shaw
1023Faith L VenereGermany2024-05-28Commercial Press PROPOSAL28Anna Fali
1024Kadeem T SergiFrance2024-06-23Chemel, James L Cpa RENEWAL96Asiya Javayant
1025Murillo B IturbideFrance2024-05-26Chapman, Ross E Esq PROPOSAL44Elwin Sharvill
1026Morrow N FerenczArgentina2024-06-15King, Christopher A Esq NEW29Bernardo Dominic
1027Aruna R BowleyAustralia2024-06-09King, Christopher A Esq QUALIFIED64Elwin Sharvill
1028Smith W SaylorsRussia2024-06-19Rousseaux, Michael Esq UNQUALIFIED30Anna Fali
1029Maria B PaprockiFrance2024-05-31Printing Dimensions NEGOTIATION28Ivan Magalhaes
1030Kaitlin N TollnerAustralia2024-05-30Morlong Associates UNQUALIFIED91Ioni Bowcher
1031Adams C MorascaGermany2024-05-27Commercial Press UNQUALIFIED49Stephen Shaw
1032Aruna C SaylorsGermany2024-06-13Dorl, James J Esq NEGOTIATION89Anna Fali
1033Costa N WhobreyAustralia2024-06-20King, Christopher A Esq PROPOSAL21Ivan Magalhaes
1034Izzy I SlusarskiUnited Kingdom2024-05-26Rousseaux, Michael Esq QUALIFIED27Xuxue Feng
1035Chavez F CampainRussia2024-06-15Morlong Associates UNQUALIFIED91Bernardo Dominic
1036Antonio Q SergiItaly2024-06-16Buckley Miller Wright PROPOSAL55Xuxue Feng
1037Chavez G FigeroaGermany2024-05-31Printing Dimensions PROPOSAL85Ioni Bowcher
1038David A DoeArgentina2024-05-27Benton, John B Jr NEW14Xuxue Feng
1039Maria P MaletGermany2024-06-16Benton, John B Jr PROPOSAL78Ioni Bowcher
1040Kadeem Z RoysterIndia2024-06-20Buckley Miller Wright UNQUALIFIED11Xuxue Feng
1041Johnson D NestleUnited Kingdom2024-06-20Rangoni Of Florence QUALIFIED56Asiya Javayant
1042Octavia E IturbideSpain2024-05-28Morlong Associates NEGOTIATION73Ioni Bowcher
1043Isabel F NestleGermany2024-06-22Chapman, Ross E Esq RENEWAL27Asiya Javayant
1044Tony U RutaItaly2024-06-03King, Christopher A Esq NEGOTIATION6Xuxue Feng
1045Alejandro S FerenczCanada2024-06-17Chemel, James L Cpa QUALIFIED60Asiya Javayant
1046Aditya W FigeroaItaly2024-06-10Benton, John B Jr UNQUALIFIED31Anna Fali
1047Isabel L BologniaBrazil2024-06-02Printing Dimensions UNQUALIFIED92Xuxue Feng
1048Maisha H RoysterArgentina2024-06-05Morlong Associates NEW31Ioni Bowcher
1049Maisha H KuskoBrazil2024-06-23Chanay, Jeffrey A Esq NEW12Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Tony N MorascaArgentinaBernardo Dominic UNQUALIFIED
Aruna K RulapaughArgentinaElwin Sharvill UNQUALIFIED
Clifford G FollerItalyIoni Bowcher RENEWAL
Faith M FigeroaSpainIoni Bowcher NEW
Ashley Y BowleyCanadaBernardo Dominic NEW
Chavez U MaletItalyElwin Sharvill PROPOSAL
Adams P KolmetzSpainElwin Sharvill UNQUALIFIED
Salvatore B WhobreyAustraliaStephen Shaw QUALIFIED
Jeanfrancois Y DarakjyGermanyAnna Fali NEGOTIATION
Adams X OldroydUnited KingdomBernardo Dominic PROPOSAL
Ricardo W DarakjyItalyElwin Sharvill RENEWAL
Stacey N OldroydAustraliaBernardo Dominic UNQUALIFIED
Mayumi Y TollnerFranceAsiya Javayant PROPOSAL
Salvatore Z PaprockiArgentinaOnyama Limba RENEWAL
Jennifer D VocelkaItalyIoni Bowcher QUALIFIED
Darci W OldroydItalyOnyama Limba PROPOSAL
Munro U GarufiCanadaBernardo Dominic NEW
Adams Z PaprockiArgentinaAsiya Javayant QUALIFIED
Juan K RulapaughJapanElwin Sharvill PROPOSAL
Alejandro Y BologniaFranceAsiya Javayant RENEWAL
Kadeem G MorascaIndiaAmy Elsner UNQUALIFIED
Clifford T OldroydJapanAsiya Javayant UNQUALIFIED
Misaki B WhobreyIndiaAsiya Javayant RENEWAL
Aika E WieserUnited KingdomOnyama Limba QUALIFIED
Johnson B AlbaresArgentinaAsiya Javayant UNQUALIFIED
Mujtaba Q RutaCanadaElwin Sharvill RENEWAL
Julie X IturbideCanadaAmy Elsner QUALIFIED
Maria S RulapaughAustraliaAnna Fali RENEWAL
Adams L ChuiItalyAsiya Javayant NEW
James Z PoquetteCanadaAsiya Javayant NEW
Arvin B RutaBrazilAnna Fali NEGOTIATION
Octavia W DilliardGermanyBernardo Dominic PROPOSAL
Jeanfrancois I PaprockiAustraliaIoni Bowcher UNQUALIFIED
Claire V TollnerAustraliaBernardo Dominic QUALIFIED
Tony Z NestleIndiaIoni Bowcher QUALIFIED
Maisha T ShinkoItalyAnna Fali NEGOTIATION
Izzy D FerenczItalyAnna Fali RENEWAL
Mayumi G CaudySpainAmy Elsner NEGOTIATION
Faith H SergiArgentinaIvan Magalhaes UNQUALIFIED
Murillo U BowleyIndiaOnyama Limba PROPOSAL
Smith F WaycottItalyOnyama Limba QUALIFIED
Wickens T SchemmerIndiaXuxue Feng NEGOTIATION
Costa V RutaIndiaStephen Shaw NEGOTIATION
Jeanfrancois T VenereArgentinaXuxue Feng UNQUALIFIED
Jones A FollerUnited KingdomStephen Shaw UNQUALIFIED
Nicolas V CaldareraAustraliaStephen Shaw NEGOTIATION
Ashley W MaletRussiaXuxue Feng RENEWAL
Kadeem M WaycottJapanIoni Bowcher PROPOSAL
Stacey T StockhamGermanyXuxue Feng NEGOTIATION
Mujtaba C InouyeIndiaElwin Sharvill NEGOTIATION
Frozen Columns
Name
Jeanfrancois Y Foller
Murillo M Wieser
Nicolas A Rim
Morrow X Albares
Greenwood D Ferencz
Leja P Shinko
Aditya S Bowley
Rodrigues H Campain
Mayumi W Caldarera
Cody D Morasca
Francesco N Saylors
Jefferson W Briddick
Mayumi P Caldarera
Tony J Garufi
Murillo Q Figeroa
Francesco T Gaucho
Deepesh L Rulapaugh
Francesco O Venere
Jefferson R Venere
Cody O Saylors
Faith Z Kusko
Isabel W Venere
Faith H Nestle
Ashley J Malet
Misaki C Shinko
David V Iturbide
Arvin B Malet
Silvio E Ferencz
Ashley V Oldroyd
Faith T Kolmetz
Tony E Schemmer
James A Inouye
Cody G Malet
Claire B Shinko
Murillo Z Vocelka
Aruna E Perin
Aruna B Oldroyd
Smith V Albares
Maria L Kolmetz
Clifford Z Ferencz
Cody U Bolognia
Misaki B Glick
Jones L Gillian
Kadeem U Stockham
Murillo B Amigon
Francesco L Gillian
Alejandro K Bolognia
Maria I Paprocki
Maria P Malet
Francesco J Gaucho
IdCountryDate
1000United Kingdom2024-06-13
1001Russia2024-06-05
1002Australia2024-06-24
1003Australia2024-06-23
1004Japan2024-06-23
1005Italy2024-05-27
1006Germany2024-05-30
1007France2024-06-08
1008France2024-06-19
1009Spain2024-06-06
1010France2024-06-03
1011Italy2024-06-11
1012India2024-06-18
1013India2024-05-29
1014Japan2024-06-01
1015India2024-06-17
1016India2024-06-20
1017Brazil2024-06-19
1018Australia2024-06-04
1019Brazil2024-06-13
1020Italy2024-06-01
1021India2024-05-30
1022France2024-06-09
1023United Kingdom2024-05-30
1024Italy2024-06-04
1025Brazil2024-06-14
1026Brazil2024-06-03
1027United Kingdom2024-05-28
1028India2024-06-04
1029Italy2024-05-26
1030Germany2024-06-08
1031Spain2024-05-26
1032United Kingdom2024-06-07
1033France2024-06-05
1034Brazil2024-06-21
1035Germany2024-05-31
1036India2024-05-28
1037India2024-05-26
1038Brazil2024-06-02
1039Italy2024-06-06
1040Australia2024-06-22
1041Japan2024-06-08
1042Brazil2024-06-08
1043Australia2024-05-26
1044India2024-06-24
1045Brazil2024-06-04
1046United Kingdom2024-06-12
1047Germany2024-06-07
1048Spain2024-05-26
1049Germany2024-05-28

On-Demand Data

NameIdCountryDate
Kaitlin H Maclead1000India2024-06-01
Salvatore T Perin1001Japan2024-06-01
Maisha R Kusko1002Italy2024-05-29
Johnson F Gaucho1003Spain2024-06-18
Kadeem W Nestle1004Argentina2024-06-13
Jennifer Q Nicka1005Italy2024-06-03
Antonio J Kolmetz1006Brazil2024-06-24
Misaki W Ferencz1007United Kingdom2024-06-05
Isabel W Whobrey1008Brazil2024-06-20
Alejandro Z Inouye1009Argentina2024-06-15
Stacey E Caldarera1010Australia2024-06-08
Nicolas J Dilliard1011United Kingdom2024-06-19
Alejandro J Schemmer1012Brazil2024-05-29
Maisha R Shinko1013Spain2024-05-26
Morrow K Paprocki1014Germany2024-06-08
Adams H Chui1015Spain2024-06-14
Mujtaba L Vocelka1016United Kingdom2024-06-05
Aruna P Ruta1017Canada2024-06-17
Smith P Maclead1018United Kingdom2024-06-04
Tony D Morasca1019Argentina2024-05-26
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jeanfrancois J VocelkaRussiaOnyama Limba NEW
Jones A DoeFranceIoni Bowcher UNQUALIFIED
Maisha K WhobreySpainXuxue Feng UNQUALIFIED
Aruna M InouyeCanadaOnyama Limba PROPOSAL
Maisha S DarakjyGermanyXuxue Feng RENEWAL
Nicolas P WaycottJapanElwin Sharvill RENEWAL
Mujtaba D StensethFranceOnyama Limba RENEWAL
James B RulapaughItalyXuxue Feng QUALIFIED
Ashley Y AmigonBrazilIoni Bowcher RENEWAL
Misaki F BriddickRussiaElwin Sharvill RENEWAL
Jones W ChuiIndiaAsiya Javayant UNQUALIFIED
Jefferson J VenereIndiaBernardo Dominic PROPOSAL
Maria T FlosiJapanOnyama Limba UNQUALIFIED
Ricardo O KuskoAustraliaAnna Fali QUALIFIED
Jeanfrancois D ShinkoIndiaAnna Fali NEW
Ashley E DarakjyCanadaXuxue Feng PROPOSAL
Antonio B GillianJapanIvan Magalhaes QUALIFIED
Darci B KuskoSpainOnyama Limba PROPOSAL
Isabel X VenereItalyXuxue Feng QUALIFIED
Ricardo Z CaldareraItalyAsiya Javayant RENEWAL
Faith A IturbideAustraliaAnna Fali PROPOSAL
Rodrigues B ChuiAustraliaElwin Sharvill UNQUALIFIED
Kadeem H PaprockiItalyOnyama Limba UNQUALIFIED
Jones Q KuskoGermanyOnyama Limba UNQUALIFIED
Costa L WaycottGermanyXuxue Feng RENEWAL
Salvatore D WhobreyArgentinaAnna Fali NEW
Cody H ChuiJapanXuxue Feng UNQUALIFIED
Ricardo F SergiBrazilIoni Bowcher QUALIFIED
Isabel J CaudyIndiaBernardo Dominic QUALIFIED
Costa N SchemmerJapanIoni Bowcher NEGOTIATION
Faith I GlickArgentinaIvan Magalhaes NEGOTIATION
Francesco N ShinkoGermanyElwin Sharvill PROPOSAL
Maisha P WhobreyIndiaStephen Shaw RENEWAL
Kaitlin T GarufiUnited KingdomAmy Elsner PROPOSAL
Costa T WhobreyJapanIoni Bowcher PROPOSAL
Mayumi G SergiAustraliaAsiya Javayant RENEWAL
Antonio R NickaRussiaIoni Bowcher QUALIFIED
Silvio T SaylorsItalyAsiya Javayant NEW
Darci S MorascaSpainXuxue Feng NEW
Salvatore P ChuiSpainAmy Elsner 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>