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
Emily P KuskoArgentinaBernardo Dominic QUALIFIED
Nicolas B SchemmerCanadaOnyama Limba PROPOSAL
Adams K WieserSpainElwin Sharvill NEGOTIATION
Darci X PerinItalyIoni Bowcher UNQUALIFIED
Deepesh N AmigonCanadaAnna Fali NEGOTIATION
Leon G VocelkaIndiaBernardo Dominic UNQUALIFIED
Kaitlin R MarrierBrazilAsiya Javayant UNQUALIFIED
Adams W OldroydFranceStephen Shaw NEGOTIATION
Jefferson D GauchoRussiaIoni Bowcher NEGOTIATION
Ashley H PoquetteUnited KingdomIoni Bowcher UNQUALIFIED
Izzy O CaldareraCanadaOnyama Limba NEGOTIATION
Wickens X OldroydItalyStephen Shaw PROPOSAL
Clifford A WaycottArgentinaAsiya Javayant PROPOSAL
Emily L BowleyCanadaStephen Shaw NEGOTIATION
Ricardo G GarufiBrazilIvan Magalhaes PROPOSAL
Clifford C PoquetteCanadaOnyama Limba RENEWAL
Kaitlin X CaudyUnited KingdomBernardo Dominic NEGOTIATION
Francesco T GarufiFranceStephen Shaw RENEWAL
Aika W PoquetteBrazilIoni Bowcher NEGOTIATION
Morrow S GillianIndiaStephen Shaw RENEWAL
Mayumi W MaletSpainAsiya Javayant RENEWAL
Murillo R RoysterCanadaBernardo Dominic NEGOTIATION
Francesco S TollnerGermanyXuxue Feng NEGOTIATION
Aditya Z MorascaAustraliaXuxue Feng QUALIFIED
Darci R SlusarskiItalyOnyama Limba NEW
Murillo Z FigeroaGermanyOnyama Limba NEW
Leja F SchemmerCanadaAsiya Javayant PROPOSAL
Maria E AlbaresJapanAnna Fali RENEWAL
Sinclair V OldroydItalyAmy Elsner RENEWAL
Misaki O FerenczBrazilAmy Elsner UNQUALIFIED
Ricardo Z OldroydIndiaElwin Sharvill PROPOSAL
Isabel B CaldareraArgentinaAnna Fali NEGOTIATION
Aika C VocelkaFranceIoni Bowcher RENEWAL
Greenwood X SaylorsCanadaOnyama Limba PROPOSAL
Maisha F WieserAustraliaBernardo Dominic UNQUALIFIED
Izzy R PerinBrazilAnna Fali NEW
Izzy L CaldareraCanadaAmy Elsner RENEWAL
Adams W CaudyIndiaAmy Elsner QUALIFIED
Isabel W AmigonBrazilIvan Magalhaes NEW
Adams G TollnerItalyOnyama Limba QUALIFIED
Chavez N FerenczSpainStephen Shaw UNQUALIFIED
Deepesh V MarrierCanadaIvan Magalhaes PROPOSAL
Izzy O FollerGermanyXuxue Feng PROPOSAL
Munro Z GillianUnited KingdomStephen Shaw RENEWAL
Smith S StensethBrazilIvan Magalhaes RENEWAL
Maisha P GillianAustraliaAsiya Javayant NEW
Izzy D InouyeItalyAsiya Javayant NEW
Aruna O DoeRussiaBernardo Dominic NEGOTIATION
Aditya G NestleArgentinaStephen Shaw QUALIFIED
Silvio D RoysterJapanStephen Shaw QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Morrow V TollnerRussiaStephen Shaw NEGOTIATION
Costa Y ButtSpainStephen Shaw RENEWAL
Rodrigues Y FlosiArgentinaBernardo Dominic NEGOTIATION
Jefferson Y KolmetzSpainAmy Elsner UNQUALIFIED
Adams U KolmetzItalyStephen Shaw NEGOTIATION
Leon R PoquetteFranceBernardo Dominic NEGOTIATION
Jones R SaylorsAustraliaIvan Magalhaes UNQUALIFIED
Jeanfrancois W SchemmerAustraliaStephen Shaw NEGOTIATION
Kaitlin C WaycottAustraliaAmy Elsner RENEWAL
Juan X SchemmerFranceStephen Shaw PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Juan R RimUnited Kingdom2024-05-28King, Christopher A Esq QUALIFIED5Xuxue Feng
1001Jeanfrancois F AlbaresArgentina2024-05-30Morlong Associates PROPOSAL28Ivan Magalhaes
1002Kadeem P TollnerJapan2024-05-28Dorl, James J Esq RENEWAL45Onyama Limba
1003Ivar T BowleyUnited Kingdom2024-05-25Chemel, James L Cpa RENEWAL56Ivan Magalhaes
1004Nicolas D TollnerSpain2024-05-20Printing Dimensions QUALIFIED2Asiya Javayant
1005Maria Z MarrierJapan2024-05-17Chemel, James L Cpa UNQUALIFIED13Amy Elsner
1006Darci R MaletSpain2024-05-10Dorl, James J Esq QUALIFIED28Ivan Magalhaes
1007Emily T RoysterCanada2024-05-10Rousseaux, Michael Esq QUALIFIED90Stephen Shaw
1008Ivar N InouyeIndia2024-05-30Truhlar And Truhlar Attys PROPOSAL95Anna Fali
1009James A SchemmerFrance2024-05-10Commercial Press NEW26Anna Fali
1010Ricardo H WaycottSpain2024-05-11Commercial Press QUALIFIED34Xuxue Feng
1011Stacey N StensethUnited Kingdom2024-05-17Feiner Bros QUALIFIED52Xuxue Feng
1012Wickens N ButtItaly2024-05-10Chanay, Jeffrey A Esq NEW17Amy Elsner
1013Clifford M BowleyIndia2024-05-20Benton, John B Jr QUALIFIED54Ivan Magalhaes
1014Ivar E RutaSpain2024-06-05Chanay, Jeffrey A Esq UNQUALIFIED49Stephen Shaw
1015Arvin F DoeAustralia2024-05-25Rousseaux, Michael Esq NEW44Xuxue Feng
1016Rodrigues B TollnerJapan2024-05-25Rangoni Of Florence RENEWAL73Bernardo Dominic
1017Silvio W VocelkaJapan2024-05-17Chanay, Jeffrey A Esq PROPOSAL11Bernardo Dominic
1018Ricardo W BriddickSpain2024-05-22Printing Dimensions NEW13Ioni Bowcher
1019Kaitlin Y NestleIndia2024-06-06Rangoni Of Florence UNQUALIFIED75Asiya Javayant
1020Stacey S TollnerFrance2024-05-13Dorl, James J Esq PROPOSAL85Xuxue Feng
1021Jones U SchemmerBrazil2024-05-29Chapman, Ross E Esq UNQUALIFIED67Stephen Shaw
1022Aika K KuskoArgentina2024-05-30Chanay, Jeffrey A Esq UNQUALIFIED52Ivan Magalhaes
1023Ivar R ChuiGermany2024-05-28Morlong Associates QUALIFIED67Asiya Javayant
1024Sinclair Q RutaFrance2024-05-27Chapman, Ross E Esq NEGOTIATION85Xuxue Feng
1025Costa V CampainArgentina2024-05-22Feltz Printing Service NEGOTIATION75Xuxue Feng
1026Ivar Z RulapaughItaly2024-05-11Feltz Printing Service NEW73Asiya Javayant
1027Emily O AlbaresIndia2024-05-09Benton, John B Jr NEGOTIATION19Anna Fali
1028Jennifer Y KuskoAustralia2024-05-27Morlong Associates RENEWAL71Anna Fali
1029Jefferson A WhobreyGermany2024-06-01Morlong Associates UNQUALIFIED7Bernardo Dominic
1030Morrow T AmigonAustralia2024-05-15Commercial Press QUALIFIED77Bernardo Dominic
1031Izzy Y NestleSpain2024-06-02Chanay, Jeffrey A Esq NEW76Onyama Limba
1032Wickens L GillianAustralia2024-05-14Chapman, Ross E Esq NEGOTIATION99Onyama Limba
1033Cody P NestleBrazil2024-06-01Truhlar And Truhlar Attys QUALIFIED93Xuxue Feng
1034Adams P KuskoBrazil2024-06-02Truhlar And Truhlar Attys NEGOTIATION58Stephen Shaw
1035Darci N RoysterCanada2024-05-08Buckley Miller Wright NEW23Ioni Bowcher
1036Chavez W DilliardFrance2024-05-09Buckley Miller Wright UNQUALIFIED63Onyama Limba
1037Wickens W CampainIndia2024-05-21Buckley Miller Wright RENEWAL36Asiya Javayant
1038James Q DilliardItaly2024-05-20Chanay, Jeffrey A Esq QUALIFIED63Ioni Bowcher
1039Claire H DoeUnited Kingdom2024-05-20Benton, John B Jr UNQUALIFIED20Ivan Magalhaes
1040Faith N AlbaresGermany2024-05-23Feltz Printing Service NEGOTIATION27Anna Fali
1041Octavia U MacleadBrazil2024-05-31King, Christopher A Esq NEW79Ivan Magalhaes
1042Claire E DarakjyUnited Kingdom2024-05-23Printing Dimensions PROPOSAL0Elwin Sharvill
1043Maria T RoysterItaly2024-05-13Feltz Printing Service RENEWAL49Anna Fali
1044Stacey J PoquetteRussia2024-05-08Commercial Press NEW12Stephen Shaw
1045Costa K VocelkaFrance2024-05-28King, Christopher A Esq RENEWAL32Ioni Bowcher
1046Octavia D CaldareraSpain2024-05-23Printing Dimensions PROPOSAL40Ioni Bowcher
1047Ricardo F MaletAustralia2024-05-20Feiner Bros RENEWAL30Onyama Limba
1048Johnson G WieserCanada2024-05-25Truhlar And Truhlar Attys PROPOSAL91Ivan Magalhaes
1049James J RoysterUnited Kingdom2024-05-30Buckley Miller Wright NEGOTIATION85Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Aruna Q CaudyItalyXuxue Feng PROPOSAL
Jennifer N ChuiFranceStephen Shaw QUALIFIED
Jones J ButtItalyAsiya Javayant RENEWAL
Greenwood A PerinFranceAsiya Javayant UNQUALIFIED
Maisha B CampainSpainStephen Shaw NEGOTIATION
Julie W FollerAustraliaXuxue Feng PROPOSAL
Alejandro L CampainAustraliaStephen Shaw RENEWAL
Darci A NickaAustraliaXuxue Feng UNQUALIFIED
Leja L MaletIndiaIoni Bowcher NEW
Francesco P MaletGermanyAmy Elsner QUALIFIED
Munro D SaylorsGermanyIvan Magalhaes UNQUALIFIED
Aruna V MarrierCanadaIoni Bowcher UNQUALIFIED
Leon C KuskoAustraliaIoni Bowcher QUALIFIED
Mayumi C GarufiCanadaElwin Sharvill NEGOTIATION
Rodrigues S VenereIndiaOnyama Limba NEW
Faith G RutaSpainXuxue Feng RENEWAL
Aika P GillianFranceAsiya Javayant NEW
Stacey T NestleFranceAmy Elsner NEGOTIATION
Kaitlin L FlosiFranceAmy Elsner NEGOTIATION
Kaitlin G BologniaSpainIoni Bowcher PROPOSAL
Ivar A GauchoBrazilStephen Shaw RENEWAL
Murillo A TollnerJapanAnna Fali PROPOSAL
Juan G WieserCanadaAsiya Javayant QUALIFIED
Aruna H GarufiGermanyIoni Bowcher PROPOSAL
Maisha Q PerinSpainAmy Elsner RENEWAL
Maria M RoysterItalyXuxue Feng UNQUALIFIED
James Y MacleadArgentinaIoni Bowcher UNQUALIFIED
Izzy D InouyeIndiaAsiya Javayant PROPOSAL
David G SlusarskiFranceIoni Bowcher NEGOTIATION
Costa J DarakjyGermanyStephen Shaw PROPOSAL
Greenwood C OldroydAustraliaAnna Fali UNQUALIFIED
Silvio Y AmigonSpainStephen Shaw NEGOTIATION
Tony R CaldareraItalyBernardo Dominic UNQUALIFIED
Octavia O MarrierItalyIoni Bowcher NEGOTIATION
Chavez L RutaArgentinaXuxue Feng QUALIFIED
Salvatore U RulapaughRussiaAsiya Javayant UNQUALIFIED
Maria E BowleyCanadaOnyama Limba RENEWAL
Cody I ShinkoGermanyXuxue Feng PROPOSAL
Aruna G GarufiAustraliaOnyama Limba UNQUALIFIED
David L MarrierArgentinaBernardo Dominic PROPOSAL
Cody W CampainAustraliaAnna Fali RENEWAL
Clifford D SergiBrazilAnna Fali QUALIFIED
Aruna H GillianItalyBernardo Dominic UNQUALIFIED
Clifford M OstroskyGermanyStephen Shaw QUALIFIED
Aruna C KolmetzFranceXuxue Feng PROPOSAL
Leon I CampainSpainIvan Magalhaes RENEWAL
Johnson B MarrierFranceAsiya Javayant PROPOSAL
Smith K DoeUnited KingdomAsiya Javayant NEW
Adams H WhobreyGermanyIoni Bowcher UNQUALIFIED
Tony F VenereBrazilAmy Elsner UNQUALIFIED
Frozen Columns
Name
Clifford R Dilliard
Aika Q Nicka
Smith G Sergi
Francesco P Caudy
Sinclair T Oldroyd
Tony D Amigon
James E Darakjy
Faith K Paprocki
Kadeem D Whobrey
Clifford R Vocelka
Jones X Oldroyd
Morrow Z Kolmetz
Ivar R Venere
Maisha B Rulapaugh
Mayumi Z Ferencz
Emily P Ruta
Stacey V Garufi
Aika W Paprocki
Mujtaba I Garufi
Mayumi I Amigon
Francesco D Garufi
Aditya Q Venere
Juan Z Wieser
Leon C Dilliard
Adams V Stenseth
Cody Z Morasca
Darci G Malet
Emily O Briddick
Rodrigues H Rulapaugh
Jones O Wieser
Johnson A Figeroa
Leja Q Kusko
Maisha Z Gaucho
Aruna N Whobrey
Arvin I Malet
Munro F Dilliard
Maisha L Stenseth
Clifford E Kusko
Maria B Schemmer
Clifford H Ostrosky
Clifford E Caudy
Juan S Chui
Jennifer A Slusarski
Faith E Morasca
Alejandro T Bolognia
Ricardo C Stenseth
Nicolas U Shinko
Maisha P Rulapaugh
Stacey I Morasca
Izzy G Dilliard
IdCountryDate
1000Canada2024-05-17
1001Brazil2024-05-24
1002Russia2024-06-03
1003Australia2024-05-26
1004Australia2024-05-28
1005Australia2024-05-31
1006Canada2024-06-02
1007Australia2024-05-22
1008Argentina2024-06-03
1009Brazil2024-05-21
1010Italy2024-05-08
1011France2024-06-06
1012Russia2024-05-15
1013Spain2024-06-03
1014Spain2024-05-27
1015Brazil2024-06-01
1016Germany2024-05-31
1017Brazil2024-05-26
1018Spain2024-05-14
1019Germany2024-05-09
1020Germany2024-05-28
1021Canada2024-05-12
1022Spain2024-05-08
1023India2024-05-20
1024Brazil2024-05-17
1025France2024-05-27
1026Spain2024-06-01
1027Canada2024-05-28
1028Japan2024-06-01
1029Spain2024-05-08
1030Australia2024-05-18
1031Argentina2024-05-10
1032Germany2024-05-18
1033Canada2024-05-19
1034Australia2024-05-10
1035Germany2024-05-22
1036Italy2024-06-01
1037Russia2024-05-25
1038Spain2024-05-25
1039Russia2024-05-27
1040Russia2024-06-06
1041Spain2024-06-03
1042France2024-05-27
1043United Kingdom2024-05-12
1044Argentina2024-05-24
1045India2024-05-13
1046India2024-05-08
1047Germany2024-05-15
1048United Kingdom2024-05-23
1049Spain2024-06-04

