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
Leon R MorascaJapanIoni Bowcher QUALIFIED
Wickens T KolmetzCanadaXuxue Feng PROPOSAL
Leja C GlickItalyAnna Fali NEW
Faith K NestleIndiaAsiya Javayant NEGOTIATION
Aika P PoquetteIndiaAnna Fali QUALIFIED
Ricardo V WhobreyGermanyIvan Magalhaes QUALIFIED
Claire G OstroskyGermanyOnyama Limba PROPOSAL
Murillo J NestleBrazilOnyama Limba RENEWAL
Faith D PaprockiBrazilAsiya Javayant NEW
Murillo X WhobreyCanadaIvan Magalhaes PROPOSAL
Misaki D BologniaRussiaAmy Elsner NEGOTIATION
Misaki V MaletRussiaAmy Elsner NEW
Aika A WaycottRussiaXuxue Feng UNQUALIFIED
Isabel H IturbideBrazilOnyama Limba NEGOTIATION
Aruna B KolmetzCanadaIvan Magalhaes QUALIFIED
Emily G BriddickAustraliaAsiya Javayant PROPOSAL
Tony R WaycottCanadaStephen Shaw NEGOTIATION
Aruna C KolmetzJapanStephen Shaw UNQUALIFIED
Maria O NestleAustraliaAnna Fali UNQUALIFIED
Mayumi V RoysterGermanyIoni Bowcher UNQUALIFIED
Jennifer O DilliardArgentinaOnyama Limba NEGOTIATION
Jeanfrancois M BowleyIndiaXuxue Feng RENEWAL
Costa L DoeBrazilAsiya Javayant RENEWAL
Claire G WaycottFranceElwin Sharvill NEGOTIATION
James H KuskoCanadaXuxue Feng NEGOTIATION
Misaki U TollnerJapanElwin Sharvill NEW
Aditya U MaletSpainBernardo Dominic PROPOSAL
Mujtaba K DilliardJapanAnna Fali PROPOSAL
Jennifer X DoeArgentinaAmy Elsner UNQUALIFIED
Arvin Q SlusarskiRussiaStephen Shaw QUALIFIED
Munro Y RoysterIndiaIoni Bowcher QUALIFIED
Juan M DilliardJapanElwin Sharvill UNQUALIFIED
Julie J WaycottSpainAsiya Javayant PROPOSAL
Jeanfrancois T SchemmerArgentinaBernardo Dominic UNQUALIFIED
Isabel Y FollerUnited KingdomXuxue Feng QUALIFIED
Stacey J FlosiArgentinaStephen Shaw PROPOSAL
Costa N GarufiRussiaIvan Magalhaes NEGOTIATION
Sinclair A CaldareraBrazilStephen Shaw RENEWAL
Emily F MaletUnited KingdomAsiya Javayant UNQUALIFIED
Jones Q TollnerFranceXuxue Feng QUALIFIED
Tony D FollerSpainAnna Fali NEGOTIATION
Mujtaba L TollnerArgentinaStephen Shaw PROPOSAL
Antonio U StockhamSpainElwin Sharvill QUALIFIED
Silvio K GlickIndiaIvan Magalhaes UNQUALIFIED
Izzy O AmigonIndiaAnna Fali RENEWAL
Jefferson H CaudyCanadaStephen Shaw PROPOSAL
Sinclair F InouyeGermanyStephen Shaw PROPOSAL
Mayumi S FerenczFranceOnyama Limba QUALIFIED
Julie P StensethBrazilElwin Sharvill PROPOSAL
Juan O SergiGermanyIvan Magalhaes NEW
Horizontal
NameCountryRepresentativeStatus
Morrow T PerinFranceAsiya Javayant NEGOTIATION
Izzy K DarakjyJapanAsiya Javayant RENEWAL
Ivar G CaldareraBrazilOnyama Limba RENEWAL
Alejandro U IturbideIndiaAnna Fali NEW
Leon D ShinkoItalyElwin Sharvill UNQUALIFIED
Murillo P CampainJapanOnyama Limba UNQUALIFIED
Leon K CaudyCanadaBernardo Dominic NEGOTIATION
Rodrigues D NestleRussiaAmy Elsner RENEWAL
Jones B StensethUnited KingdomElwin Sharvill NEGOTIATION
Aika S StensethUnited KingdomStephen Shaw RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Silvio K SergiIndia2024-06-02Printing Dimensions RENEWAL88Stephen Shaw
1001Murillo J DoeRussia2024-06-10Morlong Associates PROPOSAL42Onyama Limba
1002Adams G ChuiIndia2024-05-31Feltz Printing Service UNQUALIFIED88Stephen Shaw
1003Salvatore C IturbideCanada2024-06-05Dorl, James J Esq UNQUALIFIED35Elwin Sharvill
1004Smith G ShinkoSpain2024-06-14Chapman, Ross E Esq NEGOTIATION50Onyama Limba
1005Clifford N ButtJapan2024-06-04Printing Dimensions NEW1Ioni Bowcher
1006Silvio E FigeroaCanada2024-05-26Commercial Press RENEWAL69Stephen Shaw
1007Silvio D ShinkoFrance2024-06-22Chanay, Jeffrey A Esq PROPOSAL43Amy Elsner
1008Emily T CaudyItaly2024-06-08Benton, John B Jr NEGOTIATION66Bernardo Dominic
1009Clifford S FigeroaSpain2024-05-28Commercial Press NEGOTIATION55Stephen Shaw
1010Aruna T ShinkoSpain2024-06-17Chapman, Ross E Esq QUALIFIED58Ioni Bowcher
1011Leon I BologniaUnited Kingdom2024-06-18Commercial Press QUALIFIED16Elwin Sharvill
1012Kadeem U VenereRussia2024-06-24King, Christopher A Esq NEW3Onyama Limba
1013Mayumi Q DilliardIndia2024-06-21King, Christopher A Esq NEGOTIATION54Elwin Sharvill
1014Johnson I CaudyArgentina2024-06-15Chanay, Jeffrey A Esq PROPOSAL91Amy Elsner
1015Sinclair L RutaUnited Kingdom2024-05-30Morlong Associates NEW59Asiya Javayant
1016Smith O SergiItaly2024-05-29King, Christopher A Esq PROPOSAL86Amy Elsner
1017Ivar B MaletJapan2024-06-04Commercial Press UNQUALIFIED25Asiya Javayant
1018Alejandro P GarufiRussia2024-05-30Commercial Press RENEWAL86Ioni Bowcher
1019Jennifer J BriddickSpain2024-05-28Buckley Miller Wright NEGOTIATION33Onyama Limba
1020Ashley U FollerFrance2024-05-31Feiner Bros NEGOTIATION52Stephen Shaw
1021Murillo O WaycottBrazil2024-06-18Benton, John B Jr UNQUALIFIED99Xuxue Feng
1022Chavez Q SaylorsArgentina2024-05-30King, Christopher A Esq NEGOTIATION95Asiya Javayant
1023Juan B SaylorsArgentina2024-06-21Morlong Associates PROPOSAL50Ioni Bowcher
1024Isabel L DoeAustralia2024-06-19Rangoni Of Florence PROPOSAL3Ivan Magalhaes
1025Nicolas M MorascaRussia2024-05-26Printing Dimensions NEGOTIATION68Xuxue Feng
1026Kaitlin L FerenczFrance2024-06-17Benton, John B Jr NEGOTIATION53Amy Elsner
1027Leon M SaylorsAustralia2024-06-17Feltz Printing Service NEGOTIATION93Bernardo Dominic
1028Aditya T FlosiUnited Kingdom2024-06-22Feltz Printing Service PROPOSAL53Elwin Sharvill
1029Jeanfrancois R ButtItaly2024-06-02Feltz Printing Service RENEWAL17Ioni Bowcher
1030Kadeem T PaprockiIndia2024-06-21Chanay, Jeffrey A Esq PROPOSAL67Onyama Limba
1031Johnson D FigeroaIndia2024-06-18Feiner Bros NEW30Ioni Bowcher
1032Jeanfrancois K RutaJapan2024-06-12Benton, John B Jr PROPOSAL32Anna Fali
1033Deepesh L BologniaGermany2024-05-26Buckley Miller Wright NEW70Bernardo Dominic
1034Tony Z InouyeFrance2024-06-11Truhlar And Truhlar Attys PROPOSAL29Onyama Limba
1035Claire Q RutaGermany2024-06-03Truhlar And Truhlar Attys RENEWAL94Xuxue Feng
1036Jeanfrancois Y VenereCanada2024-06-04Feltz Printing Service NEGOTIATION67Asiya Javayant
1037Jeanfrancois F AmigonAustralia2024-06-23Printing Dimensions PROPOSAL46Stephen Shaw
1038Cody W RulapaughRussia2024-06-14Truhlar And Truhlar Attys NEGOTIATION23Stephen Shaw
1039Murillo Q StensethGermany2024-05-27Feiner Bros PROPOSAL78Onyama Limba
1040Mujtaba K CampainJapan2024-06-15Printing Dimensions NEW51Bernardo Dominic
1041Greenwood E KuskoIndia2024-06-07Truhlar And Truhlar Attys PROPOSAL88Anna Fali
1042Kadeem U RutaSpain2024-06-15Buckley Miller Wright NEGOTIATION39Elwin Sharvill
1043Jones X SchemmerRussia2024-06-15Chapman, Ross E Esq UNQUALIFIED30Amy Elsner
1044Mayumi K KuskoArgentina2024-06-06Benton, John B Jr UNQUALIFIED70Stephen Shaw
1045Greenwood I MaletIndia2024-06-10Truhlar And Truhlar Attys PROPOSAL75Ioni Bowcher
1046Chavez P AmigonArgentina2024-06-07Benton, John B Jr NEW39Stephen Shaw
1047Morrow V CaldareraFrance2024-05-29Buckley Miller Wright QUALIFIED27Amy Elsner
1048Kadeem V AlbaresSpain2024-05-27Buckley Miller Wright NEGOTIATION84Xuxue Feng
1049Greenwood R WhobreyIndia2024-06-23Rousseaux, Michael Esq PROPOSAL29Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Isabel J PerinUnited KingdomIoni Bowcher PROPOSAL
Silvio U WaycottFranceStephen Shaw RENEWAL
Ricardo B ShinkoCanadaIoni Bowcher RENEWAL
Jones P WhobreyArgentinaAsiya Javayant UNQUALIFIED
David M VocelkaRussiaStephen Shaw PROPOSAL
David U VocelkaGermanyBernardo Dominic UNQUALIFIED
Munro F InouyeBrazilElwin Sharvill QUALIFIED
James V GlickArgentinaAnna Fali RENEWAL
David S MaletArgentinaBernardo Dominic PROPOSAL
Faith S ChuiAustraliaIvan Magalhaes RENEWAL
Tony T WieserFranceAnna Fali PROPOSAL
Aditya C ChuiFranceXuxue Feng PROPOSAL
Mayumi S RulapaughUnited KingdomElwin Sharvill NEGOTIATION
Antonio P OstroskySpainStephen Shaw RENEWAL
Octavia M SergiCanadaElwin Sharvill UNQUALIFIED
Aruna E FollerBrazilAnna Fali NEW
Maisha V VenereJapanXuxue Feng UNQUALIFIED
Ricardo L MarrierSpainAnna Fali RENEWAL
Chavez O PaprockiGermanyStephen Shaw RENEWAL
Stacey A MaletIndiaAnna Fali RENEWAL
Aika P ButtRussiaIvan Magalhaes RENEWAL
Adams W StensethFranceOnyama Limba NEGOTIATION
David P MorascaJapanBernardo Dominic RENEWAL
David F AmigonCanadaBernardo Dominic QUALIFIED
Leon W SergiSpainElwin Sharvill PROPOSAL
Chavez U DarakjyAustraliaOnyama Limba NEGOTIATION
Claire F GillianFranceAnna Fali PROPOSAL
Leon V ShinkoArgentinaBernardo Dominic QUALIFIED
Johnson U OstroskyFranceStephen Shaw NEGOTIATION
Emily B MacleadArgentinaAmy Elsner QUALIFIED
Francesco R GillianJapanStephen Shaw UNQUALIFIED
Jefferson M MaletAustraliaStephen Shaw PROPOSAL
Emily Y PoquetteItalyBernardo Dominic NEW
Kaitlin K SaylorsFranceElwin Sharvill RENEWAL
Alejandro N MacleadIndiaElwin Sharvill NEW
Mujtaba K OldroydArgentinaAsiya Javayant QUALIFIED
Kadeem Q GillianGermanyXuxue Feng NEW
Aruna G BriddickUnited KingdomBernardo Dominic UNQUALIFIED
Salvatore L BowleySpainBernardo Dominic NEW
Nicolas S GlickRussiaOnyama Limba RENEWAL
Stacey O MarrierCanadaAsiya Javayant PROPOSAL
Morrow W SlusarskiIndiaBernardo Dominic NEGOTIATION
Ivar O NestleGermanyAsiya Javayant PROPOSAL
Maria T SlusarskiArgentinaAsiya Javayant UNQUALIFIED
Mujtaba J FlosiAustraliaIoni Bowcher NEGOTIATION
Chavez J CaldareraRussiaStephen Shaw QUALIFIED
Arvin C FollerRussiaBernardo Dominic QUALIFIED
Juan C OldroydSpainIoni Bowcher NEW
Stacey O SergiSpainStephen Shaw RENEWAL
Maria S RulapaughSpainBernardo Dominic NEW
Frozen Columns
Name
Alejandro K Gillian
Francesco K Malet
Tony F Saylors
Nicolas G Schemmer
Jones W Gaucho
Rodrigues W Stockham
Rodrigues H Albares
Octavia H Slusarski
Jefferson M Amigon
Jefferson N Garufi
Aditya D Whobrey
Juan V Figeroa
Smith Z Sergi
David U Foller
Claire S Malet
Alejandro P Amigon
Maria J Albares
Leon I Briddick
Antonio X Kusko
Silvio K Kusko
Rodrigues X Maclead
Mujtaba B Briddick
Leon L Nicka
Mayumi O Flosi
Murillo P Amigon
Mayumi D Tollner
Julie M Gaucho
Jones D Doe
Nicolas Y Malet
Kadeem B Dilliard
Kadeem E Paprocki
Faith P Gillian
Cody C Paprocki
Mayumi U Figeroa
Sinclair Q Iturbide
Aruna N Stockham
Alejandro B Stenseth
Morrow A Poquette
Leon H Albares
Cody J Ruta
Darci M Dilliard
James Q Glick
Wickens E Oldroyd
Claire R Maclead
Clifford K Royster
Adams H Albares
Wickens M Glick
Costa W Dilliard
Emily V Gillian
James U Flosi
IdCountryDate
1000Italy2024-06-16
1001Australia2024-06-24
1002Argentina2024-06-15
1003United Kingdom2024-05-30
1004Italy2024-05-31
1005Germany2024-06-06
1006Australia2024-06-06
1007Italy2024-06-01
1008Japan2024-06-01
1009Argentina2024-06-08
1010Spain2024-06-21
1011Italy2024-06-17
1012Germany2024-06-11
1013Germany2024-06-02
1014France2024-06-17
1015Brazil2024-06-22
1016Germany2024-05-26
1017Spain2024-06-16
1018Germany2024-06-12
1019United Kingdom2024-06-03
1020Germany2024-06-17
1021India2024-06-09
1022Argentina2024-06-05
1023United Kingdom2024-06-04
1024Australia2024-05-27
1025Japan2024-05-31
1026Canada2024-05-28
1027Germany2024-06-21
1028Russia2024-06-22
1029Russia2024-06-09
1030Germany2024-06-08
1031Italy2024-05-26
1032Argentina2024-06-20
1033Italy2024-06-02
1034Argentina2024-06-13
1035Canada2024-06-22
1036Canada2024-06-02
1037Japan2024-06-05
1038Canada2024-05-26
1039Spain2024-06-22
1040Japan2024-06-18
1041Russia2024-05-26
1042Australia2024-06-08
1043Argentina2024-06-09
1044Spain2024-06-03
1045Argentina2024-05-30
1046France2024-06-06
1047Argentina2024-06-05
1048Russia2024-05-30
1049France2024-06-15

