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
Antonio J AmigonIndiaIvan Magalhaes UNQUALIFIED
Clifford E VenereGermanyElwin Sharvill NEGOTIATION
Clifford W OldroydSpainXuxue Feng NEW
Julie D CampainItalyXuxue Feng QUALIFIED
Mujtaba X MarrierBrazilIoni Bowcher UNQUALIFIED
Clifford J SergiFranceOnyama Limba QUALIFIED
Chavez S SchemmerFranceElwin Sharvill NEGOTIATION
Nicolas K InouyeAustraliaAnna Fali QUALIFIED
Tony B StensethRussiaAnna Fali NEW
Tony U PerinRussiaOnyama Limba UNQUALIFIED
Munro H SlusarskiUnited KingdomBernardo Dominic RENEWAL
Arvin P RulapaughAustraliaXuxue Feng RENEWAL
Alejandro D DilliardGermanyIoni Bowcher UNQUALIFIED
Ricardo W AlbaresRussiaStephen Shaw RENEWAL
Rodrigues Z AlbaresAustraliaElwin Sharvill QUALIFIED
Francesco M NestleRussiaOnyama Limba NEGOTIATION
Francesco B MaletIndiaAnna Fali UNQUALIFIED
Rodrigues J RulapaughBrazilAmy Elsner PROPOSAL
Wickens K ChuiCanadaAnna Fali UNQUALIFIED
Kadeem Z FigeroaJapanXuxue Feng NEGOTIATION
Wickens S GillianIndiaAmy Elsner QUALIFIED
Misaki K KuskoIndiaBernardo Dominic NEW
Juan E MaletIndiaOnyama Limba QUALIFIED
Juan G StensethIndiaBernardo Dominic QUALIFIED
Clifford F PoquetteCanadaBernardo Dominic NEGOTIATION
Stacey E OstroskySpainStephen Shaw NEGOTIATION
Rodrigues X SergiFranceElwin Sharvill NEGOTIATION
Morrow Q MacleadGermanyIoni Bowcher QUALIFIED
Costa D BriddickUnited KingdomAsiya Javayant NEGOTIATION
Ivar W ShinkoItalyElwin Sharvill QUALIFIED
Morrow A NickaItalyAmy Elsner PROPOSAL
Ricardo S DilliardGermanyStephen Shaw PROPOSAL
Mujtaba L AmigonItalyBernardo Dominic NEGOTIATION
Kaitlin K FollerAustraliaOnyama Limba UNQUALIFIED
James Z PoquetteRussiaOnyama Limba UNQUALIFIED
Alejandro F StensethSpainAmy Elsner RENEWAL
Kaitlin W WaycottAustraliaIoni Bowcher NEGOTIATION
Cody Y MorascaUnited KingdomAsiya Javayant RENEWAL
Arvin E StensethItalyIoni Bowcher UNQUALIFIED
Salvatore Q PerinArgentinaXuxue Feng NEW
Ivar Q SlusarskiSpainXuxue Feng RENEWAL
Adams S AmigonAustraliaOnyama Limba NEW
Munro O NickaRussiaStephen Shaw PROPOSAL
Cody M RutaAustraliaAmy Elsner PROPOSAL
Silvio L CaldareraUnited KingdomElwin Sharvill QUALIFIED
Deepesh M VenereAustraliaAnna Fali NEGOTIATION
Cody I CaudyUnited KingdomElwin Sharvill UNQUALIFIED
Antonio J VocelkaIndiaXuxue Feng QUALIFIED
Salvatore Z ButtFranceBernardo Dominic RENEWAL
Deepesh K KolmetzIndiaStephen Shaw UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Wickens L ShinkoItalyAnna Fali UNQUALIFIED
Aditya T FollerIndiaIvan Magalhaes RENEWAL
Kadeem M GlickRussiaBernardo Dominic QUALIFIED
Faith W FerenczCanadaBernardo Dominic UNQUALIFIED
Julie G DilliardGermanyXuxue Feng NEW
Misaki B CaldareraGermanyXuxue Feng QUALIFIED
Jones E ChuiGermanyIvan Magalhaes NEW
Tony A WhobreyIndiaXuxue Feng QUALIFIED
Stacey U MaletArgentinaAnna Fali PROPOSAL
Claire J KolmetzBrazilAsiya Javayant RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Smith T WaycottUnited Kingdom2024-06-04Chemel, James L Cpa QUALIFIED51Asiya Javayant
1001Izzy U DarakjyAustralia2024-06-09Morlong Associates RENEWAL11Xuxue Feng
1002Emily W DarakjyRussia2024-06-10Rangoni Of Florence PROPOSAL70Ivan Magalhaes
1003Adams F IturbideRussia2024-06-11King, Christopher A Esq UNQUALIFIED67Xuxue Feng
1004Juan J GarufiIndia2024-05-30Truhlar And Truhlar Attys UNQUALIFIED3Onyama Limba
1005Nicolas A OstroskySpain2024-06-07Chemel, James L Cpa NEGOTIATION71Onyama Limba
1006Aditya T StensethJapan2024-06-22Feiner Bros RENEWAL54Stephen Shaw
1007Aruna H FlosiArgentina2024-05-29Rousseaux, Michael Esq NEW14Ivan Magalhaes
1008Maria A MaletAustralia2024-05-29Feltz Printing Service PROPOSAL4Bernardo Dominic
1009Greenwood R NestleFrance2024-06-22Buckley Miller Wright PROPOSAL17Bernardo Dominic
1010Francesco O GlickRussia2024-06-22Benton, John B Jr RENEWAL50Amy Elsner
1011Clifford J RoysterBrazil2024-05-26Feltz Printing Service NEW49Ivan Magalhaes
1012Maria V MacleadArgentina2024-06-24Rangoni Of Florence QUALIFIED95Anna Fali
1013Sinclair T AlbaresRussia2024-05-30Truhlar And Truhlar Attys NEW39Amy Elsner
1014Izzy K TollnerAustralia2024-06-15Rangoni Of Florence QUALIFIED61Ivan Magalhaes
1015Jennifer L KuskoCanada2024-05-31Feltz Printing Service PROPOSAL49Xuxue Feng
1016Antonio S VocelkaGermany2024-06-15Buckley Miller Wright NEW6Amy Elsner
1017Aika G MarrierIndia2024-06-14Buckley Miller Wright QUALIFIED64Xuxue Feng
1018Silvio Y NickaJapan2024-06-23Rangoni Of Florence PROPOSAL49Ivan Magalhaes
1019Mujtaba S RoysterUnited Kingdom2024-06-05Rousseaux, Michael Esq PROPOSAL82Ioni Bowcher
1020Tony Q GlickBrazil2024-06-15Feiner Bros NEW7Amy Elsner
1021Chavez N MorascaUnited Kingdom2024-06-18Rousseaux, Michael Esq RENEWAL77Asiya Javayant
1022Arvin L MarrierJapan2024-06-03Dorl, James J Esq RENEWAL58Amy Elsner
1023Jeanfrancois B RimUnited Kingdom2024-06-17Chapman, Ross E Esq RENEWAL8Elwin Sharvill
1024Antonio J WhobreySpain2024-06-11Dorl, James J Esq NEW43Amy Elsner
1025Isabel N SaylorsSpain2024-06-22Benton, John B Jr QUALIFIED57Onyama Limba
1026Julie Y StensethAustralia2024-06-05Morlong Associates NEGOTIATION7Bernardo Dominic
1027Ivar E BowleyRussia2024-06-15Chanay, Jeffrey A Esq QUALIFIED4Stephen Shaw
1028Octavia B KolmetzBrazil2024-06-15Feltz Printing Service NEGOTIATION73Anna Fali
1029Izzy Y ChuiItaly2024-06-04Morlong Associates QUALIFIED69Amy Elsner
1030Smith Q CampainIndia2024-06-21Benton, John B Jr UNQUALIFIED5Onyama Limba
1031Darci W FollerRussia2024-06-22Morlong Associates NEGOTIATION49Elwin Sharvill
1032Ashley I MaletJapan2024-06-06Benton, John B Jr QUALIFIED18Asiya Javayant
1033Francesco I SaylorsJapan2024-06-18Feltz Printing Service NEW63Anna Fali
1034Antonio Y SaylorsUnited Kingdom2024-06-22Rangoni Of Florence PROPOSAL16Asiya Javayant
1035Izzy L IturbideFrance2024-06-13Benton, John B Jr NEW3Amy Elsner
1036Julie G SchemmerAustralia2024-06-09Benton, John B Jr NEW54Amy Elsner
1037Jeanfrancois H InouyeGermany2024-06-08Morlong Associates QUALIFIED47Anna Fali
1038David G BriddickUnited Kingdom2024-06-13Chanay, Jeffrey A Esq NEGOTIATION89Onyama Limba
1039Cody D DarakjyCanada2024-06-19Feltz Printing Service PROPOSAL87Elwin Sharvill
1040Nicolas Y GarufiIndia2024-06-01Buckley Miller Wright RENEWAL16Xuxue Feng
1041Maria W MacleadCanada2024-06-16Printing Dimensions RENEWAL52Stephen Shaw
1042Morrow H MaletUnited Kingdom2024-06-22Morlong Associates NEW41Onyama Limba
1043Francesco M MarrierSpain2024-05-27Printing Dimensions UNQUALIFIED48Stephen Shaw
1044Isabel F KolmetzBrazil2024-06-17Morlong Associates RENEWAL33Anna Fali
1045David I SaylorsBrazil2024-06-10Chapman, Ross E Esq PROPOSAL97Ivan Magalhaes
1046Ivar G DilliardSpain2024-05-26Printing Dimensions UNQUALIFIED24Stephen Shaw
1047Darci D GillianIndia2024-06-10Feltz Printing Service RENEWAL81Ivan Magalhaes
1048Claire S AlbaresAustralia2024-06-14Morlong Associates NEGOTIATION16Ioni Bowcher
1049Murillo N CaudyJapan2024-06-02Printing Dimensions RENEWAL63Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Kaitlin H FollerCanadaIvan Magalhaes NEGOTIATION
Juan F RimBrazilAmy Elsner QUALIFIED
Alejandro C ButtUnited KingdomAnna Fali QUALIFIED
David N NickaArgentinaOnyama Limba QUALIFIED
Octavia L GarufiArgentinaStephen Shaw UNQUALIFIED
Mujtaba F RutaItalyAsiya Javayant QUALIFIED
Kaitlin K CaldareraRussiaAsiya Javayant NEGOTIATION
Jeanfrancois E KuskoCanadaAmy Elsner PROPOSAL
Kaitlin J StensethCanadaAmy Elsner UNQUALIFIED
Arvin Q FlosiCanadaIvan Magalhaes UNQUALIFIED
Jefferson H RulapaughBrazilOnyama Limba RENEWAL
Mayumi Y FlosiAustraliaBernardo Dominic QUALIFIED
Emily H MacleadAustraliaBernardo Dominic PROPOSAL
Alejandro L WhobreyJapanXuxue Feng NEW
Maisha O SaylorsCanadaIoni Bowcher RENEWAL
Nicolas G IturbideUnited KingdomElwin Sharvill QUALIFIED
David Y StensethCanadaElwin Sharvill UNQUALIFIED
Maisha V SlusarskiArgentinaBernardo Dominic PROPOSAL
Costa E VocelkaSpainBernardo Dominic QUALIFIED
Alejandro R BologniaAustraliaIoni Bowcher PROPOSAL
Sinclair G FigeroaAustraliaAnna Fali RENEWAL
Octavia E GarufiJapanElwin Sharvill RENEWAL
Morrow E MorascaGermanyElwin Sharvill RENEWAL
Faith N MorascaItalyOnyama Limba NEW
Kadeem A ChuiRussiaXuxue Feng PROPOSAL
Munro O PoquetteCanadaIoni Bowcher QUALIFIED
Aditya X CampainFranceXuxue Feng RENEWAL
Leja C KolmetzGermanyOnyama Limba NEW
Faith H FigeroaCanadaAsiya Javayant UNQUALIFIED
Ashley G CaudyIndiaStephen Shaw NEW
Jeanfrancois V MaletUnited KingdomAmy Elsner NEGOTIATION
Nicolas S ButtCanadaIvan Magalhaes NEGOTIATION
Ivar Z FigeroaBrazilBernardo Dominic NEGOTIATION
Julie D PerinJapanAmy Elsner PROPOSAL
Izzy C KuskoCanadaStephen Shaw RENEWAL
Jeanfrancois C RulapaughIndiaIvan Magalhaes NEW
Greenwood D FigeroaSpainBernardo Dominic QUALIFIED
Leon E VenereArgentinaIvan Magalhaes NEGOTIATION
Aditya M BriddickGermanyAsiya Javayant UNQUALIFIED
Silvio C SlusarskiFranceStephen Shaw NEW
James R RutaFranceElwin Sharvill PROPOSAL
Julie U MaletItalyAmy Elsner NEW
Chavez R InouyeIndiaXuxue Feng UNQUALIFIED
Maria B SchemmerRussiaXuxue Feng UNQUALIFIED
Arvin E KolmetzAustraliaIvan Magalhaes PROPOSAL
Leja F BriddickArgentinaAnna Fali NEW
Alejandro N RulapaughJapanAnna Fali RENEWAL
Kaitlin K IturbideRussiaStephen Shaw UNQUALIFIED
Kadeem T ButtIndiaIoni Bowcher PROPOSAL
Francesco B SchemmerSpainIvan Magalhaes PROPOSAL
Frozen Columns
Name
Stacey I Campain
Kaitlin Z Figeroa
Emily I Stenseth
Rodrigues C Vocelka
Jefferson H Whobrey
Sinclair O Waycott
Murillo V Whobrey
Jeanfrancois W Saylors
Johnson L Rim
Jennifer M Saylors
James S Caldarera
Jones F Inouye
Silvio Y Kusko
Aika G Saylors
Deepesh W Morasca
Greenwood E Darakjy
Munro U Sergi
Antonio I Garufi
Rodrigues W Iturbide
Maisha E Whobrey
Maria C Glick
Aruna Z Figeroa
Rodrigues Q Foller
Wickens J Inouye
Maria I Bolognia
Cody Y Shinko
Mayumi D Shinko
James I Gillian
Darci K Sergi
Mayumi F Waycott
Aruna D Tollner
Leon V Butt
Silvio Y Paprocki
Murillo K Nicka
Aruna F Maclead
Stacey D Poquette
Antonio B Kolmetz
Johnson D Kolmetz
Julie O Amigon
Ivar M Shinko
Ricardo C Foller
Izzy W Marrier
Julie P Amigon
Johnson B Inouye
Silvio J Caldarera
Jones C Sergi
Clifford W Ferencz
Aditya W Figeroa
Clifford A Albares
Smith A Briddick
IdCountryDate
1000Canada2024-06-20
1001United Kingdom2024-06-24
1002United Kingdom2024-05-28
1003Russia2024-06-06
1004United Kingdom2024-05-27
1005Japan2024-06-10
1006Spain2024-06-18
1007Argentina2024-06-11
1008France2024-06-04
1009Australia2024-05-27
1010Russia2024-06-20
1011United Kingdom2024-06-11
1012Australia2024-06-11
1013Australia2024-06-07
1014France2024-06-01
1015Spain2024-06-16
1016Brazil2024-06-14
1017Russia2024-06-11
1018Argentina2024-06-15
1019Canada2024-06-16
1020Germany2024-05-31
1021Brazil2024-06-08
1022India2024-06-06
1023United Kingdom2024-06-11
1024Brazil2024-06-04
1025Germany2024-06-12
1026Japan2024-06-18
1027Canada2024-06-12
1028Canada2024-06-07
1029United Kingdom2024-06-19
1030India2024-06-03
1031Russia2024-05-26
1032Russia2024-06-09
1033United Kingdom2024-06-02
1034Japan2024-06-18
1035France2024-06-02
1036India2024-06-13
1037Australia2024-06-10
1038India2024-06-01
1039Brazil2024-05-26
1040Russia2024-06-18
1041India2024-06-23
1042Russia2024-06-06
1043Russia2024-06-05
1044Argentina2024-06-09
1045Australia2024-06-18
1046Australia2024-06-05
1047Italy2024-06-12
1048Spain2024-05-28
1049Australia2024-06-19

