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
Mujtaba U CaudyBrazilOnyama Limba RENEWAL
Juan U VenereJapanIoni Bowcher RENEWAL
Salvatore H WaycottFranceOnyama Limba NEW
Isabel O RulapaughSpainIvan Magalhaes UNQUALIFIED
Chavez K SergiGermanyAnna Fali UNQUALIFIED
Adams N NickaFranceElwin Sharvill QUALIFIED
Mayumi L InouyeUnited KingdomBernardo Dominic PROPOSAL
Kadeem E InouyeBrazilBernardo Dominic PROPOSAL
Octavia V PerinItalyAnna Fali RENEWAL
Greenwood N RutaArgentinaIvan Magalhaes RENEWAL
Costa B DilliardSpainStephen Shaw RENEWAL
Sinclair V FollerJapanXuxue Feng UNQUALIFIED
Julie N GlickCanadaIvan Magalhaes PROPOSAL
Costa X IturbideIndiaStephen Shaw UNQUALIFIED
Jefferson T RutaRussiaAnna Fali RENEWAL
Arvin J DoeIndiaXuxue Feng UNQUALIFIED
Mayumi O StensethFranceBernardo Dominic QUALIFIED
Kaitlin T ChuiArgentinaElwin Sharvill NEGOTIATION
Leon U FlosiAustraliaXuxue Feng UNQUALIFIED
Izzy H RimCanadaAsiya Javayant UNQUALIFIED
Jefferson H AmigonUnited KingdomStephen Shaw UNQUALIFIED
Chavez N GarufiIndiaIoni Bowcher QUALIFIED
Munro U SaylorsIndiaOnyama Limba PROPOSAL
Darci N ChuiSpainIvan Magalhaes PROPOSAL
Jones V InouyeBrazilIoni Bowcher NEW
Tony E TollnerAustraliaOnyama Limba RENEWAL
Leon G OldroydArgentinaBernardo Dominic QUALIFIED
Tony D MarrierGermanyIoni Bowcher PROPOSAL
Clifford A MaletSpainOnyama Limba UNQUALIFIED
Ashley D NickaArgentinaXuxue Feng PROPOSAL
Silvio U PoquetteSpainXuxue Feng RENEWAL
Maria L StockhamBrazilAnna Fali NEGOTIATION
Octavia M FollerJapanElwin Sharvill UNQUALIFIED
Darci G StensethJapanIvan Magalhaes NEGOTIATION
Aika N FollerFranceBernardo Dominic UNQUALIFIED
Sinclair Y WhobreyJapanIoni Bowcher PROPOSAL
Arvin G GillianFranceIvan Magalhaes NEGOTIATION
Sinclair G GarufiIndiaIvan Magalhaes QUALIFIED
Leja Z CampainItalyElwin Sharvill QUALIFIED
Juan U MarrierRussiaBernardo Dominic RENEWAL
Greenwood X WieserUnited KingdomAmy Elsner QUALIFIED
Kadeem A VocelkaArgentinaBernardo Dominic UNQUALIFIED
Aditya A BowleyIndiaStephen Shaw PROPOSAL
Stacey W WieserIndiaStephen Shaw NEGOTIATION
Deepesh C RutaJapanElwin Sharvill NEW
Nicolas R CampainCanadaBernardo Dominic UNQUALIFIED
Greenwood D RulapaughAustraliaXuxue Feng RENEWAL
Jeanfrancois Y PerinGermanyOnyama Limba RENEWAL
Nicolas O SergiFranceAmy Elsner RENEWAL
Jones Y ChuiFranceBernardo Dominic UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Arvin B MaletRussiaAsiya Javayant QUALIFIED
Emily Y OldroydItalyIvan Magalhaes RENEWAL
Ricardo H BowleySpainStephen Shaw NEGOTIATION
David B StensethItalyXuxue Feng NEW
Mujtaba U DoeArgentinaStephen Shaw NEW
Adams K GillianIndiaBernardo Dominic QUALIFIED
Murillo S StockhamArgentinaOnyama Limba NEGOTIATION
Ivar L RulapaughItalyXuxue Feng UNQUALIFIED
Kadeem X KolmetzBrazilIoni Bowcher QUALIFIED
Aika U OstroskyCanadaStephen Shaw NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Misaki P CampainAustralia2024-06-19Feiner Bros RENEWAL57Stephen Shaw
1001Kadeem I SaylorsUnited Kingdom2024-06-08Chanay, Jeffrey A Esq NEW43Elwin Sharvill
1002Munro T KuskoFrance2024-06-01King, Christopher A Esq RENEWAL79Bernardo Dominic
1003Aika E PoquetteSpain2024-06-18Dorl, James J Esq QUALIFIED18Xuxue Feng
1004Ashley K TollnerBrazil2024-06-11Truhlar And Truhlar Attys RENEWAL78Bernardo Dominic
1005Stacey Z FigeroaIndia2024-06-06Morlong Associates PROPOSAL37Stephen Shaw
1006Aika O MorascaFrance2024-06-08Truhlar And Truhlar Attys QUALIFIED28Bernardo Dominic
1007Tony M KolmetzArgentina2024-05-24Printing Dimensions QUALIFIED48Xuxue Feng
1008Ivar A ShinkoBrazil2024-06-10Printing Dimensions PROPOSAL76Xuxue Feng
1009Jeanfrancois X StockhamItaly2024-06-04Rousseaux, Michael Esq RENEWAL73Bernardo Dominic
1010Salvatore F StensethRussia2024-06-11King, Christopher A Esq UNQUALIFIED53Onyama Limba
1011Juan E AlbaresCanada2024-06-10Chapman, Ross E Esq NEW60Ivan Magalhaes
1012Mujtaba K RulapaughAustralia2024-06-11Feltz Printing Service UNQUALIFIED13Ioni Bowcher
1013Izzy H MaletGermany2024-06-20Chanay, Jeffrey A Esq UNQUALIFIED82Onyama Limba
1014Adams F VenereBrazil2024-05-26Chemel, James L Cpa NEW15Ioni Bowcher
1015Smith F MacleadCanada2024-06-18Feltz Printing Service UNQUALIFIED78Bernardo Dominic
1016Aika N KuskoGermany2024-06-09Rousseaux, Michael Esq NEGOTIATION93Amy Elsner
1017Jones U NickaJapan2024-06-12Dorl, James J Esq QUALIFIED84Anna Fali
1018Arvin A InouyeAustralia2024-06-18Morlong Associates NEW2Amy Elsner
1019Claire M GarufiGermany2024-06-19Benton, John B Jr NEW77Elwin Sharvill
1020Ricardo W DarakjyIndia2024-06-20Truhlar And Truhlar Attys NEGOTIATION25Xuxue Feng
1021Nicolas Q SchemmerFrance2024-06-04Feltz Printing Service NEW65Xuxue Feng
1022Mujtaba C VenereSpain2024-06-11Rangoni Of Florence UNQUALIFIED70Stephen Shaw
1023Murillo K InouyeIndia2024-05-24Chemel, James L Cpa QUALIFIED18Amy Elsner
1024Stacey C MarrierArgentina2024-06-09Dorl, James J Esq UNQUALIFIED96Elwin Sharvill
1025Cody Q FigeroaRussia2024-06-15King, Christopher A Esq PROPOSAL22Stephen Shaw
1026Alejandro O ChuiCanada2024-06-19Printing Dimensions RENEWAL12Ivan Magalhaes
1027Leja G SaylorsSpain2024-05-27Feltz Printing Service UNQUALIFIED15Ivan Magalhaes
1028Mujtaba R InouyeRussia2024-06-22Commercial Press UNQUALIFIED43Anna Fali
1029Mayumi J IturbideJapan2024-06-12King, Christopher A Esq UNQUALIFIED82Onyama Limba
1030Greenwood E WieserSpain2024-06-05Commercial Press NEW72Asiya Javayant
1031Wickens N VocelkaBrazil2024-06-09Feiner Bros NEW13Ivan Magalhaes
1032Emily S MorascaCanada2024-06-05Chanay, Jeffrey A Esq NEGOTIATION63Bernardo Dominic
1033Ivar O WaycottFrance2024-06-19Buckley Miller Wright QUALIFIED57Ivan Magalhaes
1034Emily O SlusarskiRussia2024-06-11Rangoni Of Florence QUALIFIED54Anna Fali
1035Adams O AlbaresSpain2024-05-28Dorl, James J Esq NEGOTIATION37Anna Fali
1036Greenwood E CampainArgentina2024-06-22Printing Dimensions PROPOSAL81Xuxue Feng
1037Johnson P AlbaresIndia2024-05-30Chemel, James L Cpa PROPOSAL52Asiya Javayant
1038Emily C KuskoItaly2024-05-31Chapman, Ross E Esq RENEWAL71Ivan Magalhaes
1039Murillo P StensethBrazil2024-05-30Benton, John B Jr UNQUALIFIED57Bernardo Dominic
1040Jefferson C WhobreyBrazil2024-06-14Chemel, James L Cpa NEGOTIATION39Xuxue Feng
1041Murillo O RutaFrance2024-05-30Rangoni Of Florence NEW22Amy Elsner
1042Mayumi T PaprockiBrazil2024-06-04Buckley Miller Wright NEGOTIATION8Onyama Limba
1043Kadeem I OldroydAustralia2024-05-24King, Christopher A Esq QUALIFIED56Bernardo Dominic
1044Aditya E MarrierFrance2024-06-18Chemel, James L Cpa RENEWAL98Elwin Sharvill
1045Darci F ShinkoFrance2024-06-06Buckley Miller Wright RENEWAL57Xuxue Feng
1046Munro S GlickAustralia2024-06-13Dorl, James J Esq PROPOSAL81Anna Fali
1047Morrow G TollnerIndia2024-06-04Printing Dimensions UNQUALIFIED51Amy Elsner
1048Ivar I ChuiFrance2024-06-07Printing Dimensions UNQUALIFIED37Amy Elsner
1049Izzy T OstroskyCanada2024-06-20Feiner Bros RENEWAL77Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Stacey D InouyeUnited KingdomAsiya Javayant NEW
Mayumi B GlickGermanyStephen Shaw RENEWAL
Chavez M FollerFranceStephen Shaw UNQUALIFIED
Wickens D BriddickGermanyAnna Fali PROPOSAL
Alejandro E AmigonJapanStephen Shaw RENEWAL
Costa G DarakjyUnited KingdomBernardo Dominic NEGOTIATION
Chavez C GarufiAustraliaOnyama Limba PROPOSAL
Francesco U VocelkaJapanBernardo Dominic PROPOSAL
Jefferson X SchemmerArgentinaAmy Elsner QUALIFIED
Ashley W OstroskyItalyXuxue Feng NEGOTIATION
Leja P GlickRussiaXuxue Feng NEW
Salvatore R ButtItalyOnyama Limba PROPOSAL
Clifford E FollerSpainOnyama Limba PROPOSAL
Claire E MaletUnited KingdomAnna Fali QUALIFIED
Cody M DarakjyJapanIoni Bowcher PROPOSAL
Claire Z MaletSpainOnyama Limba NEGOTIATION
David B PerinRussiaXuxue Feng UNQUALIFIED
Emily N SlusarskiItalyAmy Elsner UNQUALIFIED
Costa Z FollerCanadaBernardo Dominic QUALIFIED
Alejandro T WieserUnited KingdomIoni Bowcher NEW
Emily X KolmetzAustraliaStephen Shaw UNQUALIFIED
Leja F OldroydItalyElwin Sharvill QUALIFIED
Stacey C DilliardItalyIoni Bowcher QUALIFIED
Chavez V DilliardIndiaElwin Sharvill RENEWAL
Mujtaba Q ButtArgentinaBernardo Dominic UNQUALIFIED
Aika S VenereJapanElwin Sharvill PROPOSAL
Jones Y CaudyGermanyOnyama Limba NEW
Jeanfrancois F TollnerGermanyAmy Elsner UNQUALIFIED
Maisha J KolmetzRussiaStephen Shaw RENEWAL
Johnson D IturbideRussiaAnna Fali UNQUALIFIED
Leon Z OldroydIndiaAnna Fali QUALIFIED
Alejandro I WaycottJapanBernardo Dominic UNQUALIFIED
Johnson P GlickIndiaXuxue Feng PROPOSAL
Jeanfrancois K MaletCanadaIvan Magalhaes RENEWAL
Clifford Q TollnerIndiaIoni Bowcher RENEWAL
Nicolas W MaletFranceAsiya Javayant RENEWAL
Octavia C DilliardFranceAmy Elsner QUALIFIED
Emily C BriddickFranceIoni Bowcher PROPOSAL
Jones I DilliardGermanyOnyama Limba UNQUALIFIED
Jefferson P KuskoIndiaAnna Fali QUALIFIED
Silvio H ChuiBrazilIvan Magalhaes RENEWAL
Cody D FerenczRussiaStephen Shaw QUALIFIED
Alejandro R InouyeCanadaOnyama Limba PROPOSAL
Stacey D GauchoIndiaBernardo Dominic NEGOTIATION
Izzy O MacleadBrazilAsiya Javayant QUALIFIED
Octavia Y SchemmerFranceElwin Sharvill NEW
Mayumi D StensethBrazilBernardo Dominic UNQUALIFIED
Ricardo F MaletJapanAmy Elsner PROPOSAL
Tony S MaletCanadaStephen Shaw NEW
Darci Z CaldareraBrazilAnna Fali UNQUALIFIED
Frozen Columns
Name
Misaki L Whobrey
Emily V Iturbide
Ricardo B Stockham
Adams D Malet
Kaitlin X Maclead
Leja L Waycott
Morrow B Gaucho
Wickens X Tollner
Murillo W Bowley
Stacey U Shinko
Mujtaba Q Kolmetz
Aditya C Butt
Aika Q Dilliard
Wickens O Whobrey
Murillo O Garufi
Ricardo Y Nicka
Izzy T Caudy
Costa E Malet
Leja B Caudy
Clifford G Gaucho
Deepesh A Kolmetz
Chavez I Perin
Jeanfrancois O Wieser
Emily T Oldroyd
Deepesh H Glick
Ricardo V Figeroa
Maria V Venere
Jennifer T Inouye
Antonio Y Gillian
David L Kolmetz
Jefferson D Dilliard
Munro Y Royster
Juan O Sergi
Aruna J Venere
Costa M Ferencz
Maria M Foller
Darci K Sergi
Aika A Chui
Misaki H Stenseth
Jennifer R Rim
Leja F Flosi
Rodrigues W Morasca
Aika N Rim
Kaitlin W Ruta
Morrow E Kusko
Antonio D Morasca
Salvatore S Maclead
Jefferson L Wieser
Octavia X Tollner
Faith I Nicka
IdCountryDate
1000Italy2024-05-25
1001Australia2024-06-21
1002Japan2024-05-29
1003Italy2024-05-26
1004France2024-06-21
1005Spain2024-06-21
1006Australia2024-05-29
1007India2024-06-13
1008Germany2024-06-13
1009Japan2024-06-22
1010Brazil2024-06-08
1011Italy2024-05-30
1012France2024-06-11
1013Spain2024-06-04
1014Russia2024-06-11
1015Russia2024-06-17
1016India2024-06-20
1017Japan2024-06-03
1018India2024-06-03
1019Germany2024-06-12
1020Canada2024-06-06
1021Italy2024-06-08
1022Brazil2024-06-01
1023Italy2024-05-24
1024Japan2024-06-14
1025Russia2024-06-21
1026Germany2024-05-24
1027United Kingdom2024-06-12
1028Russia2024-06-13
1029Spain2024-06-02
1030Russia2024-06-15
1031Germany2024-05-31
1032Russia2024-06-17
1033France2024-06-18
1034Canada2024-06-03
1035Japan2024-06-21
1036France2024-06-20
1037Germany2024-06-22
1038Germany2024-06-06
1039Italy2024-06-22
1040Russia2024-06-16
1041Spain2024-05-28
1042Spain2024-06-19
1043United Kingdom2024-06-11
1044Spain2024-06-21
1045Japan2024-06-02
1046India2024-05-24
1047France2024-06-21
1048Australia2024-06-21
1049Spain2024-06-08

