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
Aditya N RutaArgentinaAmy Elsner PROPOSAL
Nicolas Q KuskoCanadaStephen Shaw QUALIFIED
Maria L RutaItalyAnna Fali QUALIFIED
Leja I WaycottArgentinaIvan Magalhaes RENEWAL
Maria O FollerBrazilXuxue Feng NEW
Ashley Z GillianItalyBernardo Dominic QUALIFIED
Silvio W SchemmerFranceAmy Elsner QUALIFIED
Tony N PaprockiUnited KingdomXuxue Feng UNQUALIFIED
Faith E WieserBrazilBernardo Dominic NEGOTIATION
David Y StockhamJapanElwin Sharvill UNQUALIFIED
Julie W MarrierBrazilElwin Sharvill RENEWAL
Emily Q NickaBrazilXuxue Feng NEGOTIATION
Morrow H RoysterGermanyElwin Sharvill PROPOSAL
Mayumi C TollnerFranceIvan Magalhaes NEW
Octavia Y WaycottGermanyIoni Bowcher NEGOTIATION
Arvin D RimFranceStephen Shaw QUALIFIED
Ashley N DilliardCanadaIoni Bowcher UNQUALIFIED
Izzy E IturbideIndiaBernardo Dominic RENEWAL
Kaitlin B GarufiJapanAsiya Javayant NEGOTIATION
Isabel F MarrierRussiaAmy Elsner RENEWAL
Ashley H DilliardIndiaIoni Bowcher QUALIFIED
Leon A CaudyBrazilStephen Shaw PROPOSAL
Jefferson W RimIndiaIoni Bowcher RENEWAL
Jones O NestleGermanyIoni Bowcher QUALIFIED
Deepesh E DoeItalyXuxue Feng RENEWAL
Wickens X VocelkaFranceIvan Magalhaes PROPOSAL
Juan D MarrierItalyBernardo Dominic NEW
Salvatore B PerinIndiaAsiya Javayant UNQUALIFIED
Nicolas P TollnerCanadaElwin Sharvill NEGOTIATION
Leon X KolmetzJapanElwin Sharvill NEGOTIATION
Silvio V ChuiItalyOnyama Limba NEGOTIATION
Salvatore I MarrierItalyStephen Shaw NEGOTIATION
Ivar B MorascaAustraliaAnna Fali QUALIFIED
Wickens Q CaldareraIndiaStephen Shaw UNQUALIFIED
Jefferson Q WaycottBrazilBernardo Dominic UNQUALIFIED
Aruna S FlosiIndiaIoni Bowcher UNQUALIFIED
David B RimRussiaStephen Shaw NEGOTIATION
Mujtaba C OldroydIndiaXuxue Feng NEGOTIATION
Jones N CaldareraUnited KingdomBernardo Dominic PROPOSAL
Claire N NickaGermanyIoni Bowcher PROPOSAL
Clifford I ShinkoRussiaStephen Shaw NEGOTIATION
Maria P BologniaIndiaAmy Elsner QUALIFIED
Smith L PoquetteAustraliaElwin Sharvill RENEWAL
Ivar R VenereIndiaAnna Fali NEGOTIATION
Silvio T GarufiAustraliaIvan Magalhaes UNQUALIFIED
Alejandro R RulapaughCanadaBernardo Dominic NEGOTIATION
Chavez O PaprockiCanadaAnna Fali NEGOTIATION
Aditya U MarrierBrazilIvan Magalhaes PROPOSAL
James S SaylorsItalyBernardo Dominic RENEWAL
Mujtaba S GauchoGermanyXuxue Feng NEW
Horizontal
NameCountryRepresentativeStatus
Costa O CaudyGermanyOnyama Limba UNQUALIFIED
Ivar L FlosiIndiaAsiya Javayant QUALIFIED
Aruna I AmigonJapanAmy Elsner RENEWAL
Mujtaba G OldroydUnited KingdomIvan Magalhaes NEGOTIATION
Izzy M MorascaGermanyBernardo Dominic NEGOTIATION
Tony R RulapaughAustraliaXuxue Feng UNQUALIFIED
Antonio C MacleadGermanyStephen Shaw UNQUALIFIED
Rodrigues P StensethIndiaAnna Fali UNQUALIFIED
Maria N FlosiRussiaOnyama Limba QUALIFIED
Juan H KolmetzJapanAsiya Javayant NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jennifer P KuskoBrazil2024-05-31Chemel, James L Cpa NEW6Onyama Limba
1001Costa J RulapaughSpain2024-06-02Truhlar And Truhlar Attys PROPOSAL35Xuxue Feng
1002Cody X FollerFrance2024-05-28Benton, John B Jr UNQUALIFIED21Xuxue Feng
1003Silvio K GauchoJapan2024-06-07King, Christopher A Esq UNQUALIFIED11Asiya Javayant
1004Aditya Q MorascaFrance2024-06-10Benton, John B Jr NEGOTIATION32Xuxue Feng
1005Darci F KolmetzFrance2024-06-19Chapman, Ross E Esq RENEWAL85Anna Fali
1006Ashley U MaletIndia2024-05-29Buckley Miller Wright NEW19Onyama Limba
1007Wickens U WhobreyItaly2024-06-14Commercial Press NEGOTIATION19Ioni Bowcher
1008Ivar S GlickArgentina2024-06-10Rousseaux, Michael Esq NEW47Xuxue Feng
1009Maisha W VenereUnited Kingdom2024-06-16Chapman, Ross E Esq PROPOSAL10Ivan Magalhaes
1010Octavia B GillianGermany2024-06-17Chanay, Jeffrey A Esq QUALIFIED50Onyama Limba
1011Aruna N VocelkaSpain2024-06-15Chapman, Ross E Esq RENEWAL17Asiya Javayant
1012Salvatore I ShinkoFrance2024-06-05King, Christopher A Esq NEW71Elwin Sharvill
1013Jennifer E CampainSpain2024-05-28Commercial Press UNQUALIFIED51Anna Fali
1014Jennifer H BriddickSpain2024-05-26Printing Dimensions NEW81Ioni Bowcher
1015Jefferson D KolmetzRussia2024-06-05Rousseaux, Michael Esq UNQUALIFIED41Anna Fali
1016James T BriddickAustralia2024-06-13Benton, John B Jr RENEWAL91Xuxue Feng
1017Aditya I VenereBrazil2024-06-13Chapman, Ross E Esq PROPOSAL70Bernardo Dominic
1018David E BriddickAustralia2024-06-17Dorl, James J Esq NEW38Elwin Sharvill
1019Morrow H VenereRussia2024-06-06Truhlar And Truhlar Attys UNQUALIFIED11Xuxue Feng
1020David H DoeGermany2024-05-23Morlong Associates NEW4Stephen Shaw
1021Emily M PaprockiUnited Kingdom2024-05-29Morlong Associates NEW67Asiya Javayant
1022Jones U GlickAustralia2024-06-04Printing Dimensions NEW86Onyama Limba
1023Faith I MacleadIndia2024-05-26Feiner Bros UNQUALIFIED23Asiya Javayant
1024Aditya V GarufiUnited Kingdom2024-05-26King, Christopher A Esq PROPOSAL65Anna Fali
1025Alejandro P AmigonAustralia2024-06-01Chemel, James L Cpa QUALIFIED58Anna Fali
1026Mayumi I ButtFrance2024-05-29King, Christopher A Esq NEW75Bernardo Dominic
1027Maria T MaletItaly2024-06-08Feiner Bros UNQUALIFIED99Amy Elsner
1028Morrow Y BowleySpain2024-06-01Rousseaux, Michael Esq UNQUALIFIED12Asiya Javayant
1029Johnson G FlosiGermany2024-06-08Feiner Bros NEGOTIATION82Xuxue Feng
1030Izzy E MaletIndia2024-06-04Buckley Miller Wright QUALIFIED48Onyama Limba
1031Alejandro C FerenczCanada2024-06-20Printing Dimensions RENEWAL28Stephen Shaw
1032Kadeem N PerinCanada2024-05-24Dorl, James J Esq NEGOTIATION17Onyama Limba
1033Aditya Z SaylorsIndia2024-05-25Morlong Associates RENEWAL88Bernardo Dominic
1034Izzy U PoquetteAustralia2024-05-28Rangoni Of Florence RENEWAL0Bernardo Dominic
1035Murillo W WhobreyAustralia2024-06-10Feltz Printing Service UNQUALIFIED58Elwin Sharvill
1036Julie Y DoeItaly2024-06-17Printing Dimensions NEW36Anna Fali
1037Emily G ChuiRussia2024-06-03Truhlar And Truhlar Attys PROPOSAL42Ivan Magalhaes
1038Mujtaba O DoeRussia2024-06-17Rousseaux, Michael Esq NEGOTIATION71Ioni Bowcher
1039Aruna D FlosiCanada2024-06-16Rangoni Of Florence RENEWAL19Bernardo Dominic
1040Murillo F AmigonArgentina2024-06-09Commercial Press RENEWAL77Xuxue Feng
1041Antonio G GillianGermany2024-05-23Truhlar And Truhlar Attys NEGOTIATION18Onyama Limba
1042Mujtaba L MacleadGermany2024-06-21Printing Dimensions NEGOTIATION83Ivan Magalhaes
1043Deepesh S WaycottRussia2024-05-30Truhlar And Truhlar Attys PROPOSAL26Xuxue Feng
1044Silvio Y PerinArgentina2024-06-17King, Christopher A Esq UNQUALIFIED20Asiya Javayant
1045Isabel O WhobreyArgentina2024-06-15Truhlar And Truhlar Attys NEGOTIATION98Anna Fali
1046Rodrigues K AmigonGermany2024-06-20Benton, John B Jr PROPOSAL10Bernardo Dominic
1047Octavia H GillianArgentina2024-06-09Commercial Press QUALIFIED90Stephen Shaw
1048Emily C WieserUnited Kingdom2024-06-13Chanay, Jeffrey A Esq UNQUALIFIED63Xuxue Feng
1049Deepesh C InouyeGermany2024-05-31Buckley Miller Wright QUALIFIED70Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Jefferson V WhobreyJapanElwin Sharvill QUALIFIED
Misaki O InouyeIndiaElwin Sharvill PROPOSAL
Aika K AlbaresRussiaStephen Shaw UNQUALIFIED
Clifford X PerinGermanyIvan Magalhaes QUALIFIED
Ivar P MacleadSpainXuxue Feng NEGOTIATION
Costa O MaletItalyAnna Fali RENEWAL
Johnson X GlickBrazilIvan Magalhaes PROPOSAL
Ricardo U CaudyRussiaOnyama Limba RENEWAL
Maria X CaudyItalyIoni Bowcher QUALIFIED
Clifford U BriddickSpainIoni Bowcher PROPOSAL
Morrow H WhobreyUnited KingdomIoni Bowcher NEGOTIATION
Nicolas R NestleItalyOnyama Limba PROPOSAL
Maisha T ButtCanadaBernardo Dominic QUALIFIED
Aditya F KuskoGermanyAmy Elsner PROPOSAL
Kadeem U StockhamSpainElwin Sharvill QUALIFIED
Faith W InouyeFranceElwin Sharvill RENEWAL
Kadeem W CaldareraCanadaAsiya Javayant PROPOSAL
James T MorascaCanadaAsiya Javayant RENEWAL
Misaki M BowleyItalyIoni Bowcher QUALIFIED
Rodrigues X ChuiArgentinaIoni Bowcher RENEWAL
Francesco J RoysterCanadaIvan Magalhaes UNQUALIFIED
Chavez N RulapaughUnited KingdomXuxue Feng QUALIFIED
Faith F DoeJapanAnna Fali NEW
Greenwood E WieserArgentinaOnyama Limba RENEWAL
Izzy S PerinGermanyStephen Shaw QUALIFIED
Francesco Y KolmetzBrazilOnyama Limba NEW
Aditya N CampainSpainBernardo Dominic UNQUALIFIED
Francesco Y PaprockiUnited KingdomBernardo Dominic UNQUALIFIED
James H SergiUnited KingdomBernardo Dominic NEGOTIATION
Mujtaba M ShinkoCanadaIvan Magalhaes RENEWAL
Misaki Z WieserIndiaIoni Bowcher NEGOTIATION
Aditya F SaylorsUnited KingdomIvan Magalhaes PROPOSAL
Johnson J FlosiSpainIoni Bowcher UNQUALIFIED
Munro E GlickJapanBernardo Dominic PROPOSAL
Maisha W PoquetteUnited KingdomAnna Fali PROPOSAL
Darci B SaylorsUnited KingdomIvan Magalhaes PROPOSAL
Emily J WaycottGermanyIoni Bowcher RENEWAL
Deepesh K CampainUnited KingdomIoni Bowcher PROPOSAL
Salvatore X CaudyUnited KingdomAsiya Javayant PROPOSAL
Munro L MarrierCanadaAsiya Javayant QUALIFIED
Silvio A CaudyUnited KingdomElwin Sharvill RENEWAL
Mayumi S KuskoArgentinaXuxue Feng RENEWAL
Isabel A ChuiFranceAmy Elsner UNQUALIFIED
Darci A RutaSpainOnyama Limba RENEWAL
Cody D ChuiGermanyAnna Fali PROPOSAL
Morrow I KuskoBrazilIoni Bowcher NEGOTIATION
Costa Q WhobreyAustraliaAnna Fali QUALIFIED
Emily W NickaGermanyAsiya Javayant UNQUALIFIED
David A MarrierGermanyAsiya Javayant UNQUALIFIED
Maria O PoquetteSpainBernardo Dominic NEGOTIATION
Frozen Columns
Name
Aditya V Poquette
Cody G Butt
Isabel T Briddick
Mayumi L Bolognia
Aika L Chui
Maria J Campain
Jennifer O Doe
Leon W Bolognia
Murillo G Maclead
Sinclair S Garufi
Mayumi C Campain
Alejandro L Rim
Julie G Nestle
Silvio X Oldroyd
Antonio S Oldroyd
Kadeem F Paprocki
Munro C Maclead
Cody B Figeroa
Aika L Dilliard
Salvatore S Iturbide
Morrow I Morasca
Rodrigues R Rulapaugh
Maisha E Sergi
Ashley U Shinko
Adams T Garufi
Octavia E Malet
Murillo D Garufi
Jefferson B Glick
Darci B Malet
Aika B Perin
Aditya S Tollner
Jeanfrancois X Gillian
Leja B Wieser
Faith S Whobrey
Sinclair H Butt
Leja B Royster
Octavia Y Paprocki
Costa S Malet
Antonio K Sergi
Stacey P Maclead
Tony N Doe
Aika L Kusko
Mujtaba H Rulapaugh
Salvatore X Albares
Ashley L Inouye
Ashley I Amigon
Aika C Kusko
Smith T Darakjy
David U Nestle
Jeanfrancois X Dilliard
IdCountryDate
1000India2024-05-29
1001India2024-06-03
1002Russia2024-06-03
1003India2024-06-15
1004Canada2024-06-20
1005United Kingdom2024-06-11
1006India2024-06-04
1007United Kingdom2024-06-09
1008Russia2024-06-17
1009Germany2024-06-10
1010Argentina2024-05-31
1011Japan2024-06-20
1012Spain2024-06-16
1013Spain2024-06-10
1014Brazil2024-06-21
1015Brazil2024-05-23
1016Italy2024-06-13
1017Russia2024-05-31
1018Germany2024-06-05
1019Canada2024-05-25
1020India2024-06-18
1021France2024-05-24
1022Russia2024-06-06
1023Brazil2024-06-12
1024Argentina2024-06-09
1025Russia2024-06-18
1026Canada2024-06-15
1027Italy2024-06-08
1028Spain2024-06-09
1029Spain2024-05-24
1030Australia2024-06-07
1031France2024-06-04
1032Russia2024-06-15
1033Canada2024-06-06
1034Australia2024-06-10
1035Australia2024-06-20
1036Australia2024-05-25
1037Canada2024-05-25
1038Japan2024-05-25
1039Australia2024-06-06
1040Spain2024-06-05
1041Argentina2024-06-18
1042Russia2024-05-26
1043Russia2024-05-25
1044Australia2024-05-31
1045Canada2024-06-07
1046Russia2024-06-05
1047Canada2024-06-17
1048India2024-05-23
1049Australia2024-06-14

