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
Juan E GlickAustraliaAnna Fali RENEWAL
Kadeem N FollerJapanAmy Elsner UNQUALIFIED
Aruna H DarakjyFranceBernardo Dominic NEGOTIATION
Francesco O BriddickBrazilBernardo Dominic NEW
Maria W AlbaresIndiaIoni Bowcher NEW
Greenwood D WieserGermanyXuxue Feng UNQUALIFIED
Deepesh Q OstroskyUnited KingdomElwin Sharvill PROPOSAL
Silvio K MaletAustraliaElwin Sharvill NEGOTIATION
Alejandro Z TollnerCanadaIvan Magalhaes QUALIFIED
Maisha N WhobreyItalyAnna Fali NEGOTIATION
Greenwood X CampainFranceIoni Bowcher NEW
Ivar G PerinItalyXuxue Feng NEGOTIATION
Kaitlin F SlusarskiSpainXuxue Feng QUALIFIED
Jeanfrancois Y BriddickBrazilIvan Magalhaes QUALIFIED
Ricardo N VocelkaSpainIoni Bowcher QUALIFIED
Ricardo J CampainSpainElwin Sharvill QUALIFIED
Ivar H CampainItalyAnna Fali QUALIFIED
Isabel V BriddickJapanStephen Shaw NEW
Mayumi S KuskoArgentinaXuxue Feng NEGOTIATION
Stacey T MaletFranceIvan Magalhaes QUALIFIED
Aika V VocelkaItalyStephen Shaw NEGOTIATION
Clifford T DilliardJapanStephen Shaw NEW
Wickens C ButtArgentinaStephen Shaw PROPOSAL
Leja H InouyeArgentinaIoni Bowcher PROPOSAL
Mujtaba K GillianSpainIvan Magalhaes PROPOSAL
Mujtaba F ButtGermanyIoni Bowcher NEW
Izzy S ButtSpainAmy Elsner NEGOTIATION
Nicolas P WaycottIndiaXuxue Feng NEGOTIATION
Isabel A PerinCanadaAmy Elsner NEW
Ricardo J DilliardBrazilElwin Sharvill RENEWAL
Clifford U KolmetzFranceElwin Sharvill QUALIFIED
Deepesh A CaudyGermanyAsiya Javayant RENEWAL
Tony F FigeroaUnited KingdomAmy Elsner PROPOSAL
Misaki C NickaCanadaIvan Magalhaes NEGOTIATION
Kaitlin F SaylorsJapanElwin Sharvill RENEWAL
Rodrigues F FigeroaBrazilIvan Magalhaes UNQUALIFIED
Rodrigues W RulapaughSpainBernardo Dominic NEW
Nicolas D MaletSpainStephen Shaw PROPOSAL
Mayumi K FerenczArgentinaStephen Shaw PROPOSAL
Adams B MaletAustraliaOnyama Limba RENEWAL
Ivar A NickaAustraliaAmy Elsner UNQUALIFIED
Ashley Q KuskoBrazilBernardo Dominic UNQUALIFIED
Murillo I DilliardGermanyOnyama Limba NEGOTIATION
Faith A PerinJapanOnyama Limba NEW
Rodrigues F SchemmerBrazilAmy Elsner QUALIFIED
Jones R ChuiIndiaIvan Magalhaes UNQUALIFIED
Smith J AmigonCanadaAnna Fali RENEWAL
Aruna W MarrierUnited KingdomIvan Magalhaes QUALIFIED
Morrow I ChuiFranceIoni Bowcher RENEWAL
Kadeem B CaldareraUnited KingdomIvan Magalhaes PROPOSAL
Horizontal
NameCountryRepresentativeStatus
David V VocelkaRussiaIoni Bowcher QUALIFIED
Antonio S BowleyGermanyAsiya Javayant NEGOTIATION
Misaki C SaylorsItalyBernardo Dominic NEW
Kadeem U SlusarskiCanadaIoni Bowcher NEW
Tony S OstroskyBrazilIoni Bowcher NEW
Kadeem H GauchoAustraliaElwin Sharvill NEW
Smith A CaudyUnited KingdomOnyama Limba NEW
Antonio P IturbideGermanyXuxue Feng QUALIFIED
Antonio K DarakjyJapanXuxue Feng QUALIFIED
Clifford Q BriddickJapanAmy Elsner PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maisha T GillianArgentina2024-05-27Commercial Press RENEWAL5Anna Fali
1001Chavez B PerinAustralia2024-05-24Morlong Associates PROPOSAL1Stephen Shaw
1002Greenwood E ShinkoAustralia2024-05-28Printing Dimensions QUALIFIED53Xuxue Feng
1003Faith J DarakjyArgentina2024-06-01King, Christopher A Esq NEGOTIATION15Anna Fali
1004Silvio O RutaUnited Kingdom2024-06-18Rangoni Of Florence QUALIFIED45Anna Fali
1005Adams B PaprockiUnited Kingdom2024-05-31Rangoni Of Florence NEGOTIATION71Bernardo Dominic
1006Cody T MaletIndia2024-05-27King, Christopher A Esq RENEWAL36Anna Fali
1007Alejandro F OldroydArgentina2024-05-29Rousseaux, Michael Esq NEW96Onyama Limba
1008Ashley E MacleadIndia2024-05-25Rangoni Of Florence QUALIFIED55Stephen Shaw
1009James J FollerGermany2024-06-03Printing Dimensions PROPOSAL21Amy Elsner
1010Izzy E FlosiBrazil2024-06-01Morlong Associates PROPOSAL68Ivan Magalhaes
1011Jones M CaudySpain2024-06-16Feltz Printing Service NEGOTIATION64Anna Fali
1012Maisha U BowleyGermany2024-06-10Commercial Press UNQUALIFIED33Anna Fali
1013Maria H RulapaughUnited Kingdom2024-06-02King, Christopher A Esq QUALIFIED73Xuxue Feng
1014Alejandro M KuskoIndia2024-06-11Chapman, Ross E Esq UNQUALIFIED99Anna Fali
1015Ashley V OldroydIndia2024-05-28King, Christopher A Esq PROPOSAL61Elwin Sharvill
1016Francesco W KuskoArgentina2024-05-31Chemel, James L Cpa RENEWAL89Onyama Limba
1017Cody C VocelkaRussia2024-05-23Truhlar And Truhlar Attys QUALIFIED9Asiya Javayant
1018Adams X SchemmerSpain2024-05-25Rangoni Of Florence NEW40Elwin Sharvill
1019Johnson W MorascaSpain2024-06-17Feiner Bros PROPOSAL15Bernardo Dominic
1020Rodrigues I FollerBrazil2024-06-03Printing Dimensions PROPOSAL5Bernardo Dominic
1021Rodrigues T MorascaBrazil2024-05-27Commercial Press RENEWAL23Asiya Javayant
1022Ivar S WieserArgentina2024-06-14Commercial Press NEW4Onyama Limba
1023Johnson Y PaprockiItaly2024-05-23King, Christopher A Esq RENEWAL92Bernardo Dominic
1024Mayumi S KolmetzSpain2024-06-04Chemel, James L Cpa NEGOTIATION49Amy Elsner
1025Morrow C StockhamSpain2024-05-24Printing Dimensions QUALIFIED82Onyama Limba
1026Johnson N ButtAustralia2024-05-31King, Christopher A Esq QUALIFIED47Bernardo Dominic
1027Adams A CaldareraCanada2024-06-03Dorl, James J Esq NEGOTIATION38Ivan Magalhaes
1028Wickens K WhobreyIndia2024-05-23Chemel, James L Cpa PROPOSAL17Asiya Javayant
1029Emily W MarrierGermany2024-05-28Feiner Bros UNQUALIFIED86Bernardo Dominic
1030Stacey I OstroskyJapan2024-06-13Dorl, James J Esq PROPOSAL29Onyama Limba
1031Smith V ChuiGermany2024-06-08Feiner Bros QUALIFIED89Elwin Sharvill
1032Deepesh S SergiRussia2024-06-18King, Christopher A Esq UNQUALIFIED44Asiya Javayant
1033David M NestleCanada2024-06-08Feltz Printing Service PROPOSAL31Amy Elsner
1034Munro G AlbaresJapan2024-06-21Benton, John B Jr UNQUALIFIED96Elwin Sharvill
1035Murillo P MacleadBrazil2024-05-28Rousseaux, Michael Esq UNQUALIFIED39Onyama Limba
1036Clifford B PaprockiItaly2024-06-16Dorl, James J Esq UNQUALIFIED8Ioni Bowcher
1037Tony I StockhamArgentina2024-06-18Chanay, Jeffrey A Esq NEW92Ioni Bowcher
1038Smith X AmigonRussia2024-06-02Dorl, James J Esq QUALIFIED2Onyama Limba
1039Rodrigues R PaprockiArgentina2024-05-23King, Christopher A Esq QUALIFIED26Xuxue Feng
1040Antonio J SaylorsAustralia2024-06-12Feiner Bros UNQUALIFIED46Ivan Magalhaes
1041Stacey I NestleGermany2024-06-11Commercial Press NEW4Elwin Sharvill
1042Juan W SchemmerAustralia2024-05-27King, Christopher A Esq UNQUALIFIED15Bernardo Dominic
1043Darci Q InouyeRussia2024-05-23Chapman, Ross E Esq QUALIFIED75Onyama Limba
1044Jeanfrancois R ChuiCanada2024-06-11King, Christopher A Esq UNQUALIFIED30Ivan Magalhaes
1045Ivar S PerinUnited Kingdom2024-06-20Truhlar And Truhlar Attys UNQUALIFIED46Bernardo Dominic
1046Chavez D MorascaBrazil2024-06-15Commercial Press RENEWAL53Asiya Javayant
1047Nicolas L SlusarskiBrazil2024-06-17Chanay, Jeffrey A Esq NEGOTIATION24Ivan Magalhaes
1048Claire P ChuiSpain2024-06-01Chanay, Jeffrey A Esq PROPOSAL83Anna Fali
1049Izzy G ChuiSpain2024-06-03Chanay, Jeffrey A Esq QUALIFIED5Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Darci D VocelkaItalyAnna Fali QUALIFIED
Jefferson H VenereArgentinaElwin Sharvill UNQUALIFIED
Jeanfrancois J MarrierGermanyOnyama Limba UNQUALIFIED
Isabel Q ShinkoBrazilAmy Elsner QUALIFIED
Tony G DilliardIndiaAmy Elsner NEW
Kaitlin M VocelkaRussiaAmy Elsner QUALIFIED
Adams S TollnerIndiaBernardo Dominic NEGOTIATION
Rodrigues U BowleyRussiaBernardo Dominic NEW
Murillo C NestleUnited KingdomAnna Fali NEW
Maria J InouyeIndiaElwin Sharvill RENEWAL
Jones J FerenczRussiaIvan Magalhaes PROPOSAL
Maria F GlickJapanXuxue Feng RENEWAL
Wickens R SchemmerJapanElwin Sharvill NEW
Alejandro Y AmigonGermanyStephen Shaw NEW
Darci M RimRussiaXuxue Feng NEGOTIATION
Isabel C GillianFranceIoni Bowcher RENEWAL
James D RoysterGermanyAmy Elsner UNQUALIFIED
Ashley H GillianGermanyAmy Elsner RENEWAL
Clifford B NickaCanadaBernardo Dominic NEGOTIATION
Mujtaba S OldroydAustraliaXuxue Feng PROPOSAL
Ivar M ShinkoUnited KingdomOnyama Limba QUALIFIED
Jefferson L ButtItalyElwin Sharvill UNQUALIFIED
Kaitlin A OstroskyIndiaStephen Shaw NEW
Cody V AlbaresAustraliaBernardo Dominic UNQUALIFIED
Jefferson H FigeroaItalyAsiya Javayant QUALIFIED
Greenwood W ButtArgentinaStephen Shaw NEGOTIATION
David S BowleyBrazilAnna Fali UNQUALIFIED
Stacey I KuskoUnited KingdomAmy Elsner NEGOTIATION
Isabel M SergiJapanAmy Elsner QUALIFIED
David B BriddickAustraliaBernardo Dominic RENEWAL
Arvin E MorascaAustraliaAnna Fali RENEWAL
Maria C SchemmerAustraliaIvan Magalhaes QUALIFIED
Rodrigues Q CampainSpainAsiya Javayant NEGOTIATION
James E FigeroaSpainAmy Elsner RENEWAL
Mayumi D InouyeFranceElwin Sharvill RENEWAL
Ashley U SergiAustraliaOnyama Limba NEW
Julie Z CaldareraGermanyAmy Elsner NEGOTIATION
Tony D IturbideGermanyIoni Bowcher UNQUALIFIED
Isabel O StensethItalyAsiya Javayant NEGOTIATION
Octavia M FlosiArgentinaAmy Elsner NEW
Jeanfrancois Y CampainGermanyAsiya Javayant QUALIFIED
Ivar Q IturbideItalyAmy Elsner NEGOTIATION
Jones X CaudyIndiaStephen Shaw RENEWAL
Kadeem R DilliardGermanyAsiya Javayant NEW
Adams E CaldareraBrazilBernardo Dominic QUALIFIED
Mayumi T VocelkaIndiaStephen Shaw NEGOTIATION
Izzy Z CampainGermanyBernardo Dominic QUALIFIED
Kadeem Y OstroskyArgentinaAnna Fali NEGOTIATION
Ivar X ShinkoJapanElwin Sharvill QUALIFIED
Tony T AmigonBrazilIvan Magalhaes QUALIFIED
Frozen Columns
Name
Julie W Caldarera
Darci Q Iturbide
Sinclair H Inouye
Izzy Z Doe
Stacey Z Malet
Munro V Marrier
Izzy X Chui
Aika Q Stenseth
Nicolas S Nestle
Izzy U Whobrey
Ashley P Caudy
Deepesh X Waycott
Kaitlin N Figeroa
Ashley G Gaucho
Morrow T Saylors
Murillo L Rim
Ivar D Maclead
Aditya H Doe
Faith F Ferencz
Murillo A Sergi
Adams J Wieser
Octavia M Slusarski
Silvio C Albares
Murillo O Ruta
Maria U Bowley
James B Stenseth
David G Morasca
Costa Y Gillian
Deepesh I Figeroa
Ashley X Sergi
Julie T Vocelka
Aditya B Gaucho
Aruna N Ferencz
Deepesh G Caldarera
Jennifer H Glick
Chavez L Butt
Costa O Ruta
Octavia A Slusarski
Ashley G Figeroa
Alejandro X Ruta
Maisha T Ferencz
Stacey B Kusko
Maria A Venere
Octavia X Iturbide
Francesco W Foller
Ricardo W Malet
Aditya Z Sergi
Antonio G Stenseth
Aika B Darakjy
Jeanfrancois P Ruta
IdCountryDate
1000Germany2024-06-09
1001United Kingdom2024-06-06
1002Spain2024-06-11
1003Canada2024-06-04
1004United Kingdom2024-05-25
1005Argentina2024-06-20
1006United Kingdom2024-06-14
1007India2024-06-08
1008Argentina2024-06-05
1009Australia2024-06-19
1010France2024-05-23
1011India2024-05-28
1012Spain2024-06-12
1013Australia2024-06-15
1014Argentina2024-06-01
1015India2024-05-27
1016United Kingdom2024-06-10
1017Canada2024-06-10
1018Australia2024-06-12
1019Germany2024-06-11
1020France2024-06-05
1021Germany2024-06-13
1022Germany2024-06-12
1023Australia2024-06-19
1024Spain2024-06-04
1025Argentina2024-06-21
1026Italy2024-06-09
1027France2024-06-18
1028United Kingdom2024-06-02
1029Japan2024-06-01
1030Germany2024-06-06
1031Brazil2024-06-07
1032Australia2024-06-11
1033United Kingdom2024-06-08
1034India2024-06-12
1035Russia2024-06-02
1036Canada2024-06-04
1037India2024-05-31
1038United Kingdom2024-05-24
1039Italy2024-06-20
1040India2024-06-06
1041Japan2024-06-17
1042France2024-06-03
1043United Kingdom2024-06-20
1044Germany2024-06-07
1045Spain2024-05-27
1046Germany2024-06-03
1047Argentina2024-06-18
1048Germany2024-05-30
1049India2024-06-10

