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
Chavez D SaylorsCanadaAnna Fali QUALIFIED
Antonio A ShinkoRussiaIoni Bowcher PROPOSAL
Jeanfrancois W MacleadRussiaIoni Bowcher RENEWAL
Octavia G NickaCanadaElwin Sharvill UNQUALIFIED
Ivar T CampainAustraliaAmy Elsner NEW
Ricardo N MaletUnited KingdomAnna Fali UNQUALIFIED
Misaki P FlosiRussiaOnyama Limba PROPOSAL
Silvio M CaldareraIndiaAnna Fali NEW
Adams Y RoysterJapanIoni Bowcher RENEWAL
Emily T ShinkoRussiaAsiya Javayant PROPOSAL
Octavia O SlusarskiUnited KingdomIvan Magalhaes RENEWAL
Jefferson Q WhobreyAustraliaStephen Shaw RENEWAL
Leja M FerenczGermanyXuxue Feng NEGOTIATION
Maria X IturbideIndiaElwin Sharvill PROPOSAL
Isabel S IturbideItalyAsiya Javayant NEGOTIATION
Julie G DoeCanadaStephen Shaw RENEWAL
Mujtaba T StockhamGermanyAnna Fali NEW
Maisha Y PoquetteAustraliaBernardo Dominic UNQUALIFIED
Julie C SlusarskiBrazilAnna Fali QUALIFIED
Ashley Q VenereUnited KingdomXuxue Feng PROPOSAL
Maria L MarrierCanadaBernardo Dominic NEGOTIATION
Murillo B SaylorsJapanIvan Magalhaes UNQUALIFIED
Octavia S RimSpainOnyama Limba NEW
Kadeem F MaletAustraliaStephen Shaw NEW
Kadeem T MacleadIndiaAnna Fali NEW
Aditya L PaprockiJapanIvan Magalhaes UNQUALIFIED
Morrow X BowleyItalyAsiya Javayant NEW
Salvatore M MaletArgentinaBernardo Dominic UNQUALIFIED
Darci W DilliardJapanStephen Shaw RENEWAL
Aditya V DilliardIndiaElwin Sharvill QUALIFIED
Costa I GillianFranceAmy Elsner PROPOSAL
Wickens Y GauchoRussiaIoni Bowcher QUALIFIED
Isabel I GarufiRussiaAnna Fali NEGOTIATION
Maria H FollerRussiaElwin Sharvill NEW
Juan A FollerRussiaOnyama Limba PROPOSAL
Jennifer O DoeBrazilAsiya Javayant NEGOTIATION
Cody H MarrierArgentinaIvan Magalhaes NEGOTIATION
Munro U RutaSpainBernardo Dominic NEGOTIATION
Tony O FlosiAustraliaBernardo Dominic QUALIFIED
Salvatore S IturbideSpainStephen Shaw QUALIFIED
Maria W GlickRussiaStephen Shaw NEGOTIATION
Emily G WhobreyUnited KingdomStephen Shaw NEW
Murillo M AmigonRussiaAmy Elsner RENEWAL
Deepesh T FollerAustraliaIvan Magalhaes NEGOTIATION
Tony G MaletIndiaStephen Shaw UNQUALIFIED
Sinclair O FerenczIndiaIoni Bowcher NEGOTIATION
Munro C FollerFranceAsiya Javayant QUALIFIED
Smith L OldroydGermanyBernardo Dominic UNQUALIFIED
Aika H FollerJapanAnna Fali PROPOSAL
Maria J ShinkoUnited KingdomElwin Sharvill NEW
Horizontal
NameCountryRepresentativeStatus
Jennifer Y IturbideRussiaAmy Elsner NEGOTIATION
Leon U PaprockiJapanElwin Sharvill RENEWAL
Tony J CampainAustraliaBernardo Dominic UNQUALIFIED
Jefferson N DarakjyItalyAmy Elsner PROPOSAL
Munro A PaprockiAustraliaXuxue Feng NEW
Mujtaba S FollerAustraliaAnna Fali NEGOTIATION
David M SchemmerArgentinaIoni Bowcher NEGOTIATION
Octavia V KuskoFranceIvan Magalhaes NEW
Antonio Z WaycottBrazilStephen Shaw RENEWAL
Munro S DoeItalyAsiya Javayant RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Julie F StensethIndia2024-05-24Chemel, James L Cpa UNQUALIFIED56Anna Fali
1001Emily G PerinGermany2024-06-02Buckley Miller Wright PROPOSAL18Ioni Bowcher
1002Emily M BowleySpain2024-05-23Chapman, Ross E Esq QUALIFIED74Anna Fali
1003Ashley Z NestleRussia2024-05-23Commercial Press NEW77Stephen Shaw
1004Mayumi C WhobreyJapan2024-06-13Commercial Press QUALIFIED19Stephen Shaw
1005Aika I SchemmerBrazil2024-06-10Chanay, Jeffrey A Esq QUALIFIED2Ivan Magalhaes
1006Alejandro Y RoysterJapan2024-06-07Rousseaux, Michael Esq NEW22Ioni Bowcher
1007Clifford F RoysterRussia2024-05-31Feiner Bros PROPOSAL73Onyama Limba
1008Antonio E WaycottRussia2024-06-13Commercial Press RENEWAL12Anna Fali
1009Munro D GarufiUnited Kingdom2024-06-14Printing Dimensions PROPOSAL12Bernardo Dominic
1010Greenwood W DilliardUnited Kingdom2024-06-14Rousseaux, Michael Esq PROPOSAL53Xuxue Feng
1011Smith R RutaArgentina2024-06-18Feiner Bros RENEWAL45Onyama Limba
1012Misaki G FigeroaUnited Kingdom2024-05-28Morlong Associates NEGOTIATION12Amy Elsner
1013Smith M MorascaFrance2024-06-05King, Christopher A Esq NEGOTIATION72Anna Fali
1014Jones X WieserSpain2024-06-09Chanay, Jeffrey A Esq PROPOSAL4Ivan Magalhaes
1015Aika T WaycottAustralia2024-06-05Chapman, Ross E Esq QUALIFIED11Ioni Bowcher
1016Aditya Y KolmetzItaly2024-05-29Benton, John B Jr QUALIFIED58Elwin Sharvill
1017Jefferson Q GillianSpain2024-06-16Benton, John B Jr NEGOTIATION96Elwin Sharvill
1018Kaitlin P RulapaughAustralia2024-05-25Chapman, Ross E Esq UNQUALIFIED5Ivan Magalhaes
1019Arvin E BologniaUnited Kingdom2024-05-25Printing Dimensions PROPOSAL0Stephen Shaw
1020Kaitlin B SchemmerUnited Kingdom2024-05-29Benton, John B Jr QUALIFIED96Anna Fali
1021Juan R StockhamCanada2024-06-14Morlong Associates NEGOTIATION67Onyama Limba
1022Darci H StensethUnited Kingdom2024-06-04Feltz Printing Service PROPOSAL60Onyama Limba
1023Claire V GarufiAustralia2024-05-23Feiner Bros NEW3Ioni Bowcher
1024Darci V NickaFrance2024-06-07Rangoni Of Florence NEW79Asiya Javayant
1025Alejandro O FlosiItaly2024-06-07Chapman, Ross E Esq NEGOTIATION98Ivan Magalhaes
1026Johnson M DilliardBrazil2024-06-11Chanay, Jeffrey A Esq QUALIFIED25Onyama Limba
1027Antonio G DoeUnited Kingdom2024-06-04Dorl, James J Esq NEGOTIATION70Onyama Limba
1028Smith I RulapaughSpain2024-06-19Chemel, James L Cpa NEGOTIATION62Ivan Magalhaes
1029Leja I GauchoRussia2024-05-25Buckley Miller Wright QUALIFIED8Ioni Bowcher
1030Maisha V DoeAustralia2024-06-21Feiner Bros PROPOSAL25Ioni Bowcher
1031Kaitlin X VocelkaArgentina2024-05-28Rangoni Of Florence NEW4Onyama Limba
1032Darci K DarakjyUnited Kingdom2024-05-26Benton, John B Jr QUALIFIED37Xuxue Feng
1033Kadeem X DoeBrazil2024-05-31Chanay, Jeffrey A Esq UNQUALIFIED50Bernardo Dominic
1034Murillo T FollerJapan2024-05-27Morlong Associates RENEWAL55Anna Fali
1035Julie L MaletGermany2024-06-14Printing Dimensions UNQUALIFIED34Amy Elsner
1036Emily C BologniaRussia2024-06-05Printing Dimensions RENEWAL4Ioni Bowcher
1037Adams M VocelkaJapan2024-06-05Morlong Associates UNQUALIFIED77Ivan Magalhaes
1038David V ChuiIndia2024-06-10Buckley Miller Wright PROPOSAL74Xuxue Feng
1039Cody V FigeroaIndia2024-06-17Chapman, Ross E Esq NEGOTIATION33Elwin Sharvill
1040Jeanfrancois K GarufiCanada2024-05-23Feltz Printing Service QUALIFIED17Xuxue Feng
1041Mujtaba H PerinGermany2024-06-06King, Christopher A Esq RENEWAL83Anna Fali
1042Julie P KolmetzSpain2024-05-26Benton, John B Jr PROPOSAL60Anna Fali
1043Kadeem C InouyeItaly2024-06-04Rangoni Of Florence PROPOSAL6Ivan Magalhaes
1044Kadeem X SaylorsBrazil2024-06-13Chanay, Jeffrey A Esq QUALIFIED44Onyama Limba
1045Alejandro N ChuiUnited Kingdom2024-05-27Commercial Press RENEWAL82Ioni Bowcher
1046Alejandro Q BowleySpain2024-05-25King, Christopher A Esq NEGOTIATION41Asiya Javayant
1047Jeanfrancois U MaletRussia2024-05-24Printing Dimensions NEGOTIATION12Onyama Limba
1048Julie H PerinItaly2024-06-06Rangoni Of Florence RENEWAL57Elwin Sharvill
1049Kaitlin M BriddickJapan2024-06-13Feltz Printing Service PROPOSAL3Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Clifford U FerenczArgentinaIoni Bowcher NEGOTIATION
Aika G GillianSpainIvan Magalhaes RENEWAL
Cody R BologniaBrazilAnna Fali QUALIFIED
Maria N WieserGermanyElwin Sharvill PROPOSAL
Costa Y GauchoUnited KingdomStephen Shaw UNQUALIFIED
Johnson X AlbaresItalyElwin Sharvill UNQUALIFIED
Arvin T SaylorsCanadaXuxue Feng NEW
Murillo S MorascaUnited KingdomAnna Fali UNQUALIFIED
Munro V NickaBrazilAsiya Javayant PROPOSAL
Leja G StockhamUnited KingdomOnyama Limba NEW
James E BologniaCanadaAmy Elsner NEW
Arvin Z ChuiArgentinaIvan Magalhaes QUALIFIED
Aditya T KolmetzBrazilXuxue Feng NEGOTIATION
Greenwood L ShinkoGermanyAmy Elsner NEW
Leja H CampainRussiaOnyama Limba NEGOTIATION
Cody M StockhamGermanyIoni Bowcher NEGOTIATION
Smith H MaletAustraliaAsiya Javayant NEGOTIATION
Octavia J PoquetteSpainStephen Shaw NEGOTIATION
David O DarakjyArgentinaOnyama Limba RENEWAL
Leja F RoysterItalyAnna Fali UNQUALIFIED
Arvin Y GarufiAustraliaElwin Sharvill RENEWAL
Morrow Z PaprockiJapanIvan Magalhaes NEW
Juan I MorascaJapanIvan Magalhaes RENEWAL
Faith T StensethItalyIvan Magalhaes NEGOTIATION
Mujtaba I ChuiItalyBernardo Dominic PROPOSAL
Aika Z PoquetteFranceBernardo Dominic RENEWAL
Rodrigues C KolmetzUnited KingdomStephen Shaw NEGOTIATION
Darci W OstroskyAustraliaIoni Bowcher UNQUALIFIED
Francesco N WaycottAustraliaIoni Bowcher UNQUALIFIED
Faith R BriddickArgentinaElwin Sharvill NEW
Leja D CampainAustraliaAnna Fali QUALIFIED
Adams D StockhamIndiaBernardo Dominic PROPOSAL
Salvatore N CaldareraSpainAnna Fali PROPOSAL
Morrow O GauchoCanadaIvan Magalhaes NEW
Smith C SaylorsFranceIvan Magalhaes NEGOTIATION
Kaitlin U OldroydJapanXuxue Feng PROPOSAL
Rodrigues U CaudyItalyAmy Elsner NEGOTIATION
Aruna U DoeIndiaXuxue Feng PROPOSAL
Rodrigues G PaprockiRussiaAmy Elsner NEW
Salvatore O PoquetteItalyAnna Fali NEW
Costa Q BriddickGermanyIvan Magalhaes NEGOTIATION
James Y OstroskyIndiaAsiya Javayant RENEWAL
Smith L ButtBrazilAsiya Javayant RENEWAL
Jones P BriddickJapanOnyama Limba PROPOSAL
Ashley B BologniaAustraliaXuxue Feng UNQUALIFIED
Ashley O GarufiUnited KingdomElwin Sharvill NEW
Nicolas Y TollnerAustraliaStephen Shaw UNQUALIFIED
Aditya R MaletIndiaOnyama Limba NEW
Misaki P MacleadUnited KingdomStephen Shaw PROPOSAL
Salvatore I NickaSpainXuxue Feng PROPOSAL
Frozen Columns
Name
Kadeem J Campain
Alejandro N Ferencz
Chavez R Marrier
Alejandro X Butt
Aruna W Kolmetz
Smith F Dilliard
Tony Q Nicka
Chavez N Venere
James J Albares
Arvin G Rulapaugh
Darci O Darakjy
Alejandro E Vocelka
Aika D Vocelka
Ashley R Shinko
Darci X Schemmer
Aditya H Rulapaugh
Emily U Nestle
Chavez C Royster
Johnson J Rim
Maria L Rulapaugh
Emily P Dilliard
Aruna Z Flosi
Adams M Morasca
Ashley P Nestle
Clifford I Schemmer
Ashley G Malet
Maisha J Iturbide
Chavez T Dilliard
Deepesh U Stockham
Stacey V Venere
Maria U Albares
Izzy A Whobrey
Wickens K Iturbide
Deepesh K Schemmer
Faith I Wieser
Maisha G Morasca
Morrow X Amigon
Silvio A Dilliard
Darci K Maclead
Misaki Z Waycott
Misaki M Doe
Munro S Nestle
Julie D Wieser
Munro S Gillian
Silvio D Saylors
Leja G Perin
Aruna R Poquette
Darci S Figeroa
David E Albares
Julie M Kolmetz
IdCountryDate
1000Spain2024-06-05
1001Australia2024-06-02
1002Italy2024-06-04
1003Russia2024-06-07
1004Russia2024-06-07
1005Japan2024-05-23
1006Australia2024-06-19
1007India2024-05-25
1008Japan2024-06-04
1009Spain2024-06-19
1010Canada2024-05-31
1011Italy2024-06-21
1012India2024-06-05
1013India2024-06-21
1014Australia2024-05-29
1015Canada2024-05-30
1016India2024-05-31
1017United Kingdom2024-06-17
1018United Kingdom2024-06-07
1019United Kingdom2024-06-17
1020Russia2024-06-02
1021Russia2024-06-12
1022Japan2024-06-14
1023Canada2024-06-05
1024Australia2024-05-30
1025Japan2024-06-17
1026Canada2024-05-23
1027Spain2024-06-08
1028India2024-06-03
1029Italy2024-06-16
1030Russia2024-06-11
1031Brazil2024-05-25
1032Japan2024-06-08
1033Australia2024-06-15
1034Russia2024-06-06
1035United Kingdom2024-05-31
1036Australia2024-06-16
1037France2024-06-01
1038Italy2024-05-28
1039Japan2024-06-03
1040France2024-06-07
1041Argentina2024-05-28
1042Italy2024-06-08
1043France2024-06-10
1044Germany2024-05-26
1045Argentina2024-06-16
1046Canada2024-06-20
1047Japan2024-06-08
1048Italy2024-06-06
1049Brazil2024-05-25

