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
Nicolas K InouyeJapanIvan Magalhaes PROPOSAL
Deepesh A VenereFranceIvan Magalhaes PROPOSAL
Ivar H AmigonRussiaIvan Magalhaes NEGOTIATION
Murillo N ShinkoSpainIvan Magalhaes RENEWAL
Silvio C RoysterAustraliaOnyama Limba RENEWAL
Costa X BriddickArgentinaOnyama Limba UNQUALIFIED
Ashley L MacleadRussiaStephen Shaw UNQUALIFIED
Maria B DilliardAustraliaBernardo Dominic UNQUALIFIED
Ashley V MorascaAustraliaBernardo Dominic NEW
Stacey J SlusarskiUnited KingdomIvan Magalhaes QUALIFIED
David I MaletFranceAsiya Javayant UNQUALIFIED
Juan L GarufiUnited KingdomBernardo Dominic NEGOTIATION
Nicolas N BriddickAustraliaXuxue Feng QUALIFIED
Emily T IturbideCanadaIoni Bowcher NEW
Ricardo L OldroydRussiaBernardo Dominic NEGOTIATION
David D BologniaBrazilElwin Sharvill QUALIFIED
Sinclair Z TollnerIndiaOnyama Limba RENEWAL
Ricardo T CampainItalyElwin Sharvill QUALIFIED
Claire H GauchoBrazilOnyama Limba NEGOTIATION
Izzy D BriddickRussiaXuxue Feng PROPOSAL
Stacey N InouyeFranceStephen Shaw NEW
Greenwood V RimArgentinaStephen Shaw UNQUALIFIED
Ashley C OstroskyBrazilStephen Shaw RENEWAL
Claire E VenereGermanyElwin Sharvill RENEWAL
Leja V GarufiGermanyStephen Shaw RENEWAL
Salvatore M ChuiGermanyOnyama Limba RENEWAL
Johnson Z RulapaughBrazilBernardo Dominic UNQUALIFIED
Emily S ShinkoAustraliaBernardo Dominic PROPOSAL
Sinclair A BriddickIndiaXuxue Feng QUALIFIED
Costa V RulapaughItalyIoni Bowcher RENEWAL
Smith Y GlickBrazilAsiya Javayant UNQUALIFIED
Jefferson U BriddickJapanElwin Sharvill NEW
Jeanfrancois Z RoysterItalyAmy Elsner UNQUALIFIED
Maria K CaldareraGermanyIvan Magalhaes NEW
Arvin W AmigonSpainBernardo Dominic UNQUALIFIED
Arvin E SchemmerCanadaStephen Shaw PROPOSAL
Julie T MarrierItalyElwin Sharvill PROPOSAL
Maria U RulapaughAustraliaStephen Shaw QUALIFIED
Wickens X SlusarskiCanadaXuxue Feng NEGOTIATION
Octavia G PerinSpainStephen Shaw NEGOTIATION
Greenwood J KolmetzSpainIvan Magalhaes QUALIFIED
Kaitlin B CampainGermanyElwin Sharvill QUALIFIED
Jefferson F MaletJapanBernardo Dominic QUALIFIED
Faith Z VenereAustraliaOnyama Limba UNQUALIFIED
Nicolas Q SergiIndiaStephen Shaw PROPOSAL
Chavez F PoquetteIndiaIoni Bowcher UNQUALIFIED
Emily U GillianFranceElwin Sharvill RENEWAL
David Q RulapaughAustraliaBernardo Dominic UNQUALIFIED
James B TollnerArgentinaAsiya Javayant NEGOTIATION
Misaki H PoquetteGermanyIoni Bowcher NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Clifford M CaudyItalyElwin Sharvill NEGOTIATION
Jennifer N VocelkaUnited KingdomBernardo Dominic RENEWAL
Costa E FlosiArgentinaElwin Sharvill PROPOSAL
Juan C StockhamSpainAsiya Javayant UNQUALIFIED
Emily L RutaGermanyIoni Bowcher NEGOTIATION
Silvio M PaprockiGermanyElwin Sharvill NEW
Cody J VocelkaArgentinaIoni Bowcher RENEWAL
Morrow I ShinkoCanadaAmy Elsner NEW
Morrow M GillianJapanOnyama Limba NEGOTIATION
Murillo N RimCanadaElwin Sharvill QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Johnson P FerenczIndia2024-06-24Buckley Miller Wright PROPOSAL11Onyama Limba
1001Murillo O BriddickArgentina2024-06-16Commercial Press QUALIFIED14Amy Elsner
1002David O RutaGermany2024-06-14Feiner Bros UNQUALIFIED67Elwin Sharvill
1003Maisha A SaylorsIndia2024-06-20Morlong Associates RENEWAL0Onyama Limba
1004Costa D FollerIndia2024-06-10Morlong Associates QUALIFIED25Elwin Sharvill
1005Izzy M MacleadFrance2024-06-14Chanay, Jeffrey A Esq NEGOTIATION45Elwin Sharvill
1006Maisha S MacleadItaly2024-06-01King, Christopher A Esq NEGOTIATION80Stephen Shaw
1007Nicolas M IturbideGermany2024-05-27King, Christopher A Esq PROPOSAL50Ivan Magalhaes
1008Mayumi P StensethJapan2024-05-29Rangoni Of Florence NEGOTIATION20Anna Fali
1009Munro P FigeroaFrance2024-06-17Chanay, Jeffrey A Esq RENEWAL97Stephen Shaw
1010Jeanfrancois S RutaRussia2024-06-11Morlong Associates NEW79Stephen Shaw
1011Johnson M RimCanada2024-06-11Truhlar And Truhlar Attys QUALIFIED79Xuxue Feng
1012Mayumi M DilliardFrance2024-06-19Benton, John B Jr NEW41Onyama Limba
1013Faith W VenereGermany2024-06-04Feiner Bros NEW43Asiya Javayant
1014Greenwood R FollerCanada2024-06-03Commercial Press QUALIFIED14Ioni Bowcher
1015Clifford E SchemmerUnited Kingdom2024-06-15Chemel, James L Cpa NEGOTIATION20Xuxue Feng
1016Jennifer Z FlosiArgentina2024-06-08Feltz Printing Service RENEWAL43Ivan Magalhaes
1017Chavez L VenereArgentina2024-06-13Morlong Associates UNQUALIFIED48Xuxue Feng
1018Aika L NestleRussia2024-05-27Feiner Bros NEGOTIATION85Asiya Javayant
1019Wickens J GarufiBrazil2024-05-27King, Christopher A Esq QUALIFIED49Asiya Javayant
1020Nicolas X AmigonCanada2024-06-11Commercial Press RENEWAL80Stephen Shaw
1021Kaitlin U RoysterFrance2024-06-05Feiner Bros NEGOTIATION86Elwin Sharvill
1022Ashley T DarakjyArgentina2024-06-15Dorl, James J Esq UNQUALIFIED53Ivan Magalhaes
1023Juan F AlbaresArgentina2024-06-21Morlong Associates NEW2Asiya Javayant
1024Arvin R OldroydRussia2024-06-08Feltz Printing Service RENEWAL20Ioni Bowcher
1025Darci R PerinBrazil2024-06-21Buckley Miller Wright NEW44Stephen Shaw
1026Wickens E BologniaArgentina2024-05-26Truhlar And Truhlar Attys QUALIFIED27Amy Elsner
1027Wickens Y AlbaresUnited Kingdom2024-05-27Printing Dimensions PROPOSAL65Ivan Magalhaes
1028Rodrigues Q SaylorsItaly2024-06-15Chemel, James L Cpa PROPOSAL43Anna Fali
1029Antonio D KolmetzAustralia2024-06-04Benton, John B Jr UNQUALIFIED27Stephen Shaw
1030Ivar Z FerenczAustralia2024-06-24Dorl, James J Esq RENEWAL9Ivan Magalhaes
1031Cody W PerinItaly2024-05-29Commercial Press UNQUALIFIED65Elwin Sharvill
1032Ricardo S TollnerCanada2024-06-17Truhlar And Truhlar Attys RENEWAL98Xuxue Feng
1033Smith N NestleFrance2024-05-31Morlong Associates NEW85Stephen Shaw
1034Jeanfrancois O CaldareraArgentina2024-06-16Commercial Press RENEWAL85Amy Elsner
1035Deepesh X KolmetzArgentina2024-06-07Dorl, James J Esq UNQUALIFIED73Asiya Javayant
1036Jefferson J MorascaJapan2024-06-24Buckley Miller Wright NEGOTIATION48Onyama Limba
1037Maisha Y MarrierAustralia2024-06-01Commercial Press PROPOSAL90Elwin Sharvill
1038Octavia T FlosiArgentina2024-05-28Commercial Press PROPOSAL58Bernardo Dominic
1039Leja C OldroydFrance2024-06-14Printing Dimensions QUALIFIED75Anna Fali
1040Maisha N CampainUnited Kingdom2024-06-24King, Christopher A Esq QUALIFIED12Bernardo Dominic
1041Emily H StensethItaly2024-06-22Chemel, James L Cpa PROPOSAL43Onyama Limba
1042Adams Y OstroskyUnited Kingdom2024-06-12Feltz Printing Service NEW37Asiya Javayant
1043Stacey A IturbideFrance2024-06-20Truhlar And Truhlar Attys NEGOTIATION59Elwin Sharvill
1044Leon J MarrierSpain2024-06-04Dorl, James J Esq RENEWAL77Amy Elsner
1045Claire T FigeroaAustralia2024-06-16Printing Dimensions NEW1Bernardo Dominic
1046Tony S InouyeIndia2024-06-04Rousseaux, Michael Esq NEGOTIATION58Asiya Javayant
1047Greenwood F WaycottRussia2024-06-04Dorl, James J Esq PROPOSAL4Ioni Bowcher
1048Aika X NestleIndia2024-06-19Rangoni Of Florence UNQUALIFIED29Elwin Sharvill
1049Tony U BriddickUnited Kingdom2024-06-01Commercial Press NEW80Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Izzy X CaudyFranceBernardo Dominic NEGOTIATION
Maisha L NestleItalyXuxue Feng UNQUALIFIED
Smith C ButtGermanyStephen Shaw QUALIFIED
Costa O FollerItalyBernardo Dominic RENEWAL
Aruna K ChuiUnited KingdomElwin Sharvill UNQUALIFIED
Misaki N OstroskyUnited KingdomAsiya Javayant NEW
Ricardo I GillianItalyIvan Magalhaes NEGOTIATION
Salvatore X VenereCanadaXuxue Feng NEGOTIATION
Murillo Z DoeJapanBernardo Dominic UNQUALIFIED
Chavez L PerinArgentinaStephen Shaw NEGOTIATION
Tony F GarufiBrazilIoni Bowcher NEGOTIATION
Nicolas V StockhamIndiaAsiya Javayant NEGOTIATION
Nicolas D DilliardAustraliaIoni Bowcher RENEWAL
Ivar C CaldareraBrazilOnyama Limba UNQUALIFIED
Deepesh R ShinkoRussiaElwin Sharvill RENEWAL
Greenwood A KolmetzSpainXuxue Feng UNQUALIFIED
Aditya P ButtUnited KingdomBernardo Dominic PROPOSAL
Darci P MorascaArgentinaBernardo Dominic PROPOSAL
Smith X MaletAustraliaAmy Elsner PROPOSAL
Morrow D BriddickGermanyIoni Bowcher QUALIFIED
Clifford N InouyeBrazilIvan Magalhaes PROPOSAL
Murillo X NestleJapanAsiya Javayant PROPOSAL
Emily W MaletItalyXuxue Feng NEW
Emily O InouyeItalyOnyama Limba PROPOSAL
David U MorascaBrazilStephen Shaw QUALIFIED
Misaki P KolmetzItalyXuxue Feng RENEWAL
Claire P BologniaAustraliaBernardo Dominic QUALIFIED
Munro T KuskoBrazilStephen Shaw QUALIFIED
Greenwood N RulapaughCanadaIoni Bowcher RENEWAL
Leon C MaletFranceStephen Shaw QUALIFIED
Isabel Y CampainCanadaXuxue Feng NEW
Ashley G BriddickCanadaStephen Shaw UNQUALIFIED
Kaitlin V FigeroaJapanXuxue Feng NEGOTIATION
Darci V StensethCanadaIvan Magalhaes NEGOTIATION
Julie D AmigonIndiaXuxue Feng RENEWAL
Johnson M GauchoAustraliaAsiya Javayant QUALIFIED
Izzy W WhobreyIndiaAnna Fali NEW
Sinclair D PoquetteRussiaXuxue Feng QUALIFIED
Ashley L OstroskyJapanStephen Shaw UNQUALIFIED
Antonio M MorascaIndiaAsiya Javayant NEW
Ashley S RulapaughAustraliaAnna Fali NEGOTIATION
Greenwood J FerenczRussiaIoni Bowcher RENEWAL
Munro J PerinAustraliaIoni Bowcher NEGOTIATION
Jeanfrancois I AmigonAustraliaIoni Bowcher UNQUALIFIED
Morrow Z BologniaFranceElwin Sharvill NEW
Sinclair M DilliardFranceXuxue Feng NEGOTIATION
Jennifer U TollnerItalyAmy Elsner QUALIFIED
Jones L StockhamUnited KingdomAnna Fali PROPOSAL
Francesco J BowleyRussiaStephen Shaw UNQUALIFIED
Francesco U WhobreyItalyIvan Magalhaes RENEWAL
Frozen Columns
Name
Alejandro N Stockham
Nicolas S Caldarera
Kadeem V Chui
Izzy G Waycott
Adams I Oldroyd
Aditya Z Nestle
Ashley B Tollner
Faith M Campain
David G Perin
Misaki M Slusarski
Smith Q Nestle
Nicolas H Schemmer
Francesco M Slusarski
Ashley S Butt
Nicolas O Stenseth
Ricardo J Saylors
Salvatore G Marrier
Aika W Bolognia
Jennifer E Marrier
Maria U Briddick
Nicolas I Caldarera
Maria P Nicka
Adams F Gillian
Costa B Perin
Murillo Y Ostrosky
Francesco W Chui
Rodrigues F Oldroyd
Darci O Inouye
Salvatore L Malet
Francesco W Ruta
Smith S Maclead
Mayumi L Figeroa
Ricardo R Ferencz
Emily J Schemmer
Claire A Morasca
Nicolas Z Poquette
David R Nicka
Alejandro C Ostrosky
Maria X Slusarski
Izzy T Figeroa
Emily M Marrier
Clifford K Bowley
Mayumi H Flosi
Silvio Q Rim
Darci C Gillian
Mayumi H Vocelka
Emily X Maclead
Nicolas W Gaucho
Mayumi B Bolognia
Chavez A Slusarski
IdCountryDate
1000Spain2024-05-27
1001Argentina2024-05-30
1002India2024-06-04
1003Russia2024-05-28
1004Italy2024-06-11
1005France2024-06-10
1006Argentina2024-06-15
1007Germany2024-05-31
1008Japan2024-06-15
1009Brazil2024-06-02
1010United Kingdom2024-06-08
1011Canada2024-06-14
1012Australia2024-06-15
1013Italy2024-05-27
1014Australia2024-06-12
1015Canada2024-06-12
1016Japan2024-06-11
1017Italy2024-06-15
1018Italy2024-06-07
1019Australia2024-06-15
1020Italy2024-06-03
1021Japan2024-06-17
1022Spain2024-06-02
1023Germany2024-05-26
1024Germany2024-06-03
1025Argentina2024-06-07
1026Canada2024-05-26
1027Argentina2024-06-12
1028France2024-05-29
1029Russia2024-06-07
1030Argentina2024-06-10
1031Argentina2024-06-08
1032India2024-06-20
1033United Kingdom2024-05-27
1034Spain2024-06-06
1035India2024-06-15
1036India2024-06-05
1037Canada2024-05-30
1038Canada2024-06-10
1039Australia2024-06-10
1040Italy2024-06-19
1041Australia2024-06-15
1042Brazil2024-06-17
1043Brazil2024-05-31
1044Australia2024-06-05
1045Argentina2024-06-13
1046Spain2024-06-12
1047Spain2024-06-22
1048India2024-06-14
1049Australia2024-06-21

