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
Kadeem H SlusarskiRussiaOnyama Limba NEW
Jeanfrancois U FollerGermanyXuxue Feng QUALIFIED
Arvin V GauchoCanadaAsiya Javayant RENEWAL
Emily X KolmetzSpainBernardo Dominic RENEWAL
Salvatore I TollnerUnited KingdomAsiya Javayant PROPOSAL
Jefferson M RoysterIndiaElwin Sharvill NEW
Leja R MorascaArgentinaXuxue Feng NEW
Ricardo M ShinkoFranceAsiya Javayant NEGOTIATION
Mayumi Y FigeroaRussiaIoni Bowcher QUALIFIED
Jennifer D KolmetzJapanElwin Sharvill NEGOTIATION
Faith F GarufiAustraliaBernardo Dominic NEGOTIATION
Maisha H WieserItalyBernardo Dominic RENEWAL
Ricardo G PoquetteRussiaBernardo Dominic RENEWAL
Ricardo T MarrierUnited KingdomStephen Shaw UNQUALIFIED
Nicolas M NestleAustraliaAsiya Javayant PROPOSAL
Arvin Q TollnerSpainAsiya Javayant PROPOSAL
James U StockhamCanadaXuxue Feng NEW
Maisha Z CampainArgentinaElwin Sharvill NEW
Deepesh Z GauchoUnited KingdomBernardo Dominic QUALIFIED
Kaitlin L RutaItalyIvan Magalhaes NEW
Antonio I PaprockiArgentinaXuxue Feng UNQUALIFIED
Mayumi R FigeroaArgentinaAnna Fali NEGOTIATION
Clifford G PoquetteFranceBernardo Dominic QUALIFIED
Jeanfrancois W NestleSpainIvan Magalhaes UNQUALIFIED
Jeanfrancois W CaudyJapanStephen Shaw QUALIFIED
Kaitlin P OstroskyAustraliaIoni Bowcher RENEWAL
Misaki X KuskoAustraliaIoni Bowcher PROPOSAL
Misaki C RimRussiaXuxue Feng QUALIFIED
Juan B FlosiSpainXuxue Feng NEW
Maisha X FerenczItalyXuxue Feng PROPOSAL
Wickens T GlickJapanStephen Shaw PROPOSAL
Leja I KuskoAustraliaAnna Fali QUALIFIED
Greenwood H RoysterGermanyStephen Shaw UNQUALIFIED
Izzy T CampainBrazilXuxue Feng RENEWAL
Aruna W WieserJapanAmy Elsner QUALIFIED
Jeanfrancois Q GillianRussiaOnyama Limba NEGOTIATION
Ricardo N SchemmerAustraliaIvan Magalhaes QUALIFIED
Deepesh J AmigonItalyStephen Shaw UNQUALIFIED
Ricardo U DilliardUnited KingdomIvan Magalhaes QUALIFIED
Claire P BowleyCanadaXuxue Feng PROPOSAL
Deepesh O KuskoArgentinaAsiya Javayant NEGOTIATION
Jennifer M WhobreyJapanBernardo Dominic QUALIFIED
Darci M BowleyAustraliaBernardo Dominic NEGOTIATION
Julie V ShinkoRussiaXuxue Feng RENEWAL
Juan G MaletFranceIvan Magalhaes PROPOSAL
Adams P DilliardCanadaIvan Magalhaes QUALIFIED
Faith L PerinGermanyStephen Shaw NEGOTIATION
Mujtaba Y NestleUnited KingdomBernardo Dominic NEW
Kaitlin L BowleySpainXuxue Feng UNQUALIFIED
Isabel C ButtArgentinaBernardo Dominic NEW
Horizontal
NameCountryRepresentativeStatus
Emily F RulapaughFranceIvan Magalhaes RENEWAL
Leja I OstroskyAustraliaBernardo Dominic NEW
Claire Q WaycottCanadaAnna Fali NEGOTIATION
Clifford K CampainUnited KingdomIoni Bowcher NEGOTIATION
Salvatore N PerinAustraliaAsiya Javayant QUALIFIED
Darci W KolmetzUnited KingdomOnyama Limba PROPOSAL
Adams U GillianSpainAnna Fali UNQUALIFIED
Jeanfrancois N ShinkoItalyBernardo Dominic QUALIFIED
Ashley J GauchoJapanAmy Elsner QUALIFIED
Maisha Q RulapaughAustraliaXuxue Feng UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Izzy Z WhobreyItaly2024-05-19King, Christopher A Esq UNQUALIFIED13Anna Fali
1001Adams B ButtGermany2024-05-29Chapman, Ross E Esq UNQUALIFIED5Onyama Limba
1002Leon A DarakjyRussia2024-05-19Feiner Bros PROPOSAL72Ivan Magalhaes
1003James I WieserFrance2024-05-18Benton, John B Jr NEW28Asiya Javayant
1004Jones Z WhobreyAustralia2024-05-26Chapman, Ross E Esq UNQUALIFIED26Bernardo Dominic
1005Costa X BologniaJapan2024-05-11Rousseaux, Michael Esq PROPOSAL18Bernardo Dominic
1006Juan T RimFrance2024-05-11King, Christopher A Esq NEW26Asiya Javayant
1007Maria G ShinkoCanada2024-05-07Printing Dimensions PROPOSAL50Elwin Sharvill
1008Emily M ButtGermany2024-05-10Chanay, Jeffrey A Esq PROPOSAL39Stephen Shaw
1009Aditya G IturbideAustralia2024-05-29Morlong Associates RENEWAL76Xuxue Feng
1010Chavez U ChuiArgentina2024-05-20Chanay, Jeffrey A Esq NEGOTIATION43Onyama Limba
1011Octavia D FerenczRussia2024-05-15Printing Dimensions NEGOTIATION68Anna Fali
1012Jennifer Z SlusarskiArgentina2024-05-16Commercial Press NEGOTIATION65Elwin Sharvill
1013Aika Z NestleRussia2024-06-03Rousseaux, Michael Esq NEW26Onyama Limba
1014Munro N StockhamUnited Kingdom2024-06-02Chemel, James L Cpa RENEWAL17Asiya Javayant
1015Emily B DarakjyGermany2024-05-11Feltz Printing Service PROPOSAL90Amy Elsner
1016Claire N WhobreyFrance2024-06-04Dorl, James J Esq NEW43Ivan Magalhaes
1017Rodrigues F ShinkoCanada2024-05-07Chanay, Jeffrey A Esq NEGOTIATION5Asiya Javayant
1018Faith V TollnerFrance2024-05-25King, Christopher A Esq PROPOSAL58Elwin Sharvill
1019Costa A WhobreyItaly2024-05-16Chapman, Ross E Esq NEW74Bernardo Dominic
1020James C MorascaRussia2024-05-13Chemel, James L Cpa NEGOTIATION34Bernardo Dominic
1021David G MorascaJapan2024-05-11Commercial Press PROPOSAL35Asiya Javayant
1022Maria C SlusarskiIndia2024-06-04Chemel, James L Cpa RENEWAL25Xuxue Feng
1023David J WhobreyRussia2024-05-08Chemel, James L Cpa PROPOSAL12Bernardo Dominic
1024Kadeem Z TollnerBrazil2024-05-20Rangoni Of Florence RENEWAL6Ivan Magalhaes
1025Stacey C InouyeArgentina2024-05-27Chapman, Ross E Esq PROPOSAL92Ivan Magalhaes
1026Ashley F InouyeSpain2024-06-04Commercial Press UNQUALIFIED72Stephen Shaw
1027Leon R FerenczRussia2024-05-22Chanay, Jeffrey A Esq UNQUALIFIED14Anna Fali
1028Isabel S MarrierUnited Kingdom2024-05-11Benton, John B Jr NEW56Asiya Javayant
1029Jefferson F MorascaJapan2024-05-15Commercial Press UNQUALIFIED98Stephen Shaw
1030Francesco T ButtFrance2024-05-16Chapman, Ross E Esq QUALIFIED43Bernardo Dominic
1031Johnson R PaprockiJapan2024-06-01Morlong Associates NEGOTIATION14Amy Elsner
1032Kaitlin E BowleySpain2024-05-25Truhlar And Truhlar Attys NEGOTIATION43Onyama Limba
1033Stacey Z MaletAustralia2024-05-20Printing Dimensions PROPOSAL3Ioni Bowcher
1034Salvatore X KuskoCanada2024-05-26Truhlar And Truhlar Attys QUALIFIED12Amy Elsner
1035Mujtaba D BriddickSpain2024-05-21King, Christopher A Esq QUALIFIED36Elwin Sharvill
1036Mujtaba T WieserAustralia2024-05-21Benton, John B Jr QUALIFIED91Xuxue Feng
1037Arvin H WaycottArgentina2024-05-06Printing Dimensions UNQUALIFIED5Xuxue Feng
1038Johnson T NickaArgentina2024-05-27Chapman, Ross E Esq NEGOTIATION71Bernardo Dominic
1039Jeanfrancois N StensethUnited Kingdom2024-05-11Morlong Associates QUALIFIED72Ivan Magalhaes
1040Alejandro D SaylorsBrazil2024-05-25Feltz Printing Service NEW61Elwin Sharvill
1041Deepesh A VocelkaUnited Kingdom2024-05-12Benton, John B Jr QUALIFIED41Elwin Sharvill
1042Julie A MarrierFrance2024-05-15Commercial Press UNQUALIFIED81Ivan Magalhaes
1043Maria E NickaAustralia2024-05-14Rangoni Of Florence NEGOTIATION81Ioni Bowcher
1044Stacey S CaldareraCanada2024-05-31Benton, John B Jr QUALIFIED43Xuxue Feng
1045Sinclair I FollerRussia2024-05-23Feiner Bros RENEWAL56Anna Fali
1046Maria N BologniaIndia2024-05-31Benton, John B Jr NEGOTIATION95Asiya Javayant
1047Aika B FerenczItaly2024-05-26Commercial Press QUALIFIED88Xuxue Feng
1048Johnson H TollnerIndia2024-05-18Rousseaux, Michael Esq QUALIFIED36Anna Fali
1049Greenwood T InouyeIndia2024-05-25Chanay, Jeffrey A Esq QUALIFIED91Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Faith V InouyeBrazilXuxue Feng UNQUALIFIED
Silvio K InouyeItalyElwin Sharvill RENEWAL
Aika P PerinFranceAsiya Javayant RENEWAL
Faith D CaudyFranceAnna Fali RENEWAL
Adams F AmigonJapanElwin Sharvill RENEWAL
Jeanfrancois L CaudyItalyAmy Elsner NEGOTIATION
Francesco Y DilliardBrazilBernardo Dominic QUALIFIED
Adams A SlusarskiIndiaBernardo Dominic PROPOSAL
Morrow F RoysterRussiaAmy Elsner PROPOSAL
Jones O DarakjyGermanyIvan Magalhaes QUALIFIED
Maisha P AlbaresJapanIvan Magalhaes RENEWAL
Jeanfrancois S StockhamIndiaOnyama Limba NEGOTIATION
Emily J OldroydItalyElwin Sharvill PROPOSAL
Tony A DoeArgentinaBernardo Dominic QUALIFIED
Deepesh K RoysterAustraliaAmy Elsner NEGOTIATION
Jefferson Y GillianGermanyXuxue Feng NEW
Arvin B MarrierRussiaAnna Fali QUALIFIED
Kadeem N FerenczFranceAsiya Javayant PROPOSAL
Ricardo G DoeUnited KingdomIoni Bowcher UNQUALIFIED
Claire Q GillianSpainAmy Elsner NEGOTIATION
James B SergiSpainIoni Bowcher NEGOTIATION
Darci R AlbaresItalyAnna Fali UNQUALIFIED
Cody C PaprockiCanadaAnna Fali PROPOSAL
Aditya F AlbaresGermanyBernardo Dominic PROPOSAL
Aika Y SlusarskiGermanyIvan Magalhaes UNQUALIFIED
Leja U KuskoArgentinaAnna Fali UNQUALIFIED
Aruna D PerinArgentinaBernardo Dominic PROPOSAL
David L RutaJapanOnyama Limba RENEWAL
Adams S RutaItalyXuxue Feng UNQUALIFIED
Aruna M DoeArgentinaIoni Bowcher NEGOTIATION
Adams U IturbideJapanIoni Bowcher PROPOSAL
Chavez X DarakjySpainStephen Shaw PROPOSAL
Jeanfrancois W VocelkaItalyAsiya Javayant UNQUALIFIED
David L MacleadFranceBernardo Dominic NEW
Salvatore S PoquetteItalyOnyama Limba UNQUALIFIED
Darci Q RutaItalyXuxue Feng UNQUALIFIED
Emily F MorascaGermanyIoni Bowcher QUALIFIED
Claire F BowleyBrazilAsiya Javayant PROPOSAL
Isabel V PaprockiSpainStephen Shaw UNQUALIFIED
Kadeem P CaudyGermanyOnyama Limba NEGOTIATION
Chavez A KuskoBrazilOnyama Limba NEW
Clifford Z NestleSpainXuxue Feng PROPOSAL
Leja T GlickJapanOnyama Limba NEW
Darci D StensethJapanIvan Magalhaes RENEWAL
Morrow R CampainRussiaAnna Fali NEW
Julie Y MaletCanadaElwin Sharvill NEW
Wickens B MacleadGermanyOnyama Limba NEW
Tony T WhobreyCanadaAnna Fali NEW
Aika H RutaBrazilIoni Bowcher RENEWAL
Jones P BriddickIndiaAsiya Javayant QUALIFIED
Frozen Columns
Name
Aditya A Waycott
Deepesh G Gaucho
Morrow W Oldroyd
Misaki J Glick
Jefferson A Bolognia
Misaki U Inouye
Leon S Saylors
Clifford P Campain
Leja W Maclead
Nicolas B Garufi
Juan I Darakjy
Nicolas G Malet
Murillo A Schemmer
Nicolas J Figeroa
Octavia A Caudy
Morrow M Glick
Aruna W Shinko
Maria N Saylors
Alejandro J Glick
Morrow N Nicka
Darci A Foller
Aditya N Rim
Leon O Stockham
Mujtaba J Stenseth
Leon H Venere
Emily N Kusko
Tony Z Ruta
Maria W Nicka
Jefferson I Malet
Leja Q Marrier
Costa R Bolognia
James F Gillian
Clifford W Oldroyd
Smith J Garufi
Francesco Q Oldroyd
Octavia C Garufi
Octavia R Morasca
Silvio P Saylors
Maisha A Chui
Deepesh Y Inouye
Juan E Figeroa
Arvin E Doe
Claire R Wieser
Emily Z Oldroyd
Maisha F Nestle
Claire N Doe
Maisha H Shinko
Maria N Marrier
Darci Q Kolmetz
Mayumi N Bowley
IdCountryDate
1000Argentina2024-06-03
1001India2024-05-15
1002Italy2024-05-09
1003Canada2024-05-18
1004India2024-05-18
1005Spain2024-05-13
1006India2024-05-10
1007Argentina2024-05-29
1008Argentina2024-05-12
1009France2024-05-19
1010Brazil2024-05-30
1011Spain2024-05-15
1012Canada2024-05-06
1013United Kingdom2024-05-07
1014Italy2024-05-08
1015India2024-06-04
1016Germany2024-05-18
1017Japan2024-05-22
1018Australia2024-05-10
1019Australia2024-05-22
1020Argentina2024-05-30
1021United Kingdom2024-05-23
1022Japan2024-05-20
1023India2024-05-28
1024Japan2024-05-19
1025Russia2024-06-04
1026United Kingdom2024-05-30
1027Australia2024-05-24
1028France2024-05-23
1029United Kingdom2024-05-18
1030Brazil2024-05-29
1031Germany2024-05-08
1032India2024-05-10
1033Brazil2024-06-01
1034Brazil2024-05-16
1035Brazil2024-05-15
1036Italy2024-05-23
1037United Kingdom2024-05-30
1038Russia2024-05-16
1039Italy2024-05-12
1040United Kingdom2024-06-01
1041Argentina2024-05-16
1042Germany2024-05-31
1043Canada2024-05-11
1044Argentina2024-05-22
1045Spain2024-05-20
1046Italy2024-05-18
1047France2024-05-31
1048Italy2024-05-14
1049France2024-05-20

