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
Silvio N VenereSpainAmy Elsner PROPOSAL
Maisha D ChuiAustraliaXuxue Feng NEGOTIATION
Stacey J ShinkoBrazilElwin Sharvill QUALIFIED
Murillo X WaycottIndiaIvan Magalhaes NEGOTIATION
Arvin V KolmetzFranceStephen Shaw UNQUALIFIED
Ashley L CampainFranceElwin Sharvill RENEWAL
Salvatore N KuskoJapanElwin Sharvill PROPOSAL
Kadeem C GillianCanadaXuxue Feng QUALIFIED
Cody U MorascaJapanIoni Bowcher UNQUALIFIED
Antonio U KuskoRussiaOnyama Limba PROPOSAL
Rodrigues H CaldareraIndiaAsiya Javayant QUALIFIED
Smith I MarrierIndiaIoni Bowcher UNQUALIFIED
Arvin H OldroydJapanAsiya Javayant NEGOTIATION
Kaitlin U GarufiUnited KingdomBernardo Dominic QUALIFIED
Isabel V FerenczBrazilAnna Fali NEGOTIATION
Maria E BowleyGermanyIoni Bowcher UNQUALIFIED
Nicolas C CampainIndiaAmy Elsner PROPOSAL
Leon E FollerSpainXuxue Feng PROPOSAL
Darci A RimGermanyAsiya Javayant NEW
Salvatore M WhobreyCanadaXuxue Feng RENEWAL
Maisha O FerenczItalyOnyama Limba UNQUALIFIED
Julie H AlbaresGermanyAnna Fali PROPOSAL
Costa N StensethFranceStephen Shaw PROPOSAL
Nicolas L WieserItalyIoni Bowcher QUALIFIED
Maisha I SlusarskiArgentinaAmy Elsner PROPOSAL
Aditya B StensethBrazilElwin Sharvill QUALIFIED
Ricardo W FerenczRussiaStephen Shaw NEGOTIATION
Kadeem U GillianBrazilAmy Elsner RENEWAL
Chavez D MarrierRussiaIoni Bowcher PROPOSAL
James R BologniaCanadaXuxue Feng QUALIFIED
Ricardo A RulapaughRussiaBernardo Dominic PROPOSAL
Silvio D WhobreyBrazilAnna Fali NEGOTIATION
Jones T SlusarskiRussiaElwin Sharvill QUALIFIED
Rodrigues G IturbideAustraliaAsiya Javayant QUALIFIED
Kadeem R VocelkaAustraliaStephen Shaw NEGOTIATION
Izzy O GauchoArgentinaIoni Bowcher PROPOSAL
Maria Z FerenczRussiaOnyama Limba PROPOSAL
Adams F FerenczBrazilAnna Fali QUALIFIED
Cody S CaudyUnited KingdomAmy Elsner RENEWAL
Adams C MaletSpainStephen Shaw UNQUALIFIED
Kaitlin Q PoquetteIndiaOnyama Limba QUALIFIED
James R InouyeFranceOnyama Limba PROPOSAL
Ashley J KuskoGermanyAnna Fali PROPOSAL
Deepesh U DilliardArgentinaStephen Shaw PROPOSAL
Arvin P StockhamSpainElwin Sharvill NEGOTIATION
Tony O DarakjyArgentinaElwin Sharvill NEGOTIATION
Mujtaba R WaycottRussiaIoni Bowcher RENEWAL
Nicolas F VenereItalyIoni Bowcher NEW
David H BologniaItalyBernardo Dominic QUALIFIED
Costa B GillianArgentinaAmy Elsner PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Silvio V BriddickArgentinaOnyama Limba UNQUALIFIED
Maria M FlosiCanadaIvan Magalhaes RENEWAL
Juan W IturbideBrazilOnyama Limba QUALIFIED
Juan F KolmetzBrazilIvan Magalhaes QUALIFIED
Costa C MorascaArgentinaXuxue Feng NEGOTIATION
Costa R ButtRussiaElwin Sharvill NEGOTIATION
Ivar G ChuiBrazilBernardo Dominic RENEWAL
James K MaletRussiaBernardo Dominic NEGOTIATION
Claire Y AlbaresCanadaBernardo Dominic NEW
Octavia R AlbaresAustraliaOnyama Limba UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Kadeem T WaycottBrazil2025-04-27Rangoni Of Florence QUALIFIED38Bernardo Dominic
1001Stacey S GillianAustralia2025-04-28Chapman, Ross E Esq UNQUALIFIED29Bernardo Dominic
1002Ashley G NestleBrazil2025-04-24King, Christopher A Esq QUALIFIED90Elwin Sharvill
1003Ashley J WaycottIndia2025-04-01Feltz Printing Service PROPOSAL12Anna Fali
1004Smith Y KolmetzJapan2025-04-20Chanay, Jeffrey A Esq NEW78Xuxue Feng
1005Francesco E WhobreyUnited Kingdom2025-04-29Feiner Bros RENEWAL17Xuxue Feng
1006Kaitlin P GarufiSpain2025-04-19Chanay, Jeffrey A Esq NEW28Elwin Sharvill
1007Juan E OldroydGermany2025-04-24Morlong Associates NEW72Elwin Sharvill
1008Aditya C DilliardIndia2025-04-09Rangoni Of Florence PROPOSAL95Amy Elsner
1009Clifford D WieserBrazil2025-04-22Rousseaux, Michael Esq UNQUALIFIED49Onyama Limba
1010Clifford C CaldareraUnited Kingdom2025-04-15Rangoni Of Florence RENEWAL92Stephen Shaw
1011Munro Q RutaBrazil2025-04-11Morlong Associates QUALIFIED71Amy Elsner
1012Jefferson T FlosiFrance2025-04-30Chapman, Ross E Esq UNQUALIFIED92Amy Elsner
1013Aruna H SlusarskiGermany2025-04-02Dorl, James J Esq PROPOSAL58Bernardo Dominic
1014Ivar C GillianGermany2025-04-07Chanay, Jeffrey A Esq UNQUALIFIED75Ioni Bowcher
1015Maisha T DarakjyAustralia2025-04-07Chapman, Ross E Esq PROPOSAL9Xuxue Feng
1016Salvatore G RulapaughRussia2025-04-12Chemel, James L Cpa UNQUALIFIED88Ivan Magalhaes
1017Leja V NestleFrance2025-04-26Feltz Printing Service QUALIFIED77Elwin Sharvill
1018Greenwood J StensethIndia2025-04-01Dorl, James J Esq PROPOSAL86Xuxue Feng
1019Salvatore G SlusarskiFrance2025-04-29Printing Dimensions RENEWAL67Amy Elsner
1020Jefferson P FerenczBrazil2025-04-10Rangoni Of Florence NEW45Stephen Shaw
1021Clifford V MorascaSpain2025-04-20Commercial Press QUALIFIED79Stephen Shaw
1022Octavia K WaycottArgentina2025-04-27Benton, John B Jr PROPOSAL32Anna Fali
1023Wickens D WaycottArgentina2025-04-20Feiner Bros NEW87Amy Elsner
1024Emily R BriddickUnited Kingdom2025-04-07Printing Dimensions NEGOTIATION45Elwin Sharvill
1025Misaki K GarufiAustralia2025-04-01Feltz Printing Service NEW18Asiya Javayant
1026Smith U MarrierCanada2025-04-07Feiner Bros QUALIFIED7Anna Fali
1027Ivar F AlbaresAustralia2025-04-08Feltz Printing Service QUALIFIED7Ioni Bowcher
1028Adams P BriddickItaly2025-04-12Feltz Printing Service QUALIFIED17Onyama Limba
1029Francesco E WhobreyArgentina2025-04-09Rangoni Of Florence PROPOSAL87Ioni Bowcher
1030Salvatore N ShinkoFrance2025-04-17Chanay, Jeffrey A Esq NEW10Asiya Javayant
1031Tony K MorascaGermany2025-04-27Chapman, Ross E Esq NEW6Asiya Javayant
1032Clifford G WieserUnited Kingdom2025-04-07Rangoni Of Florence PROPOSAL63Ioni Bowcher
1033Rodrigues R CaldareraGermany2025-04-09Commercial Press QUALIFIED10Xuxue Feng
1034Chavez B VenereBrazil2025-04-28Benton, John B Jr RENEWAL9Anna Fali
1035Leja U MarrierSpain2025-04-26Commercial Press PROPOSAL48Ivan Magalhaes
1036Rodrigues B DarakjyCanada2025-04-21Printing Dimensions NEGOTIATION14Anna Fali
1037Claire E StensethGermany2025-04-04Chanay, Jeffrey A Esq PROPOSAL92Stephen Shaw
1038Stacey O ChuiAustralia2025-04-14Morlong Associates QUALIFIED32Stephen Shaw
1039Silvio T SergiFrance2025-04-02Feltz Printing Service NEW56Ioni Bowcher
1040Mayumi I NestleCanada2025-04-24Benton, John B Jr NEGOTIATION7Amy Elsner
1041Ashley O BologniaFrance2025-04-23Feiner Bros PROPOSAL9Ioni Bowcher
1042Mujtaba Y StensethRussia2025-04-03Chanay, Jeffrey A Esq PROPOSAL24Asiya Javayant
1043Kadeem E GauchoIndia2025-04-15Truhlar And Truhlar Attys RENEWAL33Stephen Shaw
1044Francesco Q GillianAustralia2025-04-01Truhlar And Truhlar Attys RENEWAL75Elwin Sharvill
1045Jeanfrancois O CaudyItaly2025-04-04Commercial Press RENEWAL37Stephen Shaw
1046Aruna A ShinkoJapan2025-04-09Morlong Associates UNQUALIFIED91Asiya Javayant
1047Murillo R NestleFrance2025-04-17Buckley Miller Wright PROPOSAL50Anna Fali
1048Johnson U PaprockiBrazil2025-04-29Morlong Associates NEW96Stephen Shaw
1049Darci I StockhamUnited Kingdom2025-04-21Rousseaux, Michael Esq NEW53Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Leja E SlusarskiCanadaElwin Sharvill QUALIFIED
Cody G FerenczItalyAmy Elsner NEW
Johnson L CaudyGermanyIvan Magalhaes PROPOSAL
Murillo G TollnerSpainIvan Magalhaes NEGOTIATION
Stacey R WieserSpainOnyama Limba NEW
Munro F SaylorsCanadaXuxue Feng PROPOSAL
Leon C GauchoSpainAmy Elsner PROPOSAL
Claire Z RutaIndiaStephen Shaw NEGOTIATION
Alejandro B DoeSpainXuxue Feng NEGOTIATION
Morrow M KolmetzAustraliaOnyama Limba NEW
Tony L FigeroaRussiaAnna Fali RENEWAL
Maria S FerenczJapanXuxue Feng QUALIFIED
Jefferson O AlbaresGermanyAmy Elsner UNQUALIFIED
Juan F ShinkoRussiaAsiya Javayant NEW
Salvatore O BowleySpainStephen Shaw NEGOTIATION
James P MarrierIndiaElwin Sharvill RENEWAL
Aruna Y WieserCanadaStephen Shaw NEW
Kaitlin J PerinItalyIvan Magalhaes NEW
Emily E ChuiBrazilElwin Sharvill NEGOTIATION
Maria G SaylorsCanadaAsiya Javayant RENEWAL
Kaitlin C KuskoAustraliaAnna Fali NEGOTIATION
Salvatore W FerenczCanadaOnyama Limba NEW
Stacey G ShinkoRussiaIvan Magalhaes QUALIFIED
Greenwood L NickaBrazilIoni Bowcher PROPOSAL
Mayumi K WieserBrazilIoni Bowcher UNQUALIFIED
Aika G ChuiArgentinaAsiya Javayant RENEWAL
Rodrigues T ChuiIndiaOnyama Limba QUALIFIED
Aruna B OstroskyGermanyOnyama Limba QUALIFIED
Aditya E FlosiArgentinaBernardo Dominic UNQUALIFIED
Murillo Q ChuiItalyIvan Magalhaes QUALIFIED
Tony E OldroydBrazilBernardo Dominic NEW
Greenwood C CampainUnited KingdomElwin Sharvill NEGOTIATION
Emily W CampainArgentinaIvan Magalhaes RENEWAL
Izzy Z KuskoSpainStephen Shaw UNQUALIFIED
Morrow C AlbaresCanadaXuxue Feng NEGOTIATION
Clifford L ShinkoAustraliaIoni Bowcher NEW
Misaki N WhobreyGermanyOnyama Limba PROPOSAL
Maria K StockhamGermanyBernardo Dominic RENEWAL
Faith Z BowleyItalyStephen Shaw PROPOSAL
Munro U FerenczBrazilXuxue Feng QUALIFIED
Rodrigues Y FigeroaCanadaBernardo Dominic UNQUALIFIED
Adams C RutaSpainIoni Bowcher NEW
Antonio Z RulapaughBrazilXuxue Feng QUALIFIED
Ashley H VocelkaAustraliaBernardo Dominic PROPOSAL
Leon E MaletBrazilBernardo Dominic NEGOTIATION
Johnson Y TollnerGermanyIvan Magalhaes NEW
Nicolas I WaycottArgentinaXuxue Feng RENEWAL
Darci R SchemmerItalyAsiya Javayant NEW
Francesco G MaletArgentinaIoni Bowcher NEGOTIATION
Darci J StockhamIndiaAnna Fali QUALIFIED
Frozen Columns
Name
Alejandro N Morasca
Deepesh Z Schemmer
Julie J Foller
Ashley J Flosi
Aditya F Stockham
Munro N Doe
Kaitlin Z Tollner
Ricardo Q Chui
Faith H Malet
Greenwood K Flosi
Clifford P Chui
Ivar K Marrier
Francesco P Dilliard
Munro F Nicka
Mujtaba B Iturbide
Maria V Kusko
Johnson X Rulapaugh
Darci K Flosi
Jones O Stenseth
Tony Y Ferencz
Costa O Flosi
Julie J Shinko
Aditya O Glick
Kaitlin W Caldarera
Aruna M Flosi
Julie X Nicka
Deepesh K Morasca
Murillo K Vocelka
Julie O Glick
Costa D Perin
Misaki V Ferencz
Maisha O Rulapaugh
Deepesh E Morasca
Aruna K Glick
Juan P Ruta
Emily V Flosi
Clifford Y Rulapaugh
Julie K Garufi
David L Doe
Faith D Ruta
Aditya T Figeroa
Ricardo S Flosi
Adams V Whobrey
Aruna U Waycott
Isabel I Inouye
Tony K Caldarera
Francesco N Nicka
Maisha L Sergi
Mujtaba J Glick
Aruna U Rim
IdCountryDate
1000Australia2025-04-02
1001Spain2025-04-08
1002Russia2025-04-27
1003United Kingdom2025-04-11
1004Brazil2025-04-09
1005Argentina2025-04-20
1006Australia2025-04-28
1007Brazil2025-04-18
1008Australia2025-04-05
1009Spain2025-04-29
1010France2025-04-25
1011Russia2025-04-17
1012United Kingdom2025-04-13
1013Germany2025-04-03
1014Brazil2025-04-17
1015India2025-04-30
1016Germany2025-04-15
1017Australia2025-04-01
1018Japan2025-04-09
1019Japan2025-04-15
1020United Kingdom2025-04-20
1021Australia2025-04-15
1022India2025-04-12
1023Brazil2025-04-23
1024Argentina2025-04-06
1025France2025-04-23
1026Russia2025-04-29
1027France2025-04-17
1028Australia2025-04-28
1029Australia2025-04-05
1030Australia2025-04-19
1031Russia2025-04-21
1032United Kingdom2025-04-09
1033Germany2025-04-15
1034Australia2025-04-16
1035Russia2025-04-07
1036Australia2025-04-19
1037France2025-04-05
1038Spain2025-04-28
1039United Kingdom2025-04-07
1040Germany2025-04-10
1041Brazil2025-04-08
1042India2025-04-19
1043Italy2025-04-05
1044Argentina2025-04-18
1045Russia2025-04-20
1046Spain2025-04-25
1047India2025-04-23
1048France2025-04-05
1049Russia2025-04-20

