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
Isabel D GillianGermanyElwin Sharvill RENEWAL
Clifford A NickaSpainAnna Fali QUALIFIED
Ricardo S DarakjyGermanyOnyama Limba NEGOTIATION
Salvatore Q WaycottGermanyXuxue Feng PROPOSAL
Maria B BologniaCanadaOnyama Limba NEGOTIATION
Chavez D GarufiBrazilBernardo Dominic QUALIFIED
Maisha I BologniaFranceElwin Sharvill UNQUALIFIED
Leon F ChuiIndiaStephen Shaw NEW
Jones T KuskoItalyElwin Sharvill PROPOSAL
Greenwood K GlickCanadaIvan Magalhaes UNQUALIFIED
Maisha G MaletJapanOnyama Limba PROPOSAL
Wickens P WieserArgentinaIoni Bowcher NEGOTIATION
Leon N ChuiAustraliaOnyama Limba RENEWAL
Leja Q TollnerArgentinaBernardo Dominic PROPOSAL
Ivar R BriddickAustraliaStephen Shaw RENEWAL
Wickens Z ChuiCanadaElwin Sharvill RENEWAL
Maria N PerinFranceOnyama Limba QUALIFIED
Aditya V TollnerArgentinaAnna Fali QUALIFIED
Juan W FigeroaGermanyIvan Magalhaes NEW
Johnson U TollnerGermanyStephen Shaw QUALIFIED
Johnson A KuskoUnited KingdomXuxue Feng QUALIFIED
Alejandro B GarufiFranceAnna Fali PROPOSAL
Stacey G KuskoBrazilAmy Elsner UNQUALIFIED
Leja M BologniaGermanyAmy Elsner PROPOSAL
Ivar E MaletSpainIoni Bowcher PROPOSAL
Emily P SergiCanadaOnyama Limba RENEWAL
Ivar P KolmetzRussiaOnyama Limba QUALIFIED
Cody L BologniaSpainAmy Elsner NEW
Smith R SergiItalyBernardo Dominic NEGOTIATION
Aruna Y MorascaItalyIoni Bowcher PROPOSAL
Izzy I DilliardSpainAnna Fali UNQUALIFIED
Wickens A SchemmerUnited KingdomIvan Magalhaes RENEWAL
Claire P MacleadGermanyElwin Sharvill NEGOTIATION
Ivar S OldroydCanadaAsiya Javayant RENEWAL
Kaitlin R KolmetzBrazilAsiya Javayant NEGOTIATION
Isabel T CaldareraArgentinaBernardo Dominic NEGOTIATION
Smith X MacleadFranceOnyama Limba QUALIFIED
Antonio Z DarakjyGermanyElwin Sharvill PROPOSAL
Faith T BriddickFranceXuxue Feng NEW
Aruna G AlbaresJapanXuxue Feng QUALIFIED
Aruna W ButtRussiaAsiya Javayant UNQUALIFIED
David D VenereFranceStephen Shaw RENEWAL
Tony Q PerinGermanyXuxue Feng PROPOSAL
Cody L RutaItalyElwin Sharvill RENEWAL
Faith R PaprockiIndiaIoni Bowcher QUALIFIED
Rodrigues E BowleyAustraliaStephen Shaw QUALIFIED
Arvin T GauchoFranceAnna Fali RENEWAL
Aruna M MorascaUnited KingdomIoni Bowcher NEGOTIATION
Julie S TollnerArgentinaOnyama Limba NEW
Nicolas K SaylorsJapanAnna Fali QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Adams I BriddickGermanyAnna Fali RENEWAL
Salvatore V VenereGermanyIvan Magalhaes QUALIFIED
Adams C RimFranceOnyama Limba QUALIFIED
Antonio I PoquetteJapanAmy Elsner UNQUALIFIED
Isabel A RutaIndiaAsiya Javayant RENEWAL
Jennifer S NestleUnited KingdomStephen Shaw NEGOTIATION
Juan X DoeItalyIvan Magalhaes PROPOSAL
Murillo W TollnerFranceAmy Elsner NEGOTIATION
Aruna H NickaSpainIoni Bowcher NEGOTIATION
Ivar X RoysterBrazilStephen Shaw QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Johnson Y RoysterAustralia2024-06-16Benton, John B Jr PROPOSAL72Stephen Shaw
1001Munro P SlusarskiGermany2024-06-15Feltz Printing Service NEW46Onyama Limba
1002Aruna D DilliardArgentina2024-06-16Commercial Press NEW79Elwin Sharvill
1003Isabel D PaprockiBrazil2024-05-25Rangoni Of Florence RENEWAL62Ioni Bowcher
1004Clifford H MacleadArgentina2024-06-16Feltz Printing Service PROPOSAL88Xuxue Feng
1005Clifford Y ButtUnited Kingdom2024-06-07Commercial Press NEGOTIATION48Xuxue Feng
1006James D TollnerArgentina2024-05-27Morlong Associates NEW77Anna Fali
1007Darci C RulapaughCanada2024-06-07Rangoni Of Florence NEGOTIATION8Bernardo Dominic
1008Maria T CaldareraSpain2024-06-17Chanay, Jeffrey A Esq NEGOTIATION23Ioni Bowcher
1009Ricardo G GarufiCanada2024-05-21Commercial Press UNQUALIFIED45Bernardo Dominic
1010Misaki H DarakjyGermany2024-06-17Feiner Bros QUALIFIED39Asiya Javayant
1011Emily O GarufiBrazil2024-05-29Chanay, Jeffrey A Esq UNQUALIFIED74Amy Elsner
1012Ashley C MaletItaly2024-06-09Morlong Associates PROPOSAL37Xuxue Feng
1013Silvio A FlosiSpain2024-05-21Benton, John B Jr NEGOTIATION47Bernardo Dominic
1014Rodrigues N NestleCanada2024-06-18Chanay, Jeffrey A Esq NEGOTIATION34Ioni Bowcher
1015Ricardo K NickaUnited Kingdom2024-05-27Chanay, Jeffrey A Esq RENEWAL33Stephen Shaw
1016Ivar A RulapaughArgentina2024-05-31King, Christopher A Esq UNQUALIFIED29Xuxue Feng
1017Tony G StensethUnited Kingdom2024-06-13Feiner Bros RENEWAL64Onyama Limba
1018Mujtaba N KuskoArgentina2024-06-14Truhlar And Truhlar Attys RENEWAL46Asiya Javayant
1019Maria K RutaIndia2024-06-10Chanay, Jeffrey A Esq NEGOTIATION27Ivan Magalhaes
1020Smith B InouyeAustralia2024-06-11Feiner Bros NEGOTIATION62Xuxue Feng
1021Tony V FerenczGermany2024-05-20Buckley Miller Wright NEGOTIATION92Stephen Shaw
1022Ricardo D CaudySpain2024-06-18Feiner Bros NEGOTIATION19Elwin Sharvill
1023Ashley D AlbaresRussia2024-06-09Morlong Associates PROPOSAL74Ivan Magalhaes
1024Claire B SaylorsBrazil2024-06-14Feiner Bros RENEWAL31Xuxue Feng
1025Morrow L MacleadSpain2024-06-16Benton, John B Jr UNQUALIFIED95Onyama Limba
1026Costa E InouyeIndia2024-05-28Buckley Miller Wright QUALIFIED66Asiya Javayant
1027Leon J RoysterUnited Kingdom2024-05-25Buckley Miller Wright QUALIFIED70Asiya Javayant
1028Jefferson F CaldareraAustralia2024-06-14Truhlar And Truhlar Attys NEGOTIATION34Xuxue Feng
1029Stacey T RulapaughAustralia2024-05-31King, Christopher A Esq NEW61Amy Elsner
1030Maria L FigeroaSpain2024-05-23Feltz Printing Service QUALIFIED45Elwin Sharvill
1031Johnson U InouyeBrazil2024-06-08Benton, John B Jr UNQUALIFIED24Ioni Bowcher
1032Faith V FollerItaly2024-05-28Morlong Associates RENEWAL34Stephen Shaw
1033Mayumi S DoeUnited Kingdom2024-05-22Feiner Bros UNQUALIFIED46Ioni Bowcher
1034Jeanfrancois D SergiUnited Kingdom2024-06-03Chanay, Jeffrey A Esq NEGOTIATION63Ivan Magalhaes
1035Claire S FerenczAustralia2024-05-23Dorl, James J Esq NEGOTIATION0Xuxue Feng
1036Jennifer F GillianJapan2024-06-14Buckley Miller Wright PROPOSAL84Anna Fali
1037Tony K GarufiAustralia2024-05-23Morlong Associates QUALIFIED58Stephen Shaw
1038Johnson N FigeroaIndia2024-06-13Feltz Printing Service QUALIFIED24Elwin Sharvill
1039Faith P FigeroaFrance2024-05-29Chapman, Ross E Esq PROPOSAL19Ivan Magalhaes
1040Smith L KolmetzItaly2024-05-21Benton, John B Jr UNQUALIFIED68Onyama Limba
1041Adams U MaletCanada2024-06-09Chanay, Jeffrey A Esq QUALIFIED91Xuxue Feng
1042Antonio D CampainRussia2024-05-28Printing Dimensions NEGOTIATION21Bernardo Dominic
1043Claire L FerenczJapan2024-06-07Chanay, Jeffrey A Esq NEW8Xuxue Feng
1044Mujtaba S FlosiRussia2024-05-23Rangoni Of Florence RENEWAL93Elwin Sharvill
1045Costa P CaldareraItaly2024-06-01Rousseaux, Michael Esq NEW87Bernardo Dominic
1046Jefferson S RimAustralia2024-05-26Benton, John B Jr UNQUALIFIED73Ivan Magalhaes
1047Chavez V WieserJapan2024-05-29Printing Dimensions QUALIFIED98Onyama Limba
1048Maria X MaletCanada2024-06-06Morlong Associates NEW53Xuxue Feng
1049Emily P GarufiArgentina2024-06-12Printing Dimensions NEGOTIATION22Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Izzy B MorascaItalyOnyama Limba PROPOSAL
Maisha H FigeroaFranceBernardo Dominic NEW
Salvatore N KuskoCanadaStephen Shaw UNQUALIFIED
Silvio B InouyeArgentinaAsiya Javayant NEGOTIATION
Morrow I ChuiSpainIvan Magalhaes UNQUALIFIED
Maria A DilliardJapanOnyama Limba RENEWAL
Jones I FigeroaGermanyIoni Bowcher NEGOTIATION
Aruna L SlusarskiAustraliaStephen Shaw NEW
Leja N SlusarskiRussiaIoni Bowcher UNQUALIFIED
Kadeem I PoquetteArgentinaOnyama Limba UNQUALIFIED
Johnson W GlickUnited KingdomAmy Elsner QUALIFIED
Cody A FigeroaIndiaAnna Fali RENEWAL
Ricardo E NestleJapanIoni Bowcher QUALIFIED
Johnson L OstroskyCanadaBernardo Dominic PROPOSAL
Tony F MorascaAustraliaIoni Bowcher QUALIFIED
Silvio H DarakjySpainAmy Elsner RENEWAL
Mayumi P SchemmerJapanIoni Bowcher PROPOSAL
Darci V IturbideJapanIoni Bowcher PROPOSAL
Smith E DilliardItalyBernardo Dominic UNQUALIFIED
Leja J InouyeBrazilIvan Magalhaes QUALIFIED
Stacey V StensethCanadaIoni Bowcher PROPOSAL
Chavez C PerinJapanBernardo Dominic RENEWAL
David M RimBrazilIvan Magalhaes UNQUALIFIED
Darci G GarufiArgentinaIoni Bowcher NEGOTIATION
Adams G MorascaSpainBernardo Dominic QUALIFIED
Alejandro I MaletBrazilAsiya Javayant UNQUALIFIED
Jeanfrancois W GarufiItalyStephen Shaw NEW
Arvin V PoquetteJapanOnyama Limba UNQUALIFIED
Mayumi D WieserCanadaIoni Bowcher RENEWAL
Jeanfrancois E BriddickItalyAsiya Javayant QUALIFIED
Mayumi O InouyeGermanyAsiya Javayant QUALIFIED
Johnson C ButtBrazilIvan Magalhaes PROPOSAL
Aruna S ChuiAustraliaAmy Elsner RENEWAL
Adams T VocelkaAustraliaAmy Elsner PROPOSAL
Greenwood E FlosiSpainIoni Bowcher NEGOTIATION
Wickens I PaprockiRussiaXuxue Feng PROPOSAL
Ricardo U BowleyIndiaAnna Fali PROPOSAL
Darci B WaycottItalyElwin Sharvill RENEWAL
Kadeem C NickaRussiaXuxue Feng PROPOSAL
Ricardo M OstroskyUnited KingdomBernardo Dominic NEW
Tony O BriddickArgentinaStephen Shaw UNQUALIFIED
Julie C CampainUnited KingdomXuxue Feng NEW
Antonio D KuskoGermanyStephen Shaw NEW
Johnson S SaylorsJapanIoni Bowcher UNQUALIFIED
Alejandro S MorascaGermanyStephen Shaw PROPOSAL
Murillo R WhobreySpainIoni Bowcher UNQUALIFIED
Leja I StensethBrazilAsiya Javayant RENEWAL
Chavez F MaletSpainIoni Bowcher UNQUALIFIED
Chavez W SlusarskiUnited KingdomIvan Magalhaes UNQUALIFIED
Antonio G GarufiAustraliaAnna Fali RENEWAL
Frozen Columns
Name
Kadeem X Campain
Izzy A Sergi
Mujtaba S Chui
Aditya T Caldarera
Octavia D Slusarski
Mujtaba W Marrier
Adams L Ferencz
Emily V Ferencz
Rodrigues O Bowley
Silvio K Ostrosky
Munro S Wieser
Maria T Nicka
Francesco P Nicka
Greenwood X Maclead
Aruna W Shinko
Francesco D Marrier
Jones B Schemmer
Greenwood D Stockham
Emily N Bolognia
Salvatore Y Slusarski
Chavez Y Stockham
Clifford B Gaucho
Arvin X Glick
Wickens Z Morasca
Greenwood S Caldarera
Johnson V Whobrey
Julie X Shinko
Jennifer J Venere
Claire D Rulapaugh
Nicolas E Gaucho
Nicolas K Rim
Maisha Y Perin
Aditya E Kolmetz
Emily T Morasca
Arvin U Royster
Silvio S Venere
Tony O Stockham
Greenwood G Nicka
Murillo Y Gillian
Leja Q Inouye
Juan M Malet
Munro U Malet
Claire K Shinko
Murillo O Rulapaugh
Kadeem D Rim
Deepesh P Royster
Ricardo I Darakjy
Aditya M Bowley
Jones X Chui
Salvatore G Darakjy
IdCountryDate
1000Australia2024-05-30
1001Japan2024-06-08
1002Brazil2024-06-11
1003Australia2024-06-05
1004Spain2024-05-29
1005Germany2024-05-29
1006Spain2024-06-02
1007Italy2024-05-30
1008Argentina2024-06-02
1009Germany2024-05-22
1010India2024-06-07
1011Argentina2024-06-17
1012Argentina2024-06-03
1013France2024-06-02
1014Italy2024-06-13
1015Spain2024-05-27
1016Argentina2024-05-27
1017France2024-05-31
1018Spain2024-06-12
1019Japan2024-06-16
1020Russia2024-06-06
1021Spain2024-05-25
1022Italy2024-06-07
1023Brazil2024-06-01
1024Brazil2024-05-23
1025Australia2024-05-24
1026Russia2024-06-09
1027Italy2024-06-08
1028Russia2024-05-28
1029Argentina2024-05-24
1030Russia2024-06-14
1031India2024-06-01
1032United Kingdom2024-05-30
1033Canada2024-05-28
1034France2024-06-06
1035Argentina2024-05-22
1036Germany2024-05-25
1037Japan2024-05-31
1038Australia2024-06-10
1039Germany2024-06-13
1040United Kingdom2024-06-12
1041Japan2024-05-30
1042Canada2024-06-02
1043Australia2024-06-09
1044Australia2024-06-10
1045Japan2024-06-01
1046United Kingdom2024-06-05
1047Germany2024-06-12
1048India2024-06-09
1049Germany2024-06-11

