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
Jefferson X FigeroaItalyAsiya Javayant NEGOTIATION
Faith C DilliardSpainElwin Sharvill PROPOSAL
Izzy W MacleadJapanBernardo Dominic NEGOTIATION
Juan R FollerFranceAsiya Javayant QUALIFIED
Sinclair C SergiUnited KingdomIoni Bowcher UNQUALIFIED
Jefferson S DilliardCanadaXuxue Feng QUALIFIED
Jefferson F SaylorsFranceIoni Bowcher QUALIFIED
Munro Z BowleyJapanElwin Sharvill NEGOTIATION
Jeanfrancois R KolmetzJapanIvan Magalhaes QUALIFIED
Maisha O CampainUnited KingdomOnyama Limba QUALIFIED
Aika Q SlusarskiBrazilAnna Fali NEW
Emily Y DarakjyIndiaAnna Fali PROPOSAL
Adams A BowleyUnited KingdomAsiya Javayant UNQUALIFIED
Maria R TollnerRussiaAmy Elsner RENEWAL
James T MorascaJapanOnyama Limba NEGOTIATION
Aruna W ButtItalyOnyama Limba NEW
Darci M ShinkoUnited KingdomXuxue Feng NEGOTIATION
Arvin G CampainJapanAnna Fali NEGOTIATION
Aditya L GlickBrazilAmy Elsner QUALIFIED
Jeanfrancois E MarrierItalyIoni Bowcher NEGOTIATION
Octavia T RoysterGermanyAmy Elsner RENEWAL
Nicolas G WaycottFranceIoni Bowcher NEW
Clifford B TollnerArgentinaIoni Bowcher PROPOSAL
Aditya A StensethUnited KingdomXuxue Feng RENEWAL
Maisha H WaycottBrazilIvan Magalhaes NEW
Julie Z WieserBrazilIoni Bowcher PROPOSAL
Johnson U SaylorsFranceAsiya Javayant UNQUALIFIED
Munro R NickaFranceBernardo Dominic RENEWAL
Ivar Z ButtUnited KingdomAsiya Javayant RENEWAL
Ivar N DilliardUnited KingdomIoni Bowcher NEW
Murillo E DilliardIndiaIvan Magalhaes NEW
Juan X KolmetzGermanyIoni Bowcher RENEWAL
Cody J FigeroaAustraliaAmy Elsner RENEWAL
Cody B IturbideBrazilIoni Bowcher NEW
Rodrigues S DoeUnited KingdomBernardo Dominic NEW
Claire Q StockhamIndiaAnna Fali QUALIFIED
Jefferson J FerenczJapanAsiya Javayant PROPOSAL
Mayumi G SchemmerSpainAmy Elsner NEW
Arvin E SaylorsFranceStephen Shaw NEW
Smith I NestleArgentinaAnna Fali PROPOSAL
Juan G SaylorsIndiaIoni Bowcher QUALIFIED
Silvio N StockhamRussiaIvan Magalhaes PROPOSAL
Maria G BowleyArgentinaElwin Sharvill NEGOTIATION
Stacey I StensethArgentinaBernardo Dominic UNQUALIFIED
Rodrigues I AmigonIndiaStephen Shaw NEGOTIATION
Darci V GarufiSpainAmy Elsner NEGOTIATION
Costa T DarakjyCanadaIoni Bowcher NEGOTIATION
Silvio N CaldareraSpainElwin Sharvill NEW
Aditya X FlosiSpainBernardo Dominic QUALIFIED
Wickens I RutaUnited KingdomBernardo Dominic UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Aika K DarakjyGermanyIvan Magalhaes QUALIFIED
Darci Y AlbaresArgentinaBernardo Dominic UNQUALIFIED
Jones L DoeAustraliaElwin Sharvill UNQUALIFIED
Adams I CaldareraBrazilXuxue Feng QUALIFIED
Stacey X SergiItalyAnna Fali QUALIFIED
Sinclair H OldroydBrazilBernardo Dominic NEGOTIATION
Ricardo E PoquetteArgentinaIoni Bowcher RENEWAL
Maria J VocelkaFranceStephen Shaw UNQUALIFIED
Ashley R SchemmerFranceElwin Sharvill RENEWAL
Salvatore H FigeroaIndiaOnyama Limba NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jefferson D FollerCanada2024-06-07Feiner Bros QUALIFIED98Elwin Sharvill
1001Ricardo V KuskoSpain2024-05-25Feltz Printing Service NEW23Onyama Limba
1002Emily G InouyeCanada2024-06-03Chapman, Ross E Esq NEGOTIATION59Bernardo Dominic
1003Jefferson I VenereSpain2024-06-11Rousseaux, Michael Esq UNQUALIFIED55Onyama Limba
1004Morrow G BologniaGermany2024-06-04Rousseaux, Michael Esq PROPOSAL16Ivan Magalhaes
1005Isabel H IturbideSpain2024-06-02Feltz Printing Service NEW45Ivan Magalhaes
1006Costa H SchemmerArgentina2024-06-08Chapman, Ross E Esq NEW78Elwin Sharvill
1007Nicolas M SlusarskiAustralia2024-06-01Chanay, Jeffrey A Esq NEW77Anna Fali
1008Stacey M GlickItaly2024-06-11Rangoni Of Florence NEGOTIATION50Ivan Magalhaes
1009Nicolas I GauchoArgentina2024-06-16Commercial Press PROPOSAL24Elwin Sharvill
1010Faith Z MaletUnited Kingdom2024-06-04Morlong Associates UNQUALIFIED60Bernardo Dominic
1011Juan D FlosiRussia2024-06-15Feiner Bros UNQUALIFIED82Elwin Sharvill
1012Jones G RoysterBrazil2024-05-27Truhlar And Truhlar Attys NEW15Ivan Magalhaes
1013Julie M VocelkaArgentina2024-05-29Buckley Miller Wright NEGOTIATION50Ivan Magalhaes
1014Ashley N MacleadFrance2024-05-26Benton, John B Jr NEGOTIATION8Stephen Shaw
1015Aika T MaletSpain2024-06-22King, Christopher A Esq UNQUALIFIED28Anna Fali
1016Sinclair O OldroydGermany2024-05-31Rangoni Of Florence PROPOSAL25Bernardo Dominic
1017Tony F RoysterItaly2024-06-17Chanay, Jeffrey A Esq NEW16Ivan Magalhaes
1018Mujtaba U FlosiJapan2024-05-25Buckley Miller Wright NEGOTIATION91Asiya Javayant
1019Leon Z StockhamBrazil2024-06-20Printing Dimensions UNQUALIFIED40Ioni Bowcher
1020Tony R GarufiBrazil2024-05-31Benton, John B Jr NEGOTIATION88Stephen Shaw
1021Misaki Y IturbideBrazil2024-05-26King, Christopher A Esq PROPOSAL13Anna Fali
1022Octavia E FerenczUnited Kingdom2024-06-04King, Christopher A Esq NEGOTIATION36Elwin Sharvill
1023Julie S PaprockiAustralia2024-05-31Morlong Associates NEW33Asiya Javayant
1024Francesco V MarrierSpain2024-06-16Feltz Printing Service RENEWAL11Anna Fali
1025Nicolas M IturbideArgentina2024-05-27Benton, John B Jr NEW46Xuxue Feng
1026Nicolas G KolmetzSpain2024-06-15King, Christopher A Esq PROPOSAL42Asiya Javayant
1027Francesco J TollnerUnited Kingdom2024-06-06Rangoni Of Florence QUALIFIED82Bernardo Dominic
1028Ashley V AmigonAustralia2024-06-20Morlong Associates NEW27Elwin Sharvill
1029Munro J RulapaughUnited Kingdom2024-06-10Feiner Bros NEW4Ioni Bowcher
1030Smith I SaylorsArgentina2024-06-16King, Christopher A Esq NEW24Stephen Shaw
1031David S StockhamBrazil2024-06-06Dorl, James J Esq NEGOTIATION40Stephen Shaw
1032Darci I FigeroaIndia2024-05-26Printing Dimensions PROPOSAL98Ioni Bowcher
1033Johnson K BriddickBrazil2024-06-16Benton, John B Jr NEW86Elwin Sharvill
1034Emily V FigeroaJapan2024-06-15Morlong Associates QUALIFIED17Xuxue Feng
1035Kaitlin T SaylorsUnited Kingdom2024-05-25Commercial Press PROPOSAL33Stephen Shaw
1036Kaitlin M WhobreyItaly2024-06-21Printing Dimensions PROPOSAL1Ioni Bowcher
1037Jeanfrancois Z GarufiJapan2024-06-13Chanay, Jeffrey A Esq NEGOTIATION20Anna Fali
1038Silvio N OldroydGermany2024-06-18Rousseaux, Michael Esq NEW96Xuxue Feng
1039Deepesh T MaletRussia2024-06-19Printing Dimensions UNQUALIFIED23Bernardo Dominic
1040Morrow H IturbideIndia2024-06-17Chapman, Ross E Esq NEW64Anna Fali
1041Adams U KuskoGermany2024-06-19Rangoni Of Florence NEGOTIATION64Elwin Sharvill
1042Emily M RoysterAustralia2024-06-13Rangoni Of Florence NEGOTIATION61Onyama Limba
1043Costa E PerinCanada2024-06-04Chapman, Ross E Esq PROPOSAL99Ioni Bowcher
1044Octavia Y MaletUnited Kingdom2024-06-12Chanay, Jeffrey A Esq RENEWAL4Amy Elsner
1045Johnson U MarrierIndia2024-06-17King, Christopher A Esq PROPOSAL9Amy Elsner
1046Rodrigues Z PaprockiItaly2024-06-03Truhlar And Truhlar Attys NEW33Bernardo Dominic
1047Clifford B WhobreyIndia2024-06-01Chanay, Jeffrey A Esq UNQUALIFIED92Xuxue Feng
1048Francesco I SchemmerItaly2024-06-18Printing Dimensions UNQUALIFIED88Bernardo Dominic
1049Morrow X CampainUnited Kingdom2024-06-01Buckley Miller Wright NEW83Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Antonio T MarrierArgentinaIoni Bowcher QUALIFIED
Aditya A KuskoBrazilAnna Fali PROPOSAL
Salvatore F VocelkaGermanyAnna Fali NEGOTIATION
Chavez E AmigonItalyBernardo Dominic NEW
Leon R ButtCanadaIvan Magalhaes NEW
Aditya N GillianAustraliaIoni Bowcher NEW
Tony Z DilliardJapanXuxue Feng NEW
Leon J RoysterBrazilOnyama Limba PROPOSAL
Nicolas U MaletJapanBernardo Dominic NEGOTIATION
Leon Y BowleySpainAsiya Javayant NEGOTIATION
Tony Q MacleadSpainAmy Elsner NEGOTIATION
Francesco K PoquetteItalyAsiya Javayant NEW
Wickens R SlusarskiAustraliaOnyama Limba UNQUALIFIED
Adams I SchemmerArgentinaIvan Magalhaes UNQUALIFIED
Antonio V SchemmerIndiaOnyama Limba NEW
Ivar K SlusarskiItalyAmy Elsner UNQUALIFIED
Kaitlin U FerenczItalyIvan Magalhaes NEW
Antonio Q SergiItalyBernardo Dominic NEW
Johnson H MorascaItalyIvan Magalhaes NEGOTIATION
Claire N ButtItalyIoni Bowcher PROPOSAL
Jefferson V DarakjyUnited KingdomStephen Shaw UNQUALIFIED
Costa V RutaSpainOnyama Limba NEW
Chavez J StensethFranceIoni Bowcher NEW
Stacey I MarrierRussiaAsiya Javayant RENEWAL
Sinclair B MacleadCanadaOnyama Limba NEW
Darci I DilliardJapanAmy Elsner QUALIFIED
Adams J MarrierSpainAnna Fali NEW
Kaitlin P FigeroaIndiaBernardo Dominic UNQUALIFIED
Faith Z MacleadGermanyIvan Magalhaes PROPOSAL
Nicolas R GarufiFranceBernardo Dominic NEGOTIATION
Leon K ButtArgentinaAmy Elsner RENEWAL
Ivar H MacleadCanadaIoni Bowcher QUALIFIED
Adams V SergiArgentinaIoni Bowcher QUALIFIED
Mayumi Y RulapaughFranceStephen Shaw PROPOSAL
Jones O PoquetteAustraliaBernardo Dominic RENEWAL
Aditya Q AlbaresJapanOnyama Limba UNQUALIFIED
Ricardo I DilliardItalyStephen Shaw UNQUALIFIED
Murillo V MacleadGermanyAmy Elsner RENEWAL
Johnson Z SlusarskiBrazilAsiya Javayant NEW
Sinclair J StensethUnited KingdomOnyama Limba RENEWAL
Costa J KolmetzArgentinaOnyama Limba UNQUALIFIED
Julie T ButtGermanyOnyama Limba PROPOSAL
Isabel M FlosiCanadaIvan Magalhaes NEW
Sinclair I BriddickBrazilOnyama Limba RENEWAL
Faith A RutaGermanyBernardo Dominic NEGOTIATION
Julie Y FollerItalyAsiya Javayant NEGOTIATION
James T PerinFranceAmy Elsner QUALIFIED
Alejandro S BriddickIndiaStephen Shaw QUALIFIED
Jeanfrancois R StensethUnited KingdomAnna Fali NEW
Sinclair F CaldareraArgentinaXuxue Feng PROPOSAL
Frozen Columns
Name
Francesco G Venere
Misaki O Amigon
Mayumi I Ostrosky
Aika X Nestle
Alejandro T Nestle
Ivar T Figeroa
Ashley D Darakjy
Emily F Caudy
Cody V Stockham
Jefferson I Kolmetz
Stacey J Paprocki
Murillo R Whobrey
Alejandro F Kolmetz
Tony C Flosi
Wickens O Caldarera
Izzy H Whobrey
Nicolas Q Glick
Francesco Q Paprocki
Silvio C Rulapaugh
Aika P Ruta
Antonio O Stenseth
Rodrigues F Schemmer
Jennifer M Oldroyd
Aruna P Dilliard
Smith T Shinko
Stacey I Tollner
Isabel B Oldroyd
Sinclair T Albares
Sinclair W Iturbide
Rodrigues C Bowley
Mayumi A Morasca
Maisha V Paprocki
Antonio G Albares
Octavia A Nestle
Wickens S Garufi
Jefferson T Slusarski
Sinclair D Poquette
Julie Q Whobrey
Juan H Ruta
Rodrigues D Bolognia
Faith E Kolmetz
Izzy R Kusko
Claire L Nicka
Misaki G Saylors
Jeanfrancois M Glick
Jefferson K Bolognia
Smith V Ruta
Munro E Nicka
Maria T Gaucho
Antonio A Schemmer
IdCountryDate
1000Japan2024-05-31
1001Russia2024-05-30
1002France2024-06-21
1003Germany2024-05-30
1004Italy2024-06-16
1005Germany2024-06-01
1006Japan2024-06-23
1007United Kingdom2024-05-31
1008Canada2024-05-25
1009Brazil2024-05-30
1010India2024-06-08
1011Spain2024-06-17
1012Russia2024-06-02
1013Australia2024-06-12
1014Canada2024-06-11
1015Brazil2024-06-13
1016Italy2024-05-28
1017India2024-06-12
1018Brazil2024-06-10
1019Argentina2024-06-12
1020Canada2024-06-18
1021Brazil2024-06-04
1022Japan2024-06-10
1023France2024-06-10
1024United Kingdom2024-06-03
1025Germany2024-05-25
1026Spain2024-06-03
1027Argentina2024-06-05
1028India2024-05-28
1029Italy2024-06-20
1030Spain2024-06-04
1031Argentina2024-05-27
1032Spain2024-05-25
1033Canada2024-06-15
1034United Kingdom2024-06-20
1035Australia2024-06-05
1036United Kingdom2024-06-04
1037Germany2024-06-12
1038Australia2024-06-21
1039France2024-06-15
1040Germany2024-06-16
1041India2024-06-20
1042India2024-06-14
1043Germany2024-06-19
1044Spain2024-05-25
1045Australia2024-06-12
1046Brazil2024-05-30
1047Italy2024-06-01
1048Spain2024-06-05
1049Italy2024-06-11