On-Demand Data

NameIdCountryDate
Wickens B Chui1000Italy2024-06-04
Ashley W Sergi1001Brazil2024-06-22
Aika D Bowley1002India2024-05-31
Juan B Maclead1003Germany2024-06-02
Darci J Dilliard1004Spain2024-06-06
David U Slusarski1005France2024-06-04
Juan C Amigon1006United Kingdom2024-06-20
Arvin E Waycott1007Italy2024-06-16
Mujtaba T Nestle1008Japan2024-05-27
Ivar S Waycott1009Canada2024-05-25
Izzy Q Poquette1010Germany2024-06-16
Juan N Slusarski1011India2024-06-15
Clifford Q Marrier1012Japan2024-06-21
Clifford Q Inouye1013Italy2024-05-31
Jefferson M Sergi1014Italy2024-06-07
Clifford N Malet1015United Kingdom2024-06-13
Ricardo R Tollner1016Brazil2024-06-03
Stacey O Saylors1017Australia2024-05-26
Adams C Waycott1018Canada2024-05-29
Arvin E Foller1019Argentina2024-05-27
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Tony Z VenereUnited KingdomElwin Sharvill NEGOTIATION
Arvin J IturbideAustraliaAsiya Javayant QUALIFIED
Morrow K BowleySpainStephen Shaw NEGOTIATION
Francesco Y KuskoArgentinaOnyama Limba NEW
Jefferson W RoysterAustraliaAnna Fali RENEWAL
Ashley M NickaGermanyAsiya Javayant PROPOSAL
Maria O IturbideCanadaXuxue Feng UNQUALIFIED
Cody Y GauchoItalyStephen Shaw NEGOTIATION
Stacey G KuskoSpainXuxue Feng NEGOTIATION
Jefferson V NickaFranceAsiya Javayant RENEWAL
Misaki D AlbaresFranceAnna Fali NEGOTIATION
Jeanfrancois G IturbideGermanyBernardo Dominic UNQUALIFIED
Chavez C RimGermanyBernardo Dominic QUALIFIED
Emily O DarakjyAustraliaAnna Fali UNQUALIFIED
Ashley W MacleadUnited KingdomBernardo Dominic UNQUALIFIED
Mujtaba G WhobreySpainOnyama Limba UNQUALIFIED
Costa J SergiCanadaIoni Bowcher QUALIFIED
Stacey T FigeroaIndiaIvan Magalhaes NEW
Greenwood X DoeJapanAnna Fali NEW
Deepesh R FollerArgentinaIoni Bowcher NEGOTIATION
Leja V ButtSpainAsiya Javayant PROPOSAL
Cody B GarufiAustraliaAnna Fali QUALIFIED
Cody X NestleAustraliaIoni Bowcher NEGOTIATION
Ricardo V TollnerBrazilStephen Shaw NEGOTIATION
Aruna Z BriddickBrazilIvan Magalhaes QUALIFIED
Greenwood F FollerItalyAnna Fali NEW
Clifford O PoquetteUnited KingdomIoni Bowcher NEGOTIATION
Nicolas B IturbideArgentinaBernardo Dominic QUALIFIED
Emily R PoquetteRussiaXuxue Feng NEW
Aika N MaletArgentinaAnna Fali NEW
Faith B RimJapanBernardo Dominic UNQUALIFIED
Clifford Z KolmetzUnited KingdomBernardo Dominic NEGOTIATION
Morrow I InouyeCanadaAmy Elsner PROPOSAL
Munro G DilliardGermanyIvan Magalhaes RENEWAL
Emily T RulapaughCanadaAsiya Javayant PROPOSAL
Kaitlin N BowleyRussiaElwin Sharvill QUALIFIED
Arvin E OstroskyBrazilBernardo Dominic UNQUALIFIED
Ivar H AlbaresBrazilAnna Fali QUALIFIED
Leon F PoquetteBrazilIvan Magalhaes NEGOTIATION
Mujtaba K OstroskyUnited KingdomAnna Fali NEW

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