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
Johnson G MaletJapanOnyama Limba NEW
Emily Q GauchoArgentinaAnna Fali UNQUALIFIED
Murillo A NestleAustraliaElwin Sharvill NEW
Ivar W FigeroaRussiaAnna Fali PROPOSAL
Izzy A VenereRussiaAnna Fali RENEWAL
Octavia M WhobreyAustraliaStephen Shaw QUALIFIED
Ricardo F SlusarskiRussiaXuxue Feng RENEWAL
Tony X BriddickItalyAmy Elsner RENEWAL
Kadeem T BowleySpainAmy Elsner NEGOTIATION
Stacey C GillianIndiaElwin Sharvill PROPOSAL
Silvio V WaycottRussiaStephen Shaw QUALIFIED
Nicolas I FigeroaItalyAmy Elsner RENEWAL
Isabel N PoquetteRussiaOnyama Limba NEGOTIATION
Arvin K CaldareraAustraliaIoni Bowcher NEGOTIATION
Ricardo P FollerBrazilIvan Magalhaes NEGOTIATION
Izzy A DarakjyIndiaElwin Sharvill RENEWAL
Misaki F CaldareraIndiaBernardo Dominic NEW
Octavia N TollnerArgentinaBernardo Dominic NEGOTIATION
Alejandro T NestleBrazilElwin Sharvill NEGOTIATION
Stacey T GlickAustraliaOnyama Limba RENEWAL
Costa E GarufiJapanAmy Elsner UNQUALIFIED
Mayumi E AmigonItalyAnna Fali QUALIFIED
Sinclair O SlusarskiUnited KingdomAnna Fali UNQUALIFIED
Jones B DilliardAustraliaAnna Fali NEW
Morrow Q GarufiUnited KingdomBernardo Dominic QUALIFIED
Tony D BowleyCanadaAsiya Javayant PROPOSAL
Costa E RutaSpainIoni Bowcher RENEWAL
Adams W VocelkaFranceAnna Fali RENEWAL
Jefferson Y WhobreyFranceOnyama Limba PROPOSAL
Darci Q InouyeSpainIvan Magalhaes RENEWAL
Costa C TollnerJapanAnna Fali NEGOTIATION
Octavia W SaylorsFranceBernardo Dominic RENEWAL
Jefferson M DilliardFranceAnna Fali PROPOSAL
Leja O DoeCanadaBernardo Dominic RENEWAL
Jones C SchemmerIndiaAsiya Javayant NEW
Rodrigues Q CaudySpainIoni Bowcher PROPOSAL
Jefferson L DilliardCanadaIoni Bowcher QUALIFIED
Alejandro I ShinkoItalyBernardo Dominic NEW
Ashley U PerinUnited KingdomAnna Fali UNQUALIFIED
Maisha B PoquetteFranceIvan Magalhaes PROPOSAL
Ashley P SlusarskiUnited KingdomIvan Magalhaes QUALIFIED
Sinclair Y MacleadIndiaBernardo Dominic NEW
Chavez Y MarrierRussiaIoni Bowcher QUALIFIED
Darci C TollnerRussiaIoni Bowcher UNQUALIFIED
Smith O PaprockiFranceOnyama Limba RENEWAL
Salvatore B PaprockiItalyIoni Bowcher UNQUALIFIED
Leon K AmigonUnited KingdomElwin Sharvill NEGOTIATION
Sinclair Z CaldareraItalyAsiya Javayant NEGOTIATION
Emily U AlbaresBrazilAnna Fali UNQUALIFIED
Aika D FollerFranceIoni Bowcher NEW
Horizontal
NameCountryRepresentativeStatus
Julie I WhobreyRussiaAnna Fali NEW
Antonio J CampainRussiaAnna Fali RENEWAL
Kadeem G CampainJapanAmy Elsner RENEWAL
Sinclair B WieserJapanAsiya Javayant UNQUALIFIED
Kadeem B OstroskyArgentinaAmy Elsner RENEWAL
Darci W CaudySpainOnyama Limba PROPOSAL
Deepesh B GlickBrazilStephen Shaw RENEWAL
Salvatore X InouyeArgentinaIvan Magalhaes UNQUALIFIED
Adams D BowleyRussiaStephen Shaw NEW
Costa G GarufiBrazilStephen Shaw NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Silvio G WhobreyFrance2024-05-23Feiner Bros UNQUALIFIED12Asiya Javayant
1001David Z ShinkoCanada2024-05-21Feltz Printing Service RENEWAL90Stephen Shaw
1002Silvio J ChuiFrance2024-06-12Morlong Associates PROPOSAL61Anna Fali
1003Ashley T PoquetteUnited Kingdom2024-06-12Benton, John B Jr PROPOSAL71Ivan Magalhaes
1004Izzy L DilliardGermany2024-06-09King, Christopher A Esq RENEWAL81Xuxue Feng
1005Emily B RutaItaly2024-06-04Buckley Miller Wright UNQUALIFIED25Stephen Shaw
1006Aruna J RutaRussia2024-05-21Morlong Associates QUALIFIED2Bernardo Dominic
1007Jones S VenereItaly2024-06-04Feiner Bros RENEWAL74Ivan Magalhaes
1008Jennifer W AlbaresUnited Kingdom2024-05-27Buckley Miller Wright NEGOTIATION54Asiya Javayant
1009Octavia Y FollerJapan2024-06-08Printing Dimensions QUALIFIED52Amy Elsner
1010Smith P SlusarskiItaly2024-06-16Rousseaux, Michael Esq PROPOSAL16Stephen Shaw
1011Leon V CampainIndia2024-05-23Morlong Associates PROPOSAL49Ioni Bowcher
1012Deepesh A StockhamSpain2024-06-02King, Christopher A Esq QUALIFIED69Asiya Javayant
1013Stacey S MarrierAustralia2024-06-05Chapman, Ross E Esq NEW77Stephen Shaw
1014Alejandro S TollnerFrance2024-06-10Buckley Miller Wright NEGOTIATION72Elwin Sharvill
1015Faith Y BriddickBrazil2024-06-14Truhlar And Truhlar Attys QUALIFIED72Ivan Magalhaes
1016Silvio V SlusarskiJapan2024-05-25Truhlar And Truhlar Attys UNQUALIFIED93Ivan Magalhaes
1017Murillo I NickaRussia2024-06-08Chanay, Jeffrey A Esq PROPOSAL25Ivan Magalhaes
1018Darci Q RutaArgentina2024-06-04Chemel, James L Cpa QUALIFIED55Onyama Limba
1019Jeanfrancois G SaylorsSpain2024-06-02Buckley Miller Wright NEW4Anna Fali
1020Aruna W NestleFrance2024-06-09Buckley Miller Wright QUALIFIED92Onyama Limba
1021Ivar X MaletItaly2024-05-30Chanay, Jeffrey A Esq PROPOSAL52Onyama Limba
1022Aditya F GarufiFrance2024-05-29Feiner Bros QUALIFIED26Bernardo Dominic
1023Faith P WieserFrance2024-05-18Chemel, James L Cpa UNQUALIFIED2Ioni Bowcher
1024Ivar P MaletRussia2024-06-06Truhlar And Truhlar Attys QUALIFIED44Anna Fali
1025Clifford X OstroskyArgentina2024-05-24Chanay, Jeffrey A Esq QUALIFIED57Ioni Bowcher
1026Chavez R RimJapan2024-06-16Printing Dimensions NEGOTIATION91Amy Elsner
1027Jennifer X MaletFrance2024-06-13Feltz Printing Service NEW9Ioni Bowcher
1028Nicolas D IturbideGermany2024-06-08Commercial Press UNQUALIFIED9Elwin Sharvill
1029Jeanfrancois S IturbideUnited Kingdom2024-06-01Chemel, James L Cpa NEGOTIATION99Amy Elsner
1030Francesco A RulapaughSpain2024-06-01Chapman, Ross E Esq UNQUALIFIED31Amy Elsner
1031Tony T BologniaFrance2024-05-19Chanay, Jeffrey A Esq PROPOSAL34Onyama Limba
1032Kadeem Z GauchoCanada2024-05-30Buckley Miller Wright NEGOTIATION27Xuxue Feng
1033Jefferson W ButtIndia2024-05-18Buckley Miller Wright NEW38Ioni Bowcher
1034Greenwood V RulapaughIndia2024-06-04Benton, John B Jr UNQUALIFIED8Ivan Magalhaes
1035Murillo K NestleIndia2024-06-15Rangoni Of Florence PROPOSAL42Asiya Javayant
1036Kadeem B SlusarskiFrance2024-06-05Commercial Press RENEWAL59Onyama Limba
1037Mayumi H AlbaresAustralia2024-06-12Rangoni Of Florence RENEWAL25Elwin Sharvill
1038Nicolas L FollerRussia2024-06-09Buckley Miller Wright NEW77Ioni Bowcher
1039Arvin H CampainArgentina2024-05-22Feltz Printing Service RENEWAL43Ioni Bowcher
1040Claire Z RutaArgentina2024-05-18Dorl, James J Esq RENEWAL44Asiya Javayant
1041Misaki H ButtJapan2024-06-15Chemel, James L Cpa PROPOSAL56Amy Elsner
1042Aditya R WieserArgentina2024-06-16Chemel, James L Cpa RENEWAL53Onyama Limba
1043Stacey H RutaIndia2024-06-01Buckley Miller Wright UNQUALIFIED24Anna Fali
1044Leon E MorascaSpain2024-05-30Dorl, James J Esq NEW27Anna Fali
1045Arvin A VocelkaBrazil2024-06-01Rangoni Of Florence UNQUALIFIED29Ivan Magalhaes
1046Chavez I InouyeAustralia2024-06-14Chapman, Ross E Esq QUALIFIED31Stephen Shaw
1047Kadeem O GillianRussia2024-05-24Rousseaux, Michael Esq NEGOTIATION79Xuxue Feng
1048Mujtaba Y FollerJapan2024-06-06Feltz Printing Service RENEWAL99Anna Fali
1049Wickens X OldroydSpain2024-05-30Morlong Associates PROPOSAL92Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Tony K SaylorsArgentinaStephen Shaw QUALIFIED
Jones N SergiAustraliaOnyama Limba NEGOTIATION
Tony O MacleadBrazilAmy Elsner NEGOTIATION
Mayumi X WaycottAustraliaAsiya Javayant NEGOTIATION
Johnson S RimFranceAsiya Javayant NEGOTIATION
Kaitlin M VocelkaSpainXuxue Feng RENEWAL
Jefferson Z MaletGermanyXuxue Feng NEGOTIATION
Ivar C FigeroaItalyOnyama Limba NEGOTIATION
Leon Y GauchoBrazilAnna Fali NEGOTIATION
Silvio O MarrierRussiaElwin Sharvill UNQUALIFIED
Darci H WaycottIndiaAsiya Javayant NEGOTIATION
Juan B BowleyBrazilAmy Elsner PROPOSAL
Adams W AmigonCanadaStephen Shaw RENEWAL
Silvio E PoquetteBrazilAnna Fali PROPOSAL
Kaitlin W SlusarskiUnited KingdomIoni Bowcher NEGOTIATION
Jeanfrancois L BowleyBrazilStephen Shaw NEGOTIATION
Costa Q SlusarskiUnited KingdomAnna Fali RENEWAL
Leon I GillianArgentinaStephen Shaw RENEWAL
Maisha Z PerinJapanElwin Sharvill NEGOTIATION
Stacey O RimJapanAsiya Javayant PROPOSAL
Claire Y SaylorsSpainElwin Sharvill NEW
Smith M AlbaresUnited KingdomAmy Elsner QUALIFIED
Johnson C BologniaBrazilIvan Magalhaes QUALIFIED
Aruna X ButtItalyIvan Magalhaes PROPOSAL
Mujtaba N DarakjyCanadaIvan Magalhaes NEW
Darci Z MorascaIndiaBernardo Dominic NEW
Leon A RulapaughRussiaXuxue Feng RENEWAL
James E OldroydAustraliaOnyama Limba NEGOTIATION
Izzy I RutaRussiaAsiya Javayant PROPOSAL
Mujtaba R VocelkaRussiaAsiya Javayant RENEWAL
Aika V RutaGermanyElwin Sharvill QUALIFIED
Aruna V FerenczFranceBernardo Dominic PROPOSAL
Stacey A BologniaArgentinaAmy Elsner NEGOTIATION
Nicolas O BologniaArgentinaStephen Shaw NEGOTIATION
Nicolas K GarufiFranceAnna Fali RENEWAL
Claire C DoeJapanAsiya Javayant QUALIFIED
Maria X KolmetzJapanXuxue Feng QUALIFIED
Leja R FlosiCanadaAsiya Javayant NEW
Aditya E MorascaCanadaStephen Shaw QUALIFIED
Stacey I KolmetzGermanyIoni Bowcher NEW
Kadeem O WhobreyIndiaAmy Elsner NEW
Cody N GarufiItalyXuxue Feng NEW
Aruna Q RimArgentinaElwin Sharvill NEGOTIATION
Chavez H DoeJapanAmy Elsner QUALIFIED
Jefferson R AmigonJapanAsiya Javayant RENEWAL
Mujtaba D WhobreyGermanyAnna Fali UNQUALIFIED
Jefferson V SaylorsSpainElwin Sharvill RENEWAL
Rodrigues D CampainGermanyElwin Sharvill NEW
Faith I VenereJapanAmy Elsner QUALIFIED
Francesco W SaylorsBrazilAnna Fali UNQUALIFIED
Frozen Columns
Name
Octavia Y Tollner
Aditya M Albares
Octavia H Tollner
Jennifer E Darakjy
Claire J Garufi
Maria I Dilliard
Julie J Malet
Johnson J Kusko
Misaki D Glick
Isabel A Doe
Kaitlin J Stenseth
Kadeem E Figeroa
Smith E Nicka
Faith P Doe
Octavia H Paprocki
Greenwood K Iturbide
Salvatore E Ferencz
Izzy Y Gaucho
Claire R Nestle
Arvin C Bolognia
Aditya P Gaucho
Salvatore Y Garufi
Murillo I Wieser
Salvatore G Oldroyd
Greenwood Z Wieser
Leon A Butt
Julie D Malet
Mayumi M Paprocki
Adams X Nicka
Aruna S Stockham
Jefferson H Oldroyd
Leja R Venere
Ivar C Inouye
Darci N Darakjy
Maisha W Amigon
Adams P Stockham
Adams C Marrier
Sinclair Y Morasca
Greenwood C Figeroa
Chavez I Kusko
Stacey Z Butt
Cody N Bolognia
Aika F Wieser
Arvin F Shinko
Mayumi V Nicka
Morrow L Albares
Mujtaba T Figeroa
Cody Z Wieser
Johnson F Kusko
Murillo G Morasca
IdCountryDate
1000Australia2024-06-08
1001United Kingdom2024-05-25
1002Spain2024-06-06
1003France2024-05-29
1004Japan2024-05-30
1005Brazil2024-06-06
1006India2024-05-27
1007Argentina2024-06-11
1008France2024-05-26
1009United Kingdom2024-06-14
1010Australia2024-06-01
1011Italy2024-06-01
1012Spain2024-06-08
1013Italy2024-06-02
1014Brazil2024-05-26
1015Australia2024-06-05
1016Australia2024-06-03
1017Japan2024-06-07
1018France2024-05-27
1019Japan2024-06-07
1020United Kingdom2024-06-08
1021Japan2024-06-03
1022United Kingdom2024-05-30
1023France2024-06-03
1024Spain2024-06-16
1025Italy2024-05-20
1026Australia2024-06-10
1027United Kingdom2024-05-19
1028Australia2024-05-26
1029Russia2024-05-31
1030United Kingdom2024-05-28
1031Canada2024-05-24
1032Russia2024-06-03
1033India2024-05-19
1034Spain2024-05-26
1035United Kingdom2024-05-22
1036Russia2024-06-16
1037Spain2024-06-05
1038India2024-06-10
1039France2024-06-14
1040Brazil2024-06-08
1041Germany2024-06-06
1042Germany2024-06-09
1043Canada2024-06-01
1044Italy2024-05-19
1045Japan2024-05-18
1046Argentina2024-05-19
1047Australia2024-06-16
1048Australia2024-05-19
1049Spain2024-05-30

