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
Costa X ChuiSpainStephen Shaw PROPOSAL
Silvio A PoquetteJapanIoni Bowcher QUALIFIED
Kadeem O ButtSpainAnna Fali QUALIFIED
Aditya K ChuiRussiaStephen Shaw QUALIFIED
Jones K MaletBrazilBernardo Dominic RENEWAL
Munro T NickaSpainBernardo Dominic NEGOTIATION
Maria O WieserJapanAsiya Javayant QUALIFIED
Jefferson H GlickUnited KingdomOnyama Limba NEGOTIATION
Claire B MaletJapanXuxue Feng NEW
Johnson W IturbideAustraliaAnna Fali RENEWAL
Claire A RoysterJapanStephen Shaw QUALIFIED
Kaitlin O PoquetteCanadaOnyama Limba NEW
Ivar S AmigonRussiaBernardo Dominic UNQUALIFIED
Chavez E NestleItalyOnyama Limba NEW
Antonio T CampainSpainXuxue Feng QUALIFIED
Antonio O GarufiRussiaAmy Elsner UNQUALIFIED
Rodrigues D WhobreyJapanElwin Sharvill NEGOTIATION
Juan U NickaUnited KingdomXuxue Feng NEGOTIATION
Aditya Q ChuiUnited KingdomIvan Magalhaes UNQUALIFIED
Emily T KuskoSpainElwin Sharvill NEGOTIATION
Aika V StockhamAustraliaIoni Bowcher UNQUALIFIED
Faith N RoysterArgentinaStephen Shaw NEGOTIATION
Silvio Q VocelkaArgentinaElwin Sharvill PROPOSAL
Kaitlin K StockhamIndiaAnna Fali NEGOTIATION
Murillo L ButtFranceXuxue Feng RENEWAL
Maria C IturbideJapanBernardo Dominic NEW
Murillo D BriddickArgentinaStephen Shaw UNQUALIFIED
Nicolas Y AlbaresRussiaStephen Shaw NEGOTIATION
Kaitlin C FigeroaItalyIvan Magalhaes QUALIFIED
Aditya X KuskoItalyAmy Elsner RENEWAL
Octavia L ChuiAustraliaAsiya Javayant RENEWAL
Maria P SergiUnited KingdomXuxue Feng NEW
Rodrigues Z GlickUnited KingdomOnyama Limba RENEWAL
Jefferson Q DoeJapanAnna Fali UNQUALIFIED
Juan O BriddickAustraliaAsiya Javayant PROPOSAL
Munro I BowleyBrazilStephen Shaw NEW
Wickens U InouyeItalyAsiya Javayant NEGOTIATION
Costa E NestleCanadaXuxue Feng RENEWAL
Maisha A ChuiCanadaXuxue Feng RENEWAL
Aika W ChuiSpainIvan Magalhaes QUALIFIED
David E DarakjyArgentinaIoni Bowcher NEW
Leja F SergiJapanStephen Shaw NEGOTIATION
Darci E MaletIndiaStephen Shaw QUALIFIED
Costa J OldroydBrazilAmy Elsner NEW
Aika B RutaIndiaElwin Sharvill RENEWAL
Wickens G MorascaArgentinaIoni Bowcher RENEWAL
Munro B FollerRussiaIvan Magalhaes NEGOTIATION
Nicolas Z WaycottUnited KingdomIvan Magalhaes NEW
David J CaudyJapanXuxue Feng QUALIFIED
Julie Z SaylorsArgentinaOnyama Limba NEW
Horizontal
NameCountryRepresentativeStatus
Octavia Y GillianRussiaAmy Elsner UNQUALIFIED
Leon S BowleyJapanElwin Sharvill NEW
Jefferson O OstroskyCanadaAmy Elsner PROPOSAL
Costa S VocelkaCanadaAnna Fali QUALIFIED
Rodrigues I RimUnited KingdomBernardo Dominic PROPOSAL
Aditya Q MorascaAustraliaIvan Magalhaes QUALIFIED
Costa B SergiCanadaIvan Magalhaes RENEWAL
Sinclair M SaylorsItalyAnna Fali PROPOSAL
Kadeem G AmigonAustraliaBernardo Dominic NEGOTIATION
Ashley E ButtBrazilOnyama Limba UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Alejandro B DoeJapan2024-05-23Rousseaux, Michael Esq NEGOTIATION76Ivan Magalhaes
1001Aika N BowleyArgentina2024-06-06Feltz Printing Service NEW84Elwin Sharvill
1002Julie I KolmetzSpain2024-05-23Commercial Press UNQUALIFIED82Amy Elsner
1003Munro C OldroydGermany2024-06-14Chemel, James L Cpa RENEWAL86Ioni Bowcher
1004Arvin F BowleyUnited Kingdom2024-05-19King, Christopher A Esq QUALIFIED44Stephen Shaw
1005Ivar D OldroydAustralia2024-06-02King, Christopher A Esq PROPOSAL98Asiya Javayant
1006Ricardo I KuskoGermany2024-05-18Feiner Bros NEGOTIATION34Ioni Bowcher
1007Izzy F NickaGermany2024-06-07Truhlar And Truhlar Attys PROPOSAL42Onyama Limba
1008Alejandro G BriddickArgentina2024-05-30Chemel, James L Cpa NEGOTIATION6Anna Fali
1009Leja B WhobreyJapan2024-06-02Printing Dimensions NEW79Ioni Bowcher
1010Francesco S SaylorsBrazil2024-05-28Rousseaux, Michael Esq NEW45Xuxue Feng
1011Octavia R NestleAustralia2024-06-13Buckley Miller Wright QUALIFIED55Xuxue Feng
1012Claire P ChuiItaly2024-06-09Morlong Associates PROPOSAL3Onyama Limba
1013Murillo D RutaItaly2024-05-22Buckley Miller Wright RENEWAL50Xuxue Feng
1014Leon E RulapaughIndia2024-06-10Commercial Press QUALIFIED87Elwin Sharvill
1015Salvatore Y TollnerGermany2024-05-21Chapman, Ross E Esq QUALIFIED1Anna Fali
1016Adams F RulapaughBrazil2024-06-14Commercial Press NEW93Ivan Magalhaes
1017Isabel K SaylorsBrazil2024-05-20Morlong Associates NEW59Amy Elsner
1018Silvio I GarufiJapan2024-06-14Truhlar And Truhlar Attys UNQUALIFIED52Ioni Bowcher
1019Deepesh H MacleadJapan2024-06-01Morlong Associates PROPOSAL3Elwin Sharvill
1020Greenwood G KuskoBrazil2024-06-12Feiner Bros NEW20Bernardo Dominic
1021Kadeem P PerinItaly2024-05-28Rangoni Of Florence NEGOTIATION51Ivan Magalhaes
1022Isabel V RoysterGermany2024-06-04Rangoni Of Florence QUALIFIED39Onyama Limba
1023Jones E FlosiJapan2024-06-10Rangoni Of Florence QUALIFIED66Onyama Limba
1024David L SlusarskiSpain2024-05-16Buckley Miller Wright NEGOTIATION24Ioni Bowcher
1025Misaki N FigeroaCanada2024-06-14Dorl, James J Esq NEW50Anna Fali
1026Arvin Q MaletUnited Kingdom2024-05-22Commercial Press NEGOTIATION99Ivan Magalhaes
1027Leja B RoysterSpain2024-06-04Rangoni Of Florence PROPOSAL79Stephen Shaw
1028Deepesh C GillianBrazil2024-05-30Commercial Press UNQUALIFIED26Elwin Sharvill
1029Leon P StockhamGermany2024-06-04Morlong Associates PROPOSAL34Stephen Shaw
1030Rodrigues E SlusarskiAustralia2024-06-09Chanay, Jeffrey A Esq RENEWAL50Anna Fali
1031Isabel L VenereIndia2024-06-04Printing Dimensions PROPOSAL82Amy Elsner
1032Isabel A BologniaBrazil2024-05-28Commercial Press PROPOSAL5Anna Fali
1033Nicolas P WieserJapan2024-06-03Buckley Miller Wright NEW7Asiya Javayant
1034Jones D CaudySpain2024-05-27Feiner Bros RENEWAL37Xuxue Feng
1035Adams R AlbaresCanada2024-05-22Truhlar And Truhlar Attys QUALIFIED73Ioni Bowcher
1036Kaitlin Q BologniaRussia2024-05-28Buckley Miller Wright PROPOSAL74Amy Elsner
1037Leon Q InouyeBrazil2024-05-23Chemel, James L Cpa PROPOSAL32Anna Fali
1038Alejandro E PoquetteCanada2024-05-18Chanay, Jeffrey A Esq QUALIFIED18Bernardo Dominic
1039Kadeem F CaldareraSpain2024-05-18Feltz Printing Service QUALIFIED77Bernardo Dominic
1040Munro N DarakjyIndia2024-05-26King, Christopher A Esq RENEWAL60Bernardo Dominic
1041Clifford W KuskoRussia2024-05-19Truhlar And Truhlar Attys PROPOSAL49Stephen Shaw
1042Salvatore V MarrierRussia2024-05-18Printing Dimensions QUALIFIED47Asiya Javayant
1043Rodrigues K CampainItaly2024-06-13Printing Dimensions NEW87Elwin Sharvill
1044Murillo G SergiSpain2024-05-27Feiner Bros NEW23Ivan Magalhaes
1045Kaitlin N DarakjyUnited Kingdom2024-05-20Feiner Bros NEGOTIATION42Stephen Shaw
1046Rodrigues T MaletIndia2024-06-05Feiner Bros NEW88Ivan Magalhaes
1047Maisha R RulapaughAustralia2024-05-22Chanay, Jeffrey A Esq NEGOTIATION0Asiya Javayant
1048Isabel K FigeroaIndia2024-05-19Chapman, Ross E Esq RENEWAL66Anna Fali
1049Kaitlin P StensethArgentina2024-06-09Benton, John B Jr NEGOTIATION82Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Munro L NestleArgentinaBernardo Dominic RENEWAL
Maisha R NickaGermanyAnna Fali NEGOTIATION
Rodrigues R VocelkaUnited KingdomAnna Fali NEW
Jefferson G SchemmerJapanOnyama Limba NEW
Juan F CaudyAustraliaAsiya Javayant QUALIFIED
Tony S RutaSpainIvan Magalhaes QUALIFIED
Alejandro L DoeRussiaIvan Magalhaes NEGOTIATION
Adams C DarakjyAustraliaAmy Elsner RENEWAL
Clifford P OldroydAustraliaElwin Sharvill PROPOSAL
Mayumi Q AlbaresCanadaIoni Bowcher NEW
Jennifer Q SergiFranceAnna Fali RENEWAL
Jennifer W OstroskySpainAmy Elsner RENEWAL
Claire D DoeSpainIvan Magalhaes QUALIFIED
Murillo N MaletItalyBernardo Dominic QUALIFIED
Ashley A WhobreyFranceIoni Bowcher NEW
Costa L GlickRussiaElwin Sharvill NEW
Ashley D RimSpainOnyama Limba NEGOTIATION
Darci U ButtGermanyElwin Sharvill RENEWAL
Sinclair M BriddickItalyBernardo Dominic UNQUALIFIED
Sinclair N WhobreySpainAmy Elsner UNQUALIFIED
Ricardo S NestleIndiaBernardo Dominic QUALIFIED
Aditya M ButtFranceBernardo Dominic QUALIFIED
Leon H ButtCanadaAmy Elsner RENEWAL
Arvin O AmigonGermanyIvan Magalhaes RENEWAL
Kaitlin E PoquetteJapanElwin Sharvill UNQUALIFIED
Murillo G FigeroaAustraliaIoni Bowcher PROPOSAL
Leon I VenereFranceOnyama Limba QUALIFIED
Wickens H FigeroaGermanyIoni Bowcher QUALIFIED
Jeanfrancois U CampainJapanAmy Elsner UNQUALIFIED
Kadeem Q RimArgentinaStephen Shaw PROPOSAL
Adams F BologniaUnited KingdomBernardo Dominic NEW
Izzy B WaycottRussiaIoni Bowcher QUALIFIED
Arvin Q KuskoIndiaAnna Fali PROPOSAL
Mayumi P WaycottUnited KingdomOnyama Limba UNQUALIFIED
Johnson V TollnerCanadaXuxue Feng QUALIFIED
Octavia A ChuiRussiaStephen Shaw PROPOSAL
Maisha P CampainRussiaAnna Fali NEW
Silvio Y GauchoItalyOnyama Limba PROPOSAL
Murillo A RoysterSpainIoni Bowcher NEW
Tony R GillianAustraliaBernardo Dominic NEGOTIATION
Jennifer O PaprockiRussiaAmy Elsner NEW
Cody J RutaGermanyIvan Magalhaes UNQUALIFIED
Johnson K WieserAustraliaAsiya Javayant PROPOSAL
Maisha P FlosiAustraliaAsiya Javayant NEW
Nicolas E WhobreyAustraliaBernardo Dominic PROPOSAL
Cody H SergiIndiaIoni Bowcher RENEWAL
Darci M DoeItalyIoni Bowcher PROPOSAL
Leon V ShinkoBrazilElwin Sharvill PROPOSAL
Aditya Q FlosiArgentinaOnyama Limba PROPOSAL
Clifford W PerinJapanIvan Magalhaes QUALIFIED
Frozen Columns
Name
Sinclair D Oldroyd
Rodrigues A Slusarski
Ivar V Caudy
Nicolas B Gillian
Greenwood K Amigon
Isabel Z Kolmetz
Isabel Z Royster
Wickens P Gillian
Mujtaba L Amigon
Leon W Butt
Claire Q Ferencz
Julie B Stenseth
Mayumi H Butt
James H Malet
Mujtaba S Darakjy
Jeanfrancois W Perin
Clifford G Marrier
Aditya Q Dilliard
James H Briddick
Adams U Saylors
Costa B Glick
Kaitlin S Figeroa
Faith K Garufi
Jennifer J Maclead
Aditya U Albares
Ricardo M Flosi
Ivar N Nestle
Ricardo U Morasca
Johnson W Glick
Jennifer F Slusarski
Ivar F Whobrey
Costa O Royster
Johnson H Rim
David L Shinko
Mayumi B Rim
Cody N Kusko
Isabel K Kusko
Salvatore J Morasca
Adams D Garufi
Leon Z Venere
Cody T Campain
Ivar B Figeroa
Costa V Morasca
Kadeem U Rim
Tony S Rim
Misaki V Venere
Cody W Ruta
Claire N Dilliard
Morrow B Ostrosky
Stacey F Whobrey
IdCountryDate
1000Spain2024-06-13
1001Spain2024-06-12
1002Italy2024-05-30
1003Italy2024-06-11
1004Brazil2024-06-10
1005France2024-06-05
1006India2024-06-05
1007Australia2024-05-23
1008Russia2024-05-31
1009Brazil2024-05-19
1010Brazil2024-05-30
1011India2024-06-07
1012France2024-05-26
1013Germany2024-06-07
1014Russia2024-05-20
1015Brazil2024-06-04
1016Japan2024-05-23
1017Germany2024-05-30
1018France2024-06-05
1019France2024-06-03
1020Spain2024-05-27
1021India2024-05-31
1022Spain2024-06-03
1023Argentina2024-06-10
1024Japan2024-05-17
1025Argentina2024-06-09
1026Germany2024-05-26
1027India2024-05-16
1028Russia2024-05-23
1029Australia2024-05-19
1030Canada2024-06-07
1031Brazil2024-05-23
1032France2024-05-23
1033Japan2024-05-17
1034Australia2024-05-29
1035Italy2024-06-08
1036Australia2024-05-21
1037Australia2024-05-26
1038United Kingdom2024-05-30
1039France2024-05-24
1040Australia2024-05-22
1041France2024-05-27
1042United Kingdom2024-05-23
1043Argentina2024-05-23
1044Spain2024-05-24
1045Canada2024-05-25
1046Spain2024-06-13
1047Russia2024-05-16
1048Argentina2024-05-24
1049India2024-06-13

