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
Greenwood T MaletCanadaStephen Shaw NEW
Rodrigues S SchemmerRussiaElwin Sharvill NEGOTIATION
Claire G BologniaUnited KingdomBernardo Dominic NEW
Francesco S AmigonUnited KingdomStephen Shaw PROPOSAL
Jefferson Y RutaItalyBernardo Dominic NEGOTIATION
Morrow I GillianBrazilOnyama Limba UNQUALIFIED
Ivar W WhobreyCanadaStephen Shaw NEGOTIATION
Maisha Y OldroydRussiaOnyama Limba UNQUALIFIED
Claire A KuskoGermanyBernardo Dominic QUALIFIED
David R DarakjyArgentinaOnyama Limba UNQUALIFIED
Ashley E SlusarskiSpainXuxue Feng UNQUALIFIED
Cody C RimFranceOnyama Limba UNQUALIFIED
Murillo L MacleadIndiaOnyama Limba NEW
Leon Z CampainIndiaAmy Elsner UNQUALIFIED
Leja F OstroskyUnited KingdomStephen Shaw PROPOSAL
Claire I VenereJapanIvan Magalhaes UNQUALIFIED
Leon B CaldareraJapanStephen Shaw UNQUALIFIED
Arvin M GlickJapanElwin Sharvill RENEWAL
Morrow C PerinAustraliaIoni Bowcher NEGOTIATION
Leja P CaudyJapanAmy Elsner RENEWAL
Juan R DilliardArgentinaIvan Magalhaes UNQUALIFIED
Maria E GauchoAustraliaIoni Bowcher NEGOTIATION
Silvio N WieserSpainBernardo Dominic RENEWAL
Smith B SaylorsJapanAsiya Javayant PROPOSAL
Morrow K MorascaFranceAnna Fali NEW
Claire Y DoeArgentinaXuxue Feng QUALIFIED
Aruna E RoysterJapanIvan Magalhaes NEGOTIATION
Salvatore N OstroskyBrazilIoni Bowcher PROPOSAL
Julie T BowleyRussiaElwin Sharvill UNQUALIFIED
Julie I BowleySpainOnyama Limba NEGOTIATION
Morrow V SchemmerJapanXuxue Feng QUALIFIED
Cody Y NickaAustraliaIoni Bowcher NEGOTIATION
Juan X SaylorsIndiaAsiya Javayant UNQUALIFIED
Claire E AlbaresUnited KingdomAsiya Javayant NEGOTIATION
Smith R AmigonAustraliaXuxue Feng NEGOTIATION
Isabel C CaudyArgentinaXuxue Feng NEW
Mayumi M InouyeCanadaIoni Bowcher RENEWAL
Rodrigues P TollnerItalyAnna Fali NEGOTIATION
Sinclair Y InouyeItalyIoni Bowcher UNQUALIFIED
Mayumi K BriddickGermanyAmy Elsner RENEWAL
Mujtaba C BowleyIndiaIvan Magalhaes PROPOSAL
Francesco F RulapaughIndiaIvan Magalhaes NEGOTIATION
Maria U CaudyGermanyAnna Fali RENEWAL
Emily D WieserFranceOnyama Limba NEGOTIATION
Jeanfrancois W RoysterJapanElwin Sharvill QUALIFIED
Emily D GarufiJapanIvan Magalhaes UNQUALIFIED
Izzy N CampainArgentinaBernardo Dominic RENEWAL
Clifford E AmigonCanadaXuxue Feng RENEWAL
Julie Z NestleArgentinaAsiya Javayant RENEWAL
Maisha M GauchoItalyElwin Sharvill NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Faith K TollnerJapanStephen Shaw NEGOTIATION
Rodrigues Y MaletCanadaOnyama Limba NEGOTIATION
Arvin T WieserUnited KingdomXuxue Feng QUALIFIED
James P CaldareraUnited KingdomAnna Fali RENEWAL
Misaki M MaletUnited KingdomBernardo Dominic NEW
Leon Z VocelkaCanadaBernardo Dominic NEW
Julie G SchemmerCanadaElwin Sharvill NEGOTIATION
Adams F CaudyUnited KingdomOnyama Limba RENEWAL
Ricardo C RulapaughBrazilAsiya Javayant RENEWAL
Kaitlin F GauchoItalyAsiya Javayant UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Johnson A ShinkoBrazil2024-06-04Chemel, James L Cpa PROPOSAL1Ioni Bowcher
1001Mujtaba K SchemmerCanada2024-06-17Truhlar And Truhlar Attys QUALIFIED93Bernardo Dominic
1002Jones U RutaRussia2024-05-28Rangoni Of Florence PROPOSAL52Onyama Limba
1003Maria P RulapaughAustralia2024-06-03Chapman, Ross E Esq RENEWAL81Ivan Magalhaes
1004Maria N CaudyFrance2024-06-10Commercial Press PROPOSAL41Elwin Sharvill
1005Sinclair A OldroydGermany2024-06-20Buckley Miller Wright RENEWAL4Stephen Shaw
1006Smith M WaycottSpain2024-05-30Buckley Miller Wright UNQUALIFIED73Asiya Javayant
1007Smith F OstroskyIndia2024-06-05Feiner Bros QUALIFIED12Ioni Bowcher
1008David V SaylorsJapan2024-05-26Buckley Miller Wright NEW17Asiya Javayant
1009Greenwood G TollnerJapan2024-06-23King, Christopher A Esq NEW56Elwin Sharvill
1010Ivar C SchemmerJapan2024-05-27Feiner Bros NEGOTIATION23Asiya Javayant
1011James Q VocelkaUnited Kingdom2024-06-03Printing Dimensions NEGOTIATION79Onyama Limba
1012Silvio S DarakjyGermany2024-06-04Chanay, Jeffrey A Esq NEGOTIATION41Ivan Magalhaes
1013Faith K GarufiFrance2024-06-14Chemel, James L Cpa QUALIFIED55Asiya Javayant
1014Greenwood U ButtArgentina2024-06-22Chapman, Ross E Esq UNQUALIFIED32Stephen Shaw
1015Smith O DarakjyRussia2024-06-13Feiner Bros UNQUALIFIED6Ivan Magalhaes
1016Arvin C WhobreyUnited Kingdom2024-06-13Printing Dimensions PROPOSAL18Amy Elsner
1017Johnson S ButtBrazil2024-06-18Chemel, James L Cpa PROPOSAL89Ioni Bowcher
1018David O PerinSpain2024-06-23Dorl, James J Esq UNQUALIFIED41Ivan Magalhaes
1019Jennifer F MaletBrazil2024-06-15Printing Dimensions RENEWAL90Ivan Magalhaes
1020Darci M DilliardGermany2024-06-08Dorl, James J Esq NEW50Elwin Sharvill
1021Octavia W ChuiArgentina2024-06-12Commercial Press PROPOSAL26Anna Fali
1022Sinclair B NickaAustralia2024-06-10Dorl, James J Esq NEW37Elwin Sharvill
1023Jennifer C DarakjyItaly2024-06-14Commercial Press NEW60Anna Fali
1024Ivar Z StockhamIndia2024-05-27King, Christopher A Esq QUALIFIED17Ioni Bowcher
1025Johnson O WaycottFrance2024-05-30Chemel, James L Cpa RENEWAL16Elwin Sharvill
1026Faith B VenereJapan2024-06-01Commercial Press NEW19Stephen Shaw
1027Tony F RoysterUnited Kingdom2024-06-07Benton, John B Jr NEW2Ivan Magalhaes
1028Rodrigues Y DilliardUnited Kingdom2024-05-26Feltz Printing Service UNQUALIFIED53Stephen Shaw
1029David I AlbaresGermany2024-06-12Chanay, Jeffrey A Esq PROPOSAL72Amy Elsner
1030Darci Y CampainRussia2024-05-26Chapman, Ross E Esq NEW23Elwin Sharvill
1031Tony U WieserItaly2024-06-18Printing Dimensions UNQUALIFIED62Ivan Magalhaes
1032Arvin N InouyeRussia2024-05-25Buckley Miller Wright PROPOSAL52Asiya Javayant
1033Darci K InouyeAustralia2024-06-03Printing Dimensions QUALIFIED67Anna Fali
1034Alejandro U StensethCanada2024-05-27Chemel, James L Cpa PROPOSAL39Elwin Sharvill
1035Leon N NickaCanada2024-06-15Dorl, James J Esq UNQUALIFIED72Xuxue Feng
1036Isabel N InouyeBrazil2024-06-22Morlong Associates QUALIFIED44Amy Elsner
1037Faith N DilliardItaly2024-05-31Chemel, James L Cpa QUALIFIED31Ioni Bowcher
1038Jeanfrancois T ButtArgentina2024-05-30Commercial Press QUALIFIED5Ivan Magalhaes
1039Jones W MaletRussia2024-05-25Chanay, Jeffrey A Esq QUALIFIED93Anna Fali
1040Darci K IturbideBrazil2024-06-17Commercial Press NEGOTIATION86Amy Elsner
1041Costa U AlbaresJapan2024-06-18Feltz Printing Service NEW95Asiya Javayant
1042Chavez Y KolmetzSpain2024-06-10Buckley Miller Wright RENEWAL82Stephen Shaw
1043Johnson E WaycottRussia2024-06-15Printing Dimensions UNQUALIFIED59Onyama Limba
1044Rodrigues Q ShinkoJapan2024-06-11Morlong Associates PROPOSAL10Ioni Bowcher
1045Smith L VocelkaIndia2024-06-19Rousseaux, Michael Esq NEGOTIATION67Asiya Javayant
1046Jones D ChuiJapan2024-06-15Morlong Associates UNQUALIFIED83Elwin Sharvill
1047Ivar O PerinSpain2024-06-07Chemel, James L Cpa PROPOSAL19Stephen Shaw
1048Julie M PoquetteArgentina2024-06-06Chanay, Jeffrey A Esq QUALIFIED30Bernardo Dominic
1049Maria U StensethAustralia2024-06-07Feiner Bros PROPOSAL6Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Costa C TollnerJapanIvan Magalhaes NEW
Misaki O FerenczAustraliaAsiya Javayant QUALIFIED
Mayumi Z WhobreyUnited KingdomBernardo Dominic UNQUALIFIED
Claire A KolmetzBrazilElwin Sharvill NEGOTIATION
Wickens R PaprockiGermanyXuxue Feng NEGOTIATION
Cody L ChuiAustraliaStephen Shaw NEGOTIATION
Jeanfrancois W AlbaresSpainIvan Magalhaes NEW
Leon Q DilliardSpainAmy Elsner UNQUALIFIED
Adams F OstroskyBrazilAsiya Javayant QUALIFIED
Faith A StensethArgentinaBernardo Dominic QUALIFIED
Smith M FerenczJapanStephen Shaw RENEWAL
Leon D NickaBrazilOnyama Limba RENEWAL
Johnson A AlbaresArgentinaAnna Fali PROPOSAL
Ashley A KolmetzUnited KingdomAsiya Javayant PROPOSAL
Alejandro D GarufiBrazilBernardo Dominic PROPOSAL
Morrow O BologniaFranceOnyama Limba RENEWAL
Salvatore C ButtBrazilStephen Shaw NEW
David X VenereRussiaBernardo Dominic UNQUALIFIED
Octavia Z SchemmerArgentinaAsiya Javayant PROPOSAL
Ashley Y GlickArgentinaIvan Magalhaes PROPOSAL
Mayumi A ButtAustraliaAnna Fali NEW
Silvio U BriddickItalyAmy Elsner NEW
Juan Q MorascaBrazilIvan Magalhaes UNQUALIFIED
Izzy P OldroydAustraliaAmy Elsner NEGOTIATION
Ashley W PoquetteJapanOnyama Limba NEW
Mujtaba I SergiJapanAnna Fali QUALIFIED
Antonio F CaldareraFranceAnna Fali NEGOTIATION
Faith X KolmetzUnited KingdomOnyama Limba RENEWAL
Mayumi K WhobreyUnited KingdomXuxue Feng PROPOSAL
Smith R PoquetteGermanyElwin Sharvill PROPOSAL
Aditya M NestleCanadaIoni Bowcher PROPOSAL
Adams O VenereItalyAnna Fali QUALIFIED
Aditya E IturbideArgentinaAnna Fali PROPOSAL
Greenwood A StockhamIndiaElwin Sharvill RENEWAL
Claire I KuskoJapanStephen Shaw PROPOSAL
Nicolas M SlusarskiSpainIoni Bowcher QUALIFIED
Deepesh V FigeroaItalyXuxue Feng QUALIFIED
Cody G SaylorsArgentinaAmy Elsner NEW
Maria Q CaldareraIndiaXuxue Feng UNQUALIFIED
Aditya Z WieserFranceOnyama Limba QUALIFIED
Kadeem S FigeroaFranceOnyama Limba NEW
Nicolas D GlickCanadaIoni Bowcher NEGOTIATION
Misaki U AlbaresUnited KingdomXuxue Feng PROPOSAL
Salvatore Q SlusarskiCanadaStephen Shaw NEGOTIATION
Alejandro M DoeIndiaElwin Sharvill NEW
Deepesh S MorascaItalyAnna Fali RENEWAL
Claire X GauchoSpainOnyama Limba NEW
Jennifer B NestleItalyBernardo Dominic NEGOTIATION
Munro O WieserSpainXuxue Feng NEW
Clifford I MarrierCanadaIvan Magalhaes RENEWAL
Frozen Columns
Name
Ivar G Dilliard
Isabel A Morasca
Julie U Kusko
Adams O Doe
Ricardo O Venere
Ivar G Perin
Octavia Z Doe
Clifford V Nestle
Leja D Albares
Maisha Q Vocelka
Antonio H Wieser
Claire W Maclead
Jones L Campain
Greenwood R Shinko
Cody R Waycott
Arvin Q Kusko
Claire T Slusarski
Alejandro W Darakjy
Emily P Kolmetz
Ricardo G Paprocki
Emily W Garufi
Octavia W Royster
Cody K Slusarski
Jefferson A Venere
Aruna Z Ferencz
Salvatore Y Ostrosky
Deepesh B Briddick
Rodrigues S Tollner
James E Amigon
Francesco D Nestle
Costa R Malet
Morrow P Stockham
Rodrigues D Rim
Murillo P Ferencz
Cody W Gillian
Octavia W Amigon
Jefferson L Paprocki
Munro D Gaucho
Wickens L Morasca
Leja V Albares
Mayumi D Amigon
Claire R Chui
David D Darakjy
Jefferson F Perin
James J Albares
Antonio M Chui
Morrow H Dilliard
Morrow O Butt
Leon L Glick
Aruna I Butt
IdCountryDate
1000India2024-06-23
1001Canada2024-06-20
1002Italy2024-06-06
1003Australia2024-06-15
1004Japan2024-05-28
1005Argentina2024-05-27
1006Italy2024-06-01
1007Argentina2024-06-03
1008Russia2024-06-16
1009Japan2024-05-27
1010United Kingdom2024-06-13
1011Japan2024-06-16
1012France2024-06-13
1013India2024-06-06
1014France2024-06-07
1015Italy2024-06-10
1016India2024-06-01
1017Brazil2024-06-05
1018France2024-06-10
1019Canada2024-05-28
1020Italy2024-06-23
1021Germany2024-05-29
1022Brazil2024-06-03
1023Japan2024-06-19
1024Japan2024-06-21
1025Brazil2024-06-12
1026Australia2024-06-16
1027India2024-06-22
1028United Kingdom2024-06-21
1029Russia2024-06-04
1030Spain2024-06-16
1031Germany2024-06-05
1032Russia2024-06-07
1033Germany2024-05-26
1034Italy2024-05-28
1035Russia2024-06-23
1036United Kingdom2024-06-03
1037Australia2024-06-20
1038Russia2024-05-29
1039Japan2024-06-09
1040Italy2024-05-31
1041France2024-06-01
1042Australia2024-06-18
1043Italy2024-06-02
1044Germany2024-06-23
1045Australia2024-06-20
1046Spain2024-06-18
1047Germany2024-06-13
1048Brazil2024-05-31
1049India2024-06-18

