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
Mujtaba H VenereArgentinaIvan Magalhaes PROPOSAL
Greenwood R DarakjyUnited KingdomXuxue Feng NEW
Greenwood E PerinItalyStephen Shaw NEGOTIATION
Alejandro C PerinCanadaBernardo Dominic NEGOTIATION
Claire P SlusarskiGermanyElwin Sharvill UNQUALIFIED
Jefferson M CaldareraGermanyStephen Shaw PROPOSAL
Faith W WhobreyRussiaIvan Magalhaes QUALIFIED
Sinclair A GlickRussiaAmy Elsner NEW
Greenwood S AlbaresIndiaIvan Magalhaes NEW
Kadeem L BologniaGermanyIoni Bowcher UNQUALIFIED
Arvin X FigeroaItalyIoni Bowcher RENEWAL
Izzy I CaudyFranceStephen Shaw PROPOSAL
David F WieserBrazilAmy Elsner RENEWAL
Clifford H RimBrazilIvan Magalhaes QUALIFIED
Wickens L KolmetzItalyAsiya Javayant QUALIFIED
Darci O ChuiCanadaIvan Magalhaes NEW
Aditya X TollnerSpainIoni Bowcher RENEWAL
Misaki V AmigonSpainStephen Shaw NEW
Greenwood W WieserSpainAsiya Javayant RENEWAL
Wickens D CampainUnited KingdomStephen Shaw NEGOTIATION
Isabel F WieserBrazilAsiya Javayant NEW
Kadeem J StockhamRussiaOnyama Limba NEW
Faith U InouyeFranceAnna Fali QUALIFIED
Smith A ShinkoJapanAmy Elsner UNQUALIFIED
Stacey W StockhamSpainAsiya Javayant NEW
Antonio Q BriddickRussiaIvan Magalhaes NEW
Murillo H WhobreyCanadaBernardo Dominic NEGOTIATION
Misaki V CaldareraSpainXuxue Feng QUALIFIED
Cody O SlusarskiUnited KingdomOnyama Limba RENEWAL
Johnson W StensethArgentinaOnyama Limba NEGOTIATION
David C PaprockiRussiaXuxue Feng NEW
Jones J FigeroaArgentinaAsiya Javayant NEW
Aika G MacleadCanadaXuxue Feng UNQUALIFIED
Jones P WaycottCanadaIvan Magalhaes UNQUALIFIED
Munro I CaldareraBrazilXuxue Feng NEW
Sinclair B FlosiFranceElwin Sharvill UNQUALIFIED
Rodrigues Y BriddickBrazilAnna Fali NEGOTIATION
Ashley X KuskoSpainOnyama Limba UNQUALIFIED
Cody J CaldareraUnited KingdomAnna Fali QUALIFIED
Ricardo S MaletGermanyIvan Magalhaes NEW
Leon J VenereFranceStephen Shaw NEGOTIATION
Maisha A BowleyIndiaAsiya Javayant UNQUALIFIED
David J FollerIndiaBernardo Dominic PROPOSAL
Misaki I VocelkaSpainXuxue Feng QUALIFIED
Misaki I RoysterFranceIoni Bowcher NEW
Cody D MacleadJapanAnna Fali NEGOTIATION
Mayumi A StensethFranceAmy Elsner PROPOSAL
Faith I RutaCanadaBernardo Dominic UNQUALIFIED
Jones L MacleadRussiaBernardo Dominic UNQUALIFIED
Ivar H WaycottAustraliaElwin Sharvill QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Maisha B RulapaughGermanyAnna Fali NEGOTIATION
Murillo N OldroydGermanyOnyama Limba QUALIFIED
Aruna R RimAustraliaStephen Shaw NEGOTIATION
Morrow N WieserRussiaOnyama Limba UNQUALIFIED
Wickens G SaylorsSpainBernardo Dominic NEGOTIATION
Chavez I FlosiRussiaElwin Sharvill NEGOTIATION
Leja F FigeroaJapanIvan Magalhaes RENEWAL
Aika G MacleadBrazilBernardo Dominic UNQUALIFIED
Antonio G FerenczJapanBernardo Dominic QUALIFIED
Mujtaba G SaylorsIndiaAsiya Javayant RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Silvio R RimIndia2024-05-13Benton, John B Jr RENEWAL39Onyama Limba
1001Julie U NickaItaly2024-05-20Rangoni Of Florence UNQUALIFIED91Bernardo Dominic
1002David E GarufiFrance2024-04-27Chapman, Ross E Esq NEW76Anna Fali
1003Nicolas M CampainRussia2024-05-13Printing Dimensions RENEWAL70Anna Fali
1004David W MorascaFrance2024-04-30Morlong Associates PROPOSAL11Anna Fali
1005Cody Y BologniaUnited Kingdom2024-05-26Printing Dimensions PROPOSAL99Ioni Bowcher
1006Juan U DoeUnited Kingdom2024-05-01Buckley Miller Wright RENEWAL6Stephen Shaw
1007Chavez L WhobreyFrance2024-05-09Chanay, Jeffrey A Esq RENEWAL31Ioni Bowcher
1008Arvin G MaletIndia2024-04-27Chanay, Jeffrey A Esq NEGOTIATION74Elwin Sharvill
1009Johnson R DoeJapan2024-05-02Chemel, James L Cpa NEW96Asiya Javayant
1010James H NestleSpain2024-04-28Chapman, Ross E Esq PROPOSAL72Ivan Magalhaes
1011Munro B SergiCanada2024-05-26Benton, John B Jr UNQUALIFIED52Onyama Limba
1012Aika I SlusarskiRussia2024-04-29Rousseaux, Michael Esq NEW36Asiya Javayant
1013Maria G InouyeFrance2024-05-13Rousseaux, Michael Esq RENEWAL19Xuxue Feng
1014Faith V CaldareraFrance2024-05-23Printing Dimensions PROPOSAL92Stephen Shaw
1015Tony O TollnerItaly2024-05-06Feltz Printing Service UNQUALIFIED66Ioni Bowcher
1016Jones U MarrierSpain2024-05-10Buckley Miller Wright NEW93Anna Fali
1017Murillo I PaprockiBrazil2024-05-07Rangoni Of Florence RENEWAL63Ioni Bowcher
1018Sinclair L GauchoRussia2024-05-03Chanay, Jeffrey A Esq NEGOTIATION30Amy Elsner
1019Nicolas O KuskoBrazil2024-04-27Feltz Printing Service NEGOTIATION18Ioni Bowcher
1020Ricardo T WhobreyArgentina2024-05-14Feltz Printing Service NEW66Xuxue Feng
1021Silvio C FigeroaItaly2024-05-10Feiner Bros NEW13Stephen Shaw
1022Juan Z FollerArgentina2024-05-13Chapman, Ross E Esq RENEWAL16Amy Elsner
1023Maisha D SaylorsUnited Kingdom2024-05-24Printing Dimensions QUALIFIED96Asiya Javayant
1024Claire I TollnerBrazil2024-05-04Chapman, Ross E Esq NEGOTIATION5Ivan Magalhaes
1025James H OldroydJapan2024-05-10Chapman, Ross E Esq NEW3Ioni Bowcher
1026Greenwood M PerinItaly2024-05-10Feltz Printing Service QUALIFIED75Ioni Bowcher
1027Mujtaba M RoysterUnited Kingdom2024-05-23Buckley Miller Wright NEW6Ivan Magalhaes
1028Chavez X PerinSpain2024-05-26Feltz Printing Service PROPOSAL13Xuxue Feng
1029Sinclair R ChuiGermany2024-05-12Chapman, Ross E Esq PROPOSAL13Onyama Limba
1030Smith Y StensethGermany2024-04-30Feiner Bros RENEWAL46Xuxue Feng
1031Leon W PaprockiUnited Kingdom2024-05-17Chapman, Ross E Esq NEGOTIATION34Anna Fali
1032Francesco C MaletItaly2024-05-14Chapman, Ross E Esq PROPOSAL96Bernardo Dominic
1033Isabel S MarrierIndia2024-05-09Truhlar And Truhlar Attys QUALIFIED51Ivan Magalhaes
1034Costa Y InouyeFrance2024-05-04Rousseaux, Michael Esq PROPOSAL82Xuxue Feng
1035Wickens F MacleadGermany2024-05-21Chanay, Jeffrey A Esq NEW83Stephen Shaw
1036Arvin S RoysterJapan2024-05-09Dorl, James J Esq QUALIFIED58Xuxue Feng
1037David H CaldareraArgentina2024-05-07Chapman, Ross E Esq RENEWAL98Asiya Javayant
1038Sinclair B InouyeBrazil2024-05-22Feltz Printing Service UNQUALIFIED27Ivan Magalhaes
1039David M FlosiItaly2024-05-12Benton, John B Jr PROPOSAL48Ivan Magalhaes
1040Murillo K StockhamCanada2024-05-12Chapman, Ross E Esq UNQUALIFIED69Bernardo Dominic
1041Kaitlin R GarufiUnited Kingdom2024-04-29Rousseaux, Michael Esq RENEWAL43Stephen Shaw
1042Stacey X SergiArgentina2024-05-08Chapman, Ross E Esq UNQUALIFIED0Anna Fali
1043James Q WhobreyGermany2024-05-22Chemel, James L Cpa RENEWAL52Amy Elsner
1044Faith Z CaldareraGermany2024-05-20Chapman, Ross E Esq PROPOSAL85Stephen Shaw
1045Smith Z FlosiGermany2024-05-12Benton, John B Jr UNQUALIFIED33Amy Elsner
1046Morrow O CaldareraIndia2024-05-11Chanay, Jeffrey A Esq NEW54Amy Elsner
1047Octavia D StensethArgentina2024-04-29Buckley Miller Wright UNQUALIFIED1Stephen Shaw
1048Izzy N PaprockiItaly2024-05-04Buckley Miller Wright NEW98Bernardo Dominic
1049Leon I ChuiArgentina2024-05-23Commercial Press UNQUALIFIED27Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Leja I PerinAustraliaAnna Fali PROPOSAL
Arvin E PoquetteBrazilIoni Bowcher PROPOSAL
Maria Y BriddickJapanAmy Elsner QUALIFIED
Arvin W IturbideFranceStephen Shaw RENEWAL
Tony I DilliardIndiaIvan Magalhaes QUALIFIED
David Z GarufiAustraliaStephen Shaw PROPOSAL
Greenwood H KolmetzIndiaAsiya Javayant UNQUALIFIED
Leja A NickaSpainOnyama Limba QUALIFIED
Faith X PoquetteCanadaIoni Bowcher NEW
David A VocelkaCanadaIoni Bowcher NEGOTIATION
Stacey L MacleadSpainIoni Bowcher NEGOTIATION
Sinclair Z RutaCanadaStephen Shaw PROPOSAL
Munro I SchemmerCanadaElwin Sharvill QUALIFIED
James Q StockhamJapanAmy Elsner UNQUALIFIED
Darci Z ChuiJapanAnna Fali PROPOSAL
Salvatore C ButtItalyIvan Magalhaes NEGOTIATION
Aika K CampainFranceIoni Bowcher UNQUALIFIED
Jennifer W FigeroaGermanyAsiya Javayant PROPOSAL
Leja P DoeRussiaOnyama Limba RENEWAL
Jeanfrancois M VocelkaIndiaStephen Shaw NEGOTIATION
Aika G RutaItalyAnna Fali PROPOSAL
Wickens F GauchoAustraliaOnyama Limba QUALIFIED
Leon U RulapaughArgentinaAnna Fali NEGOTIATION
Johnson B SlusarskiCanadaIvan Magalhaes QUALIFIED
Darci X FlosiIndiaIoni Bowcher PROPOSAL
Darci I ChuiCanadaAmy Elsner NEGOTIATION
Misaki R SlusarskiAustraliaStephen Shaw PROPOSAL
Emily Y MacleadJapanAnna Fali RENEWAL
Octavia D BowleyFranceAnna Fali UNQUALIFIED
Nicolas U DilliardCanadaElwin Sharvill UNQUALIFIED
Leja H MorascaFranceAmy Elsner UNQUALIFIED
Leon T VenereItalyXuxue Feng RENEWAL
Greenwood O ChuiFranceAnna Fali QUALIFIED
Aruna C GillianCanadaIvan Magalhaes NEW
Chavez E TollnerItalyAmy Elsner UNQUALIFIED
Wickens C ButtItalyIvan Magalhaes QUALIFIED
Claire V StockhamJapanXuxue Feng UNQUALIFIED
Maria V VenereUnited KingdomAnna Fali PROPOSAL
Juan D MaletCanadaIoni Bowcher NEGOTIATION
Kadeem G DoeIndiaXuxue Feng NEW
Leon H MorascaAustraliaIoni Bowcher NEW
Cody C NestleJapanIvan Magalhaes NEGOTIATION
Ashley T CaldareraRussiaStephen Shaw NEW
Jeanfrancois N GlickAustraliaBernardo Dominic RENEWAL
Tony E ChuiItalyAnna Fali NEGOTIATION
Isabel N PoquetteItalyStephen Shaw PROPOSAL
Aruna G VenereIndiaAsiya Javayant QUALIFIED
Rodrigues W RulapaughIndiaOnyama Limba NEW
Morrow S BriddickRussiaIoni Bowcher NEGOTIATION
Darci W VenereBrazilAsiya Javayant RENEWAL
Frozen Columns
Name
Costa D Saylors
Francesco C Campain
Clifford H Caldarera
Tony N Amigon
Salvatore C Wieser
Rodrigues Q Bolognia
Smith Q Caldarera
Mujtaba S Saylors
Alejandro L Whobrey
Julie H Caldarera
Chavez W Iturbide
Octavia E Kolmetz
James N Albares
Francesco J Albares
Aruna W Sergi
Kaitlin R Shinko
Kaitlin C Poquette
Antonio M Perin
Johnson F Caldarera
Clifford V Stenseth
Rodrigues K Ostrosky
Alejandro R Whobrey
Izzy C Nestle
Maria C Sergi
Adams X Shinko
David T Caudy
Izzy L Caudy
Aruna N Figeroa
Wickens Q Foller
Emily C Venere
Jennifer K Saylors
Jefferson H Schemmer
Leja M Nicka
Adams M Butt
Jeanfrancois P Malet
Tony V Rulapaugh
Ricardo G Chui
Kaitlin R Vocelka
Jefferson B Ruta
Adams B Morasca
Tony X Doe
Chavez Q Ruta
Jefferson F Slusarski
Aditya V Caudy
David S Bowley
David J Darakjy
Stacey I Amigon
Rodrigues B Whobrey
Jennifer N Iturbide
Ashley S Whobrey
IdCountryDate
1000Italy2024-05-04
1001Canada2024-05-09
1002United Kingdom2024-05-06
1003Argentina2024-05-02
1004Russia2024-05-02
1005Russia2024-05-11
1006United Kingdom2024-05-20
1007Canada2024-05-07
1008Canada2024-04-30
1009Canada2024-05-12
1010Russia2024-05-04
1011France2024-04-28
1012Argentina2024-05-23
1013United Kingdom2024-05-06
1014Spain2024-05-23
1015Italy2024-05-13
1016Spain2024-05-13
1017Canada2024-05-19
1018Russia2024-05-01
1019United Kingdom2024-05-23
1020Germany2024-04-28
1021United Kingdom2024-05-04
1022United Kingdom2024-05-09
1023Argentina2024-05-22
1024Japan2024-05-04
1025Australia2024-05-20
1026Italy2024-05-02
1027Brazil2024-05-19
1028Canada2024-05-15
1029United Kingdom2024-05-20
1030India2024-05-02
1031Japan2024-05-13
1032Spain2024-05-25
1033Germany2024-05-07
1034Germany2024-05-25
1035India2024-05-24
1036France2024-05-13
1037Brazil2024-05-19
1038Argentina2024-04-27
1039Russia2024-05-26
1040India2024-05-12
1041Russia2024-05-03
1042Brazil2024-05-02
1043Russia2024-05-01
1044Canada2024-05-26
1045Canada2024-04-29
1046Brazil2024-05-06
1047Argentina2024-05-09
1048Japan2024-05-09
1049Italy2024-05-16