On-Demand Data

NameIdCountryDate
Antonio A Kusko1000Japan2024-06-07
Kaitlin J Caudy1001France2024-06-06
Deepesh N Perin1002Italy2024-06-14
Wickens Y Nestle1003Italy2024-06-08
Kaitlin Y Ruta1004Australia2024-05-21
Misaki R Kusko1005Canada2024-05-22
Aditya W Butt1006Australia2024-05-17
Johnson T Ostrosky1007Canada2024-05-24
Leon N Ferencz1008Italy2024-05-23
Faith G Malet1009Brazil2024-05-24
Kadeem P Perin1010Russia2024-06-02
Ashley I Saylors1011Brazil2024-05-18
Isabel Q Figeroa1012Argentina2024-05-26
Claire Z Albares1013Spain2024-05-26
Kaitlin O Doe1014Spain2024-05-29
Aditya C Chui1015Russia2024-06-01
Deepesh Y Ferencz1016Canada2024-06-01
Julie D Oldroyd1017United Kingdom2024-06-10
Ashley C Doe1018United Kingdom2024-05-29
Emily S Foller1019Spain2024-05-27
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Wickens U InouyeFranceXuxue Feng PROPOSAL
Johnson I BologniaUnited KingdomElwin Sharvill NEGOTIATION
Arvin P MaletBrazilIoni Bowcher QUALIFIED
Juan L NestleAustraliaAnna Fali NEGOTIATION
Izzy E OstroskyJapanIoni Bowcher QUALIFIED
Emily E WhobreyArgentinaIoni Bowcher PROPOSAL
Sinclair H InouyeIndiaIoni Bowcher RENEWAL
Aika M GillianBrazilBernardo Dominic RENEWAL
Jeanfrancois Q BriddickItalyAnna Fali NEW
Arvin V KuskoBrazilIvan Magalhaes NEGOTIATION
Morrow L ChuiJapanAsiya Javayant NEW
Ashley R MaletItalyAmy Elsner NEGOTIATION
Misaki D WaycottAustraliaIoni Bowcher NEGOTIATION
Kaitlin C PaprockiAustraliaOnyama Limba RENEWAL
Mayumi R SaylorsAustraliaAmy Elsner RENEWAL
Morrow G TollnerAustraliaStephen Shaw NEGOTIATION
Kaitlin L VenereJapanIoni Bowcher UNQUALIFIED
Nicolas M SlusarskiJapanAmy Elsner PROPOSAL
Julie U StensethUnited KingdomIvan Magalhaes PROPOSAL
Nicolas C InouyeSpainIvan Magalhaes QUALIFIED
Maria S DilliardFranceBernardo Dominic PROPOSAL
Stacey S FollerBrazilElwin Sharvill NEW
Emily W CaldareraAustraliaAnna Fali NEGOTIATION
Mayumi O RulapaughJapanXuxue Feng QUALIFIED
Faith I SchemmerCanadaAnna Fali UNQUALIFIED
Costa C GarufiRussiaIoni Bowcher PROPOSAL
Wickens Z PaprockiArgentinaOnyama Limba NEGOTIATION
Rodrigues F DoeArgentinaElwin Sharvill QUALIFIED
Aruna R PaprockiBrazilAnna Fali PROPOSAL
Alejandro X StensethRussiaAnna Fali RENEWAL
David G RulapaughUnited KingdomBernardo Dominic RENEWAL
Leon Q KuskoJapanAsiya Javayant PROPOSAL
Greenwood B CaudyJapanAmy Elsner NEGOTIATION
Wickens N OstroskyArgentinaOnyama Limba UNQUALIFIED
Costa I GillianRussiaIoni Bowcher UNQUALIFIED
Kaitlin V StensethArgentinaStephen Shaw NEW
Leon Z PoquetteSpainIvan Magalhaes QUALIFIED
Misaki P OstroskyItalyIvan Magalhaes RENEWAL
James Q ButtAustraliaAsiya Javayant NEW
Julie G WaycottItalyAmy Elsner PROPOSAL

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