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
Morrow D WhobreyJapanIvan Magalhaes NEGOTIATION
Sinclair L ShinkoAustraliaAmy Elsner RENEWAL
Juan E RutaIndiaAmy Elsner UNQUALIFIED
Kaitlin W MaletUnited KingdomOnyama Limba PROPOSAL
Deepesh B AmigonJapanIvan Magalhaes NEW
Darci Y SlusarskiArgentinaIvan Magalhaes NEGOTIATION
Ricardo H StockhamAustraliaOnyama Limba NEGOTIATION
Murillo R FollerJapanAnna Fali NEW
Sinclair K GlickBrazilBernardo Dominic RENEWAL
Costa P RutaUnited KingdomAsiya Javayant PROPOSAL
Jennifer O PerinFranceStephen Shaw NEW
Morrow P SlusarskiJapanAsiya Javayant UNQUALIFIED
Claire Q SaylorsUnited KingdomAnna Fali QUALIFIED
Deepesh K SchemmerCanadaIoni Bowcher PROPOSAL
Mujtaba G ButtIndiaAnna Fali RENEWAL
Antonio U RimItalyStephen Shaw NEW
Deepesh E MacleadJapanXuxue Feng PROPOSAL
Ivar O StensethBrazilIvan Magalhaes PROPOSAL
Leon N PoquetteItalyStephen Shaw RENEWAL
Nicolas J SchemmerAustraliaStephen Shaw RENEWAL
Mayumi V RutaUnited KingdomIoni Bowcher QUALIFIED
Salvatore Q FerenczIndiaOnyama Limba UNQUALIFIED
Faith H MorascaItalyIoni Bowcher NEW
Munro P AlbaresUnited KingdomStephen Shaw NEGOTIATION
Arvin U GauchoAustraliaBernardo Dominic RENEWAL
Misaki B MacleadBrazilIoni Bowcher NEW
Morrow A TollnerFranceIvan Magalhaes UNQUALIFIED
Morrow F PoquetteSpainOnyama Limba RENEWAL
Tony I MaletGermanyIvan Magalhaes UNQUALIFIED
Ashley R VenereIndiaOnyama Limba PROPOSAL
Tony E VocelkaAustraliaIvan Magalhaes QUALIFIED
Jeanfrancois N ShinkoRussiaIoni Bowcher QUALIFIED
Nicolas O FigeroaItalyAnna Fali UNQUALIFIED
Kaitlin D GlickCanadaStephen Shaw PROPOSAL
Izzy V MaletBrazilAsiya Javayant QUALIFIED
Leon O BowleyIndiaElwin Sharvill PROPOSAL
Ivar L ButtBrazilAsiya Javayant UNQUALIFIED
Morrow P WieserItalyAmy Elsner NEW
Sinclair W GarufiJapanAmy Elsner PROPOSAL
Salvatore J MaletItalyElwin Sharvill RENEWAL
Chavez U StensethUnited KingdomBernardo Dominic PROPOSAL
Clifford C NickaAustraliaStephen Shaw NEW
Maria A StockhamArgentinaIoni Bowcher UNQUALIFIED
Francesco O WaycottBrazilElwin Sharvill PROPOSAL
Sinclair C ButtItalyElwin Sharvill UNQUALIFIED
Izzy C FerenczBrazilBernardo Dominic QUALIFIED
Octavia I VenereFranceAsiya Javayant RENEWAL
Smith F SchemmerItalyXuxue Feng RENEWAL
Juan P MorascaUnited KingdomIvan Magalhaes NEW
Silvio U WaycottGermanyIoni Bowcher UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Leja N MacleadSpainIvan Magalhaes QUALIFIED
Francesco K KuskoItalyStephen Shaw RENEWAL
Morrow I WieserIndiaIoni Bowcher UNQUALIFIED
Jones Z OstroskyIndiaElwin Sharvill NEW
Jennifer W IturbideItalyBernardo Dominic RENEWAL
Isabel R MaletFranceAmy Elsner NEGOTIATION
Deepesh F IturbideCanadaIoni Bowcher QUALIFIED
Antonio R NickaGermanyIoni Bowcher PROPOSAL
Adams U BowleyFranceIvan Magalhaes PROPOSAL
Claire P StockhamFranceAsiya Javayant RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Faith Y MacleadIndia2024-05-25Printing Dimensions RENEWAL71Amy Elsner
1001Maisha Y CaudySpain2024-06-01Dorl, James J Esq PROPOSAL52Asiya Javayant
1002Cody T WhobreyItaly2024-05-25Rousseaux, Michael Esq RENEWAL26Bernardo Dominic
1003Costa T StensethBrazil2024-06-10Commercial Press UNQUALIFIED34Ioni Bowcher
1004Misaki S FlosiArgentina2024-06-22Dorl, James J Esq RENEWAL54Amy Elsner
1005Munro W StockhamCanada2024-06-17Chemel, James L Cpa NEW45Onyama Limba
1006Jefferson J CaudyUnited Kingdom2024-06-11Buckley Miller Wright RENEWAL1Anna Fali
1007Clifford U SergiItaly2024-06-16Buckley Miller Wright NEGOTIATION91Xuxue Feng
1008Leon K MarrierFrance2024-06-14Benton, John B Jr UNQUALIFIED94Elwin Sharvill
1009Leja B WhobreyJapan2024-05-29Truhlar And Truhlar Attys NEW47Onyama Limba
1010Costa X PaprockiArgentina2024-06-17Dorl, James J Esq UNQUALIFIED54Ivan Magalhaes
1011Stacey U ShinkoJapan2024-05-27Dorl, James J Esq NEW44Elwin Sharvill
1012Nicolas W KolmetzCanada2024-06-07Printing Dimensions NEGOTIATION0Ivan Magalhaes
1013Kaitlin Z ButtGermany2024-06-11Chemel, James L Cpa UNQUALIFIED41Asiya Javayant
1014Jennifer R SergiItaly2024-06-18Feltz Printing Service PROPOSAL42Ioni Bowcher
1015Salvatore A MorascaGermany2024-06-04Benton, John B Jr NEGOTIATION51Anna Fali
1016Faith W WaycottBrazil2024-06-21Rousseaux, Michael Esq UNQUALIFIED43Asiya Javayant
1017Izzy I CampainUnited Kingdom2024-06-10Rousseaux, Michael Esq QUALIFIED77Elwin Sharvill
1018Stacey U OstroskyRussia2024-06-21Chapman, Ross E Esq UNQUALIFIED77Anna Fali
1019Misaki D KuskoUnited Kingdom2024-06-17Benton, John B Jr NEGOTIATION97Anna Fali
1020Faith M MaletGermany2024-06-09Benton, John B Jr NEGOTIATION6Elwin Sharvill
1021James E KolmetzIndia2024-06-03Chanay, Jeffrey A Esq QUALIFIED71Asiya Javayant
1022Aika X SlusarskiArgentina2024-06-07Commercial Press NEGOTIATION16Xuxue Feng
1023Maria D SlusarskiItaly2024-05-28Benton, John B Jr NEGOTIATION26Bernardo Dominic
1024Maisha E PoquetteFrance2024-05-30Chanay, Jeffrey A Esq RENEWAL3Stephen Shaw
1025Aruna O NestleFrance2024-06-05Buckley Miller Wright NEGOTIATION31Asiya Javayant
1026Adams Y RimGermany2024-06-06King, Christopher A Esq UNQUALIFIED46Amy Elsner
1027Mujtaba W TollnerAustralia2024-06-07Chanay, Jeffrey A Esq UNQUALIFIED91Asiya Javayant
1028Octavia Q FerenczBrazil2024-06-14Dorl, James J Esq RENEWAL40Ivan Magalhaes
1029Aditya E DoeIndia2024-05-26King, Christopher A Esq UNQUALIFIED80Bernardo Dominic
1030Clifford E VenereFrance2024-06-10Benton, John B Jr NEGOTIATION33Ioni Bowcher
1031Salvatore F FlosiCanada2024-06-14King, Christopher A Esq UNQUALIFIED3Stephen Shaw
1032Silvio S RulapaughArgentina2024-06-08Feiner Bros NEGOTIATION50Ivan Magalhaes
1033Murillo N ChuiBrazil2024-06-16Truhlar And Truhlar Attys NEW44Elwin Sharvill
1034Ivar Z MorascaJapan2024-06-17Morlong Associates RENEWAL51Bernardo Dominic
1035Kadeem H FlosiAustralia2024-06-15Chemel, James L Cpa RENEWAL28Asiya Javayant
1036Jefferson Q SergiUnited Kingdom2024-05-28Morlong Associates PROPOSAL72Asiya Javayant
1037Aditya B DarakjyFrance2024-06-23Chanay, Jeffrey A Esq RENEWAL78Elwin Sharvill
1038Maria Q BriddickRussia2024-06-01Feiner Bros PROPOSAL8Xuxue Feng
1039Costa B AmigonAustralia2024-06-14Chemel, James L Cpa UNQUALIFIED94Onyama Limba
1040Antonio P IturbideRussia2024-06-22Feiner Bros PROPOSAL46Elwin Sharvill
1041Mujtaba M CaudyCanada2024-06-17Rousseaux, Michael Esq NEW53Ioni Bowcher
1042Maria Q TollnerArgentina2024-05-27Chapman, Ross E Esq QUALIFIED78Ioni Bowcher
1043Aika V ChuiAustralia2024-06-05Rangoni Of Florence NEGOTIATION84Amy Elsner
1044Clifford T NestleIndia2024-06-17Truhlar And Truhlar Attys NEGOTIATION46Bernardo Dominic
1045Mayumi M PoquetteSpain2024-06-05Rousseaux, Michael Esq PROPOSAL19Ioni Bowcher
1046Juan X FigeroaItaly2024-05-27King, Christopher A Esq NEGOTIATION43Anna Fali
1047Faith W KolmetzIndia2024-06-01King, Christopher A Esq QUALIFIED23Elwin Sharvill
1048James N BriddickGermany2024-06-12Benton, John B Jr NEGOTIATION20Bernardo Dominic
1049Salvatore O FollerUnited Kingdom2024-06-18Rangoni Of Florence UNQUALIFIED44Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Leon E OstroskyIndiaOnyama Limba QUALIFIED
Costa F DoeItalyXuxue Feng PROPOSAL
Darci W InouyeUnited KingdomStephen Shaw QUALIFIED
Misaki F DarakjyAustraliaOnyama Limba PROPOSAL
Jefferson D DilliardItalyOnyama Limba NEW
Sinclair L FlosiRussiaAmy Elsner QUALIFIED
Darci W MarrierItalyAmy Elsner UNQUALIFIED
Mujtaba P PoquetteItalyIvan Magalhaes QUALIFIED
Greenwood I RoysterIndiaAsiya Javayant UNQUALIFIED
Leon E OldroydBrazilAnna Fali PROPOSAL
Murillo T ShinkoFranceStephen Shaw NEGOTIATION
Costa A ChuiFranceXuxue Feng NEW
Faith V KolmetzCanadaAmy Elsner UNQUALIFIED
Jones K FlosiIndiaIoni Bowcher NEGOTIATION
Rodrigues L BologniaJapanIvan Magalhaes PROPOSAL
Murillo C AmigonUnited KingdomAnna Fali NEGOTIATION
Wickens S KuskoFranceXuxue Feng QUALIFIED
Aruna W ButtSpainAsiya Javayant RENEWAL
Jeanfrancois E PoquetteCanadaIoni Bowcher QUALIFIED
Mayumi N RimBrazilIvan Magalhaes UNQUALIFIED
Ashley H OstroskySpainIoni Bowcher PROPOSAL
David B ShinkoIndiaIvan Magalhaes QUALIFIED
Tony Q StensethGermanyOnyama Limba RENEWAL
Mayumi A MacleadBrazilAmy Elsner QUALIFIED
Rodrigues T FollerFranceBernardo Dominic UNQUALIFIED
Ashley Z GarufiRussiaStephen Shaw NEGOTIATION
Johnson C MorascaIndiaOnyama Limba RENEWAL
James I SchemmerSpainAmy Elsner PROPOSAL
Octavia J IturbideFranceXuxue Feng UNQUALIFIED
Aruna L SlusarskiFranceIvan Magalhaes QUALIFIED
Cody J GauchoAustraliaIvan Magalhaes NEGOTIATION
Greenwood X DoeCanadaAsiya Javayant UNQUALIFIED
Johnson V SergiArgentinaAsiya Javayant UNQUALIFIED
Maria O NickaJapanAnna Fali NEGOTIATION
Julie W MacleadUnited KingdomIvan Magalhaes NEGOTIATION
Aika J InouyeSpainAsiya Javayant PROPOSAL
Jefferson V StockhamGermanyOnyama Limba QUALIFIED
Tony W MorascaJapanAnna Fali QUALIFIED
Greenwood G ChuiArgentinaAnna Fali RENEWAL
Tony V GlickArgentinaBernardo Dominic UNQUALIFIED
Francesco F BriddickAustraliaOnyama Limba UNQUALIFIED
Francesco T PerinGermanyAmy Elsner QUALIFIED
Tony C VenereArgentinaAmy Elsner UNQUALIFIED
Darci C IturbideFranceAmy Elsner NEW
Kadeem N RulapaughSpainXuxue Feng NEGOTIATION
Misaki T RoysterAustraliaXuxue Feng QUALIFIED
Chavez K DoeSpainBernardo Dominic RENEWAL
James C FerenczItalyAnna Fali NEW
Misaki U MaletUnited KingdomIvan Magalhaes NEW
Mayumi W SchemmerSpainIoni Bowcher QUALIFIED
Frozen Columns
Name
James P Maclead
Jefferson V Inouye
Smith K Caudy
Maisha S Flosi
Munro L Schemmer
Mayumi I Briddick
Antonio M Doe
Costa U Royster
Silvio T Rim
Jeanfrancois C Royster
Ivar T Perin
Morrow D Ruta
Emily S Wieser
Deepesh G Nicka
Jones D Saylors
Isabel M Doe
Jefferson J Sergi
Izzy Q Nestle
Munro X Campain
Leon I Malet
Murillo Z Gillian
Johnson C Marrier
Izzy A Schemmer
Rodrigues J Figeroa
Clifford Y Malet
Jones U Slusarski
Maisha L Slusarski
Nicolas T Butt
Emily Q Perin
Francesco J Sergi
Kaitlin M Glick
Munro L Butt
Murillo I Campain
Sinclair I Stockham
Smith E Vocelka
Kadeem J Ferencz
Arvin H Poquette
Darci I Venere
Deepesh Z Nestle
Johnson X Shinko
Costa P Whobrey
Jefferson Y Stenseth
Stacey X Ferencz
Silvio F Doe
Aika V Bolognia
Isabel M Ostrosky
Johnson P Venere
Sinclair J Whobrey
Nicolas Z Stenseth
David A Malet
IdCountryDate
1000United Kingdom2024-05-31
1001Spain2024-06-12
1002Australia2024-05-30
1003United Kingdom2024-05-27
1004Germany2024-05-29
1005Argentina2024-06-23
1006United Kingdom2024-06-15
1007India2024-05-26
1008Canada2024-06-13
1009Canada2024-06-10
1010Argentina2024-06-01
1011Russia2024-06-18
1012Canada2024-05-31
1013Germany2024-06-18
1014India2024-06-20
1015Canada2024-06-20
1016Australia2024-06-19
1017India2024-06-17
1018Japan2024-06-15
1019Germany2024-06-21
1020Argentina2024-06-18
1021Canada2024-06-06
1022Italy2024-05-28
1023India2024-06-17
1024Japan2024-06-11
1025Australia2024-06-14
1026India2024-05-27
1027France2024-06-07
1028Italy2024-06-01
1029Spain2024-05-30
1030France2024-06-02
1031India2024-06-01
1032Russia2024-05-30
1033France2024-05-30
1034France2024-06-10
1035Russia2024-06-09
1036United Kingdom2024-06-15
1037United Kingdom2024-05-29
1038Argentina2024-06-08
1039Japan2024-06-04
1040India2024-06-23
1041Australia2024-06-14
1042Brazil2024-06-23
1043India2024-06-14
1044Spain2024-05-31
1045Argentina2024-06-11
1046Australia2024-06-15
1047Italy2024-06-20
1048Australia2024-06-18
1049Australia2024-06-20