On-Demand Data

NameIdCountryDate
Deepesh B Stenseth1000India2024-06-06
Nicolas M Maclead1001India2024-06-16
Jennifer G Marrier1002Canada2024-06-06
Smith C Ostrosky1003Argentina2024-06-07
Stacey A Figeroa1004United Kingdom2024-06-23
Salvatore O Inouye1005Brazil2024-06-12
Johnson O Maclead1006Canada2024-06-07
Salvatore A Flosi1007Spain2024-06-06
Julie Z Vocelka1008Australia2024-06-14
Chavez H Ruta1009United Kingdom2024-05-30
Claire D Bowley1010Japan2024-06-14
Silvio Q Kolmetz1011Germany2024-06-18
Wickens I Dilliard1012India2024-06-21
Ricardo L Butt1013Australia2024-06-05
Claire D Caldarera1014Russia2024-06-12
Greenwood G Poquette1015France2024-06-04
Aika W Tollner1016Brazil2024-06-04
Julie E Venere1017United Kingdom2024-06-19
David J Briddick1018Canada2024-06-17
Munro O Schemmer1019United Kingdom2024-06-08
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Chavez J PerinIndiaBernardo Dominic NEGOTIATION
Nicolas N PaprockiIndiaIoni Bowcher NEW
Claire C PaprockiArgentinaOnyama Limba QUALIFIED
Clifford P RimJapanOnyama Limba QUALIFIED
Leja K RimGermanyElwin Sharvill UNQUALIFIED
Morrow N OstroskySpainAnna Fali NEW
Julie Z ChuiBrazilXuxue Feng QUALIFIED
Julie P MacleadGermanyOnyama Limba NEW
Rodrigues G OldroydJapanElwin Sharvill RENEWAL
Aruna S ChuiRussiaAmy Elsner NEGOTIATION
David N BriddickBrazilStephen Shaw UNQUALIFIED
Emily F MarrierCanadaAsiya Javayant QUALIFIED
Julie D FollerFranceStephen Shaw UNQUALIFIED
Leon C DarakjyGermanyXuxue Feng NEW
Jefferson B WaycottAustraliaAsiya Javayant PROPOSAL
Deepesh Q NestleAustraliaElwin Sharvill RENEWAL
Morrow U MarrierBrazilBernardo Dominic RENEWAL
Misaki E MacleadBrazilIvan Magalhaes UNQUALIFIED
Misaki C SlusarskiSpainAmy Elsner PROPOSAL
Arvin Q GauchoGermanyBernardo Dominic UNQUALIFIED
Aruna Q VocelkaCanadaElwin Sharvill PROPOSAL
Clifford P InouyeIndiaStephen Shaw PROPOSAL
Johnson N PoquetteFranceElwin Sharvill RENEWAL
Jeanfrancois C BologniaAustraliaStephen Shaw RENEWAL
Misaki C ShinkoBrazilIoni Bowcher QUALIFIED
Murillo C FigeroaBrazilIoni Bowcher QUALIFIED
Adams O WaycottBrazilXuxue Feng PROPOSAL
Kadeem Y ChuiItalyOnyama Limba RENEWAL
Emily X TollnerAustraliaIoni Bowcher QUALIFIED
Emily R WieserSpainOnyama Limba UNQUALIFIED
Jones U WhobreyGermanyAsiya Javayant RENEWAL
Ivar B OldroydFranceAmy Elsner NEW
Morrow D DoeRussiaAsiya Javayant RENEWAL
Clifford Z FerenczItalyAnna Fali RENEWAL
Sinclair M GauchoIndiaOnyama Limba RENEWAL
Darci B MaletArgentinaElwin Sharvill QUALIFIED
Munro K BologniaAustraliaAmy Elsner NEGOTIATION
Adams P GillianRussiaXuxue Feng RENEWAL
Wickens A CaudyIndiaAsiya Javayant NEGOTIATION
Kaitlin Q KuskoRussiaStephen Shaw UNQUALIFIED

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