On-Demand Data

NameIdCountryDate
Izzy H Foller1000Brazil2024-05-28
Jennifer X Perin1001Brazil2024-06-05
Aruna E Kusko1002United Kingdom2024-06-05
Octavia M Perin1003United Kingdom2024-06-11
Jennifer Y Perin1004Australia2024-06-05
Deepesh X Stockham1005Germany2024-06-23
Johnson P Schemmer1006India2024-06-08
Alejandro M Caldarera1007India2024-06-13
Morrow Y Campain1008United Kingdom2024-06-17
Maria R Caldarera1009Australia2024-05-31
Chavez Z Dilliard1010India2024-05-28
Francesco D Saylors1011Germany2024-06-05
Jeanfrancois U Figeroa1012Australia2024-06-05
Costa D Poquette1013Russia2024-06-21
Leon Q Dilliard1014Canada2024-06-10
Julie F Butt1015France2024-06-11
Rodrigues G Stenseth1016Italy2024-06-09
Tony Y Campain1017United Kingdom2024-05-25
Clifford O Chui1018Japan2024-05-25
Misaki H Butt1019Italy2024-06-18
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ashley P RulapaughRussiaOnyama Limba QUALIFIED
Claire K DarakjyRussiaElwin Sharvill NEGOTIATION
Misaki I OstroskyIndiaStephen Shaw UNQUALIFIED
Ricardo F StensethCanadaIoni Bowcher PROPOSAL
Greenwood V ShinkoJapanAsiya Javayant QUALIFIED
Adams F RimJapanOnyama Limba RENEWAL
James A MorascaItalyAnna Fali PROPOSAL
Tony I AmigonGermanyIvan Magalhaes QUALIFIED
Morrow X RoysterBrazilAsiya Javayant RENEWAL
Munro M AmigonItalyXuxue Feng NEW
Kaitlin B DoeRussiaOnyama Limba NEGOTIATION
Aditya L WieserUnited KingdomBernardo Dominic NEW
Smith S StockhamSpainIoni Bowcher PROPOSAL
Kadeem D RoysterArgentinaElwin Sharvill UNQUALIFIED
James F FollerGermanyBernardo Dominic NEW
James J WhobreyCanadaAmy Elsner PROPOSAL
Mayumi G CaudyIndiaStephen Shaw NEGOTIATION
Sinclair X MaletJapanAmy Elsner UNQUALIFIED
Munro N GauchoUnited KingdomAmy Elsner RENEWAL
Aditya C DoeItalyAnna Fali QUALIFIED
Ricardo F MacleadArgentinaAnna Fali PROPOSAL
Aruna P KolmetzItalyIoni Bowcher NEW
David W StensethCanadaIvan Magalhaes NEGOTIATION
Tony X RoysterJapanIoni Bowcher NEW
Maria H PerinCanadaOnyama Limba NEW
Faith O ChuiCanadaStephen Shaw RENEWAL
Deepesh C GillianJapanBernardo Dominic NEGOTIATION
Wickens O NickaUnited KingdomAsiya Javayant UNQUALIFIED
Stacey O PaprockiSpainStephen Shaw QUALIFIED
Aruna T GauchoItalyElwin Sharvill NEW
Juan O ChuiRussiaIvan Magalhaes QUALIFIED
Rodrigues X RoysterAustraliaAmy Elsner NEGOTIATION
James Z MaletGermanyOnyama Limba NEGOTIATION
Julie P CaudyBrazilIvan Magalhaes RENEWAL
Izzy N BologniaSpainStephen Shaw UNQUALIFIED
Munro C BologniaGermanyAnna Fali RENEWAL
Jeanfrancois K KolmetzGermanyOnyama Limba NEW
Johnson J PerinArgentinaAsiya Javayant UNQUALIFIED
Munro G AmigonRussiaOnyama Limba RENEWAL
Clifford X GauchoJapanOnyama Limba 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>