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
Jennifer M GarufiUnited KingdomOnyama Limba QUALIFIED
Munro E SlusarskiJapanOnyama Limba NEW
Arvin B RutaItalyAmy Elsner PROPOSAL
Chavez Y SlusarskiRussiaElwin Sharvill UNQUALIFIED
Leon O StockhamIndiaIvan Magalhaes QUALIFIED
Salvatore Y KolmetzJapanElwin Sharvill PROPOSAL
Ashley H RimArgentinaOnyama Limba UNQUALIFIED
Adams S RulapaughCanadaIvan Magalhaes QUALIFIED
Faith M SlusarskiBrazilAnna Fali QUALIFIED
Mujtaba P MorascaAustraliaAnna Fali RENEWAL
Izzy R MaletItalyAmy Elsner QUALIFIED
Morrow Y KuskoArgentinaElwin Sharvill QUALIFIED
Kadeem L MacleadIndiaIvan Magalhaes PROPOSAL
Jefferson F KuskoFranceOnyama Limba PROPOSAL
Darci Q MarrierUnited KingdomOnyama Limba NEW
Salvatore O RoysterSpainXuxue Feng PROPOSAL
Isabel Z FerenczCanadaOnyama Limba NEGOTIATION
Rodrigues F SergiSpainAsiya Javayant RENEWAL
Clifford L WhobreyAustraliaIvan Magalhaes NEGOTIATION
Maria W FollerJapanElwin Sharvill QUALIFIED
Octavia T ChuiIndiaAnna Fali RENEWAL
Greenwood E FlosiGermanyAnna Fali UNQUALIFIED
Jefferson H BowleyAustraliaOnyama Limba QUALIFIED
Claire L MacleadAustraliaIvan Magalhaes UNQUALIFIED
Emily W SlusarskiJapanIoni Bowcher RENEWAL
Jeanfrancois K FigeroaRussiaXuxue Feng NEW
Jefferson C NickaRussiaAsiya Javayant NEGOTIATION
Misaki Z BologniaSpainIvan Magalhaes RENEWAL
Mayumi R BologniaRussiaIoni Bowcher UNQUALIFIED
Chavez M CaudyArgentinaXuxue Feng QUALIFIED
Maisha H RoysterJapanAnna Fali PROPOSAL
Octavia G GarufiBrazilElwin Sharvill NEW
Murillo S AmigonRussiaStephen Shaw QUALIFIED
Murillo O GauchoItalyElwin Sharvill UNQUALIFIED
Smith Z NestleGermanyElwin Sharvill NEW
Leja G IturbideItalyAsiya Javayant QUALIFIED
Munro H BologniaBrazilIoni Bowcher QUALIFIED
Octavia F MaletIndiaOnyama Limba NEW
Smith W SlusarskiFranceOnyama Limba PROPOSAL
Ivar T RutaSpainIoni Bowcher UNQUALIFIED
Kadeem N FollerSpainIvan Magalhaes PROPOSAL
Kadeem G FollerIndiaIvan Magalhaes QUALIFIED
Jefferson S MorascaRussiaAsiya Javayant RENEWAL
Smith W KuskoRussiaStephen Shaw QUALIFIED
David B MacleadArgentinaStephen Shaw NEW
Jefferson D SchemmerCanadaAsiya Javayant NEGOTIATION
Mujtaba Y GillianBrazilElwin Sharvill NEGOTIATION
Johnson Z ButtIndiaAnna Fali PROPOSAL
Rodrigues D NickaRussiaBernardo Dominic UNQUALIFIED
Ricardo U OstroskyUnited KingdomXuxue Feng NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Munro C BologniaSpainAnna Fali RENEWAL
Mayumi C MorascaUnited KingdomBernardo Dominic RENEWAL
Johnson J VocelkaSpainIoni Bowcher UNQUALIFIED
Nicolas L BowleyItalyOnyama Limba NEGOTIATION
Ivar J DoeBrazilAmy Elsner NEW
David Z VenereAustraliaXuxue Feng RENEWAL
Ricardo N StockhamGermanyXuxue Feng UNQUALIFIED
Cody K ButtFranceAmy Elsner NEW
David Y MaletSpainElwin Sharvill UNQUALIFIED
Silvio M GlickGermanyBernardo Dominic NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ivar R OstroskyJapan2024-06-08Benton, John B Jr RENEWAL76Asiya Javayant
1001Smith Z SaylorsBrazil2024-06-01Feltz Printing Service NEW95Elwin Sharvill
1002Murillo M NickaAustralia2024-05-29Morlong Associates RENEWAL56Bernardo Dominic
1003Silvio R SchemmerJapan2024-05-30King, Christopher A Esq NEGOTIATION39Amy Elsner
1004Ricardo L GarufiCanada2024-05-22Dorl, James J Esq QUALIFIED26Stephen Shaw
1005Aditya Q MarrierGermany2024-05-19Chapman, Ross E Esq QUALIFIED61Elwin Sharvill
1006Faith Q PoquetteGermany2024-05-19Rousseaux, Michael Esq NEW83Stephen Shaw
1007Deepesh A RutaSpain2024-05-28Truhlar And Truhlar Attys NEW78Xuxue Feng
1008David X WhobreyBrazil2024-05-27Rangoni Of Florence NEW34Elwin Sharvill
1009Ricardo M CampainUnited Kingdom2024-05-19Buckley Miller Wright UNQUALIFIED36Asiya Javayant
1010Octavia E MorascaFrance2024-06-13Benton, John B Jr NEGOTIATION81Asiya Javayant
1011Rodrigues C BowleyFrance2024-05-21Commercial Press RENEWAL23Asiya Javayant
1012Claire M MacleadAustralia2024-06-03Chemel, James L Cpa UNQUALIFIED1Onyama Limba
1013Aruna U DoeAustralia2024-06-03Rangoni Of Florence PROPOSAL37Onyama Limba
1014James A SlusarskiSpain2024-06-02Buckley Miller Wright NEGOTIATION27Xuxue Feng
1015Chavez R RutaBrazil2024-06-17Buckley Miller Wright NEGOTIATION14Onyama Limba
1016Greenwood O OldroydFrance2024-05-28Chanay, Jeffrey A Esq QUALIFIED48Asiya Javayant
1017Ricardo V NickaRussia2024-05-24Printing Dimensions QUALIFIED77Ioni Bowcher
1018Johnson K ChuiBrazil2024-06-02Feltz Printing Service NEGOTIATION61Amy Elsner
1019Jeanfrancois W DoeCanada2024-06-07Rangoni Of Florence RENEWAL20Amy Elsner
1020Ivar H VenereBrazil2024-06-07Chanay, Jeffrey A Esq QUALIFIED87Amy Elsner
1021Aruna C FigeroaBrazil2024-05-20Buckley Miller Wright NEGOTIATION68Bernardo Dominic
1022Deepesh Z ButtFrance2024-05-20Feiner Bros NEW7Ivan Magalhaes
1023Murillo E NickaItaly2024-05-29Dorl, James J Esq RENEWAL11Elwin Sharvill
1024Deepesh W AmigonIndia2024-06-07Truhlar And Truhlar Attys RENEWAL99Amy Elsner
1025Cody C ButtJapan2024-05-30Chapman, Ross E Esq PROPOSAL86Bernardo Dominic
1026Maisha Y DarakjyRussia2024-05-27Chapman, Ross E Esq UNQUALIFIED98Ivan Magalhaes
1027Emily T GlickArgentina2024-06-16Feltz Printing Service NEW82Stephen Shaw
1028Nicolas D OldroydCanada2024-05-31Chanay, Jeffrey A Esq RENEWAL89Amy Elsner
1029Morrow R ButtFrance2024-05-23Buckley Miller Wright NEW58Bernardo Dominic
1030Salvatore H PoquetteSpain2024-05-20Truhlar And Truhlar Attys RENEWAL40Ioni Bowcher
1031Deepesh B InouyeRussia2024-05-30Rangoni Of Florence NEW4Asiya Javayant
1032Aika F ChuiItaly2024-06-07Feltz Printing Service QUALIFIED4Bernardo Dominic
1033Stacey L FigeroaGermany2024-06-15Chapman, Ross E Esq NEW50Asiya Javayant
1034Julie L SchemmerUnited Kingdom2024-05-23Chanay, Jeffrey A Esq PROPOSAL78Anna Fali
1035Emily O OstroskyItaly2024-06-09King, Christopher A Esq NEW38Stephen Shaw
1036Misaki E BologniaAustralia2024-06-11Rangoni Of Florence NEW37Stephen Shaw
1037Julie D PerinArgentina2024-06-13Rangoni Of Florence UNQUALIFIED24Ioni Bowcher
1038Aditya N AmigonUnited Kingdom2024-06-16King, Christopher A Esq RENEWAL13Onyama Limba
1039Aditya F ShinkoRussia2024-06-11Buckley Miller Wright NEGOTIATION25Onyama Limba
1040Stacey F RulapaughRussia2024-06-02Printing Dimensions QUALIFIED29Asiya Javayant
1041Ricardo S SlusarskiJapan2024-06-05Rousseaux, Michael Esq UNQUALIFIED96Ioni Bowcher
1042Alejandro M TollnerItaly2024-05-21Morlong Associates PROPOSAL65Stephen Shaw
1043Faith H RutaIndia2024-06-05King, Christopher A Esq RENEWAL63Bernardo Dominic
1044Maisha U NickaUnited Kingdom2024-06-04Dorl, James J Esq NEGOTIATION74Asiya Javayant
1045Morrow L PoquetteJapan2024-06-10Rangoni Of Florence QUALIFIED36Elwin Sharvill
1046Murillo R RimCanada2024-05-28Morlong Associates RENEWAL66Stephen Shaw
1047Adams X OldroydGermany2024-05-31Commercial Press NEW93Elwin Sharvill
1048Munro P PoquetteCanada2024-05-31Truhlar And Truhlar Attys RENEWAL64Stephen Shaw
1049Arvin S RutaGermany2024-06-11Morlong Associates UNQUALIFIED57Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Jefferson O RutaBrazilElwin Sharvill NEGOTIATION
Antonio W AlbaresRussiaAmy Elsner NEGOTIATION
Leja K OstroskyIndiaAsiya Javayant QUALIFIED
Claire I SaylorsFranceAmy Elsner NEW
David Z MaletRussiaIoni Bowcher QUALIFIED
Arvin F FigeroaFranceIoni Bowcher QUALIFIED
Jones J ShinkoJapanOnyama Limba NEW
Smith P DilliardArgentinaAmy Elsner NEW
Murillo D GlickGermanyElwin Sharvill QUALIFIED
Deepesh N PerinRussiaAnna Fali RENEWAL
Smith M MaletCanadaIvan Magalhaes PROPOSAL
Wickens Z PaprockiBrazilOnyama Limba PROPOSAL
Costa M KuskoAustraliaStephen Shaw NEW
Munro Z AlbaresFranceOnyama Limba PROPOSAL
Claire O OldroydGermanyIoni Bowcher UNQUALIFIED
Jennifer Q WhobreyArgentinaElwin Sharvill NEGOTIATION
Izzy L WaycottUnited KingdomBernardo Dominic UNQUALIFIED
Mayumi W MorascaJapanAsiya Javayant UNQUALIFIED
Ricardo O TollnerJapanAnna Fali QUALIFIED
Salvatore T AmigonUnited KingdomElwin Sharvill NEGOTIATION
Adams M GarufiArgentinaBernardo Dominic PROPOSAL
Silvio V KuskoBrazilAmy Elsner RENEWAL
Maisha P CampainGermanyAsiya Javayant UNQUALIFIED
Ivar M SaylorsBrazilIoni Bowcher QUALIFIED
Wickens V GarufiUnited KingdomIvan Magalhaes PROPOSAL
Kaitlin J CaudyJapanStephen Shaw NEW
Sinclair F WaycottCanadaBernardo Dominic QUALIFIED
Emily G RimRussiaBernardo Dominic RENEWAL
Nicolas K RulapaughIndiaIoni Bowcher UNQUALIFIED
Leon P StensethCanadaXuxue Feng QUALIFIED
Antonio J DarakjyCanadaIoni Bowcher NEGOTIATION
Deepesh Y FollerIndiaOnyama Limba NEGOTIATION
David H VocelkaBrazilAnna Fali UNQUALIFIED
Mujtaba N WieserCanadaAnna Fali RENEWAL
Smith E FigeroaJapanBernardo Dominic QUALIFIED
Clifford O ChuiBrazilOnyama Limba PROPOSAL
Murillo T ButtArgentinaAsiya Javayant PROPOSAL
Claire E MaletGermanyAnna Fali NEW
Stacey S StensethJapanOnyama Limba RENEWAL
Faith C RulapaughUnited KingdomElwin Sharvill UNQUALIFIED
Wickens H SaylorsGermanyElwin Sharvill RENEWAL
Antonio Y SlusarskiBrazilAnna Fali QUALIFIED
Silvio G GlickAustraliaIoni Bowcher UNQUALIFIED
Morrow P DoeCanadaAmy Elsner QUALIFIED
Salvatore I TollnerSpainAnna Fali RENEWAL
Ivar C TollnerGermanyIoni Bowcher RENEWAL
Cody A MaletIndiaStephen Shaw QUALIFIED
Greenwood W MarrierRussiaAnna Fali UNQUALIFIED
Maria U CaldareraIndiaIoni Bowcher NEGOTIATION
James T DarakjyCanadaAsiya Javayant NEGOTIATION
Frozen Columns
Name
Maria Z Sergi
Sinclair G Iturbide
Juan M Nicka
James U Rim
Francesco Y Dilliard
Julie V Oldroyd
Claire G Bolognia
Julie Z Whobrey
Isabel Z Malet
Salvatore W Waycott
Salvatore P Garufi
Murillo D Ferencz
Deepesh E Ferencz
Francesco V Whobrey
Kadeem K Shinko
Leja O Glick
Rodrigues T Royster
Arvin M Rulapaugh
Aruna N Amigon
Ricardo G Foller
Faith Z Doe
Maria M Morasca
Faith O Paprocki
Julie P Garufi
Wickens M Wieser
Francesco F Butt
Isabel E Ostrosky
Adams Z Paprocki
Silvio T Chui
Izzy B Paprocki
Leja P Glick
Aditya E Nestle
Darci P Nicka
Francesco R Caudy
Maisha U Briddick
Leon A Inouye
Misaki V Gaucho
Murillo C Vocelka
Deepesh H Kusko
Ricardo F Nestle
Chavez H Malet
Munro U Iturbide
Nicolas S Ruta
Jeanfrancois D Glick
Jeanfrancois N Morasca
Isabel V Kusko
Leja I Ruta
Murillo L Schemmer
Maria R Chui
Morrow F Oldroyd
IdCountryDate
1000India2024-05-31
1001Brazil2024-05-29
1002Spain2024-05-21
1003United Kingdom2024-06-05
1004United Kingdom2024-06-01
1005Russia2024-05-20
1006Italy2024-06-13
1007Spain2024-06-13
1008France2024-05-20
1009Australia2024-05-24
1010Australia2024-06-07
1011India2024-06-12
1012United Kingdom2024-06-08
1013Japan2024-06-16
1014India2024-06-03
1015Russia2024-06-10
1016Italy2024-06-03
1017Italy2024-06-05
1018Italy2024-05-26
1019Spain2024-06-14
1020Brazil2024-06-08
1021Russia2024-06-07
1022Spain2024-06-04
1023Germany2024-05-31
1024Germany2024-06-03
1025Germany2024-05-25
1026Spain2024-05-29
1027France2024-06-14
1028Japan2024-06-16
1029Argentina2024-06-04
1030Germany2024-06-13
1031Russia2024-06-16
1032Argentina2024-06-05
1033Spain2024-05-23
1034Russia2024-06-08
1035United Kingdom2024-06-11
1036Australia2024-06-03
1037Germany2024-05-24
1038Canada2024-06-07
1039Russia2024-05-25
1040Russia2024-05-20
1041Canada2024-05-21
1042Japan2024-06-14
1043Brazil2024-06-15
1044Canada2024-06-13
1045Japan2024-06-13
1046Australia2024-05-25
1047Japan2024-05-29
1048Brazil2024-06-07
1049Canada2024-06-04

