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
Nicolas I SergiCanadaAmy Elsner NEGOTIATION
Johnson Z DarakjyRussiaStephen Shaw QUALIFIED
Francesco R FigeroaFranceAnna Fali UNQUALIFIED
Cody N GauchoBrazilIvan Magalhaes UNQUALIFIED
Silvio D FerenczItalyOnyama Limba NEW
Faith D CaldareraCanadaStephen Shaw QUALIFIED
Morrow Z AlbaresGermanyAnna Fali NEGOTIATION
Greenwood A RimFranceElwin Sharvill NEGOTIATION
Faith Q CampainItalyAmy Elsner UNQUALIFIED
Arvin C SergiArgentinaAnna Fali UNQUALIFIED
Jones E BologniaArgentinaAsiya Javayant UNQUALIFIED
Maria R GillianIndiaBernardo Dominic RENEWAL
Ivar G RulapaughAustraliaBernardo Dominic QUALIFIED
Aditya F SlusarskiAustraliaIoni Bowcher PROPOSAL
Jennifer S StensethFranceXuxue Feng QUALIFIED
Munro B DilliardIndiaAsiya Javayant UNQUALIFIED
Darci E RutaIndiaElwin Sharvill NEGOTIATION
Ricardo Z SaylorsRussiaStephen Shaw NEW
Leja H CaudyAustraliaXuxue Feng NEGOTIATION
Stacey M SaylorsGermanyXuxue Feng RENEWAL
Leon G DoeGermanyIoni Bowcher UNQUALIFIED
Morrow D BologniaAustraliaIoni Bowcher RENEWAL
Tony H ButtBrazilOnyama Limba PROPOSAL
Darci Z PoquetteItalyAsiya Javayant QUALIFIED
Misaki Y MaletArgentinaIoni Bowcher NEGOTIATION
Morrow K SergiFranceAnna Fali QUALIFIED
Jennifer N RoysterBrazilIvan Magalhaes NEW
Juan V RutaItalyIvan Magalhaes NEGOTIATION
Kadeem Q MaletCanadaIvan Magalhaes UNQUALIFIED
Francesco F FollerBrazilOnyama Limba NEGOTIATION
Chavez E GillianJapanAsiya Javayant NEW
Adams P IturbideArgentinaBernardo Dominic QUALIFIED
Jefferson P MaletBrazilStephen Shaw NEGOTIATION
Arvin N SaylorsAustraliaStephen Shaw QUALIFIED
Murillo M BriddickFranceStephen Shaw UNQUALIFIED
Mujtaba I BologniaArgentinaBernardo Dominic UNQUALIFIED
Stacey R FigeroaGermanyAmy Elsner PROPOSAL
Jefferson M RulapaughIndiaOnyama Limba NEW
Mujtaba M PoquetteGermanyIvan Magalhaes NEW
Maria Q FerenczJapanAnna Fali UNQUALIFIED
Alejandro R IturbideJapanElwin Sharvill PROPOSAL
Aruna S PoquetteUnited KingdomAnna Fali UNQUALIFIED
Leja E RulapaughAustraliaBernardo Dominic NEW
Arvin E GauchoJapanIoni Bowcher PROPOSAL
Alejandro G FerenczIndiaOnyama Limba RENEWAL
Leon K NickaUnited KingdomBernardo Dominic NEGOTIATION
Murillo Q SaylorsRussiaAmy Elsner UNQUALIFIED
Ricardo Z BologniaUnited KingdomOnyama Limba UNQUALIFIED
Arvin K KolmetzBrazilOnyama Limba RENEWAL
Cody L OldroydBrazilAmy Elsner NEW
Horizontal
NameCountryRepresentativeStatus
Aditya X WieserIndiaOnyama Limba RENEWAL
Salvatore T NickaAustraliaStephen Shaw NEGOTIATION
Wickens O RulapaughBrazilAmy Elsner UNQUALIFIED
Stacey Q NestleCanadaAmy Elsner NEW
Juan Y RimFranceStephen Shaw PROPOSAL
Wickens K SchemmerRussiaOnyama Limba PROPOSAL
Octavia R MaletCanadaBernardo Dominic NEGOTIATION
Leja M SchemmerArgentinaStephen Shaw NEW
Sinclair S MorascaBrazilAnna Fali PROPOSAL
Mayumi V GillianCanadaAmy Elsner RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Cody O MaletUnited Kingdom2024-06-15Benton, John B Jr NEGOTIATION17Ioni Bowcher
1001Arvin F MaletCanada2024-06-10Printing Dimensions PROPOSAL35Xuxue Feng
1002Aditya L CaldareraIndia2024-06-07King, Christopher A Esq QUALIFIED52Asiya Javayant
1003Francesco J MaletJapan2024-05-26Rousseaux, Michael Esq QUALIFIED92Anna Fali
1004Smith M MaletRussia2024-06-12Rousseaux, Michael Esq NEGOTIATION97Stephen Shaw
1005Maria T MaletSpain2024-05-26Printing Dimensions NEW32Elwin Sharvill
1006Leja G GillianCanada2024-05-28Commercial Press UNQUALIFIED65Xuxue Feng
1007Rodrigues M MacleadItaly2024-06-01Benton, John B Jr PROPOSAL99Elwin Sharvill
1008Wickens Q DoeBrazil2024-06-10Chemel, James L Cpa PROPOSAL67Asiya Javayant
1009Deepesh D MorascaArgentina2024-06-16Truhlar And Truhlar Attys RENEWAL41Ivan Magalhaes
1010Aditya M SlusarskiItaly2024-05-27King, Christopher A Esq UNQUALIFIED73Ivan Magalhaes
1011Ashley Q GillianArgentina2024-05-29Commercial Press NEW15Asiya Javayant
1012Greenwood J FlosiBrazil2024-05-19Morlong Associates UNQUALIFIED1Xuxue Feng
1013Wickens J KuskoUnited Kingdom2024-06-15Commercial Press QUALIFIED22Xuxue Feng
1014Jones V StockhamIndia2024-05-24Feiner Bros PROPOSAL47Onyama Limba
1015Mujtaba G VenereArgentina2024-05-27Rangoni Of Florence QUALIFIED10Xuxue Feng
1016Antonio E RimItaly2024-05-28Feiner Bros PROPOSAL98Amy Elsner
1017Cody K BowleyArgentina2024-05-24Dorl, James J Esq UNQUALIFIED8Xuxue Feng
1018Aditya X NestleItaly2024-06-04Chemel, James L Cpa PROPOSAL55Stephen Shaw
1019Ivar A RutaSpain2024-05-19Morlong Associates RENEWAL94Bernardo Dominic
1020Aruna H ButtItaly2024-06-13Feiner Bros QUALIFIED18Ioni Bowcher
1021Deepesh M MaletAustralia2024-06-06Dorl, James J Esq UNQUALIFIED26Anna Fali
1022Tony T GauchoUnited Kingdom2024-05-25Chapman, Ross E Esq QUALIFIED98Asiya Javayant
1023Adams V ShinkoGermany2024-06-14Rousseaux, Michael Esq RENEWAL14Amy Elsner
1024Greenwood V SlusarskiJapan2024-06-16Commercial Press RENEWAL92Bernardo Dominic
1025Wickens E DarakjyItaly2024-06-06Morlong Associates RENEWAL51Ivan Magalhaes
1026Clifford T BowleyAustralia2024-05-28Chanay, Jeffrey A Esq NEW41Xuxue Feng
1027Morrow K WieserRussia2024-05-30Dorl, James J Esq QUALIFIED0Anna Fali
1028Salvatore D PaprockiBrazil2024-06-03Buckley Miller Wright UNQUALIFIED60Amy Elsner
1029Cody O FollerCanada2024-06-05Rangoni Of Florence RENEWAL66Elwin Sharvill
1030Clifford P MacleadSpain2024-06-14Rangoni Of Florence RENEWAL42Asiya Javayant
1031Leon A RoysterAustralia2024-06-04Dorl, James J Esq NEGOTIATION5Stephen Shaw
1032Darci I GarufiArgentina2024-06-15Rousseaux, Michael Esq UNQUALIFIED0Asiya Javayant
1033Emily I DarakjyIndia2024-05-27Benton, John B Jr QUALIFIED54Ioni Bowcher
1034Mujtaba W SlusarskiIndia2024-06-05Dorl, James J Esq NEW43Elwin Sharvill
1035Clifford C NestleIndia2024-05-23Feltz Printing Service NEGOTIATION60Amy Elsner
1036Wickens G MorascaArgentina2024-05-24Benton, John B Jr RENEWAL38Elwin Sharvill
1037Smith O CaldareraIndia2024-05-22Chanay, Jeffrey A Esq UNQUALIFIED54Stephen Shaw
1038Costa H TollnerArgentina2024-06-09Commercial Press QUALIFIED45Ivan Magalhaes
1039Juan Y BowleyIndia2024-05-21Feltz Printing Service PROPOSAL75Ivan Magalhaes
1040David Q SaylorsSpain2024-05-22Benton, John B Jr RENEWAL55Bernardo Dominic
1041Costa J PerinFrance2024-05-26Buckley Miller Wright NEW37Bernardo Dominic
1042Salvatore Q GauchoIndia2024-06-15King, Christopher A Esq UNQUALIFIED99Amy Elsner
1043Jefferson Q PaprockiRussia2024-06-16Truhlar And Truhlar Attys UNQUALIFIED83Bernardo Dominic
1044Munro X MacleadItaly2024-06-04Feltz Printing Service NEGOTIATION61Xuxue Feng
1045Aruna I GlickArgentina2024-06-07King, Christopher A Esq UNQUALIFIED29Stephen Shaw
1046Adams M VenereArgentina2024-05-21Feltz Printing Service UNQUALIFIED8Amy Elsner
1047Greenwood Q ShinkoRussia2024-05-24Buckley Miller Wright RENEWAL79Onyama Limba
1048Silvio U FigeroaItaly2024-06-05Chemel, James L Cpa QUALIFIED44Amy Elsner
1049Cody C NickaGermany2024-05-26Benton, John B Jr PROPOSAL67Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Rodrigues O DilliardJapanAmy Elsner NEW
David C GarufiRussiaBernardo Dominic UNQUALIFIED
Jefferson T RoysterGermanyXuxue Feng PROPOSAL
Greenwood H FlosiUnited KingdomBernardo Dominic NEGOTIATION
Jefferson P KolmetzGermanyAmy Elsner NEGOTIATION
Rodrigues N WaycottGermanyAmy Elsner NEW
Octavia Z PoquetteArgentinaIvan Magalhaes PROPOSAL
Nicolas K SchemmerCanadaOnyama Limba QUALIFIED
Jeanfrancois Q DilliardItalyXuxue Feng RENEWAL
Ricardo T PoquetteBrazilOnyama Limba NEGOTIATION
Munro X RulapaughJapanIoni Bowcher QUALIFIED
Alejandro M FollerCanadaAsiya Javayant PROPOSAL
Stacey K NickaCanadaAsiya Javayant UNQUALIFIED
David T StensethSpainIoni Bowcher NEGOTIATION
Mayumi O SaylorsIndiaOnyama Limba PROPOSAL
Salvatore L NickaArgentinaStephen Shaw NEGOTIATION
Tony A ButtCanadaIvan Magalhaes UNQUALIFIED
Isabel J BriddickGermanyBernardo Dominic UNQUALIFIED
Jefferson D MarrierRussiaIoni Bowcher QUALIFIED
Sinclair M MorascaIndiaXuxue Feng UNQUALIFIED
Jefferson Z BologniaAustraliaBernardo Dominic RENEWAL
Wickens P OstroskyRussiaElwin Sharvill RENEWAL
Octavia X DilliardArgentinaAsiya Javayant PROPOSAL
Silvio B MacleadItalyOnyama Limba NEGOTIATION
Tony H RutaGermanyBernardo Dominic PROPOSAL
Murillo T KuskoFranceAnna Fali QUALIFIED
Munro M DilliardSpainXuxue Feng RENEWAL
Francesco M CaldareraGermanyIoni Bowcher RENEWAL
Ivar E RutaSpainBernardo Dominic PROPOSAL
Isabel E FerenczRussiaBernardo Dominic PROPOSAL
Rodrigues M GlickItalyAmy Elsner NEGOTIATION
Alejandro C SlusarskiArgentinaOnyama Limba NEW
Jones F BowleyCanadaIoni Bowcher RENEWAL
Isabel K RulapaughUnited KingdomAsiya Javayant NEGOTIATION
Leon T OldroydArgentinaIoni Bowcher PROPOSAL
Ivar U PerinRussiaOnyama Limba QUALIFIED
Faith Z MarrierSpainAsiya Javayant UNQUALIFIED
Jennifer G MaletAustraliaElwin Sharvill UNQUALIFIED
Leon T PaprockiRussiaXuxue Feng NEGOTIATION
James E WhobreyUnited KingdomIoni Bowcher RENEWAL
Mayumi Q GarufiUnited KingdomElwin Sharvill PROPOSAL
Adams O GlickCanadaXuxue Feng RENEWAL
Deepesh X ShinkoUnited KingdomElwin Sharvill NEGOTIATION
Deepesh H OstroskyGermanyOnyama Limba NEW
Isabel C VenereFranceXuxue Feng QUALIFIED
Aditya I MaletBrazilIvan Magalhaes UNQUALIFIED
Emily O DilliardGermanyStephen Shaw PROPOSAL
Octavia E OstroskyJapanIoni Bowcher QUALIFIED
Kaitlin G CaldareraSpainIvan Magalhaes NEGOTIATION
Nicolas E GauchoSpainElwin Sharvill PROPOSAL
Frozen Columns
Name
Aditya J Albares
Morrow Y Oldroyd
Octavia Q Malet
Tony A Glick
Munro M Caudy
Izzy J Waycott
Aruna F Marrier
Izzy V Butt
Wickens V Flosi
Arvin W Garufi
Smith A Nestle
Antonio H Royster
Maisha I Kusko
Alejandro U Gillian
Alejandro T Doe
Leon X Shinko
Cody E Rulapaugh
Antonio U Nicka
Alejandro X Rulapaugh
Greenwood T Royster
Aruna G Glick
Octavia R Stockham
Clifford W Ferencz
Munro J Marrier
Juan D Doe
Aruna H Chui
Faith E Caldarera
Murillo F Albares
Silvio K Albares
Julie W Kusko
Johnson T Schemmer
Clifford X Foller
Greenwood T Bowley
Aditya B Darakjy
Claire Z Figeroa
Rodrigues Q Maclead
Cody X Figeroa
Sinclair D Morasca
Mayumi I Figeroa
Kaitlin N Stenseth
Stacey L Inouye
Leja A Briddick
Antonio P Gaucho
Nicolas L Briddick
Wickens Y Garufi
Emily M Maclead
Emily U Oldroyd
Nicolas N Tollner
Francesco K Royster
Jefferson Y Ferencz
IdCountryDate
1000Italy2024-06-12
1001Germany2024-05-20
1002United Kingdom2024-05-27
1003United Kingdom2024-06-11
1004United Kingdom2024-05-20
1005Japan2024-06-09
1006Brazil2024-05-29
1007India2024-05-29
1008Canada2024-06-10
1009Russia2024-05-25
1010Spain2024-05-31
1011Argentina2024-06-08
1012Australia2024-06-15
1013France2024-06-05
1014Brazil2024-05-27
1015Spain2024-05-20
1016Argentina2024-06-17
1017France2024-05-23
1018Brazil2024-05-19
1019Canada2024-05-29
1020Canada2024-06-04
1021Germany2024-06-12
1022Australia2024-05-28
1023Russia2024-05-24
1024India2024-05-26
1025India2024-06-03
1026Argentina2024-06-12
1027Russia2024-06-17
1028Spain2024-06-05
1029Brazil2024-05-20
1030Canada2024-05-19
1031France2024-06-13
1032Australia2024-06-06
1033Canada2024-06-12
1034Australia2024-05-25
1035Canada2024-05-24
1036Japan2024-06-05
1037Germany2024-06-13
1038Russia2024-06-10
1039Argentina2024-06-13
1040Brazil2024-05-24
1041France2024-06-11
1042Russia2024-06-15
1043France2024-05-24
1044Japan2024-06-05
1045Spain2024-05-21
1046Japan2024-05-31
1047France2024-05-19
1048Russia2024-06-15
1049Brazil2024-06-07

