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
Johnson R StensethRussiaStephen Shaw PROPOSAL
Francesco V DilliardSpainIoni Bowcher PROPOSAL
Morrow U PerinAustraliaAnna Fali NEGOTIATION
Sinclair D ChuiArgentinaAmy Elsner NEW
Isabel R FlosiSpainStephen Shaw QUALIFIED
Jennifer I MaletBrazilStephen Shaw UNQUALIFIED
Adams A NickaFranceXuxue Feng QUALIFIED
Sinclair Q PoquetteBrazilStephen Shaw NEW
Munro D OldroydAustraliaIoni Bowcher RENEWAL
Claire N CampainBrazilOnyama Limba RENEWAL
Wickens F AmigonCanadaAmy Elsner PROPOSAL
Sinclair V GarufiSpainAsiya Javayant RENEWAL
Faith R DoeAustraliaIoni Bowcher UNQUALIFIED
Faith M CampainFranceXuxue Feng NEGOTIATION
Jones W RoysterRussiaXuxue Feng NEW
Leja D CaudyJapanIoni Bowcher PROPOSAL
Jefferson F NickaGermanyElwin Sharvill PROPOSAL
Jennifer X CampainBrazilIoni Bowcher QUALIFIED
Izzy F RutaAustraliaOnyama Limba NEGOTIATION
Izzy G StockhamCanadaAmy Elsner PROPOSAL
Wickens Q FerenczItalyIoni Bowcher UNQUALIFIED
Costa A SlusarskiBrazilBernardo Dominic QUALIFIED
Arvin F MorascaSpainOnyama Limba PROPOSAL
Misaki C BriddickFranceIvan Magalhaes RENEWAL
Faith T ShinkoUnited KingdomAnna Fali UNQUALIFIED
Adams C KuskoRussiaBernardo Dominic UNQUALIFIED
Johnson M CampainIndiaBernardo Dominic UNQUALIFIED
Kadeem W PoquetteAustraliaIvan Magalhaes NEW
Adams R NickaCanadaIvan Magalhaes UNQUALIFIED
Jones A MarrierUnited KingdomElwin Sharvill RENEWAL
Isabel H IturbideItalyAsiya Javayant PROPOSAL
Misaki U FerenczAustraliaBernardo Dominic PROPOSAL
James Q KuskoRussiaElwin Sharvill NEGOTIATION
Munro I GarufiUnited KingdomOnyama Limba QUALIFIED
Deepesh F VenereUnited KingdomElwin Sharvill UNQUALIFIED
Ricardo M BriddickFranceXuxue Feng NEGOTIATION
Murillo P RimArgentinaIvan Magalhaes NEGOTIATION
Jefferson Z PaprockiBrazilAsiya Javayant NEW
Kaitlin D BowleyArgentinaIvan Magalhaes PROPOSAL
Julie L WhobreyUnited KingdomXuxue Feng NEGOTIATION
Francesco D GlickSpainAnna Fali RENEWAL
Mujtaba N FerenczGermanyAnna Fali PROPOSAL
Ivar N SergiArgentinaIoni Bowcher NEW
Jennifer J GlickSpainElwin Sharvill UNQUALIFIED
Aditya F GarufiUnited KingdomAsiya Javayant RENEWAL
Tony A WhobreyBrazilElwin Sharvill RENEWAL
Mayumi V MacleadUnited KingdomXuxue Feng PROPOSAL
Greenwood J SlusarskiBrazilXuxue Feng NEGOTIATION
Jennifer K StockhamAustraliaStephen Shaw UNQUALIFIED
Johnson G OldroydCanadaXuxue Feng NEW
Horizontal
NameCountryRepresentativeStatus
Maisha E PerinJapanIvan Magalhaes NEGOTIATION
Mayumi C ShinkoGermanyBernardo Dominic QUALIFIED
Izzy R FerenczJapanBernardo Dominic RENEWAL
Ashley P RimSpainAmy Elsner PROPOSAL
Arvin P WhobreyCanadaXuxue Feng RENEWAL
Emily C ButtSpainAsiya Javayant QUALIFIED
Aditya J MacleadJapanElwin Sharvill RENEWAL
Maria Y FollerArgentinaElwin Sharvill PROPOSAL
Morrow O FigeroaSpainIvan Magalhaes UNQUALIFIED
Juan P AlbaresSpainElwin Sharvill PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Faith R WaycottJapan2024-06-06Buckley Miller Wright UNQUALIFIED67Xuxue Feng
1001Julie F MacleadSpain2024-05-27Dorl, James J Esq UNQUALIFIED17Elwin Sharvill
1002Francesco A WaycottRussia2024-06-19Morlong Associates PROPOSAL1Elwin Sharvill
1003Sinclair C CaldareraRussia2024-06-18King, Christopher A Esq NEW70Elwin Sharvill
1004Costa U StockhamCanada2024-06-20Chemel, James L Cpa PROPOSAL55Asiya Javayant
1005Jefferson M FlosiItaly2024-06-09Chapman, Ross E Esq UNQUALIFIED16Asiya Javayant
1006Jones U MaletRussia2024-06-06Benton, John B Jr QUALIFIED61Ivan Magalhaes
1007Alejandro D IturbideGermany2024-06-15Chemel, James L Cpa NEW61Anna Fali
1008Isabel S PaprockiJapan2024-06-06Truhlar And Truhlar Attys QUALIFIED2Asiya Javayant
1009Morrow L BriddickBrazil2024-06-23Morlong Associates NEW52Ivan Magalhaes
1010Maisha Y PaprockiGermany2024-06-14Feltz Printing Service QUALIFIED76Anna Fali
1011Kaitlin V FerenczBrazil2024-06-16Printing Dimensions NEW6Stephen Shaw
1012Izzy C BowleyArgentina2024-06-21Printing Dimensions PROPOSAL34Xuxue Feng
1013Faith P RoysterIndia2024-05-31King, Christopher A Esq UNQUALIFIED18Bernardo Dominic
1014Costa J PerinIndia2024-06-14Rangoni Of Florence NEGOTIATION91Bernardo Dominic
1015Clifford I DarakjyArgentina2024-06-03Morlong Associates NEW84Amy Elsner
1016Rodrigues I CaudyCanada2024-06-04Commercial Press RENEWAL84Amy Elsner
1017Maria R DarakjyAustralia2024-06-16Chemel, James L Cpa PROPOSAL22Asiya Javayant
1018David M BowleyJapan2024-06-05Morlong Associates RENEWAL31Bernardo Dominic
1019Clifford Q GlickCanada2024-05-30Chapman, Ross E Esq QUALIFIED55Amy Elsner
1020Tony N SlusarskiFrance2024-06-19Feltz Printing Service NEW90Xuxue Feng
1021Munro K FollerItaly2024-06-23Rousseaux, Michael Esq RENEWAL81Ivan Magalhaes
1022Kaitlin F MaletItaly2024-06-12King, Christopher A Esq NEW79Onyama Limba
1023Leon L PaprockiCanada2024-05-28Dorl, James J Esq QUALIFIED56Amy Elsner
1024Ricardo M AmigonGermany2024-06-09Benton, John B Jr QUALIFIED51Bernardo Dominic
1025Mayumi G DarakjyFrance2024-06-10Commercial Press PROPOSAL81Stephen Shaw
1026Leon U FlosiSpain2024-06-15Benton, John B Jr QUALIFIED83Amy Elsner
1027Silvio O MacleadSpain2024-06-07Rousseaux, Michael Esq PROPOSAL22Onyama Limba
1028Misaki P FerenczFrance2024-06-15Rangoni Of Florence UNQUALIFIED28Asiya Javayant
1029Nicolas F RimItaly2024-05-30Feiner Bros UNQUALIFIED46Stephen Shaw
1030Maisha A SlusarskiIndia2024-06-22Feltz Printing Service NEGOTIATION7Bernardo Dominic
1031Leja Z FlosiGermany2024-05-27Feiner Bros PROPOSAL81Stephen Shaw
1032Stacey C DilliardBrazil2024-06-10King, Christopher A Esq NEGOTIATION72Anna Fali
1033Darci M AmigonUnited Kingdom2024-06-02Commercial Press RENEWAL19Bernardo Dominic
1034Clifford G BowleyFrance2024-06-23Rangoni Of Florence NEGOTIATION1Asiya Javayant
1035Greenwood I SergiItaly2024-05-27Dorl, James J Esq NEW31Asiya Javayant
1036Darci L VocelkaRussia2024-06-02Commercial Press RENEWAL75Bernardo Dominic
1037Claire V ShinkoJapan2024-06-17Rousseaux, Michael Esq PROPOSAL28Bernardo Dominic
1038Jennifer W BriddickRussia2024-06-11Morlong Associates NEW84Ivan Magalhaes
1039Adams R GillianArgentina2024-06-06Chanay, Jeffrey A Esq NEW20Bernardo Dominic
1040Morrow K MacleadAustralia2024-06-11Rousseaux, Michael Esq NEGOTIATION5Ivan Magalhaes
1041Mujtaba V PerinAustralia2024-06-18Rousseaux, Michael Esq UNQUALIFIED3Ivan Magalhaes
1042Jefferson B PaprockiArgentina2024-06-04Chapman, Ross E Esq PROPOSAL2Anna Fali
1043Mayumi E RimRussia2024-06-10Commercial Press RENEWAL15Anna Fali
1044Jones V MaletSpain2024-05-28Rangoni Of Florence PROPOSAL4Amy Elsner
1045Aika J CaldareraFrance2024-06-11Dorl, James J Esq QUALIFIED71Bernardo Dominic
1046Ricardo E OldroydItaly2024-06-04Truhlar And Truhlar Attys NEW26Anna Fali
1047Costa K VenereAustralia2024-06-06Dorl, James J Esq UNQUALIFIED17Elwin Sharvill
1048Ashley M RimArgentina2024-06-17Dorl, James J Esq UNQUALIFIED83Xuxue Feng
1049Isabel N BriddickJapan2024-06-03Commercial Press NEW37Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Wickens Z BologniaRussiaOnyama Limba UNQUALIFIED
Misaki L RulapaughAustraliaIoni Bowcher RENEWAL
David Z ShinkoItalyOnyama Limba UNQUALIFIED
Adams G RimFranceElwin Sharvill RENEWAL
Ricardo W MorascaRussiaStephen Shaw QUALIFIED
Aditya E IturbideBrazilElwin Sharvill PROPOSAL
Wickens W WieserFranceStephen Shaw UNQUALIFIED
Smith V WieserRussiaElwin Sharvill NEGOTIATION
Jefferson E NestleIndiaOnyama Limba QUALIFIED
Darci J GlickJapanOnyama Limba UNQUALIFIED
Cody P ChuiIndiaXuxue Feng QUALIFIED
Maisha W InouyeIndiaStephen Shaw RENEWAL
Costa M RulapaughUnited KingdomXuxue Feng NEGOTIATION
Deepesh R OstroskyRussiaElwin Sharvill NEW
Chavez E GillianFranceAsiya Javayant NEW
Francesco A RimArgentinaIvan Magalhaes QUALIFIED
Maisha G FollerIndiaIoni Bowcher QUALIFIED
Julie Y OstroskyUnited KingdomXuxue Feng UNQUALIFIED
Salvatore Q PoquetteGermanyXuxue Feng NEGOTIATION
Deepesh H FlosiArgentinaIoni Bowcher NEGOTIATION
James A FigeroaIndiaAsiya Javayant NEW
Clifford B GlickArgentinaXuxue Feng PROPOSAL
Silvio H CaudyIndiaStephen Shaw NEGOTIATION
Claire T WaycottJapanAnna Fali NEGOTIATION
Chavez V BologniaAustraliaElwin Sharvill RENEWAL
Smith O VenereSpainXuxue Feng NEGOTIATION
Greenwood H GillianSpainOnyama Limba PROPOSAL
Faith E WaycottItalyBernardo Dominic RENEWAL
Leja Q MacleadRussiaIoni Bowcher RENEWAL
Misaki R StockhamSpainElwin Sharvill UNQUALIFIED
Costa B MarrierItalyStephen Shaw UNQUALIFIED
Jeanfrancois M SchemmerCanadaIoni Bowcher PROPOSAL
Tony Y RoysterArgentinaAmy Elsner NEW
Stacey Z NickaIndiaBernardo Dominic QUALIFIED
Kaitlin I WaycottJapanAmy Elsner QUALIFIED
Greenwood L MaletItalyIoni Bowcher QUALIFIED
Emily U DilliardCanadaOnyama Limba NEGOTIATION
Antonio D SergiBrazilStephen Shaw UNQUALIFIED
Maria X AmigonRussiaStephen Shaw RENEWAL
Antonio W SlusarskiRussiaAsiya Javayant NEGOTIATION
Claire Q SergiJapanAmy Elsner NEGOTIATION
Silvio O DilliardUnited KingdomAnna Fali PROPOSAL
Misaki R OstroskyUnited KingdomElwin Sharvill QUALIFIED
Nicolas Y MaletJapanIoni Bowcher UNQUALIFIED
Rodrigues C DarakjyArgentinaAnna Fali RENEWAL
Ashley L KuskoUnited KingdomElwin Sharvill NEGOTIATION
Greenwood J WaycottSpainAnna Fali RENEWAL
Johnson P OldroydCanadaAsiya Javayant NEGOTIATION
Darci R MaletItalyAnna Fali QUALIFIED
Smith G NickaAustraliaOnyama Limba NEGOTIATION
Frozen Columns
Name
Tony Q Chui
Arvin J Malet
Kaitlin W Ruta
Arvin B Nicka
Mayumi N Glick
Johnson M Briddick
Leon L Marrier
Smith Z Waycott
Aika T Briddick
Aruna H Venere
Aditya L Saylors
Juan D Nestle
Kaitlin Z Slusarski
David G Caldarera
Adams Y Campain
Ricardo W Waycott
Alejandro F Oldroyd
Arvin P Wieser
Francesco Z Stockham
Jones B Kusko
Jeanfrancois D Kusko
Murillo L Royster
Maria A Oldroyd
Ashley D Ruta
Tony B Royster
Mujtaba E Bowley
Leja Z Campain
Mujtaba Q Oldroyd
Aditya J Malet
Smith U Bowley
Leon A Caldarera
Juan Q Shinko
Aruna T Kusko
Rodrigues L Morasca
Cody B Kusko
Arvin Q Kusko
Izzy U Saylors
Smith U Glick
David P Stenseth
Jennifer G Kusko
Rodrigues T Bolognia
Adams K Flosi
Claire H Wieser
Isabel N Waycott
Kaitlin D Ruta
Sinclair Q Schemmer
Claire Q Whobrey
Jennifer O Figeroa
Salvatore P Wieser
Clifford I Foller
IdCountryDate
1000Spain2024-05-28
1001Australia2024-06-22
1002Canada2024-06-11
1003Japan2024-06-16
1004Argentina2024-06-01
1005France2024-06-05
1006Argentina2024-05-28
1007Italy2024-05-28
1008Australia2024-06-06
1009Germany2024-05-27
1010Japan2024-05-26
1011Argentina2024-06-18
1012Italy2024-06-01
1013Australia2024-06-17
1014India2024-05-30
1015Australia2024-05-30
1016India2024-06-14
1017Japan2024-06-05
1018Australia2024-06-13
1019Argentina2024-06-01
1020Australia2024-06-13
1021United Kingdom2024-06-17
1022Argentina2024-06-22
1023United Kingdom2024-06-01
1024France2024-06-21
1025Canada2024-06-20
1026Spain2024-05-26
1027Japan2024-06-03
1028Italy2024-06-10
1029Canada2024-06-02
1030Japan2024-05-29
1031Germany2024-06-02
1032Japan2024-06-12
1033France2024-06-11
1034Germany2024-06-07
1035Brazil2024-05-27
1036United Kingdom2024-06-21
1037Germany2024-06-14
1038Japan2024-06-14
1039Argentina2024-05-30
1040Spain2024-06-04
1041Brazil2024-06-08
1042United Kingdom2024-06-02
1043France2024-05-30
1044Canada2024-06-09
1045Germany2024-06-01
1046Spain2024-06-23
1047Italy2024-06-23
1048Japan2024-06-05
1049Spain2024-06-02

