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
Johnson M AlbaresSpainOnyama Limba UNQUALIFIED
Salvatore C OldroydBrazilStephen Shaw NEW
Jennifer U BologniaSpainElwin Sharvill UNQUALIFIED
Juan F MarrierRussiaStephen Shaw RENEWAL
Mayumi H BowleyBrazilAsiya Javayant PROPOSAL
Faith P RulapaughFranceAnna Fali NEGOTIATION
Claire S TollnerJapanIoni Bowcher UNQUALIFIED
Darci I OstroskyGermanyAnna Fali UNQUALIFIED
Misaki D MaletFranceAmy Elsner UNQUALIFIED
James W IturbideRussiaAsiya Javayant PROPOSAL
Francesco H SergiJapanAmy Elsner NEGOTIATION
Francesco G ShinkoItalyIoni Bowcher NEW
Jeanfrancois M AlbaresCanadaOnyama Limba QUALIFIED
Misaki M CaudyUnited KingdomXuxue Feng QUALIFIED
Julie H MarrierFranceElwin Sharvill NEW
Darci I BologniaUnited KingdomBernardo Dominic UNQUALIFIED
Aika A RutaAustraliaOnyama Limba RENEWAL
Adams M PerinRussiaAsiya Javayant UNQUALIFIED
Arvin F FlosiCanadaStephen Shaw QUALIFIED
Clifford I GlickFranceElwin Sharvill NEGOTIATION
Deepesh X VenereBrazilIvan Magalhaes QUALIFIED
Jeanfrancois B StockhamBrazilAnna Fali NEW
Aruna S WieserAustraliaStephen Shaw QUALIFIED
Kaitlin F GillianArgentinaStephen Shaw PROPOSAL
Isabel X MacleadFranceAmy Elsner UNQUALIFIED
Ashley E RutaFranceAnna Fali UNQUALIFIED
Kadeem J DoeSpainStephen Shaw UNQUALIFIED
Leja C SergiFranceAmy Elsner RENEWAL
Alejandro U BowleyFranceElwin Sharvill NEW
Kaitlin S IturbideAustraliaBernardo Dominic QUALIFIED
Claire C NestleItalyElwin Sharvill UNQUALIFIED
Kaitlin A MaletUnited KingdomIoni Bowcher RENEWAL
James A VenereArgentinaIoni Bowcher UNQUALIFIED
Jennifer Y CaldareraSpainElwin Sharvill RENEWAL
Deepesh I IturbideJapanAmy Elsner QUALIFIED
Misaki N KuskoIndiaIvan Magalhaes QUALIFIED
Misaki N FigeroaBrazilXuxue Feng NEGOTIATION
Clifford H CaldareraFranceAsiya Javayant NEW
Emily Q KuskoItalyElwin Sharvill NEGOTIATION
James Z BowleyFranceXuxue Feng RENEWAL
Octavia Q PaprockiRussiaBernardo Dominic UNQUALIFIED
Octavia D IturbideFranceAnna Fali UNQUALIFIED
Francesco S KolmetzItalyElwin Sharvill NEW
Costa Q GillianIndiaElwin Sharvill UNQUALIFIED
Darci K WhobreyFranceIoni Bowcher NEW
Smith H CaudyBrazilIvan Magalhaes UNQUALIFIED
Arvin F GillianFranceElwin Sharvill QUALIFIED
Izzy G MacleadAustraliaStephen Shaw UNQUALIFIED
David B RoysterJapanOnyama Limba NEW
Jennifer S GillianAustraliaAsiya Javayant UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Mujtaba K RulapaughSpainIoni Bowcher PROPOSAL
Maria T OstroskyCanadaBernardo Dominic NEW
Jennifer O WaycottSpainBernardo Dominic PROPOSAL
Salvatore H TollnerFranceAmy Elsner NEGOTIATION
Adams L KuskoIndiaStephen Shaw PROPOSAL
Jefferson V MaletIndiaIvan Magalhaes QUALIFIED
Nicolas Q ChuiCanadaXuxue Feng NEGOTIATION
Jennifer P RulapaughCanadaAmy Elsner RENEWAL
Chavez C AlbaresGermanyAmy Elsner RENEWAL
David V PaprockiCanadaXuxue Feng PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Izzy C CaudyGermany2024-05-24Buckley Miller Wright UNQUALIFIED68Ioni Bowcher
1001Ricardo G DoeItaly2024-06-06Truhlar And Truhlar Attys PROPOSAL98Amy Elsner
1002Leja B ChuiJapan2024-06-15Truhlar And Truhlar Attys QUALIFIED23Ivan Magalhaes
1003Juan Q FigeroaJapan2024-05-25Chapman, Ross E Esq NEGOTIATION5Stephen Shaw
1004Francesco J GarufiRussia2024-06-14Feiner Bros RENEWAL46Ioni Bowcher
1005Julie S WaycottGermany2024-05-20Printing Dimensions PROPOSAL57Ioni Bowcher
1006Emily N MaletItaly2024-06-10Feltz Printing Service QUALIFIED76Asiya Javayant
1007Jefferson F BowleyGermany2024-06-17Chapman, Ross E Esq NEW51Xuxue Feng
1008Nicolas E SaylorsRussia2024-06-14Chapman, Ross E Esq NEGOTIATION59Onyama Limba
1009Faith Q WhobreyCanada2024-06-11Truhlar And Truhlar Attys PROPOSAL82Bernardo Dominic
1010Morrow G GarufiArgentina2024-05-22Buckley Miller Wright RENEWAL28Xuxue Feng
1011Stacey X MorascaUnited Kingdom2024-06-01Commercial Press UNQUALIFIED27Elwin Sharvill
1012Aruna V PaprockiAustralia2024-06-08Dorl, James J Esq QUALIFIED24Elwin Sharvill
1013Darci F FlosiUnited Kingdom2024-06-16Benton, John B Jr UNQUALIFIED31Ivan Magalhaes
1014Julie W RoysterCanada2024-05-23Rangoni Of Florence NEGOTIATION35Ivan Magalhaes
1015Francesco L RulapaughCanada2024-05-29Commercial Press UNQUALIFIED69Elwin Sharvill
1016Tony L InouyeItaly2024-06-11King, Christopher A Esq PROPOSAL42Anna Fali
1017Aruna U InouyeIndia2024-05-30Commercial Press NEW87Stephen Shaw
1018Johnson F ChuiRussia2024-06-10Rangoni Of Florence QUALIFIED74Xuxue Feng
1019Adams E GillianCanada2024-05-28Chapman, Ross E Esq PROPOSAL91Bernardo Dominic
1020Leja B GlickJapan2024-06-06Chemel, James L Cpa RENEWAL54Ivan Magalhaes
1021Claire Q NestleAustralia2024-05-21Buckley Miller Wright PROPOSAL81Elwin Sharvill
1022James W OldroydJapan2024-05-25Morlong Associates NEW88Amy Elsner
1023Mujtaba I GillianIndia2024-06-08Rangoni Of Florence NEW85Anna Fali
1024David A PerinAustralia2024-06-11Buckley Miller Wright QUALIFIED9Amy Elsner
1025Aruna Z MaletRussia2024-05-23Rangoni Of Florence UNQUALIFIED16Amy Elsner
1026Ashley V FollerRussia2024-05-22Chapman, Ross E Esq NEGOTIATION54Bernardo Dominic
1027Rodrigues Y SaylorsJapan2024-06-12Feiner Bros PROPOSAL91Xuxue Feng
1028Aditya O FigeroaUnited Kingdom2024-06-08Feltz Printing Service NEW3Stephen Shaw
1029Adams T ShinkoItaly2024-06-17Morlong Associates RENEWAL86Onyama Limba
1030Jeanfrancois R GlickJapan2024-06-11Truhlar And Truhlar Attys RENEWAL93Amy Elsner
1031Murillo G IturbideGermany2024-06-16Commercial Press NEW33Ioni Bowcher
1032Morrow W DarakjyGermany2024-06-16Rousseaux, Michael Esq PROPOSAL15Xuxue Feng
1033Mujtaba O InouyeAustralia2024-05-23Chemel, James L Cpa QUALIFIED0Ivan Magalhaes
1034Misaki J GarufiJapan2024-06-07Chapman, Ross E Esq NEW4Ivan Magalhaes
1035Leja P CaudyUnited Kingdom2024-06-04Rousseaux, Michael Esq NEW83Elwin Sharvill
1036Darci N GlickFrance2024-06-04Dorl, James J Esq NEW31Bernardo Dominic
1037Isabel Q GauchoItaly2024-05-24Commercial Press NEW16Stephen Shaw
1038Jennifer L VenereSpain2024-05-24Chemel, James L Cpa PROPOSAL78Stephen Shaw
1039Jennifer N NickaSpain2024-05-30Feltz Printing Service NEGOTIATION70Xuxue Feng
1040Murillo A PerinFrance2024-06-03Buckley Miller Wright RENEWAL97Anna Fali
1041Jones H SchemmerSpain2024-05-22Dorl, James J Esq NEW58Anna Fali
1042Silvio L ButtFrance2024-05-28Truhlar And Truhlar Attys UNQUALIFIED99Anna Fali
1043Jones Y WieserSpain2024-05-19Buckley Miller Wright UNQUALIFIED65Amy Elsner
1044Misaki N BriddickCanada2024-05-21Buckley Miller Wright NEGOTIATION80Elwin Sharvill
1045Kaitlin O IturbideJapan2024-06-01Buckley Miller Wright QUALIFIED67Stephen Shaw
1046Alejandro Q FollerGermany2024-06-08Morlong Associates NEGOTIATION80Onyama Limba
1047Mujtaba F ShinkoSpain2024-06-07Printing Dimensions RENEWAL22Anna Fali
1048Sinclair F NickaFrance2024-06-17Dorl, James J Esq RENEWAL31Elwin Sharvill
1049Jefferson W SchemmerArgentina2024-05-23Commercial Press QUALIFIED80Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
David W KuskoItalyStephen Shaw NEW
Octavia U VenereIndiaIoni Bowcher PROPOSAL
Chavez D SlusarskiCanadaBernardo Dominic PROPOSAL
Leja T BowleyFranceOnyama Limba NEGOTIATION
Aika P TollnerArgentinaIoni Bowcher RENEWAL
Arvin T KolmetzUnited KingdomXuxue Feng UNQUALIFIED
Alejandro U StockhamJapanXuxue Feng QUALIFIED
Jefferson I ShinkoSpainAmy Elsner UNQUALIFIED
Murillo W TollnerJapanAmy Elsner RENEWAL
Greenwood C RulapaughCanadaOnyama Limba QUALIFIED
David M RulapaughBrazilAsiya Javayant NEW
Jeanfrancois G NestleRussiaElwin Sharvill UNQUALIFIED
David E SchemmerJapanAnna Fali NEW
Isabel F WaycottFranceAsiya Javayant RENEWAL
Nicolas P MarrierAustraliaAnna Fali QUALIFIED
Leon J WieserRussiaOnyama Limba NEGOTIATION
Isabel V ChuiArgentinaAsiya Javayant NEW
Arvin G FigeroaSpainAsiya Javayant PROPOSAL
Maria O KuskoIndiaElwin Sharvill NEGOTIATION
Octavia R FollerAustraliaBernardo Dominic UNQUALIFIED
Mujtaba W GlickUnited KingdomIvan Magalhaes NEGOTIATION
Ricardo Y RulapaughBrazilIvan Magalhaes UNQUALIFIED
Maria E PaprockiItalyStephen Shaw NEW
Stacey U MaletJapanStephen Shaw NEW
Tony I ButtGermanyAmy Elsner PROPOSAL
Deepesh J MaletSpainIoni Bowcher RENEWAL
Tony I IturbideItalyIvan Magalhaes RENEWAL
Leja N BowleyCanadaStephen Shaw PROPOSAL
Leja P OstroskyCanadaAnna Fali UNQUALIFIED
Isabel P OldroydAustraliaIvan Magalhaes RENEWAL
Smith I NestleArgentinaIoni Bowcher PROPOSAL
Jones W CaudyRussiaBernardo Dominic QUALIFIED
Salvatore S MacleadItalyXuxue Feng NEGOTIATION
Julie W OldroydSpainOnyama Limba UNQUALIFIED
Alejandro P VocelkaItalyAnna Fali NEGOTIATION
Jones V GauchoGermanyAsiya Javayant RENEWAL
Ivar J FollerSpainAsiya Javayant RENEWAL
Wickens Y ButtBrazilStephen Shaw QUALIFIED
Aruna U KolmetzArgentinaAmy Elsner NEGOTIATION
Misaki Q VenereCanadaOnyama Limba NEGOTIATION
Morrow E AmigonSpainStephen Shaw UNQUALIFIED
Cody F KuskoAustraliaAsiya Javayant UNQUALIFIED
Silvio G CaudyArgentinaAnna Fali UNQUALIFIED
Tony Y CaudyCanadaOnyama Limba NEGOTIATION
Aditya U WhobreyRussiaBernardo Dominic PROPOSAL
Adams R RutaCanadaBernardo Dominic QUALIFIED
Nicolas O FollerItalyIoni Bowcher NEGOTIATION
Morrow O VenereFranceElwin Sharvill QUALIFIED
Jefferson M TollnerUnited KingdomIvan Magalhaes NEW
Deepesh H CampainFranceOnyama Limba PROPOSAL
Frozen Columns
Name
Jennifer K Inouye
Faith C Inouye
Ashley S Kolmetz
Greenwood R Bowley
Francesco A Oldroyd
Claire N Slusarski
Munro Z Nestle
Kaitlin A Doe
Octavia Z Slusarski
James T Bolognia
Jefferson A Flosi
James K Figeroa
Tony U Tollner
Rodrigues P Bolognia
Silvio L Paprocki
Ricardo R Oldroyd
Jefferson S Saylors
Mayumi F Nestle
Arvin R Maclead
Darci X Butt
Deepesh Z Butt
Jeanfrancois M Bowley
Kadeem Y Malet
Nicolas L Figeroa
Mujtaba N Stockham
Alejandro H Paprocki
Kadeem K Royster
Jeanfrancois S Perin
Murillo K Venere
Stacey X Bowley
Ashley C Nestle
Nicolas K Gillian
Arvin T Glick
Darci N Stenseth
Antonio H Gaucho
Emily R Ruta
David A Bolognia
Octavia F Gillian
Clifford L Caudy
Izzy E Bolognia
Maria W Tollner
Smith X Malet
Greenwood P Royster
Faith L Campain
Costa O Caldarera
Kaitlin C Tollner
Arvin B Poquette
Murillo Y Wieser
Stacey W Poquette
Octavia E Garufi
IdCountryDate
1000India2024-06-04
1001France2024-06-12
1002Russia2024-06-14
1003United Kingdom2024-06-06
1004Argentina2024-06-05
1005Italy2024-06-16
1006Russia2024-06-12
1007India2024-06-12
1008United Kingdom2024-06-05
1009Australia2024-05-19
1010Brazil2024-05-23
1011United Kingdom2024-05-26
1012Italy2024-05-27
1013Italy2024-06-17
1014Spain2024-06-06
1015Argentina2024-06-05
1016Japan2024-06-11
1017Canada2024-06-05
1018Canada2024-06-04
1019Spain2024-06-06
1020Germany2024-06-11
1021Argentina2024-06-07
1022Canada2024-05-28
1023Brazil2024-06-09
1024India2024-05-22
1025Japan2024-06-06
1026Spain2024-06-03
1027India2024-05-23
1028Canada2024-05-30
1029United Kingdom2024-06-07
1030Australia2024-05-22
1031France2024-05-21
1032United Kingdom2024-06-15
1033Germany2024-05-22
1034United Kingdom2024-06-15
1035Argentina2024-06-07
1036Italy2024-05-30
1037Italy2024-06-13
1038India2024-06-08
1039Spain2024-06-16
1040Spain2024-05-22
1041France2024-05-19
1042Canada2024-05-22
1043India2024-05-22
1044France2024-05-27
1045India2024-05-27
1046Australia2024-06-12
1047Brazil2024-05-20
1048India2024-05-22
1049Australia2024-06-17

