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
Aika F BowleyGermanyIoni Bowcher NEW
Munro N BriddickAustraliaBernardo Dominic RENEWAL
Rodrigues V DilliardSpainIvan Magalhaes UNQUALIFIED
Faith H NestleIndiaIoni Bowcher QUALIFIED
Maria G AmigonBrazilBernardo Dominic QUALIFIED
Silvio W VocelkaAustraliaBernardo Dominic NEGOTIATION
Jefferson O KuskoAustraliaAnna Fali UNQUALIFIED
Antonio W DarakjyUnited KingdomIoni Bowcher UNQUALIFIED
Clifford Z CampainIndiaElwin Sharvill NEW
Kadeem D StensethBrazilStephen Shaw PROPOSAL
Aruna L MacleadArgentinaAsiya Javayant UNQUALIFIED
Cody K FlosiUnited KingdomStephen Shaw NEW
Alejandro N ChuiCanadaElwin Sharvill NEGOTIATION
Morrow A KolmetzBrazilAnna Fali RENEWAL
Antonio B RoysterIndiaStephen Shaw QUALIFIED
Octavia U GlickArgentinaElwin Sharvill NEGOTIATION
Clifford E RulapaughIndiaStephen Shaw NEGOTIATION
Silvio K MaletRussiaOnyama Limba RENEWAL
Tony F ChuiArgentinaIoni Bowcher NEW
Silvio X FigeroaJapanAnna Fali RENEWAL
Adams G StockhamBrazilIoni Bowcher PROPOSAL
Costa K TollnerRussiaOnyama Limba QUALIFIED
Stacey P VocelkaItalyAmy Elsner QUALIFIED
Clifford U RoysterGermanyAsiya Javayant NEGOTIATION
Juan E FlosiCanadaAnna Fali PROPOSAL
Maisha D CaudySpainIoni Bowcher NEGOTIATION
Ivar Q CaudyBrazilBernardo Dominic NEGOTIATION
Maria T FlosiItalyIvan Magalhaes PROPOSAL
Octavia G PerinGermanyXuxue Feng QUALIFIED
Wickens L IturbideJapanBernardo Dominic RENEWAL
Nicolas Q MarrierRussiaAnna Fali RENEWAL
Adams H DilliardRussiaAnna Fali NEGOTIATION
Ricardo Q InouyeItalyElwin Sharvill QUALIFIED
Claire L BologniaAustraliaXuxue Feng RENEWAL
Adams Q MaletRussiaAsiya Javayant NEW
Izzy P AmigonJapanStephen Shaw NEGOTIATION
Smith L DarakjyBrazilBernardo Dominic NEW
Silvio E StockhamItalyAsiya Javayant RENEWAL
David R MaletRussiaIoni Bowcher PROPOSAL
Faith G MorascaRussiaAsiya Javayant PROPOSAL
Izzy H GillianFranceAmy Elsner NEGOTIATION
Maria B CaldareraCanadaElwin Sharvill PROPOSAL
Faith I PaprockiItalyXuxue Feng NEGOTIATION
Claire R PerinBrazilIoni Bowcher PROPOSAL
Murillo S GauchoItalyAsiya Javayant NEGOTIATION
Wickens D InouyeSpainAsiya Javayant PROPOSAL
Maisha M BowleyItalyElwin Sharvill NEGOTIATION
Jennifer L ButtRussiaIvan Magalhaes QUALIFIED
Johnson I VenereJapanBernardo Dominic QUALIFIED
Maria Y GauchoCanadaAmy Elsner UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Mujtaba Z DarakjyGermanyIvan Magalhaes NEW
James Y BologniaFranceAsiya Javayant NEGOTIATION
Aditya W GillianGermanyAmy Elsner NEW
Sinclair P BowleyGermanyAnna Fali PROPOSAL
Jefferson O PoquetteUnited KingdomIvan Magalhaes RENEWAL
Jefferson A StensethItalyAsiya Javayant RENEWAL
Adams M ShinkoFranceAsiya Javayant RENEWAL
Izzy M RutaSpainBernardo Dominic QUALIFIED
Izzy I VocelkaArgentinaStephen Shaw NEW
Aruna K DarakjyRussiaBernardo Dominic RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Antonio K KolmetzRussia2024-06-03King, Christopher A Esq RENEWAL42Bernardo Dominic
1001Jeanfrancois V WieserCanada2024-06-02Rangoni Of Florence UNQUALIFIED40Amy Elsner
1002Clifford R KuskoFrance2024-06-18Morlong Associates UNQUALIFIED48Elwin Sharvill
1003Izzy B SchemmerSpain2024-06-05Rangoni Of Florence NEGOTIATION93Xuxue Feng
1004Aditya H GillianCanada2024-05-27Morlong Associates NEW70Stephen Shaw
1005Mayumi U FigeroaItaly2024-06-16Buckley Miller Wright NEGOTIATION18Amy Elsner
1006Francesco V NestleBrazil2024-06-18Feltz Printing Service NEGOTIATION66Stephen Shaw
1007Adams L WaycottItaly2024-06-01Commercial Press QUALIFIED96Ioni Bowcher
1008Ivar Q PerinAustralia2024-05-26Chanay, Jeffrey A Esq NEGOTIATION72Bernardo Dominic
1009Morrow T AlbaresUnited Kingdom2024-05-30King, Christopher A Esq PROPOSAL44Onyama Limba
1010Aika B NickaIndia2024-05-31Feiner Bros UNQUALIFIED0Anna Fali
1011David H GauchoItaly2024-06-16Feiner Bros NEW54Xuxue Feng
1012Darci I CaldareraItaly2024-06-12Printing Dimensions UNQUALIFIED46Ioni Bowcher
1013Aditya B StockhamRussia2024-06-19Rousseaux, Michael Esq RENEWAL50Xuxue Feng
1014Aika J GillianItaly2024-06-03Chemel, James L Cpa NEGOTIATION87Asiya Javayant
1015Misaki M MarrierItaly2024-06-09Morlong Associates QUALIFIED40Bernardo Dominic
1016Murillo R OldroydBrazil2024-06-03Chemel, James L Cpa PROPOSAL35Ioni Bowcher
1017Aditya V OldroydIndia2024-06-14Morlong Associates RENEWAL34Ioni Bowcher
1018Salvatore K StockhamIndia2024-05-30Printing Dimensions NEGOTIATION85Onyama Limba
1019Claire F RulapaughFrance2024-06-13Truhlar And Truhlar Attys NEGOTIATION98Xuxue Feng
1020Stacey N SchemmerFrance2024-06-17Truhlar And Truhlar Attys PROPOSAL96Ivan Magalhaes
1021Faith R FollerIndia2024-06-10Benton, John B Jr NEGOTIATION37Onyama Limba
1022Chavez W SaylorsRussia2024-06-18Printing Dimensions NEW97Asiya Javayant
1023Chavez L VenereJapan2024-06-12Rousseaux, Michael Esq UNQUALIFIED89Ivan Magalhaes
1024Clifford W StockhamFrance2024-06-02Buckley Miller Wright NEGOTIATION68Bernardo Dominic
1025Greenwood A DarakjySpain2024-06-01Truhlar And Truhlar Attys QUALIFIED19Bernardo Dominic
1026Arvin I MorascaItaly2024-06-17Printing Dimensions NEW68Anna Fali
1027Silvio F FigeroaFrance2024-06-06Rousseaux, Michael Esq NEW41Anna Fali
1028Jennifer L StockhamRussia2024-06-03Feiner Bros QUALIFIED57Amy Elsner
1029Arvin J PoquetteAustralia2024-06-08Rousseaux, Michael Esq PROPOSAL21Elwin Sharvill
1030David H RulapaughCanada2024-05-23Chanay, Jeffrey A Esq RENEWAL30Asiya Javayant
1031Mayumi S SlusarskiAustralia2024-06-04Rousseaux, Michael Esq PROPOSAL13Xuxue Feng
1032Adams L PerinCanada2024-05-31Printing Dimensions NEGOTIATION57Stephen Shaw
1033Ivar T MarrierGermany2024-06-18Feltz Printing Service NEGOTIATION22Ioni Bowcher
1034Aditya V DilliardFrance2024-06-02Feltz Printing Service QUALIFIED70Stephen Shaw
1035Sinclair Y VocelkaGermany2024-05-29Rousseaux, Michael Esq NEW49Ivan Magalhaes
1036Darci U BriddickItaly2024-06-17Commercial Press QUALIFIED51Elwin Sharvill
1037Ricardo E WhobreyBrazil2024-05-28Commercial Press NEGOTIATION58Onyama Limba
1038Isabel O AlbaresCanada2024-06-11Commercial Press NEW58Amy Elsner
1039Jones I KuskoGermany2024-06-03Rousseaux, Michael Esq RENEWAL85Bernardo Dominic
1040Stacey G SchemmerGermany2024-06-21Rousseaux, Michael Esq UNQUALIFIED54Stephen Shaw
1041Nicolas Y GlickItaly2024-06-08Rangoni Of Florence NEW25Elwin Sharvill
1042Jefferson T BriddickItaly2024-05-26Dorl, James J Esq UNQUALIFIED99Ioni Bowcher
1043Deepesh C PaprockiSpain2024-06-16Truhlar And Truhlar Attys QUALIFIED49Anna Fali
1044Munro N SaylorsIndia2024-06-02Dorl, James J Esq NEW92Stephen Shaw
1045Aika I MaletAustralia2024-06-14Morlong Associates UNQUALIFIED37Xuxue Feng
1046Isabel U RimUnited Kingdom2024-06-12Benton, John B Jr UNQUALIFIED53Bernardo Dominic
1047Francesco G InouyeCanada2024-06-14Printing Dimensions PROPOSAL92Elwin Sharvill
1048Costa Y OstroskyBrazil2024-05-24Rangoni Of Florence UNQUALIFIED77Onyama Limba
1049Emily Z PerinSpain2024-05-25Chanay, Jeffrey A Esq QUALIFIED76Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Jennifer D VenereFranceAsiya Javayant NEGOTIATION
Cody M BowleyGermanyXuxue Feng QUALIFIED
Faith C WieserArgentinaStephen Shaw UNQUALIFIED
Cody M VenereAustraliaIoni Bowcher RENEWAL
Maisha S VocelkaRussiaAnna Fali QUALIFIED
Morrow F PaprockiCanadaAnna Fali UNQUALIFIED
Ashley W SaylorsSpainAsiya Javayant NEGOTIATION
Alejandro F IturbideJapanBernardo Dominic RENEWAL
Jeanfrancois Z CaldareraJapanElwin Sharvill NEW
Darci Y ShinkoIndiaElwin Sharvill QUALIFIED
Jefferson N CaudyGermanyAnna Fali NEW
James T BologniaSpainXuxue Feng PROPOSAL
Arvin S PerinRussiaIoni Bowcher QUALIFIED
Leon Q FollerRussiaAnna Fali NEGOTIATION
Smith O ShinkoItalyOnyama Limba QUALIFIED
Adams J OldroydAustraliaOnyama Limba QUALIFIED
Aruna Y SergiArgentinaAsiya Javayant UNQUALIFIED
Izzy Q NickaAustraliaElwin Sharvill RENEWAL
Julie D StockhamBrazilAnna Fali NEGOTIATION
Aika D VocelkaUnited KingdomAnna Fali QUALIFIED
Misaki S SaylorsIndiaElwin Sharvill PROPOSAL
Ivar A DarakjyBrazilAsiya Javayant QUALIFIED
Deepesh R InouyeRussiaIoni Bowcher NEW
Nicolas I GarufiCanadaAmy Elsner UNQUALIFIED
Mujtaba K NestleItalyAmy Elsner QUALIFIED
Morrow U GauchoArgentinaAsiya Javayant UNQUALIFIED
David J MacleadArgentinaElwin Sharvill NEGOTIATION
Wickens Y InouyeRussiaOnyama Limba RENEWAL
Claire V VenereArgentinaIvan Magalhaes NEGOTIATION
Jeanfrancois R IturbideRussiaIoni Bowcher NEW
Ivar O WhobreyIndiaXuxue Feng NEGOTIATION
Leon N StockhamSpainAnna Fali UNQUALIFIED
Clifford Z BowleySpainXuxue Feng NEGOTIATION
Chavez I WieserSpainXuxue Feng RENEWAL
Juan F PoquetteAustraliaAnna Fali QUALIFIED
Izzy Z TollnerCanadaIoni Bowcher UNQUALIFIED
Julie D SchemmerAustraliaXuxue Feng NEW
Greenwood L NestleArgentinaIoni Bowcher NEW
Julie R FigeroaAustraliaElwin Sharvill UNQUALIFIED
Deepesh B ShinkoFranceAmy Elsner QUALIFIED
Julie O GlickBrazilIoni Bowcher QUALIFIED
Wickens W IturbideItalyAsiya Javayant PROPOSAL
Emily W TollnerArgentinaIvan Magalhaes UNQUALIFIED
Arvin D SchemmerArgentinaElwin Sharvill QUALIFIED
Maisha Z SchemmerArgentinaAsiya Javayant NEGOTIATION
Morrow T TollnerFranceAsiya Javayant NEW
Izzy O ButtUnited KingdomBernardo Dominic PROPOSAL
Nicolas F BriddickItalyAmy Elsner QUALIFIED
Aruna B WieserBrazilAmy Elsner QUALIFIED
James S OstroskyRussiaOnyama Limba UNQUALIFIED
Frozen Columns
Name
Claire K Briddick
Aruna V Doe
Adams N Bolognia
Rodrigues C Rim
Aika Z Schemmer
Clifford P Oldroyd
Leon J Gillian
Octavia P Tollner
Sinclair P Malet
Aditya U Chui
Octavia Z Bowley
Ricardo R Caldarera
Salvatore F Caudy
Faith V Saylors
Maria Y Darakjy
Faith P Ostrosky
Isabel X Venere
Silvio A Inouye
Aika K Flosi
Leja B Ruta
Leja J Glick
Emily F Dilliard
Ivar F Amigon
Francesco A Albares
Claire Z Darakjy
Kaitlin Z Waycott
Claire W Iturbide
Smith Y Slusarski
Jeanfrancois P Poquette
Mujtaba Q Doe
James H Dilliard
Alejandro N Darakjy
Chavez B Royster
Antonio C Gaucho
Morrow M Kolmetz
Leon M Marrier
Silvio F Rulapaugh
Alejandro V Saylors
Smith K Malet
Stacey K Vocelka
Kaitlin F Royster
Mayumi L Ostrosky
Kaitlin B Waycott
Aditya D Bowley
Jefferson N Waycott
Maisha E Foller
Alejandro V Amigon
Maisha Q Doe
Jefferson O Kolmetz
Kaitlin J Maclead
IdCountryDate
1000Argentina2024-06-09
1001India2024-06-04
1002Japan2024-05-31
1003United Kingdom2024-05-24
1004Canada2024-05-27
1005Russia2024-05-25
1006France2024-06-15
1007Canada2024-05-31
1008France2024-06-12
1009Germany2024-05-23
1010Japan2024-05-29
1011Japan2024-06-11
1012Australia2024-06-06
1013Italy2024-06-20
1014Argentina2024-05-30
1015Argentina2024-05-24
1016United Kingdom2024-06-10
1017Germany2024-06-19
1018Australia2024-06-17
1019Russia2024-06-19
1020Canada2024-06-07
1021India2024-06-04
1022Australia2024-06-09
1023Russia2024-06-14
1024Japan2024-06-14
1025Australia2024-06-08
1026Brazil2024-06-21
1027Germany2024-06-02
1028Argentina2024-06-18
1029India2024-06-13
1030Argentina2024-06-03
1031United Kingdom2024-06-02
1032Italy2024-05-24
1033Australia2024-06-11
1034Japan2024-05-27
1035Japan2024-05-26
1036Russia2024-06-12
1037Argentina2024-06-03
1038Spain2024-05-31
1039Canada2024-06-14
1040United Kingdom2024-06-20
1041Japan2024-06-02
1042Canada2024-06-14
1043Canada2024-06-12
1044Canada2024-05-24
1045Brazil2024-06-05
1046United Kingdom2024-06-19
1047Russia2024-06-09
1048Japan2024-05-30
1049Germany2024-06-20