On-Demand Data

NameIdCountryDate
Ricardo S Schemmer1000Canada2024-05-28
Alejandro I Stenseth1001India2024-06-08
Adams A Darakjy1002Brazil2024-05-29
Silvio B Shinko1003Japan2024-06-03
Aditya B Slusarski1004France2024-06-22
Smith K Dilliard1005Canada2024-06-19
Faith T Glick1006France2024-06-13
Sinclair X Caldarera1007Italy2024-06-06
Maisha M Rim1008India2024-06-15
Izzy J Ruta1009Australia2024-06-05
Darci S Gillian1010Japan2024-06-14
Juan L Gaucho1011Brazil2024-06-20
Nicolas K Royster1012Italy2024-06-05
Salvatore H Caudy1013Germany2024-06-23
Mayumi X Nicka1014Russia2024-06-16
Adams S Stockham1015Brazil2024-06-02
Morrow Q Schemmer1016Italy2024-05-30
Wickens F Briddick1017United Kingdom2024-06-24
Aika S Rim1018Canada2024-05-26
Salvatore O Caudy1019Russia2024-06-15
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Leon H CaudyGermanyElwin Sharvill UNQUALIFIED
Emily K OldroydFranceStephen Shaw RENEWAL
Kadeem P StensethGermanyStephen Shaw QUALIFIED
Francesco D RimSpainIoni Bowcher NEGOTIATION
Salvatore K NestleFranceStephen Shaw UNQUALIFIED
Maria O DilliardSpainBernardo Dominic UNQUALIFIED
Arvin B FollerCanadaIoni Bowcher PROPOSAL
Leon A SlusarskiRussiaAnna Fali NEW
Greenwood C FollerArgentinaAsiya Javayant PROPOSAL
Francesco I PerinCanadaElwin Sharvill NEGOTIATION
Claire E DarakjyRussiaAmy Elsner PROPOSAL
Maria J CaldareraCanadaIoni Bowcher RENEWAL
Rodrigues P InouyeItalyAmy Elsner NEGOTIATION
Jennifer K VocelkaGermanyBernardo Dominic NEW
Arvin F GarufiIndiaStephen Shaw NEGOTIATION
Darci A TollnerFranceAnna Fali NEW
Adams Q RulapaughIndiaAsiya Javayant QUALIFIED
Jennifer R OstroskySpainAmy Elsner QUALIFIED
Aika G RulapaughUnited KingdomAmy Elsner QUALIFIED
Leon B MaletArgentinaOnyama Limba QUALIFIED
Stacey S WhobreyBrazilAmy Elsner NEW
Murillo M NestleSpainElwin Sharvill UNQUALIFIED
Octavia X KolmetzSpainStephen Shaw QUALIFIED
Kaitlin Y DoeFranceIvan Magalhaes NEW
Octavia M AmigonBrazilIvan Magalhaes RENEWAL
Chavez C CaudySpainAsiya Javayant PROPOSAL
Ricardo E AlbaresItalyBernardo Dominic NEW
Salvatore J GarufiItalyIvan Magalhaes RENEWAL
Maria C CampainUnited KingdomAmy Elsner NEW
Francesco Q FerenczJapanOnyama Limba QUALIFIED
Kadeem F KuskoJapanAsiya Javayant QUALIFIED
Ashley I MaletRussiaBernardo Dominic NEGOTIATION
James S KolmetzBrazilStephen Shaw UNQUALIFIED
Murillo K WieserItalyXuxue Feng RENEWAL
Salvatore D MorascaIndiaAsiya Javayant RENEWAL
Leon M PoquetteItalyXuxue Feng NEW
Julie N ChuiAustraliaAmy Elsner RENEWAL
Kadeem F IturbideCanadaXuxue Feng QUALIFIED
Claire I CaldareraUnited KingdomAmy Elsner RENEWAL
Izzy Z VocelkaCanadaStephen 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>