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
Ivar F GillianSpainBernardo Dominic PROPOSAL
Stacey H ShinkoRussiaAsiya Javayant NEW
Maisha S PaprockiFranceAsiya Javayant QUALIFIED
Izzy G AlbaresJapanElwin Sharvill UNQUALIFIED
Munro C MorascaUnited KingdomAmy Elsner NEGOTIATION
Ivar J RimIndiaAsiya Javayant UNQUALIFIED
Tony Q DilliardArgentinaAsiya Javayant PROPOSAL
Smith G FerenczArgentinaOnyama Limba UNQUALIFIED
Tony J FlosiFranceElwin Sharvill RENEWAL
Maisha W StockhamRussiaStephen Shaw NEW
Ivar L WieserArgentinaAmy Elsner PROPOSAL
Adams P FollerBrazilXuxue Feng UNQUALIFIED
Faith W FlosiSpainStephen Shaw UNQUALIFIED
Costa S FlosiBrazilAmy Elsner NEW
Sinclair F FigeroaJapanIoni Bowcher QUALIFIED
Maisha N PaprockiCanadaAmy Elsner PROPOSAL
Maisha Q FigeroaCanadaIoni Bowcher UNQUALIFIED
Stacey A BriddickCanadaStephen Shaw NEGOTIATION
Adams Y SaylorsSpainAnna Fali NEW
Costa H RutaItalyIvan Magalhaes NEGOTIATION
Ricardo M CaldareraRussiaIoni Bowcher RENEWAL
Jeanfrancois D InouyeAustraliaIvan Magalhaes QUALIFIED
Costa T RulapaughJapanIvan Magalhaes UNQUALIFIED
Nicolas H DilliardCanadaXuxue Feng NEW
Ivar J InouyeIndiaAsiya Javayant NEW
Claire J InouyeAustraliaIvan Magalhaes NEGOTIATION
Antonio R GarufiAustraliaBernardo Dominic NEGOTIATION
David T BologniaBrazilElwin Sharvill UNQUALIFIED
Johnson L BriddickArgentinaOnyama Limba NEGOTIATION
Francesco N WieserSpainOnyama Limba QUALIFIED
Ivar E CaudyIndiaXuxue Feng NEW
Rodrigues F GlickFranceBernardo Dominic NEGOTIATION
Misaki H DoeIndiaAmy Elsner PROPOSAL
Smith J StockhamGermanyElwin Sharvill RENEWAL
Emily M SchemmerBrazilXuxue Feng NEGOTIATION
Arvin I SchemmerUnited KingdomIvan Magalhaes QUALIFIED
Izzy O MaletItalyAsiya Javayant NEGOTIATION
Antonio R RutaCanadaIvan Magalhaes PROPOSAL
Julie H SergiBrazilIoni Bowcher QUALIFIED
Emily X KolmetzSpainAsiya Javayant QUALIFIED
Octavia G KolmetzRussiaXuxue Feng QUALIFIED
Cody K AmigonBrazilOnyama Limba NEGOTIATION
Jennifer W FlosiSpainElwin Sharvill RENEWAL
Munro S BologniaIndiaIoni Bowcher NEGOTIATION
Maisha I GillianItalyIoni Bowcher UNQUALIFIED
David F AlbaresIndiaIvan Magalhaes QUALIFIED
Adams H CaudyArgentinaOnyama Limba PROPOSAL
Wickens R OstroskyCanadaAmy Elsner UNQUALIFIED
Julie I MaletIndiaBernardo Dominic RENEWAL
Chavez O MacleadCanadaAsiya Javayant PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Kaitlin Y DilliardFranceIoni Bowcher UNQUALIFIED
Sinclair B MarrierBrazilIoni Bowcher PROPOSAL
Smith Q SergiJapanOnyama Limba NEGOTIATION
Sinclair S FlosiItalyIoni Bowcher RENEWAL
Greenwood E CaudyJapanBernardo Dominic UNQUALIFIED
Murillo T PoquetteJapanAnna Fali UNQUALIFIED
Leja Q StensethJapanBernardo Dominic NEGOTIATION
Maisha E FollerItalyIoni Bowcher UNQUALIFIED
Stacey L MaletCanadaXuxue Feng UNQUALIFIED
Smith F IturbideUnited KingdomAsiya Javayant PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Darci A NestleArgentina2024-06-10Dorl, James J Esq NEGOTIATION73Asiya Javayant
1001Kaitlin W FlosiArgentina2024-06-09King, Christopher A Esq QUALIFIED82Asiya Javayant
1002Kaitlin F MaletItaly2024-05-31Feiner Bros UNQUALIFIED37Xuxue Feng
1003Maisha K VenereUnited Kingdom2024-06-10Chapman, Ross E Esq NEGOTIATION46Xuxue Feng
1004Aika P NestleGermany2024-06-19Morlong Associates PROPOSAL46Amy Elsner
1005Silvio T KolmetzBrazil2024-06-10Morlong Associates RENEWAL14Xuxue Feng
1006Cody H BowleyRussia2024-06-01Chanay, Jeffrey A Esq NEGOTIATION79Onyama Limba
1007Rodrigues G CaudyItaly2024-06-04Benton, John B Jr NEGOTIATION12Bernardo Dominic
1008James J StensethFrance2024-06-16Rangoni Of Florence QUALIFIED71Asiya Javayant
1009Juan Z RutaUnited Kingdom2024-05-30Printing Dimensions RENEWAL0Ivan Magalhaes
1010Stacey E AmigonItaly2024-05-29Feiner Bros RENEWAL26Xuxue Feng
1011Ricardo K CaudyIndia2024-06-21Chemel, James L Cpa NEW43Stephen Shaw
1012Johnson E CaldareraAustralia2024-06-20Buckley Miller Wright NEGOTIATION45Bernardo Dominic
1013Nicolas F MaletBrazil2024-06-13Buckley Miller Wright QUALIFIED38Bernardo Dominic
1014Costa M DoeFrance2024-05-27Benton, John B Jr RENEWAL9Elwin Sharvill
1015Misaki H DilliardFrance2024-06-11King, Christopher A Esq UNQUALIFIED43Anna Fali
1016Munro O DarakjyIndia2024-05-27Chanay, Jeffrey A Esq RENEWAL84Asiya Javayant
1017Octavia M BriddickJapan2024-06-20Rousseaux, Michael Esq PROPOSAL20Onyama Limba
1018Aika F SaylorsBrazil2024-05-26Chapman, Ross E Esq NEGOTIATION26Stephen Shaw
1019Mayumi M FigeroaGermany2024-06-04Printing Dimensions NEW11Anna Fali
1020Clifford I OstroskyRussia2024-06-01Feiner Bros NEW12Bernardo Dominic
1021Maria U FlosiUnited Kingdom2024-06-16Rousseaux, Michael Esq QUALIFIED95Stephen Shaw
1022Sinclair Z TollnerJapan2024-06-24King, Christopher A Esq NEW23Ivan Magalhaes
1023Maisha U BowleySpain2024-06-14Chemel, James L Cpa UNQUALIFIED25Ivan Magalhaes
1024Nicolas A SlusarskiBrazil2024-06-14Buckley Miller Wright NEW55Onyama Limba
1025Maria R CampainArgentina2024-06-03Rangoni Of Florence UNQUALIFIED22Elwin Sharvill
1026Munro K IturbideUnited Kingdom2024-06-18Feltz Printing Service QUALIFIED56Amy Elsner
1027Chavez A WaycottBrazil2024-05-30Truhlar And Truhlar Attys PROPOSAL73Anna Fali
1028Alejandro H VocelkaIndia2024-06-24Rangoni Of Florence NEW22Onyama Limba
1029Maria Q AmigonAustralia2024-06-04Feiner Bros PROPOSAL40Elwin Sharvill
1030Ashley V ShinkoIndia2024-05-26Buckley Miller Wright UNQUALIFIED76Elwin Sharvill
1031Claire M MacleadFrance2024-06-15Buckley Miller Wright NEW31Anna Fali
1032David I DoeFrance2024-06-08Rangoni Of Florence PROPOSAL21Anna Fali
1033Silvio W WieserRussia2024-06-09Rangoni Of Florence RENEWAL65Xuxue Feng
1034Aruna W BologniaFrance2024-06-03Buckley Miller Wright NEGOTIATION49Ivan Magalhaes
1035Darci I StockhamArgentina2024-05-31Dorl, James J Esq QUALIFIED43Onyama Limba
1036Rodrigues S MarrierFrance2024-06-15Rangoni Of Florence RENEWAL6Xuxue Feng
1037Munro Y NestleRussia2024-06-21Chemel, James L Cpa UNQUALIFIED0Ivan Magalhaes
1038Chavez Z MorascaArgentina2024-06-15Feltz Printing Service NEW60Elwin Sharvill
1039Misaki X FlosiItaly2024-06-21Benton, John B Jr NEW14Anna Fali
1040Silvio X BriddickJapan2024-06-24Morlong Associates RENEWAL63Elwin Sharvill
1041Greenwood V RutaIndia2024-06-13Dorl, James J Esq QUALIFIED87Ioni Bowcher
1042Salvatore V RimUnited Kingdom2024-06-16Buckley Miller Wright RENEWAL44Asiya Javayant
1043Emily W FerenczGermany2024-06-01Feiner Bros UNQUALIFIED2Amy Elsner
1044Ashley W MaletItaly2024-06-23Truhlar And Truhlar Attys PROPOSAL99Bernardo Dominic
1045Greenwood S MarrierBrazil2024-06-16Benton, John B Jr NEW45Ivan Magalhaes
1046Wickens M VenereCanada2024-05-28Chanay, Jeffrey A Esq NEW12Anna Fali
1047Octavia P NestleCanada2024-05-29Printing Dimensions NEW32Amy Elsner
1048Stacey H RulapaughUnited Kingdom2024-06-16Buckley Miller Wright NEGOTIATION89Stephen Shaw
1049Claire P MaletBrazil2024-06-09Commercial Press NEW27Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Maisha Z SergiJapanBernardo Dominic PROPOSAL
Misaki A CampainUnited KingdomXuxue Feng PROPOSAL
Mayumi N FollerCanadaIoni Bowcher QUALIFIED
Ivar Y OldroydRussiaElwin Sharvill UNQUALIFIED
Antonio U SlusarskiGermanyBernardo Dominic RENEWAL
Tony N AmigonRussiaIoni Bowcher RENEWAL
Ricardo S NickaJapanOnyama Limba UNQUALIFIED
Ricardo J StockhamBrazilIvan Magalhaes PROPOSAL
Rodrigues J CampainRussiaOnyama Limba RENEWAL
Aika H VocelkaSpainAmy Elsner NEW
Deepesh C RutaUnited KingdomIvan Magalhaes RENEWAL
Darci T BowleyBrazilIoni Bowcher NEGOTIATION
Juan K SchemmerBrazilBernardo Dominic UNQUALIFIED
David B SchemmerFranceAsiya Javayant QUALIFIED
Nicolas D GauchoBrazilXuxue Feng NEGOTIATION
Munro Y KuskoFranceAnna Fali UNQUALIFIED
Jones P IturbideJapanOnyama Limba PROPOSAL
Emily V RoysterFranceAnna Fali NEGOTIATION
Smith P VocelkaFranceAmy Elsner NEW
Antonio V SchemmerSpainAmy Elsner QUALIFIED
Costa L VocelkaFranceBernardo Dominic UNQUALIFIED
Adams X ShinkoCanadaAnna Fali NEGOTIATION
Greenwood M StockhamAustraliaIvan Magalhaes PROPOSAL
Munro E PoquetteArgentinaAsiya Javayant UNQUALIFIED
Kadeem D GauchoGermanyAmy Elsner NEW
Chavez D PerinJapanStephen Shaw PROPOSAL
Mayumi N SchemmerJapanStephen Shaw NEW
Stacey X InouyeFranceIvan Magalhaes RENEWAL
Alejandro B MarrierIndiaOnyama Limba RENEWAL
Darci L GillianUnited KingdomOnyama Limba NEW
Mayumi A CaudyAustraliaXuxue Feng PROPOSAL
Alejandro A MaletSpainAsiya Javayant RENEWAL
Morrow L KuskoGermanyElwin Sharvill NEW
Izzy T SchemmerBrazilBernardo Dominic QUALIFIED
Ricardo J IturbideCanadaOnyama Limba PROPOSAL
Emily M IturbideItalyAmy Elsner RENEWAL
Maisha E StensethAustraliaElwin Sharvill UNQUALIFIED
Johnson X OldroydCanadaXuxue Feng PROPOSAL
Nicolas N RimBrazilAmy Elsner RENEWAL
Rodrigues U GarufiRussiaIoni Bowcher RENEWAL
Juan U WieserFranceXuxue Feng UNQUALIFIED
Jeanfrancois W StensethFranceAnna Fali NEW
Murillo C NestleRussiaIoni Bowcher RENEWAL
Jennifer J RutaCanadaStephen Shaw NEGOTIATION
Aditya J BowleyUnited KingdomIvan Magalhaes UNQUALIFIED
Maisha Y GauchoSpainAnna Fali PROPOSAL
Leon A CaudyGermanyBernardo Dominic QUALIFIED
David E KolmetzJapanBernardo Dominic RENEWAL
Aruna F OstroskySpainBernardo Dominic QUALIFIED
Chavez X WaycottArgentinaAnna Fali UNQUALIFIED
Frozen Columns
Name
Nicolas C Iturbide
Deepesh J Marrier
Adams P Rim
Adams F Campain
Octavia L Darakjy
Jones H Stockham
David D Figeroa
Aditya K Schemmer
Maria K Gaucho
Smith D Briddick
Stacey O Kolmetz
Clifford Q Shinko
Kaitlin N Malet
Mujtaba X Marrier
Aditya C Nestle
Jones C Dilliard
Isabel Y Caldarera
Maisha G Kusko
Claire Y Bolognia
Juan J Bowley
Cody H Bowley
Juan E Vocelka
Misaki J Perin
Ivar C Doe
Juan V Nestle
Antonio M Kolmetz
Costa D Gaucho
Costa L Butt
Kaitlin H Chui
Mayumi Z Campain
Deepesh G Gaucho
Maisha U Butt
Maria A Chui
Misaki C Poquette
Adams D Flosi
Darci M Iturbide
Stacey J Figeroa
Francesco L Glick
Ricardo M Marrier
Kadeem V Wieser
Isabel E Glick
Faith V Vocelka
Mujtaba M Foller
Morrow U Bowley
Jones G Sergi
Maria S Dilliard
Munro S Nestle
Emily J Paprocki
Emily V Royster
Aditya N Bowley
IdCountryDate
1000France2024-06-10
1001Germany2024-06-22
1002France2024-06-02
1003Brazil2024-06-01
1004Germany2024-05-29
1005Brazil2024-05-30
1006Spain2024-06-05
1007Brazil2024-06-21
1008Canada2024-06-02
1009Russia2024-06-09
1010Canada2024-06-14
1011Japan2024-06-10
1012France2024-06-18
1013Italy2024-05-27
1014India2024-06-12
1015Spain2024-05-31
1016United Kingdom2024-06-05
1017Germany2024-05-30
1018Spain2024-06-09
1019France2024-06-06
1020Germany2024-06-24
1021United Kingdom2024-05-29
1022Argentina2024-05-29
1023Australia2024-06-16
1024United Kingdom2024-06-19
1025France2024-06-15
1026Italy2024-06-10
1027Italy2024-06-23
1028Japan2024-06-06
1029Japan2024-06-10
1030Australia2024-06-10
1031Russia2024-06-15
1032Brazil2024-06-15
1033Argentina2024-05-30
1034Japan2024-06-18
1035Australia2024-05-30
1036Russia2024-06-17
1037India2024-05-28
1038Brazil2024-05-27
1039France2024-06-07
1040Argentina2024-06-10
1041Italy2024-06-09
1042India2024-06-08
1043Argentina2024-06-13
1044India2024-06-04
1045Argentina2024-06-07
1046Australia2024-06-23
1047Japan2024-05-31
1048United Kingdom2024-06-19
1049Germany2024-06-10

