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
Chavez O GarufiItalyXuxue Feng PROPOSAL
Octavia M NestleBrazilElwin Sharvill QUALIFIED
Mujtaba B DarakjyItalyOnyama Limba PROPOSAL
Silvio T StensethGermanyXuxue Feng PROPOSAL
Tony I RimCanadaXuxue Feng RENEWAL
Cody L PaprockiSpainAsiya Javayant PROPOSAL
Ricardo I DilliardSpainIvan Magalhaes QUALIFIED
Silvio L VenereItalyIvan Magalhaes QUALIFIED
Emily X VocelkaGermanyStephen Shaw NEGOTIATION
Isabel H WaycottRussiaStephen Shaw NEW
Jeanfrancois H PaprockiRussiaOnyama Limba QUALIFIED
Juan F CaudyUnited KingdomStephen Shaw NEW
Deepesh R FollerGermanyAnna Fali QUALIFIED
Ricardo O StensethFranceIoni Bowcher QUALIFIED
James R FerenczBrazilOnyama Limba PROPOSAL
Octavia D ButtIndiaAnna Fali QUALIFIED
Adams V InouyeJapanAsiya Javayant PROPOSAL
Deepesh E PerinItalyAnna Fali PROPOSAL
Julie R ShinkoAustraliaXuxue Feng UNQUALIFIED
Stacey D MorascaGermanyBernardo Dominic PROPOSAL
Smith T AlbaresArgentinaIoni Bowcher PROPOSAL
Jones R SergiFranceXuxue Feng PROPOSAL
Leja B PerinFranceElwin Sharvill NEW
Jeanfrancois J ChuiJapanBernardo Dominic NEW
Francesco L AlbaresRussiaAsiya Javayant QUALIFIED
Costa Q WaycottJapanStephen Shaw QUALIFIED
Sinclair M NickaSpainStephen Shaw QUALIFIED
Munro N VenereItalyAsiya Javayant RENEWAL
Aruna Q AlbaresUnited KingdomAnna Fali UNQUALIFIED
Aruna D VocelkaCanadaXuxue Feng NEW
Maria Z FigeroaUnited KingdomIoni Bowcher NEGOTIATION
Aditya W DarakjyGermanyElwin Sharvill QUALIFIED
David H RimAustraliaIoni Bowcher NEW
Tony L OstroskyFranceIoni Bowcher QUALIFIED
Deepesh B GauchoItalyXuxue Feng QUALIFIED
Morrow D PoquetteBrazilOnyama Limba PROPOSAL
Darci U WhobreyBrazilXuxue Feng PROPOSAL
Faith D FigeroaItalyStephen Shaw QUALIFIED
Jennifer C KolmetzIndiaElwin Sharvill UNQUALIFIED
Smith M RoysterUnited KingdomOnyama Limba NEGOTIATION
Morrow M OldroydIndiaAnna Fali NEW
Darci S KolmetzGermanyElwin Sharvill QUALIFIED
Emily C SaylorsGermanyIvan Magalhaes UNQUALIFIED
Juan C GarufiGermanyAsiya Javayant PROPOSAL
Francesco K KuskoItalyAnna Fali UNQUALIFIED
Faith A WieserRussiaAnna Fali PROPOSAL
Stacey J CaldareraUnited KingdomBernardo Dominic UNQUALIFIED
Aruna B CampainUnited KingdomIvan Magalhaes QUALIFIED
Isabel X BowleyGermanyIvan Magalhaes QUALIFIED
Chavez A OldroydJapanElwin Sharvill UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Misaki G GlickItalyAmy Elsner NEGOTIATION
Claire Y StensethItalyOnyama Limba RENEWAL
Leja H BriddickAustraliaIoni Bowcher UNQUALIFIED
Ashley K WhobreyJapanBernardo Dominic NEGOTIATION
Munro A GarufiFranceAmy Elsner UNQUALIFIED
Jefferson C FerenczRussiaXuxue Feng NEW
Aika F BowleyAustraliaAsiya Javayant UNQUALIFIED
Salvatore F PerinBrazilIvan Magalhaes NEGOTIATION
Johnson Z MarrierSpainXuxue Feng PROPOSAL
Stacey K TollnerArgentinaBernardo Dominic UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Juan H PoquetteFrance2024-05-25King, Christopher A Esq NEGOTIATION58Xuxue Feng
1001Ashley Z BowleyCanada2024-05-31Printing Dimensions NEW88Amy Elsner
1002Wickens Y MarrierBrazil2024-06-15Rousseaux, Michael Esq PROPOSAL79Anna Fali
1003Munro I BowleyGermany2024-05-18Commercial Press QUALIFIED33Asiya Javayant
1004Adams J VenereIndia2024-06-12Chanay, Jeffrey A Esq NEW25Stephen Shaw
1005Emily J GarufiSpain2024-06-06Feltz Printing Service PROPOSAL92Stephen Shaw
1006Tony Y NickaSpain2024-05-24Morlong Associates PROPOSAL77Onyama Limba
1007Johnson E SaylorsCanada2024-05-20Dorl, James J Esq QUALIFIED42Anna Fali
1008Wickens I InouyeArgentina2024-05-29Benton, John B Jr UNQUALIFIED19Onyama Limba
1009Emily X InouyeCanada2024-06-14King, Christopher A Esq NEW44Elwin Sharvill
1010Faith A GillianRussia2024-06-12Feiner Bros PROPOSAL98Amy Elsner
1011Kaitlin S RulapaughSpain2024-05-19Benton, John B Jr RENEWAL13Ivan Magalhaes
1012Costa J RulapaughSpain2024-05-26Feltz Printing Service NEGOTIATION71Amy Elsner
1013Ashley E AmigonAustralia2024-06-12Rangoni Of Florence NEGOTIATION99Bernardo Dominic
1014Cody Y VocelkaArgentina2024-06-09Chapman, Ross E Esq NEW79Ioni Bowcher
1015Chavez W MorascaUnited Kingdom2024-06-01Printing Dimensions NEW50Asiya Javayant
1016Julie K DilliardIndia2024-06-03Dorl, James J Esq UNQUALIFIED36Onyama Limba
1017Salvatore Z MaletSpain2024-06-04Feiner Bros NEGOTIATION18Bernardo Dominic
1018Ricardo B MaletSpain2024-06-04Morlong Associates PROPOSAL85Anna Fali
1019Leja U MacleadAustralia2024-06-02Rousseaux, Michael Esq QUALIFIED89Xuxue Feng
1020Emily O FollerIndia2024-05-25Chanay, Jeffrey A Esq NEW12Ivan Magalhaes
1021Wickens U GillianFrance2024-06-08Feltz Printing Service NEGOTIATION12Stephen Shaw
1022Silvio J FlosiGermany2024-05-31Commercial Press QUALIFIED3Anna Fali
1023Aditya S SchemmerGermany2024-06-12Morlong Associates NEW10Asiya Javayant
1024Stacey K VocelkaSpain2024-06-15Chemel, James L Cpa RENEWAL41Onyama Limba
1025Costa N WhobreyIndia2024-05-28Dorl, James J Esq QUALIFIED87Anna Fali
1026Antonio D IturbideGermany2024-06-01Dorl, James J Esq NEGOTIATION90Asiya Javayant
1027Ivar F MacleadBrazil2024-06-12Feiner Bros UNQUALIFIED46Asiya Javayant
1028Smith E VocelkaBrazil2024-05-20Chanay, Jeffrey A Esq NEW92Anna Fali
1029Isabel Y OstroskyCanada2024-05-31Printing Dimensions PROPOSAL64Onyama Limba
1030Ricardo A IturbideBrazil2024-06-07Truhlar And Truhlar Attys RENEWAL27Stephen Shaw
1031James Q ButtIndia2024-06-03Printing Dimensions NEW5Elwin Sharvill
1032Maisha X WaycottRussia2024-06-14Benton, John B Jr NEGOTIATION35Ioni Bowcher
1033Ashley T NickaBrazil2024-06-09Feltz Printing Service UNQUALIFIED13Ivan Magalhaes
1034Stacey C CaldareraFrance2024-06-11Dorl, James J Esq PROPOSAL80Anna Fali
1035Jennifer C RulapaughItaly2024-06-13Chanay, Jeffrey A Esq PROPOSAL22Onyama Limba
1036Murillo W PerinArgentina2024-05-23Dorl, James J Esq QUALIFIED80Ioni Bowcher
1037Morrow Y GarufiBrazil2024-06-07Commercial Press NEW47Elwin Sharvill
1038Aditya L SaylorsFrance2024-06-01Buckley Miller Wright PROPOSAL41Asiya Javayant
1039Aruna I MaletGermany2024-06-12Rangoni Of Florence UNQUALIFIED55Ioni Bowcher
1040Murillo S MaletIndia2024-05-25Rousseaux, Michael Esq QUALIFIED8Bernardo Dominic
1041Deepesh L PerinArgentina2024-05-26Chemel, James L Cpa UNQUALIFIED33Bernardo Dominic
1042Jefferson E NickaJapan2024-05-26Feltz Printing Service NEGOTIATION50Onyama Limba
1043Leon H GarufiJapan2024-06-04Morlong Associates NEGOTIATION99Ioni Bowcher
1044Jeanfrancois K GarufiIndia2024-05-29Printing Dimensions UNQUALIFIED36Asiya Javayant
1045Juan M NestleCanada2024-05-17King, Christopher A Esq UNQUALIFIED26Xuxue Feng
1046Wickens V MaletArgentina2024-06-03Chapman, Ross E Esq UNQUALIFIED12Stephen Shaw
1047Morrow Q AmigonGermany2024-05-26Rousseaux, Michael Esq QUALIFIED41Elwin Sharvill
1048Smith F RutaArgentina2024-05-20Printing Dimensions NEW19Bernardo Dominic
1049Mayumi J StensethJapan2024-06-03Commercial Press RENEWAL56Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Sinclair T SaylorsIndiaAnna Fali NEW
Tony W WhobreyAustraliaAsiya Javayant RENEWAL
Ricardo O OstroskyCanadaAsiya Javayant QUALIFIED
Juan U SlusarskiItalyAmy Elsner UNQUALIFIED
Claire Q DoeBrazilIvan Magalhaes QUALIFIED
Cody W BowleyFranceAsiya Javayant UNQUALIFIED
Leja L SchemmerRussiaIoni Bowcher PROPOSAL
Mayumi O GlickGermanyBernardo Dominic NEW
Maisha M ChuiFranceAmy Elsner RENEWAL
Rodrigues K ChuiBrazilIoni Bowcher NEW
Leon G NickaArgentinaIvan Magalhaes NEGOTIATION
Sinclair L ShinkoIndiaStephen Shaw NEW
Aika E FollerRussiaElwin Sharvill NEW
Murillo Y MaletBrazilAsiya Javayant RENEWAL
Costa G NestleUnited KingdomAmy Elsner PROPOSAL
Sinclair Q FollerCanadaStephen Shaw NEW
Kadeem S MorascaGermanyStephen Shaw NEW
Rodrigues M MarrierRussiaElwin Sharvill NEGOTIATION
Antonio S BowleyBrazilIoni Bowcher UNQUALIFIED
Tony N OldroydUnited KingdomXuxue Feng QUALIFIED
Leja N StockhamCanadaXuxue Feng NEGOTIATION
Wickens Q SchemmerItalyIoni Bowcher NEGOTIATION
Morrow J IturbideArgentinaIvan Magalhaes NEW
Munro T SergiCanadaOnyama Limba QUALIFIED
Silvio L GarufiFranceBernardo Dominic QUALIFIED
Aditya G ShinkoJapanOnyama Limba UNQUALIFIED
Jefferson N KolmetzFranceStephen Shaw QUALIFIED
Octavia Q BowleyIndiaXuxue Feng PROPOSAL
Francesco X GauchoIndiaXuxue Feng QUALIFIED
Antonio K VocelkaIndiaAsiya Javayant PROPOSAL
Darci X GarufiUnited KingdomOnyama Limba UNQUALIFIED
Mujtaba Y BriddickIndiaIoni Bowcher NEGOTIATION
Mujtaba X TollnerJapanOnyama Limba QUALIFIED
Jefferson B FollerItalyIoni Bowcher NEW
Munro F NestleSpainOnyama Limba RENEWAL
Izzy Z WhobreyJapanIvan Magalhaes PROPOSAL
Cody X DilliardAustraliaElwin Sharvill PROPOSAL
Deepesh X FollerAustraliaXuxue Feng NEGOTIATION
Rodrigues I DarakjyJapanAmy Elsner QUALIFIED
Julie E OstroskyGermanyAmy Elsner QUALIFIED
James C FigeroaRussiaBernardo Dominic PROPOSAL
Mayumi X MorascaGermanyIoni Bowcher NEGOTIATION
Misaki B RimBrazilAmy Elsner RENEWAL
Costa V SlusarskiBrazilAnna Fali UNQUALIFIED
Leja N ShinkoSpainBernardo Dominic NEW
Francesco T TollnerArgentinaAsiya Javayant UNQUALIFIED
Sinclair L NickaSpainBernardo Dominic NEGOTIATION
Chavez R GillianUnited KingdomBernardo Dominic PROPOSAL
Jones H RulapaughUnited KingdomXuxue Feng NEW
David U RutaFranceIoni Bowcher PROPOSAL
Frozen Columns
Name
Octavia Z Iturbide
Tony A Ruta
Morrow D Wieser
Darci J Butt
Jefferson A Doe
Ivar N Gillian
Emily L Chui
Faith R Dilliard
Jefferson P Malet
Johnson C Marrier
Salvatore F Amigon
James Q Caldarera
Rodrigues Y Campain
Antonio K Caldarera
Chavez I Rim
Ricardo X Perin
Sinclair X Stenseth
Morrow A Rulapaugh
Kadeem F Oldroyd
Ivar K Poquette
Juan S Malet
Silvio Q Poquette
Alejandro K Nicka
Murillo Y Poquette
Aruna Q Tollner
Adams H Bolognia
Maria B Oldroyd
Chavez O Dilliard
Salvatore R Figeroa
Stacey Z Slusarski
Jeanfrancois S Vocelka
Salvatore G Venere
Chavez O Oldroyd
Ashley Q Gaucho
Silvio S Schemmer
Adams V Caudy
Aika J Stenseth
Jeanfrancois D Maclead
Claire K Rim
Deepesh X Garufi
James F Dilliard
Silvio T Butt
Wickens E Vocelka
Munro D Ostrosky
Leja S Caudy
Kaitlin T Bowley
Claire V Saylors
Munro J Albares
Nicolas S Kusko
Mayumi L Poquette
IdCountryDate
1000Italy2024-05-21
1001United Kingdom2024-06-12
1002France2024-06-15
1003Japan2024-05-23
1004Spain2024-05-28
1005Germany2024-06-06
1006Canada2024-06-07
1007Australia2024-06-14
1008Spain2024-06-07
1009Argentina2024-06-13
1010Australia2024-05-17
1011Spain2024-06-05
1012Australia2024-05-24
1013India2024-06-04
1014Italy2024-05-21
1015Russia2024-06-09
1016Australia2024-05-26
1017Canada2024-06-11
1018Argentina2024-06-01
1019Spain2024-05-28
1020Japan2024-06-04
1021Brazil2024-06-14
1022France2024-05-22
1023Russia2024-05-23
1024France2024-05-22
1025Brazil2024-06-12
1026India2024-06-08
1027Germany2024-06-07
1028Brazil2024-05-19
1029Argentina2024-06-11
1030India2024-06-10
1031India2024-06-01
1032Italy2024-05-17
1033United Kingdom2024-05-29
1034France2024-06-08
1035Italy2024-05-30
1036France2024-06-08
1037Spain2024-05-23
1038Brazil2024-05-23
1039Japan2024-06-11
1040Spain2024-06-01
1041United Kingdom2024-06-15
1042Italy2024-06-15
1043Argentina2024-06-07
1044Italy2024-05-28
1045Australia2024-06-04
1046United Kingdom2024-05-18
1047France2024-06-02
1048Canada2024-05-23
1049Brazil2024-06-04