On-Demand Data

NameIdCountryDate
Antonio V Perin1000Japan2024-05-22
Antonio Q Tollner1001Russia2024-05-30
Aruna G Gillian1002Argentina2024-06-04
Cody U Gaucho1003Brazil2024-06-09
Stacey J Briddick1004Brazil2024-05-20
Jennifer P Amigon1005Spain2024-05-28
Wickens D Kusko1006Germany2024-05-19
Wickens N Tollner1007Australia2024-06-07
Arvin W Ferencz1008Brazil2024-05-24
Greenwood L Venere1009Canada2024-05-19
Leja C Royster1010Spain2024-05-31
Alejandro T Albares1011Germany2024-06-14
Smith W Chui1012Argentina2024-05-28
James X Vocelka1013Italy2024-06-09
Mujtaba O Gaucho1014Germany2024-06-06
Isabel I Chui1015France2024-05-25
Adams H Waycott1016Australia2024-06-01
Sinclair Z Iturbide1017Italy2024-06-07
Murillo P Ostrosky1018Russia2024-05-31
Rodrigues B Oldroyd1019Japan2024-06-08
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Salvatore Y DoeUnited KingdomAmy Elsner QUALIFIED
Misaki N PerinItalyIvan Magalhaes RENEWAL
Izzy A SergiFranceBernardo Dominic QUALIFIED
Izzy B BriddickFranceOnyama Limba PROPOSAL
Kadeem H StockhamFranceXuxue Feng NEW
Darci F VenereFranceBernardo Dominic UNQUALIFIED
Maisha W InouyeArgentinaAnna Fali UNQUALIFIED
Chavez V InouyeCanadaXuxue Feng RENEWAL
Aruna O FigeroaBrazilStephen Shaw NEW
Costa P RimUnited KingdomBernardo Dominic RENEWAL
Johnson H BologniaRussiaAnna Fali UNQUALIFIED
Murillo Y CaldareraCanadaIoni Bowcher RENEWAL
Rodrigues W FerenczUnited KingdomAsiya Javayant PROPOSAL
Francesco G FigeroaCanadaStephen Shaw UNQUALIFIED
Greenwood H AlbaresItalyIvan Magalhaes RENEWAL
Deepesh Q MaletSpainXuxue Feng RENEWAL
Jennifer L MaletCanadaOnyama Limba UNQUALIFIED
Stacey Y ButtItalyAmy Elsner RENEWAL
Octavia X FigeroaJapanElwin Sharvill UNQUALIFIED
Jefferson I RimRussiaStephen Shaw PROPOSAL
Misaki W KuskoUnited KingdomAnna Fali RENEWAL
Julie C MarrierGermanyXuxue Feng PROPOSAL
Murillo V SergiJapanIvan Magalhaes PROPOSAL
Jefferson I RimBrazilIvan Magalhaes NEGOTIATION
James R WieserAustraliaOnyama Limba NEGOTIATION
Ivar W WhobreyItalyAmy Elsner NEW
Leja R KolmetzJapanAnna Fali NEW
Leja W AlbaresRussiaIoni Bowcher PROPOSAL
Juan L MaletGermanyAsiya Javayant NEGOTIATION
Silvio T BowleyAustraliaIoni Bowcher PROPOSAL
Salvatore I OstroskyUnited KingdomBernardo Dominic PROPOSAL
Kaitlin F SchemmerSpainIoni Bowcher NEGOTIATION
Jones C VenereBrazilAsiya Javayant RENEWAL
Jefferson P RimAustraliaAmy Elsner NEGOTIATION
Smith F SergiSpainIvan Magalhaes QUALIFIED
Antonio M AlbaresJapanBernardo Dominic NEGOTIATION
Leja B CaudyCanadaAmy Elsner NEGOTIATION
Izzy W FigeroaSpainAnna Fali RENEWAL
Kadeem Y CampainArgentinaAnna Fali UNQUALIFIED
Costa R GillianBrazilXuxue Feng 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>