On-Demand Data

NameIdCountryDate
Antonio V Royster1000Australia2025-04-12
Maisha L Albares1001Australia2025-04-21
Antonio K Iturbide1002United Kingdom2025-04-29
Maisha D Vocelka1003Russia2025-04-11
Silvio L Bolognia1004Spain2025-04-30
Murillo E Bowley1005India2025-04-01
Greenwood Z Maclead1006Russia2025-04-06
Juan W Caudy1007Argentina2025-04-19
Chavez G Campain1008Italy2025-04-12
Misaki P Schemmer1009Australia2025-04-08
Jennifer W Butt1010Canada2025-04-19
Maria U Perin1011Germany2025-04-16
Mayumi B Vocelka1012Japan2025-04-14
Leja J Whobrey1013France2025-04-05
Mayumi G Kolmetz1014Japan2025-04-16
Claire P Wieser1015Germany2025-04-07
Julie J Royster1016India2025-04-02
Deepesh L Rulapaugh1017Russia2025-04-16
Emily K Butt1018India2025-04-25
Emily H Butt1019India2025-04-27
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aditya H InouyeIndiaAnna Fali NEGOTIATION
Cody S GillianIndiaAnna Fali UNQUALIFIED
Johnson H KuskoIndiaAnna Fali RENEWAL
Clifford T DilliardRussiaAsiya Javayant QUALIFIED
Juan A PaprockiIndiaBernardo Dominic NEW
Juan B ShinkoGermanyIvan Magalhaes RENEWAL
Isabel E SergiAustraliaIvan Magalhaes NEGOTIATION
Aika L SlusarskiJapanStephen Shaw QUALIFIED
Jeanfrancois D VocelkaJapanElwin Sharvill UNQUALIFIED
Aditya R RutaAustraliaIoni Bowcher PROPOSAL
Emily D WhobreyCanadaAnna Fali UNQUALIFIED
Alejandro M NestleCanadaStephen Shaw RENEWAL
Mayumi A WieserItalyElwin Sharvill UNQUALIFIED
Maria N DoeFranceAnna Fali RENEWAL
Cody U MarrierAustraliaElwin Sharvill PROPOSAL
Tony I KolmetzGermanyIvan Magalhaes NEW
Deepesh H VenereUnited KingdomBernardo Dominic NEGOTIATION
Aditya I BowleySpainBernardo Dominic UNQUALIFIED
Izzy N DarakjySpainAmy Elsner NEW
Jones K PaprockiIndiaXuxue Feng PROPOSAL
Izzy U PaprockiItalyStephen Shaw NEGOTIATION
Silvio M FollerAustraliaXuxue Feng NEGOTIATION
James D FigeroaRussiaAsiya Javayant RENEWAL
Deepesh O DarakjyJapanElwin Sharvill UNQUALIFIED
Claire C RutaRussiaElwin Sharvill RENEWAL
Octavia A ButtArgentinaBernardo Dominic QUALIFIED
Mujtaba Y MaletIndiaIvan Magalhaes UNQUALIFIED
Francesco R GarufiBrazilStephen Shaw NEGOTIATION
James B CaudyJapanIvan Magalhaes PROPOSAL
Izzy D SergiIndiaIoni Bowcher NEW
Cody S ButtCanadaAsiya Javayant NEW
Julie V BologniaSpainStephen Shaw UNQUALIFIED
Costa H FollerItalyIvan Magalhaes RENEWAL
David G RoysterAustraliaXuxue Feng UNQUALIFIED
Deepesh S FlosiIndiaAmy Elsner RENEWAL
Darci K SchemmerGermanyStephen Shaw RENEWAL
Octavia E AlbaresBrazilXuxue Feng QUALIFIED
Alejandro D SchemmerGermanyElwin Sharvill NEW
Jennifer J SaylorsSpainOnyama Limba UNQUALIFIED
Darci J FigeroaRussiaAmy Elsner NEW

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