On-Demand Data

NameIdCountryDate
Stacey N Iturbide1000India2024-06-04
Rodrigues W Stockham1001France2024-05-23
Octavia W Morasca1002Japan2024-05-23
Chavez B Waycott1003Germany2024-05-20
Salvatore S Whobrey1004Spain2024-05-23
Salvatore J Rulapaugh1005France2024-06-09
David B Saylors1006Canada2024-06-15
Jennifer Z Morasca1007Japan2024-06-15
David S Perin1008India2024-06-16
Greenwood R Venere1009France2024-05-25
Smith K Wieser1010Canada2024-05-23
Ashley R Rim1011Russia2024-06-09
Cody S Caudy1012India2024-06-14
Isabel H Iturbide1013Germany2024-06-04
Maria S Chui1014United Kingdom2024-06-04
Kaitlin W Royster1015France2024-06-02
Chavez H Marrier1016Argentina2024-06-07
Misaki A Flosi1017Italy2024-06-02
Juan Z Figeroa1018Japan2024-06-17
Emily A Briddick1019Argentina2024-06-09
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Izzy W SlusarskiGermanyIoni Bowcher RENEWAL
Morrow Q OldroydSpainAsiya Javayant NEGOTIATION
Leon C NestleSpainIvan Magalhaes QUALIFIED
Aruna W SaylorsFranceXuxue Feng NEGOTIATION
Morrow U VenereUnited KingdomOnyama Limba RENEWAL
Morrow I VenereGermanyBernardo Dominic NEGOTIATION
Costa O AlbaresIndiaIvan Magalhaes NEGOTIATION
Cody C GillianFranceAmy Elsner NEW
Aditya N DarakjyBrazilElwin Sharvill NEW
Nicolas G OstroskyIndiaAnna Fali RENEWAL
Ivar J GillianRussiaXuxue Feng RENEWAL
Alejandro H FollerUnited KingdomBernardo Dominic RENEWAL
Tony J MarrierJapanAsiya Javayant RENEWAL
Johnson S StockhamJapanElwin Sharvill NEW
Ivar X TollnerUnited KingdomAnna Fali NEGOTIATION
Maria X IturbideCanadaAsiya Javayant NEW
Maria M WhobreyBrazilIoni Bowcher QUALIFIED
Emily Q AmigonUnited KingdomIvan Magalhaes PROPOSAL
Claire X AlbaresUnited KingdomAmy Elsner RENEWAL
Julie G WieserJapanIoni Bowcher RENEWAL
Ricardo E AlbaresGermanyStephen Shaw QUALIFIED
Jones Z PoquetteSpainStephen Shaw QUALIFIED
Wickens P DarakjyJapanAsiya Javayant PROPOSAL
Maisha I RulapaughSpainOnyama Limba UNQUALIFIED
Darci U InouyeJapanOnyama Limba UNQUALIFIED
Octavia H VocelkaIndiaElwin Sharvill PROPOSAL
Ashley M NestleArgentinaIoni Bowcher NEGOTIATION
Jennifer U CaudyUnited KingdomIvan Magalhaes RENEWAL
Silvio I CaldareraSpainElwin Sharvill RENEWAL
Murillo N TollnerJapanAmy Elsner UNQUALIFIED
Mujtaba J DoeSpainAnna Fali NEW
James W SlusarskiGermanyAsiya Javayant UNQUALIFIED
Ricardo D KolmetzRussiaIoni Bowcher NEGOTIATION
David V ChuiBrazilXuxue Feng UNQUALIFIED
James C CampainArgentinaAnna Fali NEGOTIATION
Maisha Y FollerItalyAnna Fali QUALIFIED
David I WieserCanadaIoni Bowcher NEGOTIATION
Juan H AlbaresSpainOnyama Limba RENEWAL
Arvin W DoeSpainAsiya Javayant NEW
Murillo G AmigonItalyAnna Fali PROPOSAL

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