On-Demand Data

NameIdCountryDate
Leja M Tollner1000Spain2024-06-07
Kadeem Z Garufi1001Australia2024-06-08
Johnson X Poquette1002France2024-06-04
Isabel S Bolognia1003India2024-06-10
Arvin G Nestle1004Germany2024-06-20
Faith X Briddick1005Argentina2024-06-06
Rodrigues R Poquette1006Argentina2024-06-18
Leon B Venere1007Japan2024-06-17
Darci S Briddick1008India2024-06-06
Jefferson D Ruta1009Russia2024-06-12
Nicolas A Waycott1010Germany2024-06-06
Murillo S Briddick1011Spain2024-06-16
Aruna P Sergi1012Italy2024-05-23
Silvio T Waycott1013France2024-05-31
Ricardo O Royster1014India2024-06-18
Emily N Figeroa1015Spain2024-06-20
Deepesh T Rim1016Germany2024-05-28
Tony J Dilliard1017India2024-06-10
Greenwood N Paprocki1018Germany2024-06-17
Kadeem M Royster1019Brazil2024-06-16
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Morrow I MarrierIndiaAnna Fali RENEWAL
Cody S SergiIndiaOnyama Limba UNQUALIFIED
Wickens E SlusarskiGermanyElwin Sharvill RENEWAL
Jeanfrancois T PaprockiSpainAsiya Javayant RENEWAL
Adams T PoquetteItalyXuxue Feng NEGOTIATION
Jeanfrancois M SlusarskiJapanIoni Bowcher PROPOSAL
Cody Z ShinkoGermanyBernardo Dominic UNQUALIFIED
Leon K SaylorsArgentinaBernardo Dominic NEGOTIATION
Adams I KuskoJapanAmy Elsner UNQUALIFIED
Deepesh C KolmetzFranceAnna Fali RENEWAL
Jennifer M StockhamArgentinaAsiya Javayant NEW
Julie P SchemmerJapanAsiya Javayant RENEWAL
Wickens U SergiCanadaBernardo Dominic NEW
Aditya D MaletJapanElwin Sharvill PROPOSAL
Juan G SergiFranceAmy Elsner NEGOTIATION
Antonio H PoquetteIndiaElwin Sharvill RENEWAL
Francesco N MacleadCanadaAsiya Javayant NEW
Julie F BriddickUnited KingdomIvan Magalhaes NEW
Octavia U DoeFranceBernardo Dominic PROPOSAL
Isabel Z PerinCanadaAsiya Javayant NEW
Aditya Q NestleRussiaBernardo Dominic UNQUALIFIED
Stacey F SergiArgentinaAmy Elsner NEW
Aruna H MaletRussiaElwin Sharvill PROPOSAL
Aruna I IturbideIndiaIvan Magalhaes UNQUALIFIED
Antonio D GauchoUnited KingdomBernardo Dominic NEW
Aditya O PerinBrazilElwin Sharvill PROPOSAL
Nicolas Z ShinkoIndiaAmy Elsner QUALIFIED
Kaitlin I PoquetteFranceOnyama Limba PROPOSAL
Johnson L FigeroaAustraliaXuxue Feng NEW
Claire Y StensethArgentinaAnna Fali QUALIFIED
Sinclair L MacleadFranceAmy Elsner NEW
Silvio C BowleyCanadaXuxue Feng PROPOSAL
Izzy N SchemmerItalyElwin Sharvill PROPOSAL
Adams N GauchoCanadaStephen Shaw NEGOTIATION
Julie L CaldareraAustraliaBernardo Dominic UNQUALIFIED
Wickens T SlusarskiRussiaStephen Shaw RENEWAL
Sinclair G DarakjyCanadaStephen Shaw UNQUALIFIED
Jones D DarakjyItalyBernardo Dominic UNQUALIFIED
Johnson Z IturbideGermanyElwin Sharvill PROPOSAL
Leja Y InouyeBrazilBernardo Dominic 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>