On-Demand Data

NameIdCountryDate
Wickens M Rulapaugh1000Italy2024-06-02
Emily U Royster1001Canada2024-06-13
Arvin O Saylors1002India2024-06-17
Sinclair I Butt1003Italy2024-06-07
Jennifer B Glick1004Canada2024-06-16
Silvio M Doe1005Spain2024-06-16
Maria T Chui1006Italy2024-05-25
Cody Z Bowley1007Australia2024-05-29
Ricardo F Rim1008Germany2024-06-05
Deepesh A Stockham1009Australia2024-06-22
Kaitlin S Stenseth1010India2024-06-17
Munro G Kusko1011Brazil2024-06-20
Chavez L Schemmer1012Argentina2024-06-17
Julie C Shinko1013Spain2024-05-26
Nicolas E Kusko1014Australia2024-06-13
Stacey C Saylors1015France2024-05-27
Maria E Malet1016Brazil2024-06-23
Leja I Albares1017Brazil2024-06-15
Adams N Shinko1018Germany2024-06-01
Rodrigues Z Shinko1019United Kingdom2024-05-29
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aika F GauchoCanadaOnyama Limba NEGOTIATION
Deepesh T AmigonGermanyBernardo Dominic RENEWAL
Alejandro V DarakjyJapanIvan Magalhaes RENEWAL
Leon T SaylorsAustraliaAmy Elsner RENEWAL
Mayumi V NestleArgentinaElwin Sharvill UNQUALIFIED
Nicolas E ButtBrazilIvan Magalhaes PROPOSAL
Faith Y WieserAustraliaXuxue Feng NEGOTIATION
Arvin S PoquetteCanadaIvan Magalhaes NEGOTIATION
Aruna C RoysterBrazilBernardo Dominic QUALIFIED
Murillo W CaudyJapanXuxue Feng UNQUALIFIED
Munro P VocelkaGermanyStephen Shaw QUALIFIED
Izzy X StensethCanadaIoni Bowcher RENEWAL
Mayumi C RimUnited KingdomAsiya Javayant QUALIFIED
James R GlickItalyIvan Magalhaes RENEWAL
Aruna K StockhamCanadaAmy Elsner QUALIFIED
Aruna W GillianGermanyAnna Fali UNQUALIFIED
Jones S SlusarskiItalyAsiya Javayant NEGOTIATION
Murillo V FollerBrazilElwin Sharvill NEW
Ivar Q SaylorsSpainOnyama Limba PROPOSAL
Alejandro N ShinkoGermanyStephen Shaw NEW
Cody Z CaldareraCanadaAnna Fali NEW
Costa T WhobreyGermanyElwin Sharvill PROPOSAL
Smith I FigeroaJapanAsiya Javayant RENEWAL
Deepesh Z DoeBrazilAsiya Javayant NEGOTIATION
Aditya Z FigeroaUnited KingdomAsiya Javayant RENEWAL
Jefferson Z AlbaresJapanIvan Magalhaes NEW
Munro I FollerSpainStephen Shaw QUALIFIED
Alejandro Z DoeItalyStephen Shaw NEGOTIATION
Smith L OldroydJapanIoni Bowcher QUALIFIED
Mujtaba W MorascaAustraliaElwin Sharvill QUALIFIED
Chavez G MaletGermanyXuxue Feng PROPOSAL
Aika P VocelkaUnited KingdomAsiya Javayant PROPOSAL
Isabel F BriddickItalyAmy Elsner PROPOSAL
Morrow N AmigonFranceXuxue Feng UNQUALIFIED
Darci R NestleItalyElwin Sharvill RENEWAL
James E NickaArgentinaAnna Fali UNQUALIFIED
Izzy J RimUnited KingdomXuxue Feng QUALIFIED
Clifford D SlusarskiItalyXuxue Feng NEW
Maria M RoysterArgentinaIoni Bowcher UNQUALIFIED
Rodrigues C WieserArgentinaAnna Fali UNQUALIFIED

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