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
Ashley F OldroydItalyAmy Elsner RENEWAL
Maria D SlusarskiArgentinaAnna Fali RENEWAL
Aika O FerenczArgentinaStephen Shaw NEGOTIATION
Julie Z TollnerJapanAsiya Javayant PROPOSAL
Adams Y WaycottBrazilStephen Shaw QUALIFIED
Jefferson V VocelkaArgentinaBernardo Dominic NEGOTIATION
Munro C RulapaughItalyXuxue Feng UNQUALIFIED
Jeanfrancois I ButtJapanIvan Magalhaes NEGOTIATION
Izzy C BriddickBrazilXuxue Feng NEGOTIATION
Isabel B CampainSpainStephen Shaw PROPOSAL
Aika I IturbideBrazilOnyama Limba PROPOSAL
David H AmigonCanadaIoni Bowcher QUALIFIED
Jeanfrancois Y MaletItalyAmy Elsner NEW
Maria H GarufiIndiaAmy Elsner NEGOTIATION
Aruna K KolmetzFranceIvan Magalhaes QUALIFIED
Adams R IturbideGermanyIoni Bowcher NEW
Aditya D CampainIndiaIoni Bowcher NEGOTIATION
Salvatore L RimItalyOnyama Limba RENEWAL
Silvio F SlusarskiUnited KingdomXuxue Feng QUALIFIED
Antonio A DarakjyFranceBernardo Dominic QUALIFIED
James Y FerenczJapanAsiya Javayant QUALIFIED
Leja D SchemmerAustraliaElwin Sharvill PROPOSAL
Antonio Y MaletSpainOnyama Limba RENEWAL
Rodrigues A PerinUnited KingdomElwin Sharvill RENEWAL
Stacey Z MorascaUnited KingdomBernardo Dominic UNQUALIFIED
Antonio Y DarakjyArgentinaIvan Magalhaes QUALIFIED
Clifford M RoysterBrazilAnna Fali NEGOTIATION
Aditya U DilliardUnited KingdomAmy Elsner QUALIFIED
Salvatore U KuskoCanadaAnna Fali UNQUALIFIED
Misaki M CampainCanadaAnna Fali UNQUALIFIED
Salvatore B KolmetzSpainAmy Elsner NEW
Misaki H KolmetzJapanAmy Elsner QUALIFIED
Chavez Q GauchoGermanyBernardo Dominic QUALIFIED
Isabel V BowleyUnited KingdomIoni Bowcher RENEWAL
David Y GauchoRussiaXuxue Feng UNQUALIFIED
Leon I GlickGermanyXuxue Feng UNQUALIFIED
Clifford Q FlosiAustraliaIvan Magalhaes NEGOTIATION
Mujtaba Z FollerGermanyAmy Elsner UNQUALIFIED
Juan O TollnerJapanOnyama Limba NEGOTIATION
Costa K DarakjyJapanAsiya Javayant QUALIFIED
Rodrigues A ShinkoArgentinaBernardo Dominic PROPOSAL
Emily X ButtSpainIvan Magalhaes UNQUALIFIED
Juan V GauchoCanadaAmy Elsner QUALIFIED
Emily D PoquetteBrazilIvan Magalhaes QUALIFIED
Aditya Y CaldareraAustraliaAmy Elsner NEGOTIATION
Jeanfrancois R StensethUnited KingdomOnyama Limba PROPOSAL
Salvatore O ButtSpainAsiya Javayant NEW
Darci I DilliardItalyOnyama Limba NEGOTIATION
Maria S FerenczGermanyXuxue Feng UNQUALIFIED
Silvio Q MacleadIndiaXuxue Feng NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Adams D CaldareraGermanyIvan Magalhaes UNQUALIFIED
Misaki E BologniaIndiaBernardo Dominic UNQUALIFIED
Tony O WieserSpainElwin Sharvill NEW
Smith K BowleyCanadaXuxue Feng PROPOSAL
Ivar W VenereCanadaOnyama Limba UNQUALIFIED
Maisha G SaylorsFranceBernardo Dominic QUALIFIED
Ricardo L StensethIndiaXuxue Feng NEGOTIATION
Salvatore F ShinkoGermanyBernardo Dominic PROPOSAL
Aika A CaldareraFranceOnyama Limba UNQUALIFIED
Ashley J AlbaresFranceIoni Bowcher PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Mujtaba R NestleSpain2024-05-24Commercial Press NEW66Onyama Limba
1001Aruna M DilliardRussia2024-05-17Chemel, James L Cpa PROPOSAL59Elwin Sharvill
1002Murillo W PerinIndia2024-05-13Rangoni Of Florence QUALIFIED57Stephen Shaw
1003James A WhobreyIndia2024-05-23Printing Dimensions QUALIFIED58Ioni Bowcher
1004Ivar L WieserAustralia2024-05-25Rangoni Of Florence RENEWAL3Ioni Bowcher
1005Leja B WhobreyGermany2024-05-19Morlong Associates NEW16Asiya Javayant
1006Salvatore W VenereJapan2024-05-18Chapman, Ross E Esq RENEWAL34Anna Fali
1007Costa J GauchoArgentina2024-05-18Printing Dimensions RENEWAL78Ioni Bowcher
1008Maisha B AmigonItaly2024-05-16Benton, John B Jr QUALIFIED11Ivan Magalhaes
1009Salvatore B PoquetteFrance2024-04-27Rousseaux, Michael Esq NEGOTIATION93Bernardo Dominic
1010Rodrigues K OstroskyFrance2024-04-28Printing Dimensions UNQUALIFIED75Stephen Shaw
1011Izzy A FlosiRussia2024-05-21Buckley Miller Wright PROPOSAL35Xuxue Feng
1012Mujtaba W CaudySpain2024-04-30Feltz Printing Service NEW12Xuxue Feng
1013Claire G StensethFrance2024-05-10Benton, John B Jr PROPOSAL48Ivan Magalhaes
1014Wickens W CampainIndia2024-05-07Printing Dimensions NEGOTIATION49Ivan Magalhaes
1015Ricardo V BowleyArgentina2024-05-03Rangoni Of Florence PROPOSAL83Asiya Javayant
1016Maisha X GlickUnited Kingdom2024-05-22Chapman, Ross E Esq UNQUALIFIED58Asiya Javayant
1017Maisha X VenereJapan2024-05-10Rousseaux, Michael Esq PROPOSAL64Asiya Javayant
1018Costa B DarakjyJapan2024-05-01Chapman, Ross E Esq UNQUALIFIED50Ivan Magalhaes
1019Octavia E SergiJapan2024-05-16Rousseaux, Michael Esq PROPOSAL13Amy Elsner
1020Johnson Y SchemmerIndia2024-05-16Benton, John B Jr NEGOTIATION68Ivan Magalhaes
1021Juan V VocelkaBrazil2024-05-22Chemel, James L Cpa NEGOTIATION89Elwin Sharvill
1022Alejandro T NestleIndia2024-05-08Rousseaux, Michael Esq UNQUALIFIED83Stephen Shaw
1023Julie Q ShinkoGermany2024-05-09Truhlar And Truhlar Attys NEGOTIATION77Ivan Magalhaes
1024Rodrigues F TollnerFrance2024-05-15Rangoni Of Florence PROPOSAL82Stephen Shaw
1025Salvatore V GlickUnited Kingdom2024-05-09Feltz Printing Service PROPOSAL34Amy Elsner
1026Jones J FollerCanada2024-04-27Commercial Press NEW71Elwin Sharvill
1027Clifford G DilliardJapan2024-05-23Chemel, James L Cpa UNQUALIFIED92Xuxue Feng
1028Sinclair A MacleadJapan2024-05-24Dorl, James J Esq QUALIFIED99Asiya Javayant
1029Mujtaba G OldroydCanada2024-04-30Chemel, James L Cpa QUALIFIED34Stephen Shaw
1030Sinclair N GauchoSpain2024-05-14Printing Dimensions NEGOTIATION19Anna Fali
1031Adams D FollerItaly2024-05-14Rangoni Of Florence RENEWAL43Ivan Magalhaes
1032Leon Y CampainBrazil2024-05-12Commercial Press NEGOTIATION94Elwin Sharvill
1033Adams K KolmetzIndia2024-05-12Buckley Miller Wright PROPOSAL46Asiya Javayant
1034James G OldroydRussia2024-04-28Printing Dimensions RENEWAL5Ioni Bowcher
1035Leon C MorascaCanada2024-05-05King, Christopher A Esq PROPOSAL64Stephen Shaw
1036Julie F CaldareraCanada2024-05-07Rangoni Of Florence PROPOSAL91Amy Elsner
1037Deepesh S GlickJapan2024-05-14Buckley Miller Wright PROPOSAL44Bernardo Dominic
1038Wickens A DilliardArgentina2024-05-13Chemel, James L Cpa NEGOTIATION0Ioni Bowcher
1039Aruna E ButtRussia2024-05-09Chanay, Jeffrey A Esq RENEWAL91Xuxue Feng
1040Claire S SergiArgentina2024-05-07Chanay, Jeffrey A Esq NEW32Bernardo Dominic
1041Clifford P GarufiAustralia2024-04-28Commercial Press NEGOTIATION61Bernardo Dominic
1042Johnson A CaldareraSpain2024-05-04Chemel, James L Cpa NEGOTIATION96Bernardo Dominic
1043Emily P PerinBrazil2024-05-23Truhlar And Truhlar Attys NEW62Elwin Sharvill
1044Jones O GauchoAustralia2024-05-09King, Christopher A Esq PROPOSAL42Onyama Limba
1045Jeanfrancois D SaylorsBrazil2024-05-10Printing Dimensions UNQUALIFIED16Ivan Magalhaes
1046Morrow O SaylorsSpain2024-05-17Rousseaux, Michael Esq NEW68Asiya Javayant
1047Mayumi B AmigonAustralia2024-05-03Printing Dimensions PROPOSAL42Bernardo Dominic
1048Emily X KuskoUnited Kingdom2024-05-10Feiner Bros UNQUALIFIED78Ivan Magalhaes
1049Kaitlin K NickaGermany2024-04-30Feltz Printing Service NEW75Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Kadeem J VocelkaSpainOnyama Limba UNQUALIFIED
Julie U IturbideGermanyElwin Sharvill QUALIFIED
Faith P SaylorsArgentinaBernardo Dominic PROPOSAL
Costa C PaprockiBrazilAnna Fali UNQUALIFIED
Deepesh O RoysterUnited KingdomXuxue Feng RENEWAL
Salvatore R FlosiRussiaIoni Bowcher QUALIFIED
Aditya R TollnerCanadaElwin Sharvill NEW
Aditya N RoysterIndiaIoni Bowcher QUALIFIED
Clifford T RimArgentinaIoni Bowcher QUALIFIED
David U ChuiJapanAnna Fali RENEWAL
Octavia B PerinItalyAsiya Javayant NEGOTIATION
Morrow H BowleySpainIvan Magalhaes NEW
Silvio S BologniaItalyBernardo Dominic NEW
Jeanfrancois O BowleyUnited KingdomStephen Shaw NEW
Johnson B StockhamAustraliaAmy Elsner NEW
Darci P RimGermanyIvan Magalhaes RENEWAL
Octavia W CaldareraItalyBernardo Dominic NEW
Arvin R FlosiItalyAnna Fali RENEWAL
Alejandro V PerinIndiaStephen Shaw NEGOTIATION
Francesco A DoeAustraliaElwin Sharvill RENEWAL
Ashley H SergiGermanyIvan Magalhaes NEW
Costa C DoeFranceIvan Magalhaes UNQUALIFIED
Wickens P MarrierRussiaBernardo Dominic RENEWAL
Francesco E WieserUnited KingdomIvan Magalhaes NEW
Izzy Z AlbaresRussiaBernardo Dominic UNQUALIFIED
Antonio N OstroskySpainStephen Shaw NEGOTIATION
Wickens D AlbaresRussiaIvan Magalhaes QUALIFIED
Arvin P ButtAustraliaAsiya Javayant UNQUALIFIED
Adams J StockhamIndiaAnna Fali RENEWAL
Silvio L BologniaSpainOnyama Limba UNQUALIFIED
Maria F MacleadUnited KingdomXuxue Feng RENEWAL
Claire E WhobreyBrazilAmy Elsner UNQUALIFIED
Darci G RutaRussiaElwin Sharvill NEW
Leon W OldroydIndiaOnyama Limba NEGOTIATION
Jennifer M GarufiArgentinaBernardo Dominic QUALIFIED
Clifford G PerinGermanyStephen Shaw NEW
Johnson D WieserCanadaXuxue Feng RENEWAL
Jones A ChuiBrazilAsiya Javayant QUALIFIED
James P OldroydBrazilIvan Magalhaes QUALIFIED
Octavia D DoeUnited KingdomAsiya Javayant PROPOSAL
Murillo E ButtIndiaIvan Magalhaes NEW
Tony A FerenczFranceAnna Fali NEGOTIATION
Arvin B AlbaresRussiaIoni Bowcher UNQUALIFIED
Chavez X RulapaughUnited KingdomBernardo Dominic QUALIFIED
Ricardo Y NestleFranceStephen Shaw UNQUALIFIED
Julie N GauchoBrazilOnyama Limba PROPOSAL
Mujtaba W SaylorsSpainElwin Sharvill NEW
Deepesh W GarufiIndiaAsiya Javayant QUALIFIED
Johnson J AlbaresArgentinaAsiya Javayant UNQUALIFIED
Darci D WhobreyCanadaAnna Fali NEGOTIATION
Frozen Columns
Name
Tony W Briddick
Ricardo R Maclead
Kaitlin S Iturbide
Silvio T Albares
Greenwood S Poquette
Murillo X Bowley
Costa F Wieser
Maria J Malet
Silvio F Saylors
Aruna X Caudy
Izzy X Marrier
Salvatore J Rulapaugh
Johnson Y Albares
Clifford G Morasca
Mayumi I Waycott
Jennifer G Malet
Emily T Kusko
Clifford X Ferencz
Misaki K Figeroa
Jones U Paprocki
Aditya V Poquette
Izzy W Garufi
Munro K Venere
Wickens G Doe
Darci G Caldarera
Rodrigues R Ostrosky
Jennifer S Kusko
Stacey D Amigon
Claire K Paprocki
Izzy E Paprocki
Mujtaba D Briddick
Smith J Bowley
Murillo V Whobrey
Aditya P Flosi
Cody B Kolmetz
Stacey M Wieser
Jefferson J Kusko
Jeanfrancois J Stenseth
Jones B Marrier
Alejandro F Garufi
Stacey C Stenseth
Misaki X Rulapaugh
Faith M Malet
Wickens K Chui
Mujtaba V Nestle
Murillo U Tollner
Maisha H Campain
Misaki Z Oldroyd
Juan Q Nestle
Aika U Iturbide
IdCountryDate
1000Italy2024-05-14
1001United Kingdom2024-04-26
1002Japan2024-05-22
1003Spain2024-05-20
1004Russia2024-05-07
1005Canada2024-05-20
1006Russia2024-05-03
1007Spain2024-05-25
1008Canada2024-05-20
1009United Kingdom2024-04-26
1010Russia2024-04-27
1011Brazil2024-05-25
1012Australia2024-05-05
1013Japan2024-05-12
1014Spain2024-05-01
1015Spain2024-05-05
1016Canada2024-05-03
1017Australia2024-05-24
1018Germany2024-05-16
1019Australia2024-05-09
1020Canada2024-05-02
1021Russia2024-05-19
1022Russia2024-05-10
1023India2024-04-26
1024Spain2024-05-19
1025France2024-04-30
1026Italy2024-05-03
1027Russia2024-05-16
1028Canada2024-05-07
1029Australia2024-05-13
1030Brazil2024-05-10
1031United Kingdom2024-04-29
1032Japan2024-05-16
1033Germany2024-05-03
1034Russia2024-04-26
1035Japan2024-05-06
1036Russia2024-05-09
1037France2024-05-24
1038Japan2024-05-05
1039Australia2024-05-18
1040Argentina2024-05-05
1041Russia2024-05-22
1042Russia2024-04-26
1043India2024-04-26
1044Brazil2024-05-15
1045Spain2024-05-06
1046Brazil2024-05-03
1047Russia2024-05-09
1048Australia2024-05-22
1049Japan2024-05-14