On-Demand Data

NameIdCountryDate
Leon G Maclead1000Brazil2024-06-07
Sinclair Z Sergi1001India2024-06-12
Jones L Wieser1002Germany2024-06-11
James E Venere1003United Kingdom2024-06-09
Claire A Maclead1004Japan2024-06-17
Murillo J Tollner1005Canada2024-06-07
Leja U Kusko1006France2024-06-07
Maisha N Dilliard1007Spain2024-06-17
Faith R Stenseth1008Germany2024-06-15
Kadeem F Venere1009Brazil2024-05-28
Morrow N Vocelka1010Italy2024-06-13
Silvio J Chui1011United Kingdom2024-05-22
Munro U Ferencz1012Canada2024-06-16
Jones Y Amigon1013Russia2024-05-29
Morrow C Campain1014Germany2024-05-23
Deepesh T Kusko1015Spain2024-06-08
Tony K Doe1016Brazil2024-06-04
Morrow H Chui1017France2024-05-28
Aika F Nicka1018Canada2024-06-15
Claire M Gillian1019Japan2024-05-30
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jennifer F PoquetteCanadaIvan Magalhaes NEW
Juan N IturbideRussiaAsiya Javayant NEW
James D GarufiBrazilStephen Shaw QUALIFIED
Deepesh H FigeroaIndiaBernardo Dominic RENEWAL
Nicolas T GillianAustraliaAsiya Javayant PROPOSAL
Isabel H TollnerAustraliaAmy Elsner NEW
Jeanfrancois D NestleUnited KingdomElwin Sharvill PROPOSAL
Costa M AlbaresJapanAnna Fali QUALIFIED
Deepesh G MorascaRussiaAmy Elsner RENEWAL
Cody P ButtUnited KingdomBernardo Dominic NEGOTIATION
Deepesh E NickaArgentinaIoni Bowcher UNQUALIFIED
Mujtaba Q SlusarskiRussiaAnna Fali NEGOTIATION
Murillo X GillianIndiaIvan Magalhaes UNQUALIFIED
Munro N FigeroaRussiaXuxue Feng PROPOSAL
Alejandro N DilliardRussiaElwin Sharvill NEW
Munro Q WaycottCanadaBernardo Dominic RENEWAL
David M PerinGermanyAsiya Javayant PROPOSAL
Munro F GauchoIndiaIoni Bowcher RENEWAL
James N MaletGermanyElwin Sharvill NEGOTIATION
Adams H FerenczArgentinaAmy Elsner UNQUALIFIED
Jennifer L FerenczIndiaOnyama Limba NEW
Kaitlin D KolmetzRussiaAsiya Javayant PROPOSAL
Greenwood V DilliardRussiaOnyama Limba NEGOTIATION
Munro U MarrierAustraliaStephen Shaw RENEWAL
Aruna A CampainJapanAnna Fali NEW
Darci L MaletCanadaIvan Magalhaes UNQUALIFIED
Darci Z NestleRussiaStephen Shaw NEGOTIATION
James L WaycottItalyBernardo Dominic NEGOTIATION
Nicolas X FollerGermanyIvan Magalhaes QUALIFIED
Aditya R RimBrazilIoni Bowcher PROPOSAL
Jeanfrancois W RimBrazilIvan Magalhaes NEW
Jones J ShinkoRussiaElwin Sharvill NEW
Smith O SergiItalyAsiya Javayant NEGOTIATION
Adams T DilliardFranceOnyama Limba NEW
Wickens L DilliardSpainIoni Bowcher NEGOTIATION
Julie L MorascaSpainAnna Fali NEW
Mujtaba P StensethUnited KingdomAsiya Javayant UNQUALIFIED
Aditya W GlickAustraliaOnyama Limba QUALIFIED
Darci W FerenczUnited KingdomAnna Fali NEW
Francesco P InouyeCanadaBernardo Dominic QUALIFIED

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