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
Ivar P FlosiUnited KingdomStephen Shaw RENEWAL
Johnson R SchemmerItalyAmy Elsner NEGOTIATION
Arvin Y NickaAustraliaXuxue Feng RENEWAL
Sinclair S SlusarskiUnited KingdomOnyama Limba RENEWAL
Greenwood D ButtUnited KingdomStephen Shaw RENEWAL
Wickens P WhobreyFranceBernardo Dominic QUALIFIED
Greenwood R ButtArgentinaIvan Magalhaes NEGOTIATION
Kaitlin E SergiCanadaIvan Magalhaes QUALIFIED
Johnson N DoeGermanyAnna Fali UNQUALIFIED
Aika K CaudyFranceIvan Magalhaes QUALIFIED
Adams R DoeCanadaIoni Bowcher UNQUALIFIED
Kaitlin P TollnerCanadaIoni Bowcher RENEWAL
Jones L DilliardFranceElwin Sharvill PROPOSAL
Antonio V BologniaArgentinaAnna Fali UNQUALIFIED
Clifford X GillianGermanyOnyama Limba PROPOSAL
Tony K MaletBrazilIoni Bowcher NEGOTIATION
Silvio C MorascaRussiaStephen Shaw QUALIFIED
Morrow T RoysterCanadaIoni Bowcher NEW
Leja R FerenczArgentinaIvan Magalhaes UNQUALIFIED
Julie Z TollnerCanadaAnna Fali QUALIFIED
Costa R SlusarskiIndiaStephen Shaw NEGOTIATION
Ivar J DarakjyJapanElwin Sharvill UNQUALIFIED
James Y StensethFranceIvan Magalhaes RENEWAL
Octavia H ButtSpainStephen Shaw PROPOSAL
Smith E BologniaFranceXuxue Feng NEGOTIATION
Morrow E FlosiBrazilStephen Shaw QUALIFIED
Jefferson J SaylorsCanadaXuxue Feng PROPOSAL
Johnson E TollnerRussiaOnyama Limba RENEWAL
Jefferson I DarakjyUnited KingdomIvan Magalhaes NEGOTIATION
Antonio P MarrierIndiaStephen Shaw NEGOTIATION
Johnson X FollerAustraliaIoni Bowcher UNQUALIFIED
Nicolas Q StensethAustraliaAnna Fali NEGOTIATION
Juan J ShinkoBrazilElwin Sharvill PROPOSAL
Silvio E FigeroaCanadaAsiya Javayant NEW
Jones J SchemmerUnited KingdomIoni Bowcher PROPOSAL
James V StensethArgentinaOnyama Limba NEW
Izzy B FollerRussiaStephen Shaw PROPOSAL
Morrow Q SchemmerItalyXuxue Feng NEW
Leja N SlusarskiAustraliaElwin Sharvill NEGOTIATION
Misaki O GauchoIndiaBernardo Dominic UNQUALIFIED
Morrow I MaletAustraliaXuxue Feng RENEWAL
Jennifer I DoeAustraliaAnna Fali NEGOTIATION
Jennifer X DilliardItalyOnyama Limba NEGOTIATION
Cody X FigeroaAustraliaAsiya Javayant NEGOTIATION
Jeanfrancois V NickaGermanyAsiya Javayant NEGOTIATION
Darci T AmigonGermanyElwin Sharvill NEGOTIATION
Murillo K AmigonRussiaIoni Bowcher NEW
Clifford E ChuiArgentinaIoni Bowcher NEGOTIATION
Greenwood W SlusarskiIndiaXuxue Feng NEW
Silvio U BologniaAustraliaIoni Bowcher PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Leja H GarufiSpainIvan Magalhaes NEGOTIATION
Octavia H CaldareraRussiaAnna Fali RENEWAL
Costa D BologniaCanadaBernardo Dominic NEW
Ricardo M GillianSpainIvan Magalhaes UNQUALIFIED
Johnson E MaletRussiaAsiya Javayant NEW
Silvio O MacleadFranceElwin Sharvill UNQUALIFIED
Francesco R StensethIndiaBernardo Dominic PROPOSAL
Darci U VocelkaIndiaIoni Bowcher NEW
Jones H WieserSpainStephen Shaw NEGOTIATION
Adams V StockhamUnited KingdomAnna Fali QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Darci L KuskoRussia2024-06-10Rangoni Of Florence UNQUALIFIED22Amy Elsner
1001Cody F InouyeCanada2024-06-08Chanay, Jeffrey A Esq PROPOSAL28Anna Fali
1002Morrow T DoeAustralia2024-05-27King, Christopher A Esq PROPOSAL37Elwin Sharvill
1003Murillo N MorascaAustralia2024-06-01Feiner Bros UNQUALIFIED70Amy Elsner
1004Cody T MorascaBrazil2024-05-23Feiner Bros UNQUALIFIED11Stephen Shaw
1005Alejandro U MacleadArgentina2024-06-08Chanay, Jeffrey A Esq UNQUALIFIED52Ivan Magalhaes
1006Misaki C MarrierRussia2024-06-21Feltz Printing Service QUALIFIED65Ioni Bowcher
1007Sinclair V ButtJapan2024-06-03Feiner Bros PROPOSAL40Anna Fali
1008Stacey X CampainSpain2024-05-25Buckley Miller Wright PROPOSAL85Onyama Limba
1009Leon P GlickItaly2024-05-24Chapman, Ross E Esq PROPOSAL59Stephen Shaw
1010Costa C VenereIndia2024-05-23Feltz Printing Service NEW25Anna Fali
1011Smith L IturbideArgentina2024-06-07Truhlar And Truhlar Attys PROPOSAL43Onyama Limba
1012Juan B BriddickFrance2024-05-30Truhlar And Truhlar Attys NEW80Elwin Sharvill
1013Emily Z MaletUnited Kingdom2024-05-25King, Christopher A Esq UNQUALIFIED48Elwin Sharvill
1014Leon R OldroydAustralia2024-06-08Chapman, Ross E Esq UNQUALIFIED93Ivan Magalhaes
1015Misaki Q MacleadBrazil2024-06-11Feltz Printing Service NEW12Xuxue Feng
1016Isabel X SaylorsBrazil2024-05-31Feiner Bros QUALIFIED28Elwin Sharvill
1017Deepesh I BologniaArgentina2024-06-16Chanay, Jeffrey A Esq NEW34Asiya Javayant
1018Clifford O PoquetteJapan2024-06-17King, Christopher A Esq UNQUALIFIED48Bernardo Dominic
1019Wickens L AlbaresJapan2024-05-28Buckley Miller Wright RENEWAL60Stephen Shaw
1020Munro L NickaRussia2024-06-02Commercial Press RENEWAL22Elwin Sharvill
1021Alejandro W KuskoArgentina2024-05-29Chanay, Jeffrey A Esq QUALIFIED52Amy Elsner
1022Mujtaba W CaldareraFrance2024-06-18Rangoni Of Florence NEGOTIATION78Ivan Magalhaes
1023Jones T FerenczFrance2024-06-19Truhlar And Truhlar Attys NEW44Amy Elsner
1024Adams B GillianIndia2024-06-02Printing Dimensions QUALIFIED91Onyama Limba
1025Izzy H KuskoIndia2024-06-18Rangoni Of Florence QUALIFIED88Asiya Javayant
1026Misaki O MaletAustralia2024-06-02Truhlar And Truhlar Attys NEW54Amy Elsner
1027Jones B BowleyFrance2024-05-23Buckley Miller Wright NEW20Bernardo Dominic
1028Stacey Q AmigonRussia2024-06-04Feltz Printing Service UNQUALIFIED89Elwin Sharvill
1029Greenwood C SaylorsItaly2024-05-23Feiner Bros QUALIFIED73Ivan Magalhaes
1030Wickens P WaycottCanada2024-06-18Dorl, James J Esq UNQUALIFIED66Amy Elsner
1031Smith N MaletJapan2024-06-02Feiner Bros UNQUALIFIED55Onyama Limba
1032James U MaletIndia2024-06-02Commercial Press QUALIFIED93Elwin Sharvill
1033Isabel O FollerAustralia2024-06-07Chanay, Jeffrey A Esq PROPOSAL65Onyama Limba
1034Ivar B ChuiJapan2024-05-28Chanay, Jeffrey A Esq NEGOTIATION5Stephen Shaw
1035Emily X DoeUnited Kingdom2024-05-25Chapman, Ross E Esq NEW53Ioni Bowcher
1036Maria Z RutaIndia2024-06-06Chapman, Ross E Esq NEGOTIATION14Elwin Sharvill
1037Costa B DarakjyUnited Kingdom2024-05-23Chanay, Jeffrey A Esq NEGOTIATION51Anna Fali
1038Ricardo G CaldareraArgentina2024-06-01Buckley Miller Wright RENEWAL49Xuxue Feng
1039Juan Z FlosiUnited Kingdom2024-05-29Benton, John B Jr NEW20Ioni Bowcher
1040Aika H KuskoArgentina2024-05-25Benton, John B Jr NEW4Anna Fali
1041Arvin Z StockhamCanada2024-06-12Chanay, Jeffrey A Esq QUALIFIED27Stephen Shaw
1042Francesco M OldroydGermany2024-06-11Chanay, Jeffrey A Esq NEGOTIATION53Stephen Shaw
1043Aditya Y TollnerFrance2024-06-18Chanay, Jeffrey A Esq QUALIFIED83Ivan Magalhaes
1044Silvio G WieserCanada2024-06-16Feltz Printing Service PROPOSAL63Elwin Sharvill
1045Johnson O FigeroaItaly2024-06-10Chanay, Jeffrey A Esq QUALIFIED9Stephen Shaw
1046Munro H DarakjyFrance2024-06-08Chemel, James L Cpa UNQUALIFIED47Xuxue Feng
1047Francesco S CaldareraRussia2024-06-17Truhlar And Truhlar Attys PROPOSAL35Onyama Limba
1048Emily W ButtItaly2024-05-25Benton, John B Jr QUALIFIED97Bernardo Dominic
1049Jones U SlusarskiUnited Kingdom2024-06-07Feltz Printing Service PROPOSAL34Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Ivar R DilliardItalyAsiya Javayant NEW
Francesco S AmigonSpainStephen Shaw NEW
Costa F RimGermanyAsiya Javayant UNQUALIFIED
Darci J GlickIndiaAnna Fali PROPOSAL
Nicolas E CaldareraJapanStephen Shaw PROPOSAL
Salvatore X KolmetzItalyIoni Bowcher QUALIFIED
Maria O ButtItalyIvan Magalhaes NEW
Maisha Z StensethAustraliaBernardo Dominic QUALIFIED
Clifford H AmigonItalyIoni Bowcher QUALIFIED
Kaitlin W PoquetteSpainIoni Bowcher PROPOSAL
Wickens E NickaCanadaAsiya Javayant NEW
Chavez M CaldareraFranceAsiya Javayant NEGOTIATION
Adams U TollnerBrazilXuxue Feng RENEWAL
Clifford B GarufiIndiaAnna Fali RENEWAL
Faith M StockhamJapanAsiya Javayant NEGOTIATION
Jefferson R FigeroaFranceAnna Fali QUALIFIED
Ashley W RulapaughItalyAmy Elsner NEGOTIATION
Leon M ButtUnited KingdomXuxue Feng NEW
Aika J KolmetzIndiaXuxue Feng QUALIFIED
Juan N ChuiRussiaElwin Sharvill PROPOSAL
Jennifer G RimSpainOnyama Limba UNQUALIFIED
Izzy T DarakjyGermanyAsiya Javayant RENEWAL
James J KolmetzRussiaAnna Fali UNQUALIFIED
Stacey H ShinkoItalyIoni Bowcher PROPOSAL
Isabel B FerenczIndiaOnyama Limba QUALIFIED
Jefferson M VocelkaRussiaAsiya Javayant NEGOTIATION
Misaki D StensethRussiaStephen Shaw QUALIFIED
James F SlusarskiBrazilAsiya Javayant NEW
Misaki J GarufiFranceOnyama Limba NEW
Adams W BowleyIndiaAsiya Javayant UNQUALIFIED
Kadeem J RulapaughArgentinaIoni Bowcher RENEWAL
Jefferson H SergiRussiaOnyama Limba NEW
Jennifer T NickaSpainElwin Sharvill NEGOTIATION
Deepesh P PerinAustraliaOnyama Limba NEGOTIATION
Cody I GillianIndiaIvan Magalhaes NEGOTIATION
Greenwood M DarakjyUnited KingdomElwin Sharvill NEGOTIATION
Faith X MaletItalyIvan Magalhaes PROPOSAL
Ricardo A FollerItalyIoni Bowcher UNQUALIFIED
Aruna X WaycottRussiaElwin Sharvill NEW
Smith I RoysterSpainIvan Magalhaes RENEWAL
Octavia C WieserSpainXuxue Feng NEGOTIATION
Darci Y VenereBrazilOnyama Limba NEGOTIATION
Adams D BriddickCanadaIoni Bowcher PROPOSAL
Mujtaba W InouyeSpainAmy Elsner QUALIFIED
Tony F GarufiItalyIoni Bowcher RENEWAL
Costa W PerinCanadaXuxue Feng NEGOTIATION
Antonio H DoeBrazilAsiya Javayant QUALIFIED
Izzy W DilliardAustraliaElwin Sharvill NEGOTIATION
Arvin R DoeFranceBernardo Dominic PROPOSAL
Jeanfrancois C AlbaresUnited KingdomAnna Fali NEGOTIATION
Frozen Columns
Name
Julie Q Gaucho
Nicolas B Nicka
Aditya S Sergi
Silvio B Venere
James Y Amigon
Costa B Slusarski
Aruna D Venere
Mayumi J Dilliard
Jennifer Y Iturbide
Cody F Caudy
Leon W Shinko
Izzy B Poquette
Maisha R Albares
Wickens K Maclead
Ashley C Marrier
Aditya T Ferencz
Maisha J Ruta
Chavez A Gillian
Rodrigues M Rim
Maisha P Foller
Julie J Whobrey
Sinclair D Nestle
Alejandro V Oldroyd
Silvio X Vocelka
Francesco K Schemmer
Octavia J Butt
Salvatore L Maclead
Munro Q Stockham
Salvatore M Kolmetz
Aruna V Maclead
Silvio B Stockham
Mayumi B Slusarski
Juan E Nestle
Leja G Iturbide
Salvatore T Caldarera
Maisha P Darakjy
Rodrigues L Morasca
Leon E Nicka
Claire T Poquette
Julie N Figeroa
Leja O Amigon
Aika Z Garufi
Darci M Vocelka
Stacey S Doe
Mujtaba A Albares
Silvio X Malet
Julie A Slusarski
Octavia W Albares
Mayumi Q Paprocki
Leja J Saylors
IdCountryDate
1000Brazil2024-06-03
1001Brazil2024-05-25
1002Japan2024-06-05
1003Germany2024-05-28
1004Brazil2024-06-10
1005Brazil2024-06-01
1006United Kingdom2024-06-20
1007France2024-05-24
1008Australia2024-06-05
1009Russia2024-06-02
1010United Kingdom2024-06-15
1011Australia2024-05-27
1012Japan2024-06-19
1013Spain2024-06-06
1014Australia2024-06-14
1015Italy2024-06-12
1016Germany2024-06-20
1017Canada2024-06-15
1018Russia2024-06-13
1019Argentina2024-05-28
1020Russia2024-06-20
1021Japan2024-05-27
1022Canada2024-06-18
1023Germany2024-05-25
1024Spain2024-06-15
1025Brazil2024-06-13
1026India2024-06-12
1027Russia2024-06-12
1028Canada2024-06-02
1029Russia2024-05-26
1030Australia2024-06-16
1031Australia2024-05-27
1032Australia2024-06-19
1033Spain2024-06-14
1034India2024-06-13
1035Argentina2024-06-04
1036France2024-05-31
1037Japan2024-06-07
1038France2024-06-11
1039Argentina2024-06-15
1040Australia2024-05-30
1041Canada2024-06-17
1042Germany2024-06-02
1043Australia2024-06-08
1044Canada2024-05-29
1045Italy2024-06-09
1046Italy2024-06-13
1047Brazil2024-06-17
1048Canada2024-06-02
1049India2024-05-27