On-Demand Data

NameIdCountryDate
Maisha Q Schemmer1000Canada2024-05-14
Jeanfrancois U Nicka1001Russia2024-05-11
Murillo E Morasca1002Germany2024-05-13
Cody Z Nestle1003Brazil2024-05-02
Octavia U Ferencz1004Argentina2024-04-29
Wickens T Kusko1005Japan2024-05-17
Johnson D Albares1006Canada2024-05-16
Francesco V Caudy1007Russia2024-04-27
Chavez A Ostrosky1008India2024-05-21
Arvin C Perin1009France2024-05-18
David U Paprocki1010Brazil2024-05-08
Clifford T Tollner1011Brazil2024-05-05
Adams S Venere1012Italy2024-05-17
Misaki E Waycott1013India2024-05-05
Claire V Morasca1014Germany2024-05-22
Maisha H Poquette1015Argentina2024-05-17
Isabel A Campain1016Argentina2024-05-24
Adams B Flosi1017Australia2024-05-16
Aika D Malet1018United Kingdom2024-05-05
James L Flosi1019Spain2024-05-18
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Faith J MaletUnited KingdomOnyama Limba NEW
Faith F WaycottCanadaXuxue Feng PROPOSAL
Tony Z MaletItalyAmy Elsner QUALIFIED
Silvio O IturbideAustraliaOnyama Limba NEW
Aditya S IturbideArgentinaAnna Fali PROPOSAL
Aruna R SlusarskiSpainStephen Shaw PROPOSAL
Jennifer H InouyeSpainElwin Sharvill QUALIFIED
Johnson N PaprockiSpainStephen Shaw PROPOSAL
Munro H FigeroaJapanAnna Fali PROPOSAL
Claire A StockhamCanadaIoni Bowcher RENEWAL
Juan Y SergiJapanXuxue Feng RENEWAL
Adams S SaylorsCanadaOnyama Limba NEW
Izzy R MaletGermanyBernardo Dominic NEW
Adams T FollerItalyAsiya Javayant UNQUALIFIED
Deepesh V FlosiItalyIvan Magalhaes UNQUALIFIED
Maria Q DilliardFranceXuxue Feng NEGOTIATION
Antonio E WhobreyFranceStephen Shaw NEGOTIATION
Aika C RimCanadaAnna Fali NEW
Clifford B SlusarskiArgentinaIoni Bowcher NEGOTIATION
Emily J GarufiUnited KingdomBernardo Dominic NEGOTIATION
Maria X MarrierRussiaAsiya Javayant NEW
Claire J OldroydBrazilStephen Shaw PROPOSAL
Greenwood M MorascaIndiaAsiya Javayant NEGOTIATION
Cody R NickaUnited KingdomBernardo Dominic NEGOTIATION
Munro W BologniaRussiaAmy Elsner QUALIFIED
Aruna L RulapaughGermanyIoni Bowcher PROPOSAL
Darci G VenereJapanElwin Sharvill RENEWAL
James K GillianSpainStephen Shaw NEGOTIATION
James Z WieserItalyOnyama Limba NEW
Kaitlin A SlusarskiBrazilIoni Bowcher QUALIFIED
Maria X SergiArgentinaElwin Sharvill PROPOSAL
Francesco G BowleyIndiaBernardo Dominic QUALIFIED
Johnson Y BowleyJapanXuxue Feng NEW
Octavia E BowleyFranceXuxue Feng UNQUALIFIED
Juan D DarakjyUnited KingdomIvan Magalhaes UNQUALIFIED
Morrow E ChuiJapanAsiya Javayant QUALIFIED
Munro A FerenczItalyBernardo Dominic RENEWAL
Morrow N WieserBrazilAmy Elsner PROPOSAL
Ricardo T VenereIndiaIoni Bowcher QUALIFIED
Murillo B OldroydGermanyXuxue Feng 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>