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
Claire J CaldareraArgentinaIvan Magalhaes UNQUALIFIED
Juan S WhobreySpainAsiya Javayant PROPOSAL
Nicolas L RoysterRussiaStephen Shaw RENEWAL
Faith A ShinkoJapanIoni Bowcher UNQUALIFIED
Izzy I MacleadGermanyIoni Bowcher UNQUALIFIED
Claire Q SchemmerGermanyOnyama Limba RENEWAL
Nicolas F NickaRussiaIoni Bowcher QUALIFIED
Murillo X ShinkoArgentinaStephen Shaw UNQUALIFIED
Costa P ShinkoArgentinaElwin Sharvill UNQUALIFIED
Sinclair C GarufiItalyAsiya Javayant PROPOSAL
Nicolas F FollerGermanyOnyama Limba PROPOSAL
Kadeem R ButtItalyXuxue Feng PROPOSAL
David L BowleyFranceOnyama Limba NEW
Munro I MorascaArgentinaIvan Magalhaes QUALIFIED
Salvatore N SlusarskiRussiaElwin Sharvill RENEWAL
Darci E NickaFranceAsiya Javayant PROPOSAL
Claire Y BowleyBrazilStephen Shaw NEGOTIATION
Costa F NickaIndiaAsiya Javayant QUALIFIED
Mayumi W MaletJapanAnna Fali PROPOSAL
Maisha O WieserSpainXuxue Feng UNQUALIFIED
Aruna M GlickJapanAsiya Javayant UNQUALIFIED
Antonio N GauchoGermanyIoni Bowcher NEGOTIATION
Antonio T KuskoAustraliaBernardo Dominic UNQUALIFIED
Clifford W MacleadAustraliaOnyama Limba QUALIFIED
Aruna S MorascaUnited KingdomXuxue Feng QUALIFIED
Morrow I NickaCanadaBernardo Dominic RENEWAL
Isabel B InouyeFranceXuxue Feng RENEWAL
Francesco X RimJapanOnyama Limba NEGOTIATION
Jefferson G VenereBrazilElwin Sharvill NEW
Darci P IturbideJapanElwin Sharvill NEW
Chavez P RulapaughSpainXuxue Feng NEGOTIATION
Leon T SaylorsUnited KingdomIoni Bowcher NEGOTIATION
Stacey T AlbaresJapanStephen Shaw QUALIFIED
Leon M MorascaFranceOnyama Limba QUALIFIED
Silvio P NickaGermanyIvan Magalhaes RENEWAL
Mayumi U ChuiFranceElwin Sharvill NEW
Leja S SergiRussiaXuxue Feng NEGOTIATION
Mujtaba Q DoeAustraliaAnna Fali QUALIFIED
Emily G OldroydArgentinaAsiya Javayant NEGOTIATION
Adams D FerenczArgentinaOnyama Limba UNQUALIFIED
Costa K AmigonRussiaAnna Fali RENEWAL
Maisha M ButtArgentinaStephen Shaw NEGOTIATION
Faith I AmigonAustraliaIvan Magalhaes NEGOTIATION
Kaitlin T AlbaresIndiaElwin Sharvill PROPOSAL
Julie X RulapaughBrazilElwin Sharvill NEGOTIATION
Leja X RoysterBrazilAnna Fali NEW
Emily C FollerJapanElwin Sharvill QUALIFIED
James T GarufiIndiaElwin Sharvill UNQUALIFIED
Leon J OldroydBrazilIvan Magalhaes NEGOTIATION
Stacey V MaletRussiaXuxue Feng UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Isabel Q IturbideCanadaAsiya Javayant NEW
Rodrigues N VocelkaArgentinaAmy Elsner NEW
Jones W MarrierBrazilAsiya Javayant UNQUALIFIED
Adams Z NickaBrazilIvan Magalhaes QUALIFIED
Rodrigues P WhobreyItalyAmy Elsner RENEWAL
Smith H RutaRussiaIvan Magalhaes UNQUALIFIED
Maisha V BologniaArgentinaIoni Bowcher PROPOSAL
Antonio E FlosiArgentinaElwin Sharvill QUALIFIED
Claire E ShinkoArgentinaBernardo Dominic QUALIFIED
Izzy E CampainSpainAnna Fali NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jennifer L MorascaItaly2024-06-17Dorl, James J Esq QUALIFIED37Onyama Limba
1001Julie W KolmetzArgentina2024-05-26Buckley Miller Wright PROPOSAL81Elwin Sharvill
1002Leja Z MorascaArgentina2024-05-26Chanay, Jeffrey A Esq UNQUALIFIED26Elwin Sharvill
1003Salvatore G WhobreyJapan2024-05-27Morlong Associates UNQUALIFIED90Elwin Sharvill
1004Mayumi Y VocelkaBrazil2024-06-11Truhlar And Truhlar Attys NEGOTIATION2Asiya Javayant
1005Misaki O KuskoSpain2024-06-02Feiner Bros NEGOTIATION18Bernardo Dominic
1006Rodrigues S CaudyFrance2024-06-04Feiner Bros PROPOSAL2Anna Fali
1007Claire Z PerinIndia2024-05-25Rousseaux, Michael Esq RENEWAL66Xuxue Feng
1008Emily R RoysterRussia2024-06-15Morlong Associates PROPOSAL45Anna Fali
1009Murillo R IturbideIndia2024-06-19Chemel, James L Cpa PROPOSAL27Stephen Shaw
1010Misaki Q GillianCanada2024-06-07Chapman, Ross E Esq UNQUALIFIED98Xuxue Feng
1011Johnson B MorascaJapan2024-06-04King, Christopher A Esq QUALIFIED57Amy Elsner
1012Silvio C FollerFrance2024-05-25Chemel, James L Cpa UNQUALIFIED16Anna Fali
1013Munro T SergiJapan2024-06-15Chemel, James L Cpa UNQUALIFIED70Elwin Sharvill
1014Aika R AlbaresRussia2024-06-05Feltz Printing Service PROPOSAL92Ivan Magalhaes
1015Nicolas G RulapaughIndia2024-06-01King, Christopher A Esq NEW16Bernardo Dominic
1016Greenwood C OstroskyAustralia2024-06-08Rangoni Of Florence PROPOSAL19Onyama Limba
1017Smith A BriddickSpain2024-06-05Printing Dimensions QUALIFIED99Stephen Shaw
1018Francesco Q ChuiCanada2024-05-27Chapman, Ross E Esq QUALIFIED30Xuxue Feng
1019Emily G AmigonJapan2024-05-27Printing Dimensions QUALIFIED82Ivan Magalhaes
1020Juan A RulapaughAustralia2024-06-13Chemel, James L Cpa RENEWAL53Onyama Limba
1021Francesco D RutaItaly2024-05-25Chapman, Ross E Esq PROPOSAL39Stephen Shaw
1022Claire O OldroydGermany2024-05-27Chapman, Ross E Esq UNQUALIFIED52Elwin Sharvill
1023Octavia H NestleCanada2024-05-26Buckley Miller Wright PROPOSAL33Amy Elsner
1024Jones I RoysterIndia2024-06-02Truhlar And Truhlar Attys NEGOTIATION17Ioni Bowcher
1025Mujtaba G NickaAustralia2024-05-29Buckley Miller Wright QUALIFIED25Onyama Limba
1026Tony U SchemmerJapan2024-06-05Dorl, James J Esq PROPOSAL71Amy Elsner
1027Silvio Q PoquetteIndia2024-06-20Chapman, Ross E Esq UNQUALIFIED68Asiya Javayant
1028Claire Q ChuiUnited Kingdom2024-05-26Rousseaux, Michael Esq UNQUALIFIED34Asiya Javayant
1029Sinclair A OldroydJapan2024-05-25Commercial Press RENEWAL31Onyama Limba
1030Juan B KuskoIndia2024-05-24Rousseaux, Michael Esq QUALIFIED66Stephen Shaw
1031Aruna Z ButtJapan2024-06-10Chemel, James L Cpa QUALIFIED97Ivan Magalhaes
1032Jennifer Q GillianSpain2024-05-28Rousseaux, Michael Esq NEW18Ioni Bowcher
1033Silvio D FollerSpain2024-05-27Chemel, James L Cpa NEGOTIATION13Onyama Limba
1034Tony P MarrierBrazil2024-06-12Morlong Associates NEW30Xuxue Feng
1035Silvio F KuskoFrance2024-05-26Rangoni Of Florence NEW28Stephen Shaw
1036Ashley Z RimSpain2024-06-20Rangoni Of Florence PROPOSAL63Elwin Sharvill
1037Chavez F PoquetteArgentina2024-06-16Commercial Press PROPOSAL7Bernardo Dominic
1038Kadeem R AmigonGermany2024-06-21Commercial Press RENEWAL72Elwin Sharvill
1039Jones H FlosiAustralia2024-06-17Buckley Miller Wright NEW71Stephen Shaw
1040Deepesh F RutaJapan2024-05-26Printing Dimensions PROPOSAL12Stephen Shaw
1041Costa H MaletCanada2024-06-12Benton, John B Jr PROPOSAL32Elwin Sharvill
1042Arvin P AlbaresBrazil2024-05-29Benton, John B Jr PROPOSAL15Ivan Magalhaes
1043Ashley U StensethBrazil2024-05-27Dorl, James J Esq QUALIFIED28Stephen Shaw
1044Ivar R GauchoFrance2024-05-28Morlong Associates RENEWAL13Ioni Bowcher
1045Aruna P InouyeAustralia2024-06-05Chanay, Jeffrey A Esq NEW61Xuxue Feng
1046Clifford H WhobreyCanada2024-05-26Dorl, James J Esq UNQUALIFIED0Elwin Sharvill
1047Isabel X RimRussia2024-05-25Truhlar And Truhlar Attys NEW30Stephen Shaw
1048Ricardo P DilliardGermany2024-06-06Rousseaux, Michael Esq RENEWAL12Stephen Shaw
1049Izzy G MacleadUnited Kingdom2024-06-21Feiner Bros QUALIFIED18Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Silvio P CampainItalyAnna Fali UNQUALIFIED
Ashley J GillianSpainXuxue Feng NEW
Jeanfrancois P FerenczGermanyStephen Shaw NEGOTIATION
Octavia N VenereJapanElwin Sharvill NEGOTIATION
Tony X OldroydUnited KingdomXuxue Feng UNQUALIFIED
Smith U PerinIndiaBernardo Dominic UNQUALIFIED
Maisha H SergiRussiaBernardo Dominic RENEWAL
Izzy N MarrierSpainAsiya Javayant NEW
Sinclair I CaldareraIndiaOnyama Limba RENEWAL
Ashley C GarufiIndiaAsiya Javayant NEGOTIATION
Morrow N GauchoRussiaIvan Magalhaes NEW
Emily Q PaprockiGermanyAnna Fali UNQUALIFIED
Salvatore M IturbideAustraliaBernardo Dominic NEW
Isabel V PerinGermanyAsiya Javayant NEGOTIATION
Mayumi N GillianJapanAnna Fali UNQUALIFIED
Cody G DoeFranceIvan Magalhaes PROPOSAL
Nicolas F SaylorsFranceElwin Sharvill RENEWAL
Chavez X RulapaughAustraliaIoni Bowcher UNQUALIFIED
Aika J WhobreyArgentinaIoni Bowcher NEGOTIATION
Kaitlin V MarrierGermanyAmy Elsner RENEWAL
Ricardo J GarufiUnited KingdomOnyama Limba QUALIFIED
Faith Q StockhamRussiaAmy Elsner UNQUALIFIED
Silvio K CaudyFranceAmy Elsner NEW
Ivar F SlusarskiRussiaStephen Shaw NEW
Adams K OldroydItalyXuxue Feng PROPOSAL
Morrow B MacleadGermanyXuxue Feng QUALIFIED
Octavia I OstroskyIndiaAmy Elsner UNQUALIFIED
Smith Q CaldareraUnited KingdomXuxue Feng NEW
Maria Y WaycottBrazilIoni Bowcher NEGOTIATION
Juan M DarakjyGermanyIvan Magalhaes UNQUALIFIED
Mujtaba M TollnerJapanStephen Shaw PROPOSAL
Adams Z CaudyUnited KingdomOnyama Limba QUALIFIED
Julie N RoysterSpainStephen Shaw UNQUALIFIED
Jennifer A StockhamIndiaXuxue Feng NEGOTIATION
Aditya V BriddickIndiaAmy Elsner UNQUALIFIED
Wickens P MacleadBrazilElwin Sharvill NEW
Julie I MorascaIndiaBernardo Dominic UNQUALIFIED
Aruna H RimItalyXuxue Feng UNQUALIFIED
Aditya O ButtBrazilIvan Magalhaes RENEWAL
Sinclair A BologniaArgentinaElwin Sharvill UNQUALIFIED
Antonio F NickaIndiaAnna Fali QUALIFIED
Mayumi H CaldareraGermanyBernardo Dominic RENEWAL
Alejandro Z NickaArgentinaStephen Shaw NEW
Costa I BriddickItalyOnyama Limba NEGOTIATION
Aditya W RimUnited KingdomOnyama Limba UNQUALIFIED
Leja Y GillianArgentinaStephen Shaw NEGOTIATION
Darci S ShinkoArgentinaXuxue Feng NEW
Aruna W CaudyCanadaBernardo Dominic NEGOTIATION
Clifford O MacleadArgentinaOnyama Limba PROPOSAL
Jones A GlickArgentinaAmy Elsner RENEWAL
Frozen Columns
Name
Costa U Tollner
Misaki R Caudy
Smith D Albares
Misaki C Briddick
Ricardo E Gaucho
Julie P Venere
Kaitlin W Inouye
Darci V Shinko
Stacey L Butt
Faith E Oldroyd
Darci C Vocelka
Jefferson B Rulapaugh
Leja E Malet
Rodrigues F Oldroyd
James N Shinko
Wickens J Dilliard
Rodrigues H Flosi
Ricardo S Glick
Maria O Rulapaugh
Wickens E Saylors
Julie H Caudy
Clifford H Bolognia
Stacey U Vocelka
Jones V Gillian
Ivar P Perin
Rodrigues P Oldroyd
Chavez I Rulapaugh
Clifford J Venere
Adams W Amigon
Julie K Briddick
Faith V Dilliard
Juan F Figeroa
Maria V Waycott
Julie T Saylors
Faith K Whobrey
Maisha C Malet
Tony A Paprocki
Aruna B Sergi
Antonio N Oldroyd
Juan T Nestle
Misaki W Bowley
Faith U Venere
Smith G Ruta
Murillo N Garufi
Maisha U Stenseth
Jennifer H Chui
Mujtaba M Foller
Ricardo D Butt
Silvio J Slusarski
Deepesh X Kusko
IdCountryDate
1000Australia2024-06-16
1001India2024-06-18
1002Russia2024-06-05
1003Spain2024-06-12
1004Spain2024-05-31
1005Canada2024-06-11
1006United Kingdom2024-06-09
1007Germany2024-06-04
1008Japan2024-05-29
1009United Kingdom2024-06-17
1010France2024-06-11
1011Spain2024-06-02
1012Australia2024-06-20
1013Argentina2024-06-12
1014Spain2024-05-24
1015Italy2024-06-02
1016Russia2024-06-11
1017Australia2024-06-13
1018Brazil2024-05-26
1019Spain2024-06-13
1020Italy2024-06-02
1021United Kingdom2024-06-19
1022Russia2024-06-07
1023United Kingdom2024-06-02
1024France2024-06-16
1025Australia2024-05-24
1026Italy2024-05-29
1027Japan2024-06-19
1028India2024-06-16
1029Italy2024-06-20
1030Italy2024-06-03
1031Australia2024-06-09
1032Spain2024-06-21
1033Spain2024-06-06
1034Argentina2024-05-28
1035Spain2024-06-08
1036Canada2024-05-29
1037Germany2024-06-20
1038Brazil2024-05-26
1039Argentina2024-06-17
1040Germany2024-05-26
1041Russia2024-05-31
1042Germany2024-06-20
1043Germany2024-05-23
1044Italy2024-06-14
1045Italy2024-06-19
1046India2024-06-20
1047Italy2024-06-07
1048Russia2024-06-14
1049Japan2024-06-11