On-Demand Data

NameIdCountryDate
Morrow P Rulapaugh1000Argentina2024-06-14
Stacey G Glick1001Japan2024-05-23
Emily T Vocelka1002Germany2024-05-30
Isabel L Maclead1003Spain2024-05-28
Adams S Butt1004Spain2024-06-01
Maria N Rim1005Argentina2024-05-22
Morrow B Chui1006Argentina2024-06-03
Izzy I Vocelka1007Italy2024-05-20
Smith S Vocelka1008France2024-06-15
Rodrigues L Albares1009India2024-06-11
David L Campain1010Australia2024-06-10
David W Butt1011Spain2024-06-08
Murillo R Chui1012Brazil2024-06-15
Tony T Malet1013Japan2024-06-04
Chavez D Dilliard1014India2024-05-29
Misaki W Ruta1015United Kingdom2024-06-02
Ivar Q Oldroyd1016Japan2024-06-10
Ashley T Nicka1017Germany2024-05-25
Faith T Perin1018Canada2024-05-22
Kadeem K Tollner1019Argentina2024-06-12
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aika E WieserUnited KingdomIvan Magalhaes PROPOSAL
Mujtaba V PaprockiFranceAsiya Javayant QUALIFIED
Mujtaba C RutaBrazilIoni Bowcher RENEWAL
Emily A WaycottIndiaOnyama Limba RENEWAL
Chavez S MaletIndiaAsiya Javayant UNQUALIFIED
Juan J VenereSpainIoni Bowcher PROPOSAL
Morrow S InouyeUnited KingdomOnyama Limba RENEWAL
David X CampainIndiaAmy Elsner NEW
Isabel U MaletItalyStephen Shaw QUALIFIED
Kadeem M RutaItalyIvan Magalhaes RENEWAL
Darci P OldroydAustraliaElwin Sharvill NEGOTIATION
Aika X InouyeRussiaIvan Magalhaes NEW
Aruna M SaylorsBrazilAnna Fali NEW
Jones U BowleyCanadaBernardo Dominic PROPOSAL
Faith B InouyeCanadaIvan Magalhaes NEW
Munro B FollerSpainAmy Elsner UNQUALIFIED
Adams O IturbideItalyBernardo Dominic QUALIFIED
Smith I CampainAustraliaAsiya Javayant PROPOSAL
Morrow X SergiFranceAsiya Javayant QUALIFIED
Francesco M BowleyIndiaStephen Shaw NEGOTIATION
Claire L GauchoAustraliaBernardo Dominic QUALIFIED
Murillo G TollnerAustraliaXuxue Feng QUALIFIED
Silvio P IturbideRussiaAmy Elsner NEGOTIATION
Jennifer E OldroydSpainAmy Elsner QUALIFIED
Nicolas K GillianSpainXuxue Feng PROPOSAL
Wickens T DilliardAustraliaOnyama Limba NEGOTIATION
Alejandro H GarufiCanadaIoni Bowcher PROPOSAL
Misaki A GauchoBrazilIvan Magalhaes RENEWAL
Murillo Y RulapaughRussiaAmy Elsner UNQUALIFIED
Jones K RimIndiaXuxue Feng NEGOTIATION
Johnson V PaprockiBrazilBernardo Dominic UNQUALIFIED
Claire Q FigeroaCanadaXuxue Feng RENEWAL
Arvin S VocelkaIndiaElwin Sharvill QUALIFIED
Leja Q IturbideArgentinaAsiya Javayant NEW
Ashley N InouyeItalyStephen Shaw NEGOTIATION
Nicolas P StockhamUnited KingdomAnna Fali PROPOSAL
Smith T RimCanadaBernardo Dominic UNQUALIFIED
Alejandro Z StockhamCanadaXuxue Feng UNQUALIFIED
Jeanfrancois O OldroydSpainOnyama Limba NEGOTIATION
Alejandro A InouyeJapanIvan Magalhaes 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>