On-Demand Data

NameIdCountryDate
Deepesh E Rim1000Germany2024-05-21
Aruna H Ferencz1001Brazil2024-06-17
Izzy Q Ferencz1002Australia2024-06-02
Silvio W Kolmetz1003Canada2024-06-05
Greenwood O Gillian1004France2024-06-04
Juan B Caldarera1005Canada2024-06-13
Aika J Slusarski1006Australia2024-06-15
Francesco K Ferencz1007United Kingdom2024-06-07
Costa M Saylors1008Canada2024-05-24
Tony R Iturbide1009Argentina2024-05-20
Mayumi K Doe1010Canada2024-05-27
Misaki L Rulapaugh1011Russia2024-06-10
David V Schemmer1012France2024-06-01
James E Tollner1013Argentina2024-05-24
Johnson R Foller1014Australia2024-05-20
Mujtaba Y Stenseth1015France2024-06-04
Arvin G Ostrosky1016France2024-05-31
Kaitlin A Kusko1017Germany2024-06-09
Rodrigues I Garufi1018Germany2024-06-10
Jones O Stockham1019Canada2024-05-21
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Murillo F PerinUnited KingdomAnna Fali NEW
Johnson L FerenczCanadaAnna Fali PROPOSAL
Cody J VocelkaItalyAmy Elsner NEGOTIATION
Juan Q GlickIndiaStephen Shaw NEGOTIATION
Misaki B MorascaCanadaStephen Shaw NEW
Jones P DarakjyBrazilXuxue Feng PROPOSAL
Deepesh Z MaletGermanyBernardo Dominic QUALIFIED
Munro H ButtArgentinaAsiya Javayant QUALIFIED
Rodrigues I MaletSpainIoni Bowcher QUALIFIED
Clifford X FerenczIndiaBernardo Dominic RENEWAL
Francesco G FerenczJapanBernardo Dominic NEGOTIATION
Misaki N VenereRussiaAsiya Javayant NEGOTIATION
Aruna W ButtUnited KingdomAnna Fali PROPOSAL
Chavez P InouyeJapanAmy Elsner UNQUALIFIED
Claire G SchemmerUnited KingdomIvan Magalhaes PROPOSAL
Smith N DilliardGermanyIoni Bowcher RENEWAL
James R PaprockiSpainAmy Elsner PROPOSAL
Smith U ShinkoAustraliaStephen Shaw RENEWAL
Jefferson N MaletGermanyIvan Magalhaes NEGOTIATION
Leja L KolmetzJapanAnna Fali UNQUALIFIED
Emily S CaldareraCanadaAsiya Javayant RENEWAL
Kadeem N NickaRussiaElwin Sharvill PROPOSAL
Darci Z NickaAustraliaElwin Sharvill QUALIFIED
Maisha D SchemmerArgentinaOnyama Limba RENEWAL
Octavia J RoysterAustraliaIoni Bowcher NEGOTIATION
Leon C GarufiGermanyIoni Bowcher PROPOSAL
Claire K VocelkaGermanyAsiya Javayant UNQUALIFIED
Greenwood L GauchoCanadaAnna Fali RENEWAL
Kadeem I ChuiUnited KingdomElwin Sharvill QUALIFIED
Chavez X DarakjyFranceIvan Magalhaes RENEWAL
Emily T AmigonCanadaIvan Magalhaes NEGOTIATION
Ashley W RutaUnited KingdomAsiya Javayant UNQUALIFIED
Julie U SaylorsBrazilIoni Bowcher NEGOTIATION
Darci C PoquetteBrazilIvan Magalhaes UNQUALIFIED
Octavia B DarakjyCanadaAmy Elsner QUALIFIED
Jeanfrancois K GillianItalyElwin Sharvill NEW
Izzy G GlickAustraliaAsiya Javayant UNQUALIFIED
Cody C ButtArgentinaAnna Fali NEW
Greenwood U WhobreyGermanyAnna Fali RENEWAL
Aditya Y WhobreyAustraliaBernardo Dominic 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>