On-Demand Data

NameIdCountryDate
Aruna O Rulapaugh1000Argentina2024-05-06
Leja W Rulapaugh1001Japan2024-05-17
Emily S Vocelka1002Italy2024-05-23
Wickens K Amigon1003Italy2024-05-17
Izzy F Ruta1004United Kingdom2024-05-03
Ivar Y Dilliard1005United Kingdom2024-05-05
Ricardo Q Venere1006Australia2024-05-01
Arvin J Wieser1007United Kingdom2024-05-19
Isabel Q Saylors1008Australia2024-04-28
Jennifer L Butt1009Spain2024-05-05
Izzy U Gillian1010Australia2024-05-13
Emily E Nestle1011India2024-05-12
Kaitlin A Malet1012Japan2024-05-18
Darci A Figeroa1013United Kingdom2024-05-05
Ashley W Saylors1014Japan2024-05-10
Munro B Foller1015France2024-05-07
Munro V Nicka1016Argentina2024-05-13
Jefferson D Stenseth1017Germany2024-05-01
Adams A Foller1018Australia2024-05-26
Adams D Vocelka1019India2024-05-09
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jennifer O RulapaughRussiaElwin Sharvill QUALIFIED
Jennifer Z BologniaRussiaAsiya Javayant PROPOSAL
Stacey E DoeFranceAsiya Javayant QUALIFIED
Costa B DoeIndiaElwin Sharvill QUALIFIED
Rodrigues V VenereAustraliaIoni Bowcher PROPOSAL
Smith A ChuiIndiaElwin Sharvill QUALIFIED
Mujtaba L FerenczRussiaElwin Sharvill UNQUALIFIED
Wickens V FerenczGermanyAmy Elsner QUALIFIED
Nicolas J VenereUnited KingdomAnna Fali QUALIFIED
Maria B TollnerFranceXuxue Feng QUALIFIED
Silvio S DoeFranceAmy Elsner RENEWAL
David Z TollnerGermanyAmy Elsner NEGOTIATION
Murillo K SaylorsJapanOnyama Limba UNQUALIFIED
Murillo D RulapaughFranceElwin Sharvill RENEWAL
Mujtaba W MarrierIndiaAmy Elsner QUALIFIED
Julie G IturbideSpainIvan Magalhaes PROPOSAL
James P VocelkaSpainElwin Sharvill RENEWAL
Chavez F InouyeFranceStephen Shaw NEGOTIATION
Wickens X RimRussiaOnyama Limba UNQUALIFIED
James S SergiFranceIvan Magalhaes RENEWAL
Nicolas D WieserGermanyElwin Sharvill NEGOTIATION
Wickens B DoeSpainAmy Elsner NEGOTIATION
Jefferson P DarakjyUnited KingdomBernardo Dominic PROPOSAL
Maria I CaudyArgentinaElwin Sharvill NEW
Octavia C FlosiItalyIoni Bowcher UNQUALIFIED
Darci Q FollerFranceBernardo Dominic QUALIFIED
Izzy E KolmetzBrazilStephen Shaw PROPOSAL
Munro W VenereItalyIvan Magalhaes RENEWAL
Kaitlin E SlusarskiGermanyAsiya Javayant RENEWAL
Kadeem A GarufiSpainAsiya Javayant NEW
Mayumi D WieserCanadaStephen Shaw RENEWAL
Chavez U FerenczCanadaAmy Elsner QUALIFIED
Clifford Q MorascaGermanyStephen Shaw NEGOTIATION
Kadeem V GarufiArgentinaXuxue Feng RENEWAL
Silvio E WieserCanadaAsiya Javayant UNQUALIFIED
David Z VocelkaCanadaAsiya Javayant QUALIFIED
Deepesh G SlusarskiIndiaXuxue Feng QUALIFIED
Isabel S AmigonItalyXuxue Feng QUALIFIED
Maria X RoysterArgentinaAmy Elsner UNQUALIFIED
Misaki A SergiFranceElwin Sharvill 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>