On-Demand Data

NameIdCountryDate
Chavez M Sergi1000Germany2024-06-12
Jefferson M Gillian1001United Kingdom2024-06-19
Kaitlin K Gaucho1002Japan2024-06-01
Izzy A Slusarski1003India2024-06-22
Claire Q Shinko1004Germany2024-05-26
Alejandro W Stenseth1005Brazil2024-06-04
Ashley P Caudy1006Brazil2024-06-07
David K Paprocki1007India2024-06-14
Darci G Nestle1008Canada2024-06-17
Claire C Iturbide1009Argentina2024-06-05
Stacey F Rim1010Russia2024-06-02
Izzy P Foller1011Australia2024-06-18
David J Garufi1012Russia2024-06-11
Tony W Wieser1013Japan2024-06-12
Aditya Y Shinko1014France2024-06-17
Silvio H Ferencz1015India2024-06-03
Antonio D Butt1016Russia2024-06-20
Johnson P Garufi1017Australia2024-05-28
Johnson N Poquette1018Australia2024-06-17
Adams M Venere1019India2024-06-17
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aditya G PerinArgentinaIvan Magalhaes UNQUALIFIED
Ricardo K WaycottBrazilBernardo Dominic NEGOTIATION
Murillo N VocelkaFranceStephen Shaw NEGOTIATION
Isabel M GillianGermanyIvan Magalhaes PROPOSAL
Johnson O BriddickCanadaIvan Magalhaes NEGOTIATION
Kadeem Y MorascaSpainIvan Magalhaes PROPOSAL
Octavia B FlosiSpainOnyama Limba NEGOTIATION
Alejandro K VenereRussiaXuxue Feng UNQUALIFIED
Kaitlin K BowleyGermanyBernardo Dominic NEW
Aika U KuskoRussiaXuxue Feng PROPOSAL
Jeanfrancois O RutaUnited KingdomElwin Sharvill NEGOTIATION
Mayumi K VocelkaCanadaAmy Elsner RENEWAL
Misaki V StensethJapanStephen Shaw UNQUALIFIED
Clifford H StensethCanadaIoni Bowcher PROPOSAL
Clifford U StensethJapanIvan Magalhaes PROPOSAL
Clifford V ShinkoUnited KingdomAmy Elsner PROPOSAL
Emily F SergiRussiaOnyama Limba QUALIFIED
Adams C SchemmerItalyStephen Shaw RENEWAL
Adams A NestleUnited KingdomXuxue Feng NEW
Leon B FollerUnited KingdomOnyama Limba NEGOTIATION
Francesco Y IturbideUnited KingdomStephen Shaw RENEWAL
Johnson P WieserUnited KingdomAmy Elsner RENEWAL
Johnson D MaletItalyIvan Magalhaes NEGOTIATION
Jefferson G StockhamRussiaIoni Bowcher RENEWAL
Ivar K TollnerFranceAsiya Javayant RENEWAL
Tony Y OldroydRussiaXuxue Feng NEW
Clifford P KuskoBrazilXuxue Feng QUALIFIED
Octavia E AlbaresRussiaAnna Fali PROPOSAL
Arvin Z DarakjyFranceOnyama Limba PROPOSAL
Tony N BologniaIndiaStephen Shaw PROPOSAL
Rodrigues R ChuiBrazilAnna Fali UNQUALIFIED
Deepesh K MorascaGermanyAsiya Javayant PROPOSAL
Juan J MacleadFranceAnna Fali NEGOTIATION
Kaitlin J DilliardGermanyElwin Sharvill UNQUALIFIED
Kadeem W BriddickArgentinaAmy Elsner QUALIFIED
Stacey V PaprockiIndiaAsiya Javayant UNQUALIFIED
Morrow Q OldroydUnited KingdomAsiya Javayant PROPOSAL
Leja J VocelkaRussiaAnna Fali PROPOSAL
Costa R FerenczFranceAsiya Javayant PROPOSAL
Juan O MarrierArgentinaAsiya Javayant PROPOSAL

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