On-Demand Data

NameIdCountryDate
Chavez N Whobrey1000Germany2024-06-08
Adams G Waycott1001Spain2024-06-01
Isabel M Shinko1002France2024-05-31
Claire B Garufi1003Australia2024-06-09
Smith N Doe1004Brazil2024-06-08
Morrow X Flosi1005India2024-05-18
Jeanfrancois P Malet1006Brazil2024-05-20
Maisha U Ostrosky1007Russia2024-05-28
Arvin T Tollner1008Russia2024-06-03
Ashley T Rulapaugh1009Brazil2024-05-21
Faith S Flosi1010Spain2024-05-26
Julie D Amigon1011France2024-06-13
Rodrigues Z Poquette1012United Kingdom2024-05-26
Johnson R Bowley1013Canada2024-05-31
Aruna O Poquette1014Germany2024-05-22
Murillo Q Vocelka1015Germany2024-06-08
Alejandro N Caldarera1016Australia2024-06-12
Jennifer L Figeroa1017Spain2024-06-14
Stacey R Whobrey1018India2024-06-08
Leon K Iturbide1019Brazil2024-05-21
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Smith Y FollerBrazilOnyama Limba NEGOTIATION
Munro Q GauchoSpainElwin Sharvill PROPOSAL
Julie H IturbideArgentinaBernardo Dominic RENEWAL
Johnson K BowleyItalyOnyama Limba PROPOSAL
Darci Q RulapaughIndiaAmy Elsner RENEWAL
Ivar L SergiJapanStephen Shaw NEW
Izzy R DarakjyGermanyIvan Magalhaes PROPOSAL
Antonio T RutaSpainElwin Sharvill NEW
Aika B WhobreyArgentinaElwin Sharvill NEW
Jennifer V BologniaItalyIvan Magalhaes UNQUALIFIED
Ricardo A ShinkoUnited KingdomIoni Bowcher UNQUALIFIED
Aruna O VenereIndiaStephen Shaw NEGOTIATION
Wickens Q RimBrazilAsiya Javayant UNQUALIFIED
Juan P RulapaughJapanIoni Bowcher NEGOTIATION
Smith C InouyeSpainXuxue Feng UNQUALIFIED
Ashley R MaletJapanStephen Shaw NEW
Faith F RimUnited KingdomBernardo Dominic NEW
Kaitlin P SergiGermanyElwin Sharvill QUALIFIED
Adams O OstroskySpainIvan Magalhaes QUALIFIED
Misaki J RimCanadaAmy Elsner UNQUALIFIED
Ivar L GlickRussiaBernardo Dominic PROPOSAL
Tony D TollnerGermanyBernardo Dominic NEW
Morrow P WieserArgentinaXuxue Feng PROPOSAL
Munro I StockhamIndiaIvan Magalhaes PROPOSAL
Isabel P RimCanadaAnna Fali QUALIFIED
Juan D RulapaughIndiaAsiya Javayant NEGOTIATION
Jennifer L FerenczCanadaStephen Shaw PROPOSAL
Leon T PoquetteIndiaIvan Magalhaes RENEWAL
Jefferson F WaycottGermanyIvan Magalhaes NEGOTIATION
Kaitlin X MacleadRussiaOnyama Limba RENEWAL
Stacey A BowleyArgentinaOnyama Limba PROPOSAL
Maria I SlusarskiGermanyAmy Elsner NEW
Kaitlin S MarrierBrazilAnna Fali PROPOSAL
Rodrigues I MarrierUnited KingdomOnyama Limba UNQUALIFIED
David K NickaCanadaXuxue Feng NEW
Adams E MacleadItalyBernardo Dominic RENEWAL
Darci B CaudyUnited KingdomBernardo Dominic UNQUALIFIED
Nicolas E GarufiAustraliaBernardo Dominic QUALIFIED
Adams B NickaRussiaAmy Elsner QUALIFIED
Jeanfrancois S KuskoBrazilStephen Shaw 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>