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
Ivar B KolmetzArgentinaXuxue Feng QUALIFIED
Wickens M BowleyGermanyOnyama Limba RENEWAL
Misaki K BriddickRussiaXuxue Feng RENEWAL
Silvio K WieserJapanXuxue Feng NEGOTIATION
Darci K TollnerFranceAmy Elsner QUALIFIED
Francesco T PerinUnited KingdomElwin Sharvill QUALIFIED
Johnson V FollerItalyStephen Shaw NEW
Kaitlin P ShinkoItalyIoni Bowcher NEW
Ivar J FollerIndiaOnyama Limba RENEWAL
Leon M MacleadArgentinaIoni Bowcher NEW
Greenwood B FollerIndiaIoni Bowcher NEW
Greenwood N ChuiUnited KingdomBernardo Dominic NEGOTIATION
Kadeem T MorascaIndiaOnyama Limba NEW
Aruna R SlusarskiJapanAmy Elsner RENEWAL
Murillo Z DoeRussiaElwin Sharvill NEW
Maisha P MarrierSpainOnyama Limba RENEWAL
Silvio B WhobreyAustraliaAnna Fali NEGOTIATION
Maisha L DoeFranceBernardo Dominic RENEWAL
Faith K RutaIndiaElwin Sharvill NEGOTIATION
Aika G BriddickUnited KingdomAmy Elsner NEGOTIATION
Juan H StockhamUnited KingdomXuxue Feng NEGOTIATION
Alejandro X BowleySpainBernardo Dominic NEW
Misaki O GillianCanadaAmy Elsner UNQUALIFIED
Octavia M FigeroaArgentinaOnyama Limba RENEWAL
Francesco N CampainIndiaXuxue Feng NEW
Kadeem V KolmetzIndiaXuxue Feng QUALIFIED
Smith T ShinkoCanadaXuxue Feng NEW
Alejandro E GauchoGermanyBernardo Dominic NEGOTIATION
Silvio H MaletAustraliaBernardo Dominic PROPOSAL
Sinclair A NestleJapanIoni Bowcher UNQUALIFIED
Wickens T AlbaresUnited KingdomIoni Bowcher QUALIFIED
James C FigeroaGermanyStephen Shaw PROPOSAL
Wickens G RimGermanyAsiya Javayant PROPOSAL
Chavez K StockhamRussiaIvan Magalhaes QUALIFIED
Darci J SaylorsSpainOnyama Limba PROPOSAL
Deepesh K ChuiGermanyElwin Sharvill RENEWAL
Octavia P MorascaArgentinaIoni Bowcher UNQUALIFIED
Tony Q VenereRussiaOnyama Limba NEGOTIATION
Chavez M NickaArgentinaXuxue Feng PROPOSAL
Wickens K OstroskySpainElwin Sharvill UNQUALIFIED
Ivar F ShinkoItalyIvan Magalhaes NEW
Greenwood C AmigonItalyAmy Elsner NEGOTIATION
Claire N RutaIndiaXuxue Feng UNQUALIFIED
Kaitlin C ButtFranceAmy Elsner NEGOTIATION
Jennifer A MorascaGermanyBernardo Dominic RENEWAL
Julie E CaudyGermanyIvan Magalhaes RENEWAL
James L RutaCanadaAnna Fali NEGOTIATION
Silvio J OldroydJapanStephen Shaw RENEWAL
Leon D MorascaCanadaAmy Elsner NEGOTIATION
Johnson G ShinkoCanadaOnyama Limba UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Leon R RoysterJapanBernardo Dominic RENEWAL
Aruna V InouyeIndiaOnyama Limba NEGOTIATION
Darci M MorascaFranceXuxue Feng QUALIFIED
Aika C DilliardRussiaXuxue Feng UNQUALIFIED
Francesco X NickaJapanStephen Shaw PROPOSAL
Aika C SergiItalyAsiya Javayant QUALIFIED
Alejandro P GauchoFranceXuxue Feng RENEWAL
Aruna K StockhamJapanAmy Elsner UNQUALIFIED
Antonio F IturbideCanadaIoni Bowcher RENEWAL
Stacey Z DoeJapanXuxue Feng RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jones J VenereArgentina2024-04-29Rangoni Of Florence NEW56Ivan Magalhaes
1001Misaki V RoysterRussia2024-05-17Benton, John B Jr QUALIFIED22Stephen Shaw
1002Nicolas L BowleySpain2024-05-18Truhlar And Truhlar Attys NEGOTIATION68Xuxue Feng
1003Salvatore L SlusarskiUnited Kingdom2024-05-18Benton, John B Jr UNQUALIFIED88Amy Elsner
1004Emily U VenereBrazil2024-05-09Feltz Printing Service RENEWAL22Ioni Bowcher
1005Leon K PaprockiAustralia2024-05-18Truhlar And Truhlar Attys QUALIFIED7Stephen Shaw
1006Mujtaba D SergiItaly2024-05-15Chemel, James L Cpa PROPOSAL25Elwin Sharvill
1007Nicolas Y BologniaRussia2024-05-21Chemel, James L Cpa NEW26Ioni Bowcher
1008Jennifer G VocelkaSpain2024-05-08King, Christopher A Esq RENEWAL69Onyama Limba
1009Salvatore R BologniaArgentina2024-05-06Commercial Press QUALIFIED6Xuxue Feng
1010Ashley R AlbaresJapan2024-05-14Rangoni Of Florence RENEWAL31Asiya Javayant
1011Nicolas H ButtJapan2024-05-12Chapman, Ross E Esq UNQUALIFIED9Bernardo Dominic
1012Octavia E GarufiItaly2024-05-17Morlong Associates RENEWAL35Bernardo Dominic
1013Darci X PerinCanada2024-05-22Rousseaux, Michael Esq NEW49Stephen Shaw
1014Antonio X RoysterArgentina2024-05-02Feltz Printing Service UNQUALIFIED95Anna Fali
1015Maria C VenereGermany2024-05-20Chanay, Jeffrey A Esq UNQUALIFIED76Stephen Shaw
1016Misaki U BologniaSpain2024-04-29Buckley Miller Wright RENEWAL42Ivan Magalhaes
1017Mayumi U MaletGermany2024-05-18Chapman, Ross E Esq QUALIFIED57Ivan Magalhaes
1018Kaitlin X KolmetzRussia2024-05-08Rousseaux, Michael Esq NEW64Onyama Limba
1019Jennifer B VenereSpain2024-04-25Truhlar And Truhlar Attys NEW41Asiya Javayant
1020Maria E WhobreyGermany2024-05-04Dorl, James J Esq NEW93Ioni Bowcher
1021James E RimItaly2024-05-14Morlong Associates QUALIFIED93Anna Fali
1022Nicolas P GauchoGermany2024-05-08Truhlar And Truhlar Attys PROPOSAL1Anna Fali
1023Nicolas K MacleadBrazil2024-05-06Rousseaux, Michael Esq QUALIFIED79Ioni Bowcher
1024Mujtaba Y ButtFrance2024-05-06Feltz Printing Service NEW27Asiya Javayant
1025Izzy Z StockhamBrazil2024-05-10Commercial Press UNQUALIFIED68Anna Fali
1026Izzy O RoysterBrazil2024-04-28Chanay, Jeffrey A Esq PROPOSAL87Xuxue Feng
1027Ricardo N FerenczAustralia2024-05-16Chapman, Ross E Esq NEW67Asiya Javayant
1028Tony N VenereRussia2024-05-10Buckley Miller Wright PROPOSAL66Xuxue Feng
1029Maria B MorascaRussia2024-04-28King, Christopher A Esq PROPOSAL69Anna Fali
1030Izzy S TollnerItaly2024-05-15Buckley Miller Wright QUALIFIED17Amy Elsner
1031Claire T WhobreyItaly2024-04-29King, Christopher A Esq UNQUALIFIED51Amy Elsner
1032Kaitlin E GlickBrazil2024-05-23Printing Dimensions NEGOTIATION74Asiya Javayant
1033Faith L GillianJapan2024-05-19Morlong Associates NEGOTIATION53Bernardo Dominic
1034Wickens Q MaletItaly2024-05-11Truhlar And Truhlar Attys UNQUALIFIED70Xuxue Feng
1035Leja O NickaFrance2024-04-29Chemel, James L Cpa QUALIFIED55Onyama Limba
1036Octavia G VenereCanada2024-05-06Benton, John B Jr NEW76Ivan Magalhaes
1037Cody I MorascaUnited Kingdom2024-04-27Chanay, Jeffrey A Esq PROPOSAL49Bernardo Dominic
1038Jones B DoeJapan2024-05-24Rangoni Of Florence RENEWAL16Anna Fali
1039Jones C PoquetteUnited Kingdom2024-04-25Commercial Press QUALIFIED59Asiya Javayant
1040Wickens U PerinGermany2024-05-13Rousseaux, Michael Esq QUALIFIED31Ivan Magalhaes
1041Izzy I KolmetzSpain2024-05-19King, Christopher A Esq RENEWAL54Ioni Bowcher
1042Leon G PaprockiFrance2024-05-15Rangoni Of Florence RENEWAL86Onyama Limba
1043Tony Y FigeroaSpain2024-05-04Chanay, Jeffrey A Esq NEGOTIATION62Xuxue Feng
1044Aditya Z CampainBrazil2024-05-20Chemel, James L Cpa UNQUALIFIED62Ivan Magalhaes
1045Isabel O ChuiRussia2024-05-24Chanay, Jeffrey A Esq PROPOSAL64Elwin Sharvill
1046Aditya T FerenczIndia2024-05-17Feiner Bros QUALIFIED67Elwin Sharvill
1047Misaki D OldroydAustralia2024-05-11Chanay, Jeffrey A Esq QUALIFIED47Anna Fali
1048Clifford Z PaprockiItaly2024-05-24Chanay, Jeffrey A Esq NEW64Onyama Limba
1049Leon J WhobreyUnited Kingdom2024-05-10Chemel, James L Cpa RENEWAL7Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Jennifer L SergiAustraliaIoni Bowcher RENEWAL
Nicolas P AmigonUnited KingdomXuxue Feng NEW
Adams W SlusarskiIndiaAnna Fali UNQUALIFIED
Silvio R GlickSpainBernardo Dominic QUALIFIED
Adams Q VenereSpainXuxue Feng RENEWAL
Kadeem L SaylorsFranceAnna Fali NEW
Aruna P GillianAustraliaAmy Elsner PROPOSAL
Mujtaba R FigeroaArgentinaBernardo Dominic PROPOSAL
Jeanfrancois K PoquetteSpainIvan Magalhaes NEW
Smith W IturbideAustraliaIvan Magalhaes NEW
Misaki I SlusarskiCanadaStephen Shaw QUALIFIED
Kadeem X IturbideBrazilBernardo Dominic PROPOSAL
Antonio M RutaRussiaAsiya Javayant UNQUALIFIED
Morrow V VocelkaArgentinaXuxue Feng NEW
Mujtaba G WhobreyUnited KingdomIvan Magalhaes NEGOTIATION
Jefferson Y FerenczUnited KingdomAmy Elsner UNQUALIFIED
Chavez W FollerSpainStephen Shaw NEW
Faith Z RimRussiaStephen Shaw PROPOSAL
Emily B MaletSpainAnna Fali UNQUALIFIED
Maisha P NestleUnited KingdomOnyama Limba PROPOSAL
Ivar S PaprockiGermanyAsiya Javayant QUALIFIED
Adams C SaylorsIndiaAmy Elsner PROPOSAL
Maria Q RimArgentinaIoni Bowcher NEGOTIATION
Murillo M MacleadSpainAnna Fali UNQUALIFIED
Jeanfrancois L OldroydItalyOnyama Limba NEGOTIATION
Stacey J FerenczItalyIoni Bowcher NEW
Morrow I PoquetteSpainBernardo Dominic PROPOSAL
Adams E CampainFranceStephen Shaw NEW
Munro X GillianArgentinaAmy Elsner UNQUALIFIED
Izzy J PaprockiGermanyAnna Fali UNQUALIFIED
Tony G MaletItalyOnyama Limba UNQUALIFIED
Leja I IturbideGermanyAsiya Javayant QUALIFIED
Arvin N StensethGermanyStephen Shaw NEW
David Q SlusarskiBrazilIvan Magalhaes NEW
Misaki S ButtIndiaOnyama Limba NEGOTIATION
Sinclair U MorascaBrazilIvan Magalhaes RENEWAL
Juan G FerenczSpainXuxue Feng NEW
Kadeem Q WieserItalyAnna Fali NEW
Jones F IturbideRussiaElwin Sharvill RENEWAL
Murillo M DilliardRussiaIoni Bowcher PROPOSAL
Aika W MorascaRussiaStephen Shaw NEGOTIATION
Faith T DarakjyJapanStephen Shaw RENEWAL
Ricardo O VenereGermanyStephen Shaw QUALIFIED
Rodrigues O IturbideCanadaXuxue Feng PROPOSAL
Nicolas L GauchoUnited KingdomAsiya Javayant UNQUALIFIED
Murillo N DilliardItalyStephen Shaw QUALIFIED
Jeanfrancois U ChuiRussiaAsiya Javayant NEW
Kaitlin Z SergiBrazilAsiya Javayant NEW
Leja V RutaIndiaIvan Magalhaes PROPOSAL
Emily Z NickaGermanyXuxue Feng PROPOSAL
Frozen Columns
Name
Wickens W Venere
Jones B Stenseth
Arvin K Bowley
David L Stockham
Costa N Briddick
Maria U Chui
Salvatore D Slusarski
Aika W Kusko
Leon T Stenseth
James J Shinko
Adams Q Briddick
Izzy W Waycott
Juan A Nicka
Costa T Malet
Murillo N Wieser
Smith C Shinko
Faith Q Bolognia
Tony X Tollner
Munro S Maclead
Misaki B Schemmer
Sinclair B Flosi
Mayumi E Bolognia
Misaki J Maclead
Aika E Malet
Faith X Slusarski
Misaki B Inouye
Leja X Saylors
David Q Stockham
Darci D Paprocki
Octavia X Nicka
Ricardo F Malet
Johnson J Slusarski
David H Schemmer
Ashley O Shinko
Arvin S Gillian
David X Sergi
Stacey I Gillian
Aruna M Amigon
Maisha F Maclead
Misaki I Rim
Munro A Malet
Jeanfrancois A Stockham
Kadeem L Whobrey
Ricardo E Ferencz
Ivar V Chui
Leon A Oldroyd
Maria Q Ferencz
Costa R Schemmer
David L Morasca
Kaitlin Z Chui
IdCountryDate
1000United Kingdom2024-05-12
1001Spain2024-05-23
1002Germany2024-04-26
1003France2024-04-25
1004Argentina2024-04-30
1005Australia2024-04-29
1006India2024-04-29
1007Brazil2024-05-19
1008Canada2024-05-02
1009United Kingdom2024-04-28
1010Canada2024-05-09
1011France2024-05-16
1012United Kingdom2024-05-24
1013Spain2024-05-04
1014Canada2024-05-18
1015India2024-05-21
1016Canada2024-05-08
1017France2024-05-13
1018Russia2024-05-02
1019Argentina2024-05-22
1020Argentina2024-05-14
1021Brazil2024-05-16
1022Russia2024-05-11
1023United Kingdom2024-05-15
1024Spain2024-05-17
1025Argentina2024-05-08
1026India2024-05-05
1027Italy2024-05-22
1028Australia2024-04-25
1029Italy2024-05-14
1030Germany2024-04-28
1031India2024-05-22
1032Australia2024-05-20
1033Japan2024-05-17
1034Spain2024-05-08
1035India2024-05-02
1036Australia2024-05-13
1037India2024-05-07
1038Germany2024-05-23
1039Argentina2024-05-16
1040Spain2024-04-26
1041Argentina2024-05-21
1042India2024-05-01
1043Canada2024-05-12
1044Argentina2024-05-04
1045United Kingdom2024-05-17
1046India2024-04-30
1047Canada2024-05-04
1048Italy2024-04-30
1049Australia2024-05-03