On-Demand Data

NameIdCountryDate
Murillo L Malet1000United Kingdom2024-05-26
Mujtaba R Nicka1001United Kingdom2024-06-13
Chavez S Marrier1002Germany2024-06-19
Ashley H Figeroa1003India2024-06-07
Greenwood C Ostrosky1004Brazil2024-06-04
Ivar D Slusarski1005Germany2024-06-01
Jefferson M Nicka1006Russia2024-06-03
Silvio E Gaucho1007India2024-05-24
Cody X Iturbide1008Spain2024-06-21
Maria T Royster1009Russia2024-05-30
Salvatore K Stockham1010Russia2024-06-05
Mujtaba U Briddick1011Argentina2024-05-24
Murillo Q Ferencz1012France2024-05-31
Jennifer G Gillian1013Japan2024-06-15
Aditya U Figeroa1014Italy2024-05-28
Arvin D Saylors1015Canada2024-05-30
Arvin C Malet1016India2024-06-16
Jeanfrancois N Slusarski1017Japan2024-06-01
Aruna N Schemmer1018India2024-05-23
Chavez Z Whobrey1019Canada2024-05-27
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Silvio N VenereGermanyXuxue Feng UNQUALIFIED
Clifford H SaylorsArgentinaAmy Elsner NEW
Deepesh T ButtFranceAsiya Javayant NEW
Stacey P SlusarskiRussiaAsiya Javayant QUALIFIED
Ivar W KuskoItalyAmy Elsner RENEWAL
Antonio F InouyeFranceOnyama Limba PROPOSAL
Maria U StockhamJapanXuxue Feng NEW
David H RulapaughArgentinaElwin Sharvill NEGOTIATION
Costa C InouyeArgentinaStephen Shaw RENEWAL
Greenwood S FigeroaBrazilAsiya Javayant RENEWAL
Juan S GauchoCanadaOnyama Limba NEGOTIATION
Antonio N GlickJapanAsiya Javayant RENEWAL
Faith Y CaudyUnited KingdomAnna Fali QUALIFIED
James H FlosiItalyElwin Sharvill NEGOTIATION
Chavez C DilliardArgentinaAmy Elsner RENEWAL
Emily L VocelkaGermanyBernardo Dominic UNQUALIFIED
Misaki U InouyeRussiaAnna Fali QUALIFIED
Francesco B StockhamRussiaIoni Bowcher QUALIFIED
Darci X AmigonRussiaOnyama Limba UNQUALIFIED
Leon S DarakjyFranceAsiya Javayant RENEWAL
Stacey Q MaletRussiaAsiya Javayant RENEWAL
Aruna P TollnerGermanyIoni Bowcher RENEWAL
Maria I BologniaRussiaAsiya Javayant NEW
Jones K FollerItalyOnyama Limba NEW
Maisha W RulapaughSpainElwin Sharvill UNQUALIFIED
Kadeem Y AlbaresFranceAnna Fali UNQUALIFIED
Aika X FigeroaCanadaIoni Bowcher NEW
Maisha F KuskoGermanyOnyama Limba UNQUALIFIED
Jefferson F StensethCanadaAmy Elsner QUALIFIED
Tony U IturbideRussiaIoni Bowcher RENEWAL
Greenwood N NickaIndiaOnyama Limba QUALIFIED
James J AlbaresGermanyElwin Sharvill QUALIFIED
Francesco R WhobreySpainAnna Fali PROPOSAL
Francesco R PerinFranceBernardo Dominic QUALIFIED
Deepesh M CaudyRussiaAmy Elsner PROPOSAL
Nicolas N FerenczCanadaAnna Fali NEW
Ricardo C CaudyGermanyIoni Bowcher RENEWAL
Emily I InouyeFranceBernardo Dominic RENEWAL
Johnson X WieserAustraliaBernardo Dominic UNQUALIFIED
Jeanfrancois F MaletIndiaXuxue Feng 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>