On-Demand Data

NameIdCountryDate
Stacey Z Kolmetz1000France2024-06-09
Ricardo I Kusko1001Brazil2024-06-13
Mayumi Z Flosi1002Italy2024-05-31
David F Doe1003Italy2024-06-15
Rodrigues M Sergi1004Canada2024-06-04
Juan M Gillian1005Brazil2024-05-29
Claire S Caudy1006Australia2024-06-19
Sinclair U Saylors1007United Kingdom2024-05-25
David P Nicka1008Argentina2024-06-08
Ivar C Ferencz1009Russia2024-06-07
Wickens P Gillian1010Japan2024-05-27
Salvatore W Shinko1011Argentina2024-06-15
Jeanfrancois X Inouye1012Italy2024-05-30
Juan P Butt1013Australia2024-06-07
Ricardo M Bowley1014Japan2024-05-27
Deepesh J Dilliard1015Japan2024-06-21
Murillo S Stockham1016Japan2024-06-08
Octavia H Venere1017Germany2024-06-13
Juan N Albares1018Argentina2024-05-23
Maisha S Ferencz1019Australia2024-06-16
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Cody Y TollnerGermanyXuxue Feng NEGOTIATION
Jefferson B ButtArgentinaIvan Magalhaes QUALIFIED
Smith V DoeAustraliaStephen Shaw NEW
Adams L VenereBrazilAsiya Javayant RENEWAL
Mayumi B DarakjyArgentinaOnyama Limba NEW
Misaki V RimBrazilStephen Shaw RENEWAL
Alejandro B FerenczRussiaAmy Elsner UNQUALIFIED
Leon Z BowleyBrazilElwin Sharvill UNQUALIFIED
Aruna P PaprockiAustraliaStephen Shaw NEGOTIATION
Darci Q RoysterSpainAnna Fali NEW
Emily V WhobreyJapanStephen Shaw NEGOTIATION
Sinclair C PerinRussiaXuxue Feng RENEWAL
Aika D PerinItalyAmy Elsner UNQUALIFIED
James W OstroskyGermanyOnyama Limba NEW
Silvio A OldroydBrazilAnna Fali NEGOTIATION
Claire S CaldareraAustraliaAsiya Javayant NEW
Salvatore P PaprockiAustraliaXuxue Feng UNQUALIFIED
Johnson H CaldareraArgentinaXuxue Feng QUALIFIED
Leon T NestleJapanAnna Fali RENEWAL
Faith G OldroydAustraliaIoni Bowcher NEW
Kaitlin M RulapaughRussiaIoni Bowcher UNQUALIFIED
Jeanfrancois L InouyeSpainAmy Elsner NEGOTIATION
Faith H VenereJapanIvan Magalhaes RENEWAL
Darci M RutaArgentinaBernardo Dominic NEGOTIATION
Izzy X WhobreyAustraliaIvan Magalhaes RENEWAL
Stacey L WaycottRussiaIvan Magalhaes NEW
Darci N BologniaBrazilIoni Bowcher NEGOTIATION
Julie C WaycottArgentinaStephen Shaw PROPOSAL
Aditya M RutaRussiaAnna Fali PROPOSAL
Juan W PoquetteBrazilIvan Magalhaes NEW
Antonio I CaldareraUnited KingdomAmy Elsner RENEWAL
Nicolas D MacleadGermanyIoni Bowcher PROPOSAL
Misaki T MarrierItalyIvan Magalhaes NEGOTIATION
Smith K PerinSpainAmy Elsner UNQUALIFIED
David L CampainRussiaXuxue Feng UNQUALIFIED
Claire T AmigonAustraliaIvan Magalhaes RENEWAL
Aruna D DarakjyJapanIvan Magalhaes NEW
Aruna K KolmetzBrazilAmy Elsner UNQUALIFIED
Antonio G FollerRussiaIvan Magalhaes NEW
Greenwood N MaletFranceOnyama 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>