On-Demand Data

NameIdCountryDate
Chavez Z Rim1000India2024-04-30
Kaitlin D Morasca1001Spain2024-04-26
Salvatore E Whobrey1002India2024-04-28
Stacey C Malet1003Spain2024-04-28
Cody R Nicka1004Australia2024-05-12
Salvatore S Vocelka1005Argentina2024-05-09
Arvin D Dilliard1006India2024-04-26
Smith L Dilliard1007India2024-05-20
Sinclair D Schemmer1008Russia2024-05-22
Claire W Shinko1009Italy2024-05-12
Mayumi Z Waycott1010United Kingdom2024-05-10
Maria Z Marrier1011Italy2024-05-23
Jones J Campain1012Brazil2024-05-06
Rodrigues U Kolmetz1013United Kingdom2024-05-16
Izzy V Gillian1014India2024-05-22
Wickens U Royster1015France2024-05-24
Rodrigues Y Flosi1016Argentina2024-05-19
Ashley F Doe1017Germany2024-05-12
Munro J Paprocki1018France2024-04-27
Jefferson X Rim1019Russia2024-05-10
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Maria A DoeGermanyElwin Sharvill UNQUALIFIED
Claire S PoquetteArgentinaElwin Sharvill NEW
Kadeem P PaprockiGermanyStephen Shaw PROPOSAL
Jones W ChuiSpainIvan Magalhaes NEW
James E RimCanadaAsiya Javayant RENEWAL
Munro D AmigonIndiaAnna Fali RENEWAL
Aika Q MorascaFranceXuxue Feng RENEWAL
Tony S MaletAustraliaXuxue Feng PROPOSAL
Claire R BriddickCanadaIoni Bowcher UNQUALIFIED
Johnson D DilliardCanadaStephen Shaw UNQUALIFIED
Isabel K VocelkaArgentinaIvan Magalhaes NEW
Stacey H SlusarskiBrazilBernardo Dominic UNQUALIFIED
Silvio A MarrierSpainStephen Shaw QUALIFIED
Arvin U ShinkoRussiaElwin Sharvill NEW
Julie D BriddickBrazilAsiya Javayant NEGOTIATION
Ashley R OstroskyUnited KingdomStephen Shaw UNQUALIFIED
Stacey H GauchoSpainAsiya Javayant RENEWAL
Nicolas E StockhamJapanIoni Bowcher QUALIFIED
Deepesh E OstroskyArgentinaBernardo Dominic NEW
Alejandro L NickaCanadaOnyama Limba QUALIFIED
David N AmigonJapanElwin Sharvill RENEWAL
Ashley U InouyeCanadaElwin Sharvill RENEWAL
Aika A VenereJapanAmy Elsner NEGOTIATION
Smith W InouyeFranceIoni Bowcher NEW
Izzy X MaletArgentinaBernardo Dominic NEGOTIATION
Jennifer D MaletSpainIoni Bowcher NEGOTIATION
David O ChuiCanadaElwin Sharvill PROPOSAL
Jones V ChuiSpainAsiya Javayant QUALIFIED
Salvatore F IturbideSpainAnna Fali PROPOSAL
Greenwood J RimIndiaBernardo Dominic NEW
Aditya E ShinkoCanadaOnyama Limba UNQUALIFIED
Misaki L DilliardGermanyElwin Sharvill QUALIFIED
Munro G DarakjyArgentinaIoni Bowcher NEGOTIATION
Emily O VocelkaRussiaIoni Bowcher QUALIFIED
David M RulapaughBrazilStephen Shaw QUALIFIED
Misaki D GlickGermanyAmy Elsner UNQUALIFIED
Nicolas B WaycottRussiaAsiya Javayant NEGOTIATION
Clifford D FigeroaItalyAmy Elsner NEW
Smith A RutaFranceIvan Magalhaes UNQUALIFIED
Aditya H ChuiAustraliaIvan Magalhaes QUALIFIED

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