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
Aika G CampainIndiaAmy Elsner QUALIFIED
Misaki V ButtAustraliaOnyama Limba UNQUALIFIED
Murillo I FigeroaUnited KingdomXuxue Feng QUALIFIED
Juan Q GauchoJapanStephen Shaw PROPOSAL
Wickens L VenereGermanyAmy Elsner PROPOSAL
Adams D CampainIndiaElwin Sharvill NEGOTIATION
Maria P FollerAustraliaAnna Fali UNQUALIFIED
Emily Q ChuiJapanAmy Elsner NEGOTIATION
Izzy P InouyeBrazilIvan Magalhaes QUALIFIED
Octavia H CaldareraUnited KingdomOnyama Limba UNQUALIFIED
Aditya D BowleyIndiaXuxue Feng NEW
Juan S WieserItalyAnna Fali NEGOTIATION
Clifford F TollnerRussiaXuxue Feng NEW
Francesco W AlbaresRussiaAsiya Javayant RENEWAL
Cody H GarufiAustraliaAmy Elsner NEW
Murillo T FollerRussiaAmy Elsner PROPOSAL
Stacey I ButtFranceOnyama Limba UNQUALIFIED
Jennifer I FollerJapanAsiya Javayant NEW
Maisha D OldroydBrazilBernardo Dominic NEW
Julie L RimCanadaAmy Elsner UNQUALIFIED
Stacey A SlusarskiRussiaIoni Bowcher NEW
Arvin T RulapaughRussiaIoni Bowcher NEGOTIATION
Claire F DoeRussiaBernardo Dominic NEGOTIATION
Mayumi Z ShinkoRussiaAmy Elsner UNQUALIFIED
Aika I GauchoArgentinaElwin Sharvill NEW
Jennifer K PerinCanadaAsiya Javayant RENEWAL
Ricardo X InouyeUnited KingdomAsiya Javayant NEW
Maisha B TollnerAustraliaOnyama Limba UNQUALIFIED
Darci U FigeroaGermanyIvan Magalhaes NEW
Julie K MorascaItalyAsiya Javayant QUALIFIED
Alejandro D CaudyFranceStephen Shaw UNQUALIFIED
Salvatore E MorascaGermanyOnyama Limba UNQUALIFIED
Maria S RutaItalyOnyama Limba NEW
Smith M FerenczAustraliaIvan Magalhaes RENEWAL
James W NestleAustraliaIvan Magalhaes UNQUALIFIED
Mayumi L FlosiFranceIvan Magalhaes RENEWAL
Kaitlin B RimSpainBernardo Dominic RENEWAL
James W WieserAustraliaIvan Magalhaes NEW
Rodrigues J PaprockiItalyOnyama Limba NEW
Izzy O MarrierBrazilOnyama Limba PROPOSAL
Darci D ShinkoUnited KingdomElwin Sharvill NEGOTIATION
Aika W BologniaJapanBernardo Dominic NEGOTIATION
Darci W PaprockiFranceBernardo Dominic UNQUALIFIED
Maisha D WaycottCanadaStephen Shaw NEW
Leon A NestleGermanyBernardo Dominic UNQUALIFIED
Tony I ChuiFranceAmy Elsner UNQUALIFIED
Misaki H StensethSpainElwin Sharvill NEW
Kadeem P VocelkaGermanyAsiya Javayant QUALIFIED
Johnson Q FollerIndiaOnyama Limba UNQUALIFIED
Nicolas B CaldareraAustraliaBernardo Dominic NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Maria W SergiJapanAnna Fali PROPOSAL
Mayumi I MacleadItalyBernardo Dominic NEW
Octavia J KuskoFranceStephen Shaw NEW
Darci N StensethRussiaBernardo Dominic PROPOSAL
Emily W FigeroaGermanyElwin Sharvill RENEWAL
Munro U RimFranceBernardo Dominic PROPOSAL
Smith O ShinkoSpainAsiya Javayant NEW
Johnson G OldroydRussiaIvan Magalhaes PROPOSAL
Ricardo J CaudyUnited KingdomAmy Elsner UNQUALIFIED
Izzy T MacleadSpainAsiya Javayant NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Cody V BologniaSpain2024-05-18Truhlar And Truhlar Attys QUALIFIED75Asiya Javayant
1001Leon C AmigonArgentina2024-05-16Rousseaux, Michael Esq NEGOTIATION21Asiya Javayant
1002Rodrigues E RulapaughAustralia2024-05-29Feltz Printing Service NEGOTIATION68Stephen Shaw
1003Juan Q ChuiCanada2024-06-03Feiner Bros NEW17Ivan Magalhaes
1004Juan F BowleyBrazil2024-06-11Chanay, Jeffrey A Esq NEW43Asiya Javayant
1005Ivar T GarufiFrance2024-06-07Benton, John B Jr UNQUALIFIED83Bernardo Dominic
1006Jones X SergiBrazil2024-06-08Truhlar And Truhlar Attys UNQUALIFIED55Anna Fali
1007Alejandro M VenereUnited Kingdom2024-05-24Dorl, James J Esq RENEWAL50Ivan Magalhaes
1008Smith R StensethGermany2024-06-05Benton, John B Jr PROPOSAL20Bernardo Dominic
1009Leon G VenereCanada2024-05-27Truhlar And Truhlar Attys RENEWAL17Onyama Limba
1010Maria T GarufiRussia2024-05-19Feiner Bros UNQUALIFIED51Elwin Sharvill
1011Isabel Z RimJapan2024-06-12Commercial Press NEW98Stephen Shaw
1012Leon M MacleadBrazil2024-06-03Rousseaux, Michael Esq NEW70Anna Fali
1013Antonio Y WieserBrazil2024-05-21Rousseaux, Michael Esq UNQUALIFIED86Stephen Shaw
1014Leon C WieserAustralia2024-05-24Rousseaux, Michael Esq PROPOSAL69Stephen Shaw
1015Alejandro U KolmetzRussia2024-05-17Rousseaux, Michael Esq PROPOSAL13Stephen Shaw
1016Jones Q GarufiCanada2024-06-13Chapman, Ross E Esq RENEWAL57Bernardo Dominic
1017Sinclair C ShinkoUnited Kingdom2024-06-10Feiner Bros NEW31Amy Elsner
1018Murillo B BowleyUnited Kingdom2024-05-22Dorl, James J Esq NEW29Xuxue Feng
1019Mayumi G ChuiUnited Kingdom2024-06-10Truhlar And Truhlar Attys QUALIFIED93Amy Elsner
1020Isabel K DarakjyGermany2024-05-20Rangoni Of Florence UNQUALIFIED44Xuxue Feng
1021Munro Z VenereAustralia2024-05-22Chapman, Ross E Esq RENEWAL43Xuxue Feng
1022Alejandro R DoeIndia2024-06-05Chemel, James L Cpa UNQUALIFIED23Xuxue Feng
1023Francesco G PoquetteAustralia2024-05-20Rousseaux, Michael Esq PROPOSAL38Ivan Magalhaes
1024Aditya Q FerenczAustralia2024-06-01Dorl, James J Esq RENEWAL59Ivan Magalhaes
1025Adams E VenereGermany2024-06-10Chanay, Jeffrey A Esq NEGOTIATION93Stephen Shaw
1026Smith J CampainIndia2024-05-24Benton, John B Jr UNQUALIFIED20Bernardo Dominic
1027Aika Y BologniaCanada2024-06-09Printing Dimensions NEW75Bernardo Dominic
1028Kadeem P CaldareraRussia2024-06-01Feltz Printing Service PROPOSAL32Bernardo Dominic
1029Stacey F VenereBrazil2024-06-12Rousseaux, Michael Esq PROPOSAL92Onyama Limba
1030Murillo W ShinkoFrance2024-05-17Commercial Press NEGOTIATION76Onyama Limba
1031Deepesh M MaletBrazil2024-05-26Morlong Associates NEGOTIATION83Anna Fali
1032Murillo E ChuiAustralia2024-05-28Feiner Bros UNQUALIFIED84Asiya Javayant
1033Leon L GillianGermany2024-06-08Feltz Printing Service QUALIFIED12Asiya Javayant
1034Octavia J KuskoItaly2024-05-20Commercial Press QUALIFIED57Ioni Bowcher
1035Maria P FlosiFrance2024-05-27Feltz Printing Service PROPOSAL33Asiya Javayant
1036Tony Q OldroydCanada2024-06-08Rangoni Of Florence UNQUALIFIED89Ivan Magalhaes
1037Jefferson K StockhamIndia2024-06-03Truhlar And Truhlar Attys NEW30Elwin Sharvill
1038Costa F CampainCanada2024-06-13Feltz Printing Service PROPOSAL97Bernardo Dominic
1039Cody A RulapaughCanada2024-06-04Rousseaux, Michael Esq NEW87Asiya Javayant
1040Stacey B SlusarskiGermany2024-05-25Feltz Printing Service UNQUALIFIED17Onyama Limba
1041Greenwood A MaletCanada2024-06-02Chapman, Ross E Esq UNQUALIFIED21Bernardo Dominic
1042Munro E AmigonCanada2024-05-30Chanay, Jeffrey A Esq PROPOSAL91Ivan Magalhaes
1043Misaki H ShinkoAustralia2024-05-30Buckley Miller Wright UNQUALIFIED80Onyama Limba
1044Alejandro L VocelkaJapan2024-06-05Buckley Miller Wright RENEWAL84Stephen Shaw
1045Alejandro I MaletFrance2024-05-19Feltz Printing Service UNQUALIFIED20Asiya Javayant
1046James N RoysterIndia2024-06-01Morlong Associates PROPOSAL38Xuxue Feng
1047Sinclair E PaprockiSpain2024-06-14Morlong Associates PROPOSAL17Anna Fali
1048Juan N GarufiArgentina2024-06-08Rangoni Of Florence NEGOTIATION0Elwin Sharvill
1049David F GauchoRussia2024-06-05Commercial Press UNQUALIFIED15Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Misaki H MacleadCanadaOnyama Limba NEGOTIATION
Antonio V GauchoIndiaIvan Magalhaes UNQUALIFIED
Arvin E CampainUnited KingdomAnna Fali NEGOTIATION
Arvin C DoeUnited KingdomBernardo Dominic RENEWAL
Aditya Z SergiIndiaIoni Bowcher PROPOSAL
Faith D CaudyBrazilAnna Fali NEGOTIATION
Nicolas E MarrierBrazilIoni Bowcher NEGOTIATION
Murillo S WaycottJapanOnyama Limba UNQUALIFIED
Julie X BriddickArgentinaAmy Elsner UNQUALIFIED
Faith M IturbideSpainAnna Fali NEW
Misaki Z BologniaAustraliaOnyama Limba UNQUALIFIED
Nicolas G FigeroaCanadaAsiya Javayant UNQUALIFIED
Ricardo X MaletIndiaElwin Sharvill NEW
Smith N MacleadRussiaAsiya Javayant QUALIFIED
Sinclair Q RimFranceAsiya Javayant UNQUALIFIED
Arvin C NestleIndiaXuxue Feng NEGOTIATION
Aruna S MorascaUnited KingdomAmy Elsner UNQUALIFIED
Silvio H WieserItalyAnna Fali UNQUALIFIED
Izzy J AlbaresGermanyOnyama Limba NEW
Maisha K SaylorsBrazilAmy Elsner RENEWAL
Ashley V NestleAustraliaAsiya Javayant NEGOTIATION
Greenwood X SlusarskiSpainElwin Sharvill RENEWAL
Juan W MaletAustraliaXuxue Feng PROPOSAL
Adams X IturbideRussiaAnna Fali UNQUALIFIED
Kadeem S IturbideSpainAmy Elsner UNQUALIFIED
Sinclair Q AlbaresRussiaXuxue Feng UNQUALIFIED
David A StockhamBrazilIvan Magalhaes UNQUALIFIED
Emily P GarufiBrazilElwin Sharvill PROPOSAL
Greenwood C OstroskyBrazilStephen Shaw RENEWAL
Aika F NestleArgentinaStephen Shaw NEW
Munro M FollerFranceElwin Sharvill PROPOSAL
Ricardo P KuskoRussiaOnyama Limba UNQUALIFIED
Arvin M KuskoIndiaElwin Sharvill UNQUALIFIED
Tony A GarufiIndiaStephen Shaw UNQUALIFIED
Murillo A CaudyRussiaBernardo Dominic RENEWAL
Ivar X SergiSpainElwin Sharvill RENEWAL
Johnson K TollnerAustraliaStephen Shaw NEGOTIATION
Leon V ButtCanadaAmy Elsner QUALIFIED
Jeanfrancois N KolmetzBrazilIoni Bowcher NEGOTIATION
Aika W MarrierArgentinaIvan Magalhaes NEW
Julie H RutaAustraliaAmy Elsner NEGOTIATION
Faith Y PaprockiSpainAnna Fali NEW
Leja Z TollnerCanadaAnna Fali QUALIFIED
Octavia Y DoeSpainAmy Elsner QUALIFIED
Antonio I CaudyCanadaIoni Bowcher UNQUALIFIED
Claire Z DilliardRussiaAmy Elsner RENEWAL
Wickens K DoeAustraliaOnyama Limba NEW
Maisha A CampainSpainAmy Elsner NEW
Emily Q SlusarskiItalyIoni Bowcher NEGOTIATION
Claire U ChuiFranceBernardo Dominic NEW
Frozen Columns
Name
Maisha F Waycott
Mujtaba V Waycott
Leja M Inouye
Faith Y Paprocki
Ricardo V Rim
Ivar N Albares
Jennifer H Figeroa
Mujtaba K Oldroyd
Munro H Figeroa
Nicolas S Morasca
Darci U Wieser
Aditya C Oldroyd
Nicolas V Wieser
Julie L Ostrosky
Rodrigues K Gaucho
Chavez Z Nicka
Julie I Figeroa
Izzy P Saylors
Ashley E Ruta
Octavia Z Perin
Greenwood L Caldarera
Alejandro D Royster
Clifford H Rim
Kadeem M Chui
Cody Q Kolmetz
Arvin J Foller
Darci G Glick
Wickens W Ruta
Darci R Campain
Rodrigues C Maclead
Alejandro W Oldroyd
Murillo O Paprocki
Nicolas H Malet
Costa H Doe
Ricardo X Tollner
Maisha W Sergi
Aditya R Garufi
Kaitlin V Wieser
David Q Gillian
Francesco C Kolmetz
Octavia N Malet
Salvatore A Campain
Faith U Rim
Cody Z Slusarski
Johnson H Caudy
Ricardo C Dilliard
Chavez F Inouye
Maisha G Caudy
Isabel P Stockham
Leon W Perin
IdCountryDate
1000Japan2024-05-31
1001France2024-06-12
1002United Kingdom2024-06-14
1003India2024-06-07
1004Canada2024-05-31
1005France2024-05-26
1006United Kingdom2024-05-30
1007Australia2024-05-16
1008Argentina2024-06-08
1009India2024-05-30
1010France2024-06-09
1011Australia2024-06-11
1012France2024-05-24
1013Brazil2024-05-29
1014Argentina2024-06-13
1015Russia2024-06-09
1016Australia2024-05-25
1017Italy2024-06-03
1018Japan2024-06-02
1019United Kingdom2024-06-03
1020India2024-05-27
1021Germany2024-05-25
1022Argentina2024-06-01
1023Spain2024-06-02
1024India2024-06-06
1025Brazil2024-05-16
1026Brazil2024-05-20
1027Brazil2024-06-13
1028Germany2024-05-26
1029Italy2024-06-11
1030Spain2024-06-03
1031Spain2024-06-07
1032Russia2024-05-29
1033Italy2024-05-18
1034France2024-05-26
1035Japan2024-05-17
1036Argentina2024-05-30
1037France2024-06-13
1038France2024-05-26
1039Australia2024-06-02
1040Australia2024-05-20
1041Japan2024-06-07
1042Russia2024-06-03
1043India2024-06-14
1044Russia2024-06-04
1045Russia2024-06-09
1046Australia2024-06-10
1047Canada2024-05-31
1048Japan2024-05-26
1049France2024-06-04