On-Demand Data

NameIdCountryDate
Misaki J Slusarski1000Spain2024-05-29
Ricardo S Poquette1001Australia2024-06-03
Faith F Foller1002Japan2024-06-12
Kaitlin F Waycott1003Australia2024-06-05
Johnson C Malet1004France2024-05-28
Jefferson H Caudy1005Italy2024-06-20
Isabel D Ostrosky1006Germany2024-06-06
Octavia M Poquette1007India2024-06-21
Ivar O Slusarski1008Italy2024-06-18
Johnson E Marrier1009Australia2024-05-24
Faith J Inouye1010Japan2024-06-08
Murillo A Butt1011Argentina2024-05-24
Stacey H Darakjy1012Russia2024-06-20
Smith Z Gillian1013Spain2024-05-27
Kadeem Q Schemmer1014Spain2024-05-30
Chavez I Saylors1015Germany2024-05-24
Leon L Briddick1016France2024-06-03
Murillo E Flosi1017India2024-05-23
Adams U Figeroa1018Russia2024-06-01
Sinclair G Vocelka1019Italy2024-05-31
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Cody X PoquetteItalyStephen Shaw RENEWAL
Kadeem A AmigonFranceXuxue Feng NEGOTIATION
Arvin W GarufiIndiaIvan Magalhaes NEGOTIATION
Wickens S WhobreyAustraliaStephen Shaw RENEWAL
Izzy M StockhamItalyIoni Bowcher PROPOSAL
Chavez Z FerenczItalyXuxue Feng PROPOSAL
Mujtaba V SergiItalyBernardo Dominic PROPOSAL
Greenwood U BologniaCanadaElwin Sharvill QUALIFIED
Wickens Y VenereSpainAnna Fali RENEWAL
Kadeem E ButtIndiaIoni Bowcher PROPOSAL
Stacey H DoeSpainElwin Sharvill UNQUALIFIED
Nicolas B CaudyBrazilAsiya Javayant QUALIFIED
Silvio S VocelkaItalyAsiya Javayant QUALIFIED
Deepesh K FerenczArgentinaIvan Magalhaes RENEWAL
Kaitlin Q GarufiFranceAmy Elsner UNQUALIFIED
Julie C RoysterArgentinaOnyama Limba PROPOSAL
Arvin V WaycottArgentinaBernardo Dominic QUALIFIED
Leja K AmigonArgentinaAsiya Javayant RENEWAL
Juan C VenereArgentinaStephen Shaw RENEWAL
Juan G AlbaresAustraliaXuxue Feng PROPOSAL
Arvin Z RimItalyAnna Fali NEW
Johnson S AlbaresCanadaAnna Fali UNQUALIFIED
Tony D TollnerRussiaOnyama Limba QUALIFIED
Maisha I GlickItalyIvan Magalhaes UNQUALIFIED
Maisha G DarakjyIndiaOnyama Limba UNQUALIFIED
Aditya B FigeroaUnited KingdomOnyama Limba NEW
James L MaletJapanIvan Magalhaes PROPOSAL
Costa B FlosiItalyAnna Fali RENEWAL
Silvio B IturbideBrazilBernardo Dominic QUALIFIED
Adams L BriddickArgentinaStephen Shaw QUALIFIED
Leja J SergiBrazilAsiya Javayant RENEWAL
Kaitlin R AlbaresBrazilBernardo Dominic NEW
Darci C OldroydRussiaAsiya Javayant PROPOSAL
Claire V OldroydRussiaOnyama Limba UNQUALIFIED
Darci T ButtCanadaXuxue Feng QUALIFIED
Ricardo F WaycottAustraliaXuxue Feng QUALIFIED
David Q OstroskyBrazilXuxue Feng PROPOSAL
Clifford J PoquetteUnited KingdomAsiya Javayant NEGOTIATION
Wickens J FollerIndiaIvan Magalhaes NEGOTIATION
Octavia C OstroskyRussiaElwin Sharvill 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>