On-Demand Data

NameIdCountryDate
Stacey W Stockham1000Brazil2024-06-04
Sinclair Y Chui1001United Kingdom2024-06-21
Stacey V Whobrey1002Italy2024-06-01
Jennifer D Briddick1003France2024-06-14
Murillo Z Gaucho1004Canada2024-06-16
Jones M Nestle1005Australia2024-06-02
Isabel F Glick1006Japan2024-05-28
Izzy A Flosi1007India2024-06-11
Alejandro X Malet1008France2024-06-11
Salvatore W Vocelka1009Brazil2024-05-27
Chavez Q Saylors1010France2024-05-28
Francesco V Waycott1011Spain2024-06-10
Isabel E Morasca1012Australia2024-06-04
Stacey Z Wieser1013Argentina2024-06-20
Chavez T Morasca1014Spain2024-06-05
Tony Q Stenseth1015Argentina2024-06-09
Octavia C Shinko1016France2024-06-11
Sinclair M Chui1017Canada2024-06-07
Francesco I Tollner1018Argentina2024-06-05
Kaitlin W Morasca1019Spain2024-06-16
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Arvin Y NestleGermanyAsiya Javayant NEW
Maria C GillianFranceXuxue Feng PROPOSAL
Alejandro R GauchoSpainXuxue Feng QUALIFIED
Leon S OstroskyBrazilAmy Elsner NEGOTIATION
Smith Q CampainAustraliaAsiya Javayant RENEWAL
Clifford Z FerenczCanadaAsiya Javayant NEGOTIATION
Kaitlin U DoeItalyAmy Elsner UNQUALIFIED
Jefferson W OldroydRussiaAmy Elsner RENEWAL
Darci D AlbaresFranceXuxue Feng QUALIFIED
Sinclair D GarufiArgentinaBernardo Dominic QUALIFIED
Johnson O BowleyFranceXuxue Feng QUALIFIED
Greenwood Q OldroydItalyXuxue Feng PROPOSAL
Juan I BriddickUnited KingdomOnyama Limba NEW
Cody B MarrierBrazilAmy Elsner QUALIFIED
Clifford A NickaFranceXuxue Feng UNQUALIFIED
Johnson Y PoquetteUnited KingdomAmy Elsner UNQUALIFIED
Juan A SaylorsAustraliaAmy Elsner QUALIFIED
Maria S FollerFranceOnyama Limba NEGOTIATION
Costa N WhobreyCanadaElwin Sharvill NEGOTIATION
Morrow W SchemmerArgentinaAsiya Javayant NEGOTIATION
Greenwood U MarrierFranceIvan Magalhaes RENEWAL
Ricardo Y FerenczArgentinaAsiya Javayant NEW
Wickens J InouyeFranceXuxue Feng QUALIFIED
James I DoeAustraliaIoni Bowcher RENEWAL
Alejandro D ChuiGermanyIvan Magalhaes NEGOTIATION
David B FigeroaAustraliaOnyama Limba QUALIFIED
Claire U KuskoRussiaIvan Magalhaes QUALIFIED
Kadeem I DoeGermanyOnyama Limba PROPOSAL
Ivar H MacleadFranceAnna Fali PROPOSAL
Sinclair S WieserItalyAmy Elsner NEGOTIATION
Julie E MorascaFranceBernardo Dominic UNQUALIFIED
Morrow R MacleadItalyElwin Sharvill PROPOSAL
Maisha O TollnerBrazilIvan Magalhaes PROPOSAL
Stacey Y SaylorsBrazilXuxue Feng QUALIFIED
James X GillianGermanyAmy Elsner PROPOSAL
Greenwood W InouyeItalyBernardo Dominic UNQUALIFIED
Leon B AmigonSpainOnyama Limba UNQUALIFIED
Clifford O NestleBrazilBernardo Dominic RENEWAL
Octavia Z GillianUnited KingdomElwin Sharvill NEW
Arvin S WhobreyCanadaElwin Sharvill NEW

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