On-Demand Data

NameIdCountryDate
Jeanfrancois B Wieser1000Japan2024-05-19
Morrow Z Caldarera1001Russia2024-06-05
Aika K Sergi1002Canada2024-05-23
Murillo B Paprocki1003Australia2024-05-28
Francesco L Ruta1004Brazil2024-05-25
Maria B Campain1005Germany2024-06-14
Stacey P Darakjy1006Brazil2024-05-21
Nicolas H Amigon1007Russia2024-05-17
Octavia A Bowley1008Brazil2024-05-28
Julie B Gillian1009Germany2024-05-18
Alejandro U Chui1010Spain2024-06-10
Wickens B Marrier1011Spain2024-05-30
Nicolas S Gaucho1012Russia2024-05-18
Salvatore F Poquette1013Germany2024-05-23
Cody V Gaucho1014Argentina2024-05-30
Mayumi L Briddick1015Argentina2024-05-17
Maria G Dilliard1016India2024-06-13
Tony M Butt1017Italy2024-05-24
Emily G Shinko1018Australia2024-06-01
Stacey C Rim1019France2024-06-07
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Juan T BowleyRussiaOnyama Limba RENEWAL
Rodrigues M ChuiCanadaIoni Bowcher RENEWAL
Wickens G CaldareraIndiaStephen Shaw NEW
Maisha J VocelkaIndiaAmy Elsner PROPOSAL
Leon O VocelkaJapanStephen Shaw UNQUALIFIED
Wickens W BriddickArgentinaBernardo Dominic UNQUALIFIED
Rodrigues W ButtUnited KingdomElwin Sharvill NEW
David T IturbideGermanyXuxue Feng RENEWAL
Deepesh C SergiUnited KingdomOnyama Limba RENEWAL
Izzy J RoysterBrazilAnna Fali UNQUALIFIED
Isabel Y CaldareraJapanIoni Bowcher QUALIFIED
Ricardo E GillianRussiaStephen Shaw UNQUALIFIED
Maisha T SchemmerFranceOnyama Limba NEGOTIATION
Jeanfrancois Z SlusarskiRussiaIvan Magalhaes RENEWAL
Mayumi M WieserCanadaOnyama Limba UNQUALIFIED
Nicolas E VenereRussiaIoni Bowcher QUALIFIED
Ricardo H MorascaUnited KingdomStephen Shaw PROPOSAL
Ivar D IturbideUnited KingdomXuxue Feng NEW
Jones I GlickFranceBernardo Dominic NEW
Jefferson R SchemmerCanadaAmy Elsner PROPOSAL
Tony W ShinkoJapanBernardo Dominic PROPOSAL
Cody I GlickFranceXuxue Feng NEGOTIATION
James S AlbaresItalyOnyama Limba UNQUALIFIED
Ivar I VocelkaArgentinaBernardo Dominic NEW
Silvio D VenereAustraliaBernardo Dominic PROPOSAL
Morrow Q AmigonGermanyAsiya Javayant RENEWAL
Greenwood X KuskoBrazilAnna Fali QUALIFIED
Juan G StockhamFranceOnyama Limba UNQUALIFIED
Jones N WhobreyIndiaIoni Bowcher QUALIFIED
Smith L BologniaCanadaBernardo Dominic NEGOTIATION
James W WaycottArgentinaStephen Shaw QUALIFIED
Sinclair J RulapaughGermanyIvan Magalhaes UNQUALIFIED
Leon L CaldareraIndiaAmy Elsner NEW
Aika I MaletCanadaBernardo Dominic PROPOSAL
Munro G FollerFranceElwin Sharvill QUALIFIED
Wickens G BologniaAustraliaIvan Magalhaes PROPOSAL
James G MarrierGermanyAnna Fali QUALIFIED
Leon S MaletIndiaBernardo Dominic QUALIFIED
Maria B FollerBrazilAmy Elsner QUALIFIED
Wickens R OldroydBrazilIoni Bowcher RENEWAL

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