On-Demand Data

NameIdCountryDate
Ivar J Ruta1000Italy2024-05-28
Ricardo L Royster1001France2024-05-21
Jennifer H Caudy1002Argentina2024-05-17
Claire V Shinko1003Argentina2024-05-26
Darci K Figeroa1004Italy2024-05-12
Mujtaba F Glick1005Russia2024-05-29
Francesco B Nestle1006Spain2024-05-11
Aditya W Bolognia1007Spain2024-05-25
Clifford O Marrier1008Japan2024-05-30
Ivar Z Schemmer1009Italy2024-05-28
Ivar H Glick1010Argentina2024-06-02
Wickens H Tollner1011Japan2024-05-19
Claire G Slusarski1012Spain2024-05-27
Aika E Stenseth1013Germany2024-06-04
Jeanfrancois M Maclead1014Russia2024-05-20
Kaitlin O Maclead1015India2024-06-05
Antonio J Marrier1016Argentina2024-05-12
Murillo W Waycott1017Spain2024-05-13
Rodrigues O Chui1018Canada2024-05-20
Smith W Vocelka1019Brazil2024-05-19
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Munro L ButtJapanIvan Magalhaes PROPOSAL
Adams M StockhamFranceStephen Shaw PROPOSAL
Mujtaba K DarakjyCanadaStephen Shaw UNQUALIFIED
Kadeem V MarrierRussiaAmy Elsner PROPOSAL
Jones Y SchemmerGermanyStephen Shaw NEGOTIATION
James V MaletArgentinaOnyama Limba NEGOTIATION
Jefferson Z SergiBrazilBernardo Dominic NEW
Jennifer L VocelkaGermanyAmy Elsner NEGOTIATION
Ivar C WhobreyUnited KingdomElwin Sharvill UNQUALIFIED
Leon Q ButtIndiaIvan Magalhaes NEW
Leja D VocelkaItalyXuxue Feng PROPOSAL
Darci C InouyeJapanOnyama Limba QUALIFIED
Aditya V BriddickGermanyBernardo Dominic RENEWAL
Jefferson G RutaAustraliaAsiya Javayant NEW
Morrow Q FlosiSpainXuxue Feng NEGOTIATION
Antonio J GillianItalyXuxue Feng NEW
Juan J AmigonIndiaAsiya Javayant QUALIFIED
Izzy K DarakjyItalyXuxue Feng RENEWAL
Cody B PaprockiCanadaXuxue Feng RENEWAL
Francesco D ButtArgentinaOnyama Limba RENEWAL
Ashley N PerinJapanIoni Bowcher PROPOSAL
Johnson Q WaycottGermanyElwin Sharvill NEW
Darci H DilliardSpainOnyama Limba NEGOTIATION
Murillo Z DilliardArgentinaStephen Shaw QUALIFIED
Antonio J MarrierRussiaIvan Magalhaes UNQUALIFIED
Isabel U PaprockiItalyAsiya Javayant RENEWAL
Mujtaba S SergiJapanAsiya Javayant PROPOSAL
Claire V NestleAustraliaElwin Sharvill UNQUALIFIED
Stacey G DilliardFranceStephen Shaw RENEWAL
Mayumi X WhobreyRussiaAsiya Javayant PROPOSAL
Ricardo X IturbideFranceAmy Elsner UNQUALIFIED
Silvio W SaylorsRussiaElwin Sharvill RENEWAL
Maisha H NestleRussiaBernardo Dominic PROPOSAL
Antonio K SergiFranceAsiya Javayant RENEWAL
Juan C KolmetzItalyOnyama Limba NEW
Salvatore W GarufiArgentinaAsiya Javayant RENEWAL
Faith B InouyeItalyIvan Magalhaes PROPOSAL
Smith Z TollnerFranceAmy Elsner NEW
Rodrigues N DoeArgentinaAmy Elsner NEW
Murillo U StockhamAustraliaIoni Bowcher NEGOTIATION

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