On-Demand Data

NameIdCountryDate
Julie E Ruta1000Germany2024-06-16
Octavia T Bowley1001Russia2024-06-17
Ivar E Ferencz1002Brazil2024-06-13
Kaitlin X Nicka1003Germany2024-05-31
Kaitlin D Nicka1004Spain2024-05-27
Julie K Garufi1005Japan2024-06-12
Silvio B Schemmer1006Japan2024-06-21
Johnson I Oldroyd1007Japan2024-05-30
Aruna T Waycott1008Australia2024-06-15
Aditya O Stockham1009Canada2024-06-09
Nicolas X Rim1010France2024-06-03
Leon O Malet1011Brazil2024-06-14
Juan V Bowley1012United Kingdom2024-06-10
Juan V Slusarski1013Spain2024-06-20
Maisha D Slusarski1014Japan2024-05-26
Darci Z Perin1015France2024-06-08
Jones X Venere1016Spain2024-06-05
Johnson N Briddick1017Canada2024-06-20
Jones W Briddick1018Italy2024-06-03
Deepesh P Tollner1019Spain2024-06-09
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Nicolas L MaletIndiaAnna Fali NEGOTIATION
Nicolas X SergiBrazilStephen Shaw RENEWAL
Jennifer I CaldareraCanadaAmy Elsner RENEWAL
Ivar V MorascaGermanyBernardo Dominic QUALIFIED
Jeanfrancois W OstroskyFranceAnna Fali UNQUALIFIED
Ashley L AlbaresSpainOnyama Limba NEGOTIATION
Maisha J ChuiFranceIoni Bowcher NEW
Darci T NickaAustraliaAmy Elsner NEW
Misaki E GarufiRussiaIvan Magalhaes QUALIFIED
Emily W GarufiFranceElwin Sharvill NEW
Rodrigues F SlusarskiCanadaBernardo Dominic UNQUALIFIED
Stacey Q NestleArgentinaStephen Shaw UNQUALIFIED
James N RoysterBrazilAnna Fali NEW
Misaki B FollerIndiaOnyama Limba UNQUALIFIED
Emily X KuskoBrazilAsiya Javayant NEW
Deepesh Q RutaArgentinaXuxue Feng NEW
Nicolas X AlbaresRussiaAnna Fali PROPOSAL
Mayumi C MorascaIndiaXuxue Feng RENEWAL
Costa C StensethItalyBernardo Dominic RENEWAL
Darci D AmigonJapanAsiya Javayant NEGOTIATION
Claire Y PoquetteJapanElwin Sharvill QUALIFIED
Clifford J NestleFranceAsiya Javayant QUALIFIED
Faith E CaldareraRussiaAnna Fali RENEWAL
Octavia F MorascaUnited KingdomElwin Sharvill RENEWAL
David H MarrierUnited KingdomElwin Sharvill RENEWAL
Darci J BologniaBrazilAmy Elsner NEW
Tony I DilliardGermanyAmy Elsner NEW
Jones N StockhamUnited KingdomBernardo Dominic UNQUALIFIED
Francesco R FerenczIndiaStephen Shaw NEGOTIATION
Aruna H GauchoRussiaAsiya Javayant NEW
Chavez D StockhamUnited KingdomAmy Elsner NEW
Misaki A VenereSpainAnna Fali RENEWAL
Aditya K BowleyGermanyXuxue Feng NEGOTIATION
Smith F ButtRussiaXuxue Feng UNQUALIFIED
Leja G RutaBrazilAnna Fali UNQUALIFIED
Juan R SlusarskiCanadaOnyama Limba NEGOTIATION
Alejandro F OstroskyAustraliaXuxue Feng UNQUALIFIED
Chavez A KuskoAustraliaStephen Shaw NEGOTIATION
Claire Y SlusarskiFranceXuxue Feng UNQUALIFIED
Mayumi H TollnerSpainAsiya Javayant QUALIFIED

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