On-Demand Data

NameIdCountryDate
Wickens O Shinko1000Italy2024-05-20
Jeanfrancois W Nicka1001Italy2024-05-27
Maria I Malet1002Italy2024-05-21
Francesco R Whobrey1003Russia2024-05-24
Silvio C Malet1004Italy2024-05-09
Leon L Caudy1005Germany2024-05-17
Cody Q Malet1006Japan2024-05-12
Stacey D Wieser1007Brazil2024-05-24
Maria R Bowley1008Argentina2024-05-07
Wickens A Nicka1009Canada2024-05-07
Jeanfrancois T Sergi1010Canada2024-05-24
Aika K Vocelka1011Australia2024-05-13
Sinclair P Poquette1012United Kingdom2024-05-06
Costa L Bowley1013Argentina2024-05-23
Ricardo C Perin1014Russia2024-05-09
Tony V Marrier1015Australia2024-06-03
Ricardo Y Sergi1016Brazil2024-05-15
Salvatore H Flosi1017Germany2024-05-09
Francesco D Venere1018Japan2024-05-14
Jones Z Rim1019Australia2024-05-06
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Alejandro N NestleArgentinaIvan Magalhaes NEW
Francesco E MaletAustraliaElwin Sharvill NEGOTIATION
Salvatore D NickaFranceXuxue Feng QUALIFIED
Costa X GillianGermanyElwin Sharvill NEW
Tony S InouyeUnited KingdomIoni Bowcher PROPOSAL
Munro Z OstroskyIndiaOnyama Limba NEW
Aika K CaudyFranceAmy Elsner PROPOSAL
Julie J KuskoIndiaIvan Magalhaes NEW
Maria P BologniaSpainAsiya Javayant NEW
Wickens D GarufiAustraliaStephen Shaw NEGOTIATION
Ashley G InouyeGermanyElwin Sharvill UNQUALIFIED
Misaki E WieserArgentinaXuxue Feng RENEWAL
Jeanfrancois N SchemmerItalyIoni Bowcher QUALIFIED
Darci Q CampainItalyIvan Magalhaes NEW
Wickens Y PaprockiGermanyStephen Shaw QUALIFIED
Ivar R BowleyUnited KingdomStephen Shaw NEW
Munro X VenereCanadaXuxue Feng RENEWAL
James Y MaletAustraliaAnna Fali RENEWAL
Morrow K PaprockiUnited KingdomIoni Bowcher NEW
Ashley O MarrierFranceIvan Magalhaes NEW
Claire A VocelkaArgentinaIvan Magalhaes RENEWAL
Antonio G MacleadUnited KingdomBernardo Dominic NEGOTIATION
Murillo J BowleyUnited KingdomOnyama Limba QUALIFIED
Aruna Q ShinkoUnited KingdomStephen Shaw UNQUALIFIED
Arvin O RimArgentinaOnyama Limba QUALIFIED
Mayumi U AlbaresGermanyElwin Sharvill RENEWAL
Salvatore L PerinRussiaOnyama Limba NEW
Claire B ButtCanadaIvan Magalhaes NEGOTIATION
Wickens I NestleJapanIvan Magalhaes UNQUALIFIED
Claire T MacleadGermanyElwin Sharvill UNQUALIFIED
Emily L FollerFranceOnyama Limba NEGOTIATION
Octavia X BriddickUnited KingdomXuxue Feng NEGOTIATION
Morrow Z ShinkoIndiaAmy Elsner QUALIFIED
Faith Y GauchoFranceBernardo Dominic NEW
Deepesh P RoysterCanadaOnyama Limba NEW
Maria G BologniaJapanBernardo Dominic UNQUALIFIED
Jones L KuskoArgentinaAnna Fali UNQUALIFIED
Aditya I StockhamRussiaIvan Magalhaes PROPOSAL
Jefferson W SaylorsBrazilIoni Bowcher QUALIFIED
Francesco V StockhamSpainIoni Bowcher 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>