On-Demand Data

NameIdCountryDate
Kaitlin Y Bowley1000Argentina2024-06-16
Murillo O Poquette1001Australia2024-06-13
Tony F Malet1002Canada2024-06-09
Jeanfrancois R Saylors1003Australia2024-06-01
Nicolas P Maclead1004United Kingdom2024-06-13
Ricardo C Poquette1005Italy2024-06-16
Morrow H Perin1006India2024-05-28
Chavez K Campain1007United Kingdom2024-05-27
Arvin D Tollner1008Brazil2024-06-19
Faith F Butt1009Brazil2024-06-21
Ricardo Y Caldarera1010Italy2024-06-07
Morrow E Poquette1011Germany2024-06-23
Salvatore S Chui1012Germany2024-06-14
James A Poquette1013Canada2024-06-19
Clifford K Tollner1014Russia2024-06-07
Mayumi V Albares1015Canada2024-06-02
Ivar T Oldroyd1016Japan2024-06-23
Rodrigues P Caldarera1017Brazil2024-06-21
Alejandro F Glick1018Germany2024-06-17
Aika H Caudy1019Australia2024-06-03
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Salvatore B SaylorsArgentinaBernardo Dominic NEGOTIATION
Clifford M InouyeGermanyOnyama Limba UNQUALIFIED
Clifford E MaletCanadaAsiya Javayant NEW
Adams P MorascaArgentinaIvan Magalhaes NEW
Arvin G WaycottBrazilIvan Magalhaes RENEWAL
Rodrigues S TollnerCanadaOnyama Limba QUALIFIED
Antonio O OldroydRussiaBernardo Dominic UNQUALIFIED
Adams O SergiGermanyAsiya Javayant PROPOSAL
Leon I IturbideJapanOnyama Limba RENEWAL
Aruna W GillianJapanOnyama Limba UNQUALIFIED
Sinclair X SaylorsIndiaOnyama Limba NEW
Sinclair S VocelkaGermanyStephen Shaw PROPOSAL
Tony G TollnerItalyAnna Fali RENEWAL
Aditya V FerenczGermanyAmy Elsner UNQUALIFIED
James W MorascaItalyIvan Magalhaes PROPOSAL
Nicolas M NestleItalyAnna Fali RENEWAL
Mayumi G IturbideAustraliaElwin Sharvill NEGOTIATION
Ashley A ButtItalyIvan Magalhaes PROPOSAL
Claire J GauchoArgentinaElwin Sharvill UNQUALIFIED
Francesco D GillianCanadaIvan Magalhaes QUALIFIED
Johnson B MacleadArgentinaElwin Sharvill RENEWAL
Smith Q VocelkaGermanyIoni Bowcher PROPOSAL
Nicolas H GlickGermanyAnna Fali QUALIFIED
Leon L MaletRussiaAnna Fali PROPOSAL
Aika Z WieserSpainAnna Fali UNQUALIFIED
Jones Y WhobreyFranceAsiya Javayant NEW
Silvio Z GarufiItalyXuxue Feng NEW
Ivar C RulapaughArgentinaAsiya Javayant QUALIFIED
Julie T FerenczGermanyBernardo Dominic UNQUALIFIED
Jefferson G MacleadJapanAmy Elsner QUALIFIED
Costa I RoysterSpainBernardo Dominic UNQUALIFIED
Kadeem H ButtUnited KingdomIvan Magalhaes PROPOSAL
Chavez N ButtArgentinaOnyama Limba RENEWAL
Mujtaba K MacleadJapanAnna Fali PROPOSAL
Chavez M OldroydItalyIvan Magalhaes PROPOSAL
Jennifer W InouyeFranceAsiya Javayant NEGOTIATION
Antonio O RulapaughRussiaAnna Fali RENEWAL
Mujtaba N NestleAustraliaXuxue Feng RENEWAL
Darci M FollerBrazilOnyama Limba NEGOTIATION
Mayumi J WaycottFranceIvan Magalhaes 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>