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
Silvio I BriddickSpainElwin Sharvill QUALIFIED
Izzy N FlosiArgentinaStephen Shaw QUALIFIED
Claire C InouyeFranceOnyama Limba RENEWAL
Maria C CaudyArgentinaElwin Sharvill PROPOSAL
Nicolas O RimIndiaAsiya Javayant RENEWAL
Salvatore D GauchoBrazilAsiya Javayant QUALIFIED
Arvin C RoysterSpainAmy Elsner QUALIFIED
Ricardo S GarufiSpainIvan Magalhaes UNQUALIFIED
Arvin Z CaudyRussiaIvan Magalhaes QUALIFIED
James Q ShinkoArgentinaAmy Elsner RENEWAL
Chavez W PaprockiItalyAnna Fali NEW
Juan F GauchoBrazilIvan Magalhaes QUALIFIED
Maisha U DoeBrazilOnyama Limba RENEWAL
Rodrigues D InouyeAustraliaAsiya Javayant QUALIFIED
Kadeem L BriddickRussiaXuxue Feng NEGOTIATION
Nicolas O KuskoArgentinaAsiya Javayant RENEWAL
Cody P PerinSpainIvan Magalhaes RENEWAL
Tony P PerinFranceAmy Elsner NEGOTIATION
Isabel J CaldareraRussiaIvan Magalhaes QUALIFIED
Ricardo N PoquetteIndiaAnna Fali NEW
Julie E KuskoJapanOnyama Limba UNQUALIFIED
Mujtaba S NestleSpainOnyama Limba QUALIFIED
Cody G WhobreyBrazilElwin Sharvill QUALIFIED
Kaitlin T NestleItalyStephen Shaw PROPOSAL
Silvio H KuskoJapanIoni Bowcher RENEWAL
Costa L FigeroaFranceBernardo Dominic RENEWAL
Jones C VenereIndiaAmy Elsner PROPOSAL
Antonio F GlickIndiaAnna Fali NEW
Mujtaba Y VocelkaAustraliaStephen Shaw NEW
Costa E FollerCanadaAnna Fali PROPOSAL
Jefferson V IturbideArgentinaElwin Sharvill QUALIFIED
Munro G FlosiUnited KingdomAsiya Javayant NEW
Morrow T GillianRussiaAnna Fali QUALIFIED
Munro G VenereIndiaXuxue Feng PROPOSAL
Johnson E TollnerSpainXuxue Feng UNQUALIFIED
Maria O FlosiJapanStephen Shaw NEW
James F SaylorsBrazilXuxue Feng NEGOTIATION
Leja K FerenczJapanXuxue Feng UNQUALIFIED
Ricardo W ButtRussiaOnyama Limba UNQUALIFIED
Misaki G FollerJapanStephen Shaw NEGOTIATION
James O BriddickGermanyAsiya Javayant UNQUALIFIED
Jennifer W GillianGermanyIvan Magalhaes PROPOSAL
Antonio F OldroydCanadaAmy Elsner UNQUALIFIED
Arvin I SchemmerGermanyStephen Shaw QUALIFIED
Mayumi R BowleyGermanyAmy Elsner NEGOTIATION
Kaitlin Y AlbaresCanadaXuxue Feng PROPOSAL
Jeanfrancois A ButtRussiaBernardo Dominic NEGOTIATION
Salvatore L PerinBrazilElwin Sharvill UNQUALIFIED
Jefferson P ShinkoItalyIoni Bowcher NEGOTIATION
Ricardo A SlusarskiArgentinaAsiya Javayant QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Emily I ShinkoCanadaElwin Sharvill NEGOTIATION
Jeanfrancois I BriddickCanadaIvan Magalhaes UNQUALIFIED
David U SchemmerUnited KingdomAnna Fali RENEWAL
Julie N PaprockiAustraliaElwin Sharvill PROPOSAL
Greenwood O RimItalyOnyama Limba PROPOSAL
Aruna N MaletSpainIoni Bowcher RENEWAL
Jennifer E WieserRussiaAmy Elsner QUALIFIED
Leon U NickaIndiaOnyama Limba NEGOTIATION
Greenwood F OstroskyRussiaAmy Elsner UNQUALIFIED
Julie K FollerAustraliaAnna Fali PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Nicolas A BologniaRussia2024-06-05Benton, John B Jr PROPOSAL85Bernardo Dominic
1001Darci J BriddickArgentina2024-06-04Commercial Press PROPOSAL48Bernardo Dominic
1002Maisha P InouyeAustralia2024-06-20King, Christopher A Esq PROPOSAL51Anna Fali
1003Jefferson Y SaylorsRussia2024-06-06Feltz Printing Service NEGOTIATION47Stephen Shaw
1004Aika V PoquetteFrance2024-06-12Buckley Miller Wright RENEWAL25Amy Elsner
1005Jefferson B IturbideAustralia2024-06-20Rangoni Of Florence RENEWAL71Elwin Sharvill
1006Maria Q ButtCanada2024-06-15Rousseaux, Michael Esq NEW42Asiya Javayant
1007Aruna E DarakjyItaly2024-05-26Commercial Press NEW61Anna Fali
1008Isabel W PerinIndia2024-06-21King, Christopher A Esq NEW50Stephen Shaw
1009Octavia U MarrierAustralia2024-06-08King, Christopher A Esq QUALIFIED91Xuxue Feng
1010Aruna M CampainItaly2024-06-08Morlong Associates NEGOTIATION6Onyama Limba
1011Antonio T PaprockiAustralia2024-06-18Chapman, Ross E Esq UNQUALIFIED13Onyama Limba
1012Greenwood D MarrierIndia2024-06-01Printing Dimensions NEW6Bernardo Dominic
1013Mujtaba Q PerinCanada2024-06-22Feltz Printing Service QUALIFIED79Anna Fali
1014Deepesh R ButtCanada2024-06-11Rousseaux, Michael Esq QUALIFIED50Amy Elsner
1015Isabel H IturbideFrance2024-06-04King, Christopher A Esq RENEWAL65Xuxue Feng
1016Munro R BriddickJapan2024-05-31Printing Dimensions RENEWAL44Ivan Magalhaes
1017Julie J TollnerUnited Kingdom2024-05-28Rangoni Of Florence QUALIFIED91Ioni Bowcher
1018Isabel O FigeroaIndia2024-06-01Dorl, James J Esq RENEWAL78Anna Fali
1019Claire K GlickIndia2024-06-16Buckley Miller Wright RENEWAL29Elwin Sharvill
1020Isabel Y TollnerJapan2024-06-17Chapman, Ross E Esq UNQUALIFIED74Ioni Bowcher
1021Chavez P MaletUnited Kingdom2024-05-29Dorl, James J Esq NEW19Elwin Sharvill
1022Costa M SchemmerGermany2024-05-30Printing Dimensions UNQUALIFIED36Anna Fali
1023Munro T RutaArgentina2024-06-06Printing Dimensions PROPOSAL63Ivan Magalhaes
1024David R PaprockiCanada2024-06-19Chanay, Jeffrey A Esq NEGOTIATION88Anna Fali
1025Tony Q ButtItaly2024-06-16Feltz Printing Service PROPOSAL27Ivan Magalhaes
1026Jefferson I MorascaFrance2024-05-31Feltz Printing Service NEW5Xuxue Feng
1027Claire V StockhamSpain2024-05-31Chapman, Ross E Esq UNQUALIFIED6Asiya Javayant
1028Clifford R BowleyAustralia2024-05-29Chapman, Ross E Esq NEW20Onyama Limba
1029Ashley L NickaIndia2024-06-15Truhlar And Truhlar Attys NEW13Stephen Shaw
1030Johnson H DarakjyIndia2024-06-09Feiner Bros UNQUALIFIED12Amy Elsner
1031Johnson J CaldareraJapan2024-06-14Truhlar And Truhlar Attys UNQUALIFIED64Onyama Limba
1032Chavez Y FigeroaJapan2024-06-03Truhlar And Truhlar Attys NEGOTIATION79Xuxue Feng
1033James Y AlbaresAustralia2024-06-11Chemel, James L Cpa NEGOTIATION83Stephen Shaw
1034Salvatore L VenereGermany2024-05-26Buckley Miller Wright PROPOSAL25Xuxue Feng
1035Mayumi D CampainItaly2024-06-11Buckley Miller Wright QUALIFIED77Elwin Sharvill
1036Juan A ButtFrance2024-06-17Printing Dimensions PROPOSAL98Ioni Bowcher
1037James Y GlickGermany2024-06-18Chapman, Ross E Esq NEGOTIATION35Xuxue Feng
1038Arvin B WieserFrance2024-06-01Feltz Printing Service QUALIFIED86Stephen Shaw
1039Francesco M SaylorsUnited Kingdom2024-05-24Feiner Bros QUALIFIED46Elwin Sharvill
1040Jennifer Y GarufiAustralia2024-06-16Buckley Miller Wright NEGOTIATION21Elwin Sharvill
1041Antonio G FigeroaFrance2024-05-27King, Christopher A Esq RENEWAL41Anna Fali
1042Smith A MarrierBrazil2024-06-21Benton, John B Jr UNQUALIFIED56Elwin Sharvill
1043Mayumi Y IturbideBrazil2024-06-05Chapman, Ross E Esq PROPOSAL35Onyama Limba
1044Jennifer L WhobreyItaly2024-06-04King, Christopher A Esq QUALIFIED49Asiya Javayant
1045Jefferson Q NestleItaly2024-06-05Chemel, James L Cpa QUALIFIED25Elwin Sharvill
1046Claire F PoquetteCanada2024-06-10Feltz Printing Service PROPOSAL73Amy Elsner
1047Ivar I AlbaresBrazil2024-06-05Chanay, Jeffrey A Esq UNQUALIFIED13Anna Fali
1048Murillo P CaudyBrazil2024-06-12Morlong Associates PROPOSAL37Ivan Magalhaes
1049Jeanfrancois W AmigonSpain2024-05-27Buckley Miller Wright UNQUALIFIED95Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Izzy M GauchoItalyOnyama Limba NEGOTIATION
Rodrigues C PaprockiRussiaStephen Shaw QUALIFIED
Leja L AmigonAustraliaBernardo Dominic NEW
Clifford Q FerenczGermanyOnyama Limba NEW
Ashley U MacleadFranceAnna Fali UNQUALIFIED
Misaki M OstroskyRussiaAsiya Javayant NEGOTIATION
Ricardo K BowleyAustraliaAnna Fali NEGOTIATION
Wickens H FigeroaCanadaAmy Elsner NEW
Murillo D InouyeJapanIoni Bowcher UNQUALIFIED
David F WhobreyJapanOnyama Limba QUALIFIED
Aditya U AlbaresFranceAsiya Javayant QUALIFIED
Aditya G FigeroaGermanyAmy Elsner NEW
Salvatore X PaprockiJapanOnyama Limba PROPOSAL
Leja H SaylorsBrazilOnyama Limba UNQUALIFIED
Murillo U GauchoFranceElwin Sharvill PROPOSAL
Claire N TollnerArgentinaOnyama Limba PROPOSAL
Faith W VocelkaArgentinaOnyama Limba UNQUALIFIED
Salvatore E FollerGermanyOnyama Limba PROPOSAL
Darci C MacleadAustraliaXuxue Feng QUALIFIED
Arvin R MaletItalyAsiya Javayant QUALIFIED
Antonio H ChuiItalyAmy Elsner NEGOTIATION
Leon X GlickFranceAnna Fali UNQUALIFIED
Morrow N TollnerFranceBernardo Dominic NEGOTIATION
Smith W VenereBrazilElwin Sharvill RENEWAL
James Z AlbaresIndiaStephen Shaw PROPOSAL
Darci V OstroskyItalyElwin Sharvill RENEWAL
Emily Y OldroydFranceElwin Sharvill PROPOSAL
Ashley G RoysterRussiaAnna Fali UNQUALIFIED
Costa S StockhamItalyAmy Elsner NEW
Mayumi V OldroydRussiaIoni Bowcher PROPOSAL
Arvin J BowleyBrazilAsiya Javayant NEW
Wickens K FerenczGermanyXuxue Feng QUALIFIED
Jeanfrancois E GarufiUnited KingdomAnna Fali QUALIFIED
Isabel O AlbaresAustraliaIvan Magalhaes QUALIFIED
Ivar H DilliardJapanAnna Fali NEGOTIATION
Claire G AlbaresUnited KingdomIvan Magalhaes PROPOSAL
Kaitlin C DarakjyAustraliaAsiya Javayant PROPOSAL
Maria L CaudyUnited KingdomAsiya Javayant UNQUALIFIED
Arvin F IturbideCanadaIoni Bowcher NEGOTIATION
Antonio P KolmetzIndiaBernardo Dominic PROPOSAL
David T BriddickRussiaOnyama Limba QUALIFIED
Adams Z OstroskyRussiaIvan Magalhaes NEW
Aika J MaletJapanIoni Bowcher NEW
Kadeem M MaletRussiaAnna Fali QUALIFIED
Munro I GillianFranceIoni Bowcher NEW
Antonio J GillianIndiaAnna Fali RENEWAL
Jones L NestleAustraliaAnna Fali RENEWAL
Antonio D WaycottAustraliaOnyama Limba NEGOTIATION
Octavia C TollnerIndiaAmy Elsner UNQUALIFIED
Arvin M BologniaArgentinaAsiya Javayant PROPOSAL
Frozen Columns
Name
Costa A Bolognia
Smith X Whobrey
Aruna I Briddick
Wickens G Garufi
David W Ostrosky
Stacey R Rulapaugh
Jennifer Q Amigon
Salvatore B Figeroa
Smith E Rulapaugh
Tony G Figeroa
Munro L Stockham
Isabel C Darakjy
David O Ferencz
David S Garufi
Kadeem J Ferencz
Julie V Dilliard
Morrow R Butt
Jeanfrancois S Gillian
Greenwood C Flosi
Aruna U Darakjy
Isabel S Kolmetz
Ivar V Amigon
Ashley E Marrier
Kaitlin S Albares
Chavez G Royster
Murillo A Tollner
Leja L Ferencz
Leon T Dilliard
Maisha W Maclead
Munro O Malet
Deepesh X Paprocki
Faith C Venere
Sinclair V Whobrey
Greenwood V Iturbide
Smith I Waycott
Alejandro U Kolmetz
Arvin W Darakjy
Faith D Stenseth
Leja G Perin
Isabel G Oldroyd
Izzy Z Sergi
Octavia Z Caudy
Aruna P Whobrey
Jefferson Z Albares
Aika W Inouye
Alejandro N Bowley
Rodrigues W Caldarera
Aruna G Kusko
Jones U Wieser
Clifford Q Flosi
IdCountryDate
1000Canada2024-05-27
1001Italy2024-06-14
1002Canada2024-06-05
1003Spain2024-05-27
1004India2024-06-11
1005Argentina2024-06-05
1006United Kingdom2024-06-19
1007France2024-06-12
1008Germany2024-06-04
1009Germany2024-06-20
1010Spain2024-06-15
1011Canada2024-06-22
1012India2024-06-22
1013Italy2024-06-22
1014Germany2024-05-31
1015Russia2024-06-19
1016Argentina2024-06-22
1017Australia2024-05-24
1018Brazil2024-05-28
1019Argentina2024-06-06
1020Argentina2024-06-02
1021Italy2024-06-07
1022Australia2024-06-02
1023India2024-06-18
1024United Kingdom2024-06-20
1025Argentina2024-05-24
1026Australia2024-05-27
1027France2024-06-02
1028Canada2024-06-16
1029Argentina2024-05-28
1030United Kingdom2024-06-03
1031Canada2024-06-05
1032France2024-05-27
1033Spain2024-06-06
1034France2024-06-21
1035Russia2024-06-07
1036India2024-06-03
1037Argentina2024-06-19
1038Spain2024-06-01
1039Germany2024-06-18
1040France2024-06-09
1041France2024-05-26
1042Argentina2024-06-10
1043Brazil2024-06-15
1044Italy2024-05-24
1045Canada2024-06-20
1046Canada2024-06-15
1047Japan2024-05-25
1048India2024-06-11
1049Italy2024-05-25