On-Demand Data

NameIdCountryDate
Aruna J Gaucho1000Italy2024-06-03
Jefferson W Doe1001Argentina2024-05-29
Alejandro R Inouye1002Spain2024-05-25
Darci F Sergi1003Argentina2024-05-24
Mujtaba N Doe1004Argentina2024-06-10
Leon X Ferencz1005Spain2024-06-07
Johnson N Glick1006Brazil2024-05-25
Greenwood N Tollner1007United Kingdom2024-05-28
Octavia J Venere1008Argentina2024-06-20
Murillo P Flosi1009United Kingdom2024-06-15
Maria Z Vocelka1010Canada2024-06-08
Costa V Chui1011Brazil2024-06-11
Maisha I Darakjy1012Germany2024-06-18
Jeanfrancois B Stenseth1013Germany2024-06-01
Kadeem L Foller1014Italy2024-06-03
Darci E Albares1015Italy2024-06-16
Maria H Maclead1016Japan2024-06-02
Leon K Bolognia1017Spain2024-06-05
Smith W Poquette1018Germany2024-06-20
Morrow T Figeroa1019Germany2024-06-03
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Costa Q GlickItalyOnyama Limba QUALIFIED
Nicolas Y FigeroaAustraliaXuxue Feng RENEWAL
Aditya T WhobreyGermanyXuxue Feng QUALIFIED
Costa L MorascaFranceAsiya Javayant UNQUALIFIED
Ivar V OstroskySpainAnna Fali QUALIFIED
Darci H KolmetzItalyIoni Bowcher QUALIFIED
Jefferson O AmigonFranceBernardo Dominic UNQUALIFIED
Octavia W KolmetzCanadaIoni Bowcher NEGOTIATION
Jones R VocelkaFranceIvan Magalhaes NEW
Julie Z PaprockiSpainStephen Shaw NEGOTIATION
Izzy B KuskoCanadaAsiya Javayant PROPOSAL
Arvin O BologniaFranceElwin Sharvill NEGOTIATION
Francesco V CaudyCanadaBernardo Dominic UNQUALIFIED
Chavez R IturbideJapanIvan Magalhaes QUALIFIED
Antonio I MaletRussiaIvan Magalhaes QUALIFIED
Costa M PaprockiIndiaIvan Magalhaes QUALIFIED
Antonio L MacleadGermanyXuxue Feng PROPOSAL
David Q RutaRussiaXuxue Feng RENEWAL
Aditya R AlbaresArgentinaOnyama Limba NEW
Kadeem K SergiSpainElwin Sharvill NEW
Octavia B BologniaIndiaIoni Bowcher RENEWAL
Murillo P MorascaSpainIoni Bowcher QUALIFIED
Kadeem I PoquetteSpainIvan Magalhaes PROPOSAL
Jefferson T PoquetteAustraliaBernardo Dominic QUALIFIED
Jeanfrancois F PaprockiSpainXuxue Feng PROPOSAL
Emily X BologniaArgentinaAmy Elsner QUALIFIED
Johnson O MorascaArgentinaIoni Bowcher NEW
Jeanfrancois H DilliardJapanElwin Sharvill RENEWAL
Mujtaba X SergiFranceAnna Fali UNQUALIFIED
Mayumi W MaletCanadaAmy Elsner QUALIFIED
Jefferson Z OstroskyFranceStephen Shaw RENEWAL
Isabel U RutaSpainOnyama Limba RENEWAL
Darci P SergiFranceIoni Bowcher NEW
Ashley F AmigonCanadaOnyama Limba NEW
Wickens T ChuiArgentinaIvan Magalhaes NEW
Aika Q ButtArgentinaAsiya Javayant RENEWAL
Mayumi D FigeroaItalyOnyama Limba UNQUALIFIED
Cody H BowleyGermanyIvan Magalhaes PROPOSAL
Murillo M PerinJapanAmy Elsner RENEWAL
Isabel R WhobreyUnited KingdomStephen Shaw 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>