On-Demand Data

NameIdCountryDate
Kaitlin H Figeroa1000India2024-06-17
Faith G Nestle1001Italy2024-06-20
Tony B Caldarera1002Japan2024-05-31
Ricardo N Venere1003Italy2024-06-05
Mayumi Z Iturbide1004United Kingdom2024-05-28
Sinclair J Oldroyd1005Australia2024-06-05
Jones J Stenseth1006United Kingdom2024-06-08
Rodrigues F Ostrosky1007Australia2024-06-12
Rodrigues Z Malet1008Germany2024-06-16
Jeanfrancois F Iturbide1009Australia2024-06-16
Juan H Poquette1010Brazil2024-06-22
Stacey A Vocelka1011France2024-06-21
Juan L Caldarera1012Spain2024-06-16
Claire J Glick1013Japan2024-06-01
Darci R Kusko1014Brazil2024-06-21
Chavez Q Briddick1015Italy2024-06-14
Johnson G Caudy1016Spain2024-06-16
Jennifer R Gillian1017Australia2024-06-12
Leon J Kusko1018Argentina2024-05-29
Tony Y Gillian1019Russia2024-06-23
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aditya F KolmetzUnited KingdomStephen Shaw QUALIFIED
Costa B TollnerArgentinaIvan Magalhaes NEW
Juan N NestleSpainAnna Fali RENEWAL
Costa H WieserJapanStephen Shaw PROPOSAL
Antonio A WhobreySpainIvan Magalhaes NEGOTIATION
Murillo N WhobreyAustraliaAnna Fali NEW
Leon W TollnerFranceAmy Elsner UNQUALIFIED
Francesco A ChuiRussiaXuxue Feng UNQUALIFIED
Kadeem G RimIndiaXuxue Feng RENEWAL
Mujtaba T OstroskyCanadaAsiya Javayant NEGOTIATION
Morrow L NickaAustraliaAnna Fali QUALIFIED
Antonio I GlickJapanAsiya Javayant UNQUALIFIED
Silvio J GillianBrazilAmy Elsner NEGOTIATION
Maria G VenereJapanIvan Magalhaes NEGOTIATION
Kadeem R StockhamGermanyBernardo Dominic QUALIFIED
Aika C SchemmerIndiaIoni Bowcher NEW
Izzy A MaletRussiaElwin Sharvill NEW
Mujtaba I FigeroaArgentinaOnyama Limba NEGOTIATION
Mayumi K MaletSpainXuxue Feng QUALIFIED
Izzy Q PaprockiItalyAsiya Javayant RENEWAL
Ivar K CaldareraSpainOnyama Limba NEW
Arvin L OstroskyRussiaOnyama Limba UNQUALIFIED
Rodrigues I RoysterUnited KingdomIvan Magalhaes NEGOTIATION
Maisha N DoeIndiaBernardo Dominic RENEWAL
Cody G NickaCanadaIoni Bowcher NEGOTIATION
Leon K MacleadAustraliaIoni Bowcher RENEWAL
David V RulapaughItalyXuxue Feng UNQUALIFIED
Clifford I AlbaresUnited KingdomIoni Bowcher PROPOSAL
Kadeem G SlusarskiIndiaIvan Magalhaes UNQUALIFIED
Claire N VenereIndiaElwin Sharvill NEGOTIATION
Aika X GlickAustraliaStephen Shaw QUALIFIED
Misaki B AlbaresFranceAmy Elsner UNQUALIFIED
Rodrigues C CaudySpainXuxue Feng UNQUALIFIED
Mujtaba N SergiAustraliaStephen Shaw QUALIFIED
Juan Q BowleyBrazilIoni Bowcher PROPOSAL
Mayumi P ShinkoGermanyAsiya Javayant NEGOTIATION
Silvio W VocelkaUnited KingdomBernardo Dominic NEGOTIATION
Darci L BriddickBrazilXuxue Feng UNQUALIFIED
Ashley V GlickFranceAmy Elsner NEGOTIATION
Jennifer G FollerRussiaOnyama Limba RENEWAL

<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>