On-Demand Data

NameIdCountryDate
Jeanfrancois I Stenseth1000Australia2024-06-11
Silvio L Dilliard1001Brazil2024-05-29
Kadeem E Royster1002Germany2024-06-21
Maisha F Perin1003India2024-06-22
Emily L Chui1004France2024-06-16
Greenwood W Caudy1005Italy2024-06-06
Ricardo L Stenseth1006France2024-06-05
Mayumi C Marrier1007Brazil2024-06-21
Izzy X Whobrey1008Russia2024-05-31
Jeanfrancois R Kusko1009Italy2024-05-24
Adams U Wieser1010Japan2024-06-18
Morrow P Maclead1011Australia2024-05-28
Emily K Briddick1012Spain2024-05-26
Darci X Perin1013Italy2024-06-15
Leon K Poquette1014Argentina2024-05-27
Johnson N Flosi1015Germany2024-05-26
Octavia F Oldroyd1016United Kingdom2024-06-20
Arvin J Stockham1017India2024-06-21
Munro X Rulapaugh1018Australia2024-05-31
Isabel Z Morasca1019Japan2024-06-07
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Salvatore V AlbaresIndiaIvan Magalhaes PROPOSAL
Claire V BowleyGermanyIvan Magalhaes NEW
Jones H SaylorsJapanAnna Fali RENEWAL
Cody P ShinkoRussiaXuxue Feng RENEWAL
Izzy A SlusarskiCanadaIvan Magalhaes UNQUALIFIED
Munro D RoysterRussiaStephen Shaw NEGOTIATION
Julie M MacleadIndiaElwin Sharvill RENEWAL
Isabel N SaylorsBrazilIoni Bowcher NEW
Sinclair C OldroydIndiaAsiya Javayant NEGOTIATION
Isabel K BologniaBrazilElwin Sharvill QUALIFIED
Misaki P KuskoSpainXuxue Feng NEW
Silvio G StockhamBrazilAnna Fali NEGOTIATION
Greenwood H MaletGermanyAsiya Javayant UNQUALIFIED
Wickens T RimGermanyBernardo Dominic NEGOTIATION
Darci E StockhamBrazilAmy Elsner QUALIFIED
Faith T SergiUnited KingdomIvan Magalhaes QUALIFIED
Nicolas J FigeroaUnited KingdomAmy Elsner UNQUALIFIED
David Q ShinkoJapanAmy Elsner QUALIFIED
Aruna P CaudyGermanyOnyama Limba UNQUALIFIED
Munro P MorascaCanadaBernardo Dominic RENEWAL
Maisha N DoeItalyBernardo Dominic UNQUALIFIED
Izzy Z BriddickSpainOnyama Limba RENEWAL
Octavia N SergiCanadaOnyama Limba QUALIFIED
Nicolas C AlbaresCanadaOnyama Limba UNQUALIFIED
Nicolas Z TollnerArgentinaIoni Bowcher UNQUALIFIED
Nicolas M NickaArgentinaXuxue Feng PROPOSAL
Stacey J SchemmerItalyAmy Elsner PROPOSAL
Tony V CampainAustraliaIvan Magalhaes PROPOSAL
Leja W IturbideSpainOnyama Limba RENEWAL
Leon C DilliardRussiaXuxue Feng UNQUALIFIED
Nicolas D PerinJapanAnna Fali RENEWAL
Nicolas V RulapaughJapanXuxue Feng NEGOTIATION
Leon B FigeroaIndiaAnna Fali QUALIFIED
Jennifer U SlusarskiGermanyBernardo Dominic UNQUALIFIED
Aruna R MaletUnited KingdomAsiya Javayant QUALIFIED
Francesco L SergiBrazilAsiya Javayant NEW
Faith S MarrierRussiaStephen Shaw NEW
Jones S PerinRussiaStephen Shaw NEGOTIATION
Mayumi J CaudyArgentinaOnyama Limba NEW
Emily O MarrierJapanIvan Magalhaes 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>