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
Adams A ChuiJapanAmy Elsner RENEWAL
Maisha P GillianGermanyElwin Sharvill UNQUALIFIED
Ricardo G NickaBrazilAnna Fali RENEWAL
Aika J DarakjyItalyOnyama Limba PROPOSAL
Leon Y AlbaresGermanyBernardo Dominic QUALIFIED
Maria E BologniaJapanAmy Elsner PROPOSAL
Nicolas A InouyeJapanAnna Fali QUALIFIED
Kaitlin S BriddickBrazilAsiya Javayant UNQUALIFIED
Cody A BowleyItalyIoni Bowcher NEGOTIATION
Mayumi S BriddickCanadaAmy Elsner NEGOTIATION
Kadeem A DarakjyArgentinaOnyama Limba NEW
Mayumi O BriddickGermanyAnna Fali PROPOSAL
Cody W AlbaresAustraliaElwin Sharvill QUALIFIED
Arvin W OldroydRussiaAnna Fali NEW
Claire M WhobreyCanadaAsiya Javayant UNQUALIFIED
Mujtaba V GauchoSpainOnyama Limba PROPOSAL
Chavez J ShinkoFranceElwin Sharvill QUALIFIED
Nicolas B StensethBrazilIoni Bowcher NEGOTIATION
Silvio I WhobreyIndiaXuxue Feng RENEWAL
Chavez J DoeArgentinaAsiya Javayant NEW
David B AlbaresBrazilAnna Fali NEW
Julie Y DarakjyIndiaStephen Shaw RENEWAL
Wickens D WieserSpainStephen Shaw NEW
Aika F SaylorsAustraliaStephen Shaw UNQUALIFIED
Chavez P MacleadIndiaAsiya Javayant QUALIFIED
Sinclair D CaldareraArgentinaAnna Fali PROPOSAL
Rodrigues G AlbaresAustraliaXuxue Feng PROPOSAL
Jeanfrancois C DoeUnited KingdomAmy Elsner NEW
Murillo S RoysterCanadaIoni Bowcher PROPOSAL
Rodrigues C KolmetzSpainElwin Sharvill PROPOSAL
Kadeem J GillianRussiaIoni Bowcher PROPOSAL
Julie V FerenczBrazilAsiya Javayant NEW
Costa G BologniaJapanAsiya Javayant NEGOTIATION
Nicolas M AlbaresArgentinaAsiya Javayant NEW
Alejandro G SlusarskiCanadaOnyama Limba NEW
Ivar N BologniaGermanyIoni Bowcher QUALIFIED
Ashley G PerinSpainXuxue Feng NEW
Morrow F SaylorsUnited KingdomStephen Shaw PROPOSAL
James G IturbideBrazilAmy Elsner QUALIFIED
Misaki J AlbaresBrazilIoni Bowcher NEW
Salvatore G BowleyArgentinaAsiya Javayant UNQUALIFIED
Kadeem A DoeSpainIvan Magalhaes NEW
David D CaldareraBrazilStephen Shaw RENEWAL
Jones V StensethCanadaAsiya Javayant NEW
Ricardo X FlosiCanadaAmy Elsner QUALIFIED
Nicolas C WhobreyAustraliaStephen Shaw NEW
Wickens U SlusarskiCanadaIvan Magalhaes QUALIFIED
Rodrigues P DoeAustraliaAsiya Javayant PROPOSAL
Mujtaba M MaletBrazilAsiya Javayant QUALIFIED
Leon F NickaUnited KingdomAnna Fali RENEWAL
Horizontal
NameCountryRepresentativeStatus
Kaitlin T WhobreyFranceAsiya Javayant QUALIFIED
Salvatore G MacleadArgentinaBernardo Dominic UNQUALIFIED
Antonio P MorascaArgentinaAmy Elsner QUALIFIED
Salvatore K FerenczUnited KingdomIvan Magalhaes NEGOTIATION
David E MarrierGermanyStephen Shaw RENEWAL
Jefferson O FollerBrazilStephen Shaw NEGOTIATION
Maria Y IturbideJapanAnna Fali UNQUALIFIED
Claire P GauchoGermanyAsiya Javayant NEW
Adams F BriddickJapanIvan Magalhaes NEGOTIATION
Tony J BologniaFranceIvan Magalhaes RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Alejandro Q OldroydJapan2024-06-03Chanay, Jeffrey A Esq UNQUALIFIED8Asiya Javayant
1001Arvin P RulapaughSpain2024-06-04Chanay, Jeffrey A Esq QUALIFIED69Ivan Magalhaes
1002Mujtaba K FerenczCanada2024-06-06Truhlar And Truhlar Attys UNQUALIFIED10Bernardo Dominic
1003Kadeem A CaldareraIndia2024-05-28Chemel, James L Cpa PROPOSAL66Elwin Sharvill
1004Smith M PoquetteItaly2024-05-22Chanay, Jeffrey A Esq NEGOTIATION58Stephen Shaw
1005Octavia H RutaCanada2024-05-24Truhlar And Truhlar Attys NEW6Ioni Bowcher
1006Costa M GauchoBrazil2024-05-23Chapman, Ross E Esq PROPOSAL22Ivan Magalhaes
1007Misaki D NickaFrance2024-05-26Benton, John B Jr UNQUALIFIED83Elwin Sharvill
1008Claire D AmigonCanada2024-05-21Benton, John B Jr UNQUALIFIED47Xuxue Feng
1009Clifford T BowleyAustralia2024-05-17Chemel, James L Cpa PROPOSAL28Amy Elsner
1010Aditya V MorascaItaly2024-06-11Printing Dimensions UNQUALIFIED63Onyama Limba
1011Leja L SchemmerRussia2024-06-10Feiner Bros QUALIFIED23Xuxue Feng
1012Deepesh Y ButtRussia2024-05-24Dorl, James J Esq UNQUALIFIED95Elwin Sharvill
1013Antonio V DoeAustralia2024-05-25Chemel, James L Cpa QUALIFIED70Stephen Shaw
1014Ricardo J KolmetzItaly2024-05-20Chapman, Ross E Esq QUALIFIED14Elwin Sharvill
1015Mujtaba R BologniaItaly2024-05-29Printing Dimensions RENEWAL82Xuxue Feng
1016Maisha F GauchoAustralia2024-06-06Printing Dimensions RENEWAL74Ivan Magalhaes
1017Jeanfrancois U GauchoRussia2024-05-25Chanay, Jeffrey A Esq NEGOTIATION88Stephen Shaw
1018Mayumi L SergiJapan2024-05-28Feiner Bros UNQUALIFIED41Asiya Javayant
1019Alejandro N NestleBrazil2024-05-23Buckley Miller Wright NEGOTIATION93Bernardo Dominic
1020Chavez R TollnerAustralia2024-05-17Morlong Associates NEGOTIATION5Anna Fali
1021Greenwood A MacleadBrazil2024-05-29Feiner Bros RENEWAL42Ioni Bowcher
1022Tony M WieserCanada2024-06-12Chapman, Ross E Esq NEGOTIATION48Asiya Javayant
1023Greenwood W PerinItaly2024-05-29Chanay, Jeffrey A Esq UNQUALIFIED61Elwin Sharvill
1024Nicolas B RimGermany2024-05-27Dorl, James J Esq NEGOTIATION8Elwin Sharvill
1025David E OstroskyFrance2024-06-14Benton, John B Jr QUALIFIED87Xuxue Feng
1026Mayumi T SchemmerUnited Kingdom2024-06-12Truhlar And Truhlar Attys UNQUALIFIED25Ivan Magalhaes
1027Ivar I CampainRussia2024-05-19Commercial Press NEW64Amy Elsner
1028Maisha Z CaldareraGermany2024-05-20Truhlar And Truhlar Attys QUALIFIED99Stephen Shaw
1029Emily A NestleItaly2024-06-13Commercial Press RENEWAL92Amy Elsner
1030Leja D GarufiArgentina2024-05-21Benton, John B Jr NEW78Xuxue Feng
1031Maria K FlosiIndia2024-05-25Morlong Associates RENEWAL76Asiya Javayant
1032David Q FigeroaIndia2024-06-10Rangoni Of Florence PROPOSAL44Ioni Bowcher
1033Smith W BowleyCanada2024-05-17King, Christopher A Esq NEGOTIATION95Ioni Bowcher
1034Tony X MacleadArgentina2024-05-25Feltz Printing Service QUALIFIED32Ivan Magalhaes
1035Darci C StockhamJapan2024-05-25Chemel, James L Cpa NEW55Stephen Shaw
1036Izzy G MorascaItaly2024-06-08Benton, John B Jr NEW38Ioni Bowcher
1037Mujtaba O RulapaughJapan2024-06-09Dorl, James J Esq RENEWAL32Stephen Shaw
1038Cody U AlbaresUnited Kingdom2024-06-02Chanay, Jeffrey A Esq QUALIFIED51Asiya Javayant
1039Aika J AlbaresFrance2024-05-21Truhlar And Truhlar Attys QUALIFIED84Ioni Bowcher
1040Clifford I FerenczItaly2024-05-20Rangoni Of Florence RENEWAL93Amy Elsner
1041Wickens Q KolmetzItaly2024-06-04Chemel, James L Cpa UNQUALIFIED24Asiya Javayant
1042Leja Y BriddickGermany2024-05-25Feltz Printing Service NEW87Anna Fali
1043Aruna M MorascaSpain2024-05-23Chapman, Ross E Esq RENEWAL22Onyama Limba
1044Clifford C BowleyJapan2024-06-08Dorl, James J Esq PROPOSAL76Anna Fali
1045Jennifer D KolmetzGermany2024-05-26King, Christopher A Esq PROPOSAL77Elwin Sharvill
1046Octavia O StensethItaly2024-05-17Chanay, Jeffrey A Esq PROPOSAL31Elwin Sharvill
1047Ashley V AmigonFrance2024-05-28Truhlar And Truhlar Attys NEGOTIATION45Amy Elsner
1048Kaitlin Z ButtAustralia2024-06-09Feiner Bros NEGOTIATION41Asiya Javayant
1049Ricardo U SlusarskiSpain2024-06-04Truhlar And Truhlar Attys UNQUALIFIED75Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Aditya W MaletFranceAsiya Javayant PROPOSAL
Jefferson F IturbideFranceAsiya Javayant NEGOTIATION
Leon C OstroskyRussiaXuxue Feng UNQUALIFIED
Jones O NickaFranceXuxue Feng UNQUALIFIED
Chavez A GauchoUnited KingdomOnyama Limba RENEWAL
Salvatore A CaldareraUnited KingdomStephen Shaw QUALIFIED
Cody F NestleArgentinaBernardo Dominic UNQUALIFIED
James K PoquetteBrazilIvan Magalhaes NEGOTIATION
Emily I RimAustraliaIvan Magalhaes PROPOSAL
Ashley K MaletSpainIvan Magalhaes NEGOTIATION
Cody P WhobreyFranceOnyama Limba QUALIFIED
Cody W BriddickArgentinaAsiya Javayant UNQUALIFIED
Ashley W ShinkoUnited KingdomBernardo Dominic RENEWAL
Maria D CaudySpainIoni Bowcher NEGOTIATION
Johnson A FlosiSpainElwin Sharvill RENEWAL
Adams P KolmetzCanadaAnna Fali RENEWAL
Jones U PoquetteUnited KingdomElwin Sharvill NEGOTIATION
Juan M DoeAustraliaXuxue Feng NEGOTIATION
Juan A WieserRussiaStephen Shaw RENEWAL
Kaitlin M GauchoItalyIvan Magalhaes NEW
Jennifer Y StensethJapanOnyama Limba QUALIFIED
Tony E OldroydIndiaOnyama Limba NEW
Cody V NickaUnited KingdomXuxue Feng PROPOSAL
Maisha G FigeroaUnited KingdomXuxue Feng RENEWAL
Wickens W FigeroaSpainBernardo Dominic UNQUALIFIED
Rodrigues K RulapaughIndiaIvan Magalhaes RENEWAL
Deepesh B FlosiArgentinaElwin Sharvill UNQUALIFIED
Jefferson T MorascaFranceStephen Shaw PROPOSAL
Deepesh P InouyeArgentinaBernardo Dominic NEW
Isabel R BowleyItalyXuxue Feng UNQUALIFIED
Jones Q RimGermanyStephen Shaw PROPOSAL
Jeanfrancois D CaudyBrazilAmy Elsner NEGOTIATION
Johnson R BowleyJapanAnna Fali NEW
Jeanfrancois T DilliardAustraliaBernardo Dominic NEGOTIATION
Octavia F FollerBrazilBernardo Dominic NEGOTIATION
Mayumi H PaprockiUnited KingdomIvan Magalhaes NEGOTIATION
Wickens A IturbideArgentinaAnna Fali PROPOSAL
Alejandro K SlusarskiArgentinaAmy Elsner RENEWAL
Salvatore Z RimAustraliaBernardo Dominic NEGOTIATION
Murillo A BowleyItalyOnyama Limba UNQUALIFIED
Aruna S VenereItalyIoni Bowcher NEW
Leja V SlusarskiIndiaIoni Bowcher NEGOTIATION
Faith I PaprockiRussiaOnyama Limba NEW
Salvatore A PaprockiUnited KingdomXuxue Feng QUALIFIED
Morrow V BowleyGermanyOnyama Limba PROPOSAL
Emily T KolmetzUnited KingdomBernardo Dominic UNQUALIFIED
Maria M PaprockiSpainStephen Shaw NEGOTIATION
Aruna X CaudyBrazilOnyama Limba QUALIFIED
Stacey A WhobreySpainAmy Elsner NEW
Claire H NickaArgentinaOnyama Limba RENEWAL
Frozen Columns
Name
Aditya E Tollner
David V Rim
Arvin P Royster
Chavez N Maclead
Mayumi L Shinko
Alejandro E Rulapaugh
Smith M Rim
Morrow B Darakjy
Juan B Nicka
Tony U Vocelka
Isabel W Bolognia
Mujtaba F Marrier
Adams Q Iturbide
Alejandro U Venere
Julie E Malet
Jennifer T Malet
Jeanfrancois J Wieser
Jefferson N Caldarera
Aditya T Campain
Leon M Ferencz
Johnson T Rim
Clifford M Nicka
Claire R Darakjy
Aruna L Oldroyd
Smith V Flosi
Rodrigues O Tollner
Emily W Kolmetz
Wickens Z Saylors
Darci F Poquette
Alejandro E Doe
Ricardo P Kusko
Julie G Bowley
Clifford N Poquette
Murillo E Kolmetz
Leja U Stockham
Leja N Darakjy
Johnson E Darakjy
David B Dilliard
Aika X Venere
Claire H Iturbide
Rodrigues O Amigon
Ricardo R Wieser
Mujtaba I Schemmer
Smith O Shinko
Munro I Ruta
Stacey O Bowley
Jeanfrancois B Stockham
Munro O Royster
Juan T Ruta
Francesco U Shinko
IdCountryDate
1000United Kingdom2024-05-26
1001France2024-06-04
1002Italy2024-06-05
1003Canada2024-06-12
1004United Kingdom2024-06-07
1005Germany2024-05-26
1006Japan2024-06-02
1007Italy2024-05-25
1008Australia2024-05-26
1009Germany2024-05-27
1010Spain2024-06-11
1011India2024-06-05
1012Italy2024-06-08
1013Japan2024-05-24
1014United Kingdom2024-06-05
1015Argentina2024-06-03
1016United Kingdom2024-05-31
1017United Kingdom2024-05-31
1018Brazil2024-06-03
1019Spain2024-06-01
1020Italy2024-05-16
1021Japan2024-05-22
1022Japan2024-05-18
1023Argentina2024-05-24
1024Canada2024-05-31
1025Argentina2024-06-12
1026France2024-05-26
1027Germany2024-06-01
1028Australia2024-06-03
1029Russia2024-06-01
1030Spain2024-05-31
1031Brazil2024-06-13
1032Germany2024-05-29
1033United Kingdom2024-05-25
1034Japan2024-05-26
1035Canada2024-05-16
1036Germany2024-05-26
1037Russia2024-05-23
1038Argentina2024-05-24
1039India2024-06-12
1040Japan2024-06-03
1041United Kingdom2024-05-23
1042Spain2024-05-27
1043France2024-06-03
1044Canada2024-06-10
1045Brazil2024-05-19
1046Russia2024-06-08
1047Australia2024-06-14
1048Argentina2024-06-02
1049Australia2024-05-26

On-Demand Data

NameIdCountryDate
Mujtaba Q Vocelka1000Germany2024-05-22
Smith J Marrier1001Canada2024-06-08
Tony X Gaucho1002Canada2024-06-11
Aruna F Shinko1003Canada2024-06-02
Rodrigues J Poquette1004Russia2024-06-06
Chavez C Ferencz1005Germany2024-05-31
Maisha Q Tollner1006Australia2024-05-18
Nicolas N Foller1007Italy2024-06-13
Jones J Briddick1008Brazil2024-05-18
Arvin F Doe1009Japan2024-06-03
Ivar O Nicka1010Italy2024-05-29
James P Bolognia1011Germany2024-05-27
Ivar K Briddick1012Italy2024-05-24
Morrow V Campain1013Spain2024-05-16
Jefferson Y Rulapaugh1014Germany2024-06-13
Murillo Q Dilliard1015Canada2024-05-26
Mujtaba A Nestle1016France2024-06-04
Murillo Y Albares1017Spain2024-05-28
Deepesh V Tollner1018United Kingdom2024-06-05
James V Caldarera1019United Kingdom2024-05-22
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aika G RulapaughBrazilBernardo Dominic QUALIFIED
Ivar D RulapaughAustraliaXuxue Feng RENEWAL
Jones J GillianArgentinaStephen Shaw RENEWAL
Rodrigues V CaudyItalyBernardo Dominic RENEWAL
Morrow O SlusarskiItalyAsiya Javayant NEW
Adams M RoysterJapanOnyama Limba UNQUALIFIED
Rodrigues L WieserBrazilAmy Elsner UNQUALIFIED
Arvin W SlusarskiArgentinaBernardo Dominic NEGOTIATION
James Y WhobreyCanadaOnyama Limba QUALIFIED
Kadeem P RutaJapanIvan Magalhaes QUALIFIED
Misaki Z OldroydBrazilIoni Bowcher QUALIFIED
Kaitlin T PerinGermanyIoni Bowcher RENEWAL
Tony T OldroydJapanElwin Sharvill NEGOTIATION
Cody D OldroydArgentinaElwin Sharvill UNQUALIFIED
Aditya K NestleFranceIvan Magalhaes RENEWAL
Ricardo V KolmetzBrazilBernardo Dominic RENEWAL
Emily J NickaSpainXuxue Feng UNQUALIFIED
Clifford Z WaycottItalyAnna Fali PROPOSAL
Nicolas D RimItalyStephen Shaw NEW
Jefferson F WieserJapanAmy Elsner RENEWAL
Aruna U WaycottArgentinaAnna Fali RENEWAL
Sinclair V MaletAustraliaIvan Magalhaes NEGOTIATION
Rodrigues A OstroskyCanadaIoni Bowcher UNQUALIFIED
Kadeem H NestleGermanyElwin Sharvill NEW
Izzy N RoysterJapanIvan Magalhaes NEW
Jones Z NestleBrazilXuxue Feng PROPOSAL
Faith N GillianItalyAnna Fali UNQUALIFIED
Juan B MaletRussiaElwin Sharvill NEGOTIATION
Nicolas F ButtBrazilXuxue Feng QUALIFIED
Juan R RoysterAustraliaAsiya Javayant NEW
Stacey F RutaCanadaBernardo Dominic PROPOSAL
Adams B KolmetzCanadaIoni Bowcher NEW
Johnson O TollnerArgentinaAnna Fali PROPOSAL
Morrow W RimItalyIoni Bowcher PROPOSAL
Morrow X MorascaJapanXuxue Feng NEGOTIATION
Ivar D ChuiItalyBernardo Dominic NEW
James I AmigonItalyBernardo Dominic UNQUALIFIED
Cody V WhobreyUnited KingdomIvan Magalhaes NEW
Izzy D MarrierCanadaBernardo Dominic PROPOSAL
Greenwood K TollnerItalyStephen Shaw RENEWAL

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