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
Morrow C ChuiFranceOnyama Limba NEW
Claire T BowleyGermanyAnna Fali QUALIFIED
Maria G SchemmerGermanyAsiya Javayant RENEWAL
Juan I FollerUnited KingdomAmy Elsner NEW
Isabel G FigeroaFranceAsiya Javayant NEW
Ashley N MorascaAustraliaXuxue Feng NEW
Izzy I MorascaBrazilIvan Magalhaes UNQUALIFIED
Greenwood C StensethArgentinaBernardo Dominic NEGOTIATION
Isabel K RulapaughItalyIvan Magalhaes PROPOSAL
Aruna T SchemmerFranceElwin Sharvill NEW
Darci T PerinIndiaIoni Bowcher NEW
Ivar E PaprockiUnited KingdomElwin Sharvill QUALIFIED
Darci X InouyeIndiaOnyama Limba NEGOTIATION
Smith I CampainCanadaStephen Shaw PROPOSAL
Kaitlin A DoeBrazilAmy Elsner PROPOSAL
Juan Y ChuiAustraliaIoni Bowcher NEGOTIATION
Stacey L RimItalyAnna Fali UNQUALIFIED
Morrow C MaletGermanyIoni Bowcher QUALIFIED
Aika R BowleyRussiaIvan Magalhaes RENEWAL
Ivar S StensethAustraliaIvan Magalhaes NEW
Aditya X KolmetzItalyBernardo Dominic PROPOSAL
Kaitlin V BriddickJapanAsiya Javayant NEGOTIATION
Mujtaba J VenereIndiaElwin Sharvill QUALIFIED
Wickens I InouyeJapanIoni Bowcher QUALIFIED
Aditya L SlusarskiGermanyBernardo Dominic QUALIFIED
Octavia E SchemmerGermanyIoni Bowcher NEW
James E SlusarskiRussiaStephen Shaw PROPOSAL
Morrow A SlusarskiFranceXuxue Feng NEW
Alejandro V WaycottItalyStephen Shaw QUALIFIED
Morrow X NestleFranceStephen Shaw RENEWAL
Sinclair I MorascaArgentinaOnyama Limba PROPOSAL
Faith S InouyeCanadaElwin Sharvill UNQUALIFIED
Julie Q KolmetzItalyBernardo Dominic PROPOSAL
Kaitlin Q SchemmerCanadaXuxue Feng NEGOTIATION
Julie X MorascaAustraliaAsiya Javayant PROPOSAL
Kadeem N KolmetzJapanAsiya Javayant RENEWAL
Jennifer Q TollnerUnited KingdomAmy Elsner NEGOTIATION
Cody S SchemmerCanadaIvan Magalhaes NEW
Munro L InouyeItalyStephen Shaw PROPOSAL
Octavia O BowleyRussiaElwin Sharvill NEGOTIATION
Mujtaba C BologniaGermanyAsiya Javayant RENEWAL
Aditya B IturbideUnited KingdomAnna Fali PROPOSAL
Rodrigues T RulapaughBrazilStephen Shaw UNQUALIFIED
David U KuskoIndiaAsiya Javayant UNQUALIFIED
Tony F GarufiGermanyStephen Shaw PROPOSAL
Costa E CampainRussiaElwin Sharvill NEW
Morrow U MacleadUnited KingdomAnna Fali UNQUALIFIED
Ivar X PerinItalyAnna Fali NEW
Costa R DoeBrazilIvan Magalhaes QUALIFIED
Octavia G MaletUnited KingdomAsiya Javayant PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Jeanfrancois Y MorascaBrazilAsiya Javayant NEW
Adams Q SergiRussiaStephen Shaw NEW
Stacey J BologniaUnited KingdomAsiya Javayant UNQUALIFIED
Antonio O AmigonSpainAnna Fali QUALIFIED
Octavia K ButtSpainIvan Magalhaes RENEWAL
Leon T SergiFranceAmy Elsner RENEWAL
Jeanfrancois P VocelkaSpainAmy Elsner UNQUALIFIED
Greenwood V GarufiFranceStephen Shaw NEW
Jennifer U WaycottFranceIvan Magalhaes NEGOTIATION
Mayumi E IturbideAustraliaOnyama Limba PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Juan U BriddickIndia2024-06-06Chemel, James L Cpa PROPOSAL72Ivan Magalhaes
1001Emily W ChuiArgentina2024-05-27Feltz Printing Service NEW18Ioni Bowcher
1002Ivar C MacleadIndia2024-05-27Feltz Printing Service QUALIFIED20Amy Elsner
1003Leja U RoysterItaly2024-05-27King, Christopher A Esq QUALIFIED57Ivan Magalhaes
1004Mujtaba L CaudyArgentina2024-06-21Commercial Press RENEWAL59Bernardo Dominic
1005Alejandro U MaletIndia2024-06-22King, Christopher A Esq NEGOTIATION88Amy Elsner
1006Mayumi B MaletArgentina2024-05-25King, Christopher A Esq PROPOSAL92Xuxue Feng
1007Tony Z CaldareraCanada2024-05-25Chanay, Jeffrey A Esq QUALIFIED19Elwin Sharvill
1008Mujtaba L SlusarskiItaly2024-06-14Buckley Miller Wright UNQUALIFIED60Ivan Magalhaes
1009Chavez I ShinkoJapan2024-06-22Morlong Associates NEW79Onyama Limba
1010Francesco S SergiItaly2024-06-17Morlong Associates NEGOTIATION28Bernardo Dominic
1011Deepesh U VenereAustralia2024-06-03Rangoni Of Florence QUALIFIED38Amy Elsner
1012Kaitlin E WaycottIndia2024-06-07Commercial Press PROPOSAL90Asiya Javayant
1013Wickens M InouyeSpain2024-06-09Buckley Miller Wright NEGOTIATION7Xuxue Feng
1014Smith R CampainItaly2024-05-30Truhlar And Truhlar Attys NEGOTIATION4Stephen Shaw
1015Claire D SchemmerIndia2024-05-27Truhlar And Truhlar Attys QUALIFIED3Amy Elsner
1016Aruna U MaletGermany2024-06-16Truhlar And Truhlar Attys PROPOSAL31Amy Elsner
1017Aruna N TollnerUnited Kingdom2024-05-29King, Christopher A Esq PROPOSAL16Xuxue Feng
1018Adams X BriddickFrance2024-06-17Rousseaux, Michael Esq NEW56Onyama Limba
1019Aruna M ShinkoBrazil2024-06-08Chanay, Jeffrey A Esq UNQUALIFIED46Bernardo Dominic
1020Kadeem T NestleIndia2024-06-01Feiner Bros NEGOTIATION46Bernardo Dominic
1021Mujtaba H StensethSpain2024-06-02Feiner Bros NEGOTIATION5Stephen Shaw
1022Wickens A RimJapan2024-06-17Feltz Printing Service QUALIFIED55Onyama Limba
1023Salvatore Z MaletBrazil2024-06-03Chanay, Jeffrey A Esq QUALIFIED49Ioni Bowcher
1024Emily R VocelkaSpain2024-06-05King, Christopher A Esq UNQUALIFIED55Stephen Shaw
1025Costa M MorascaJapan2024-06-03Printing Dimensions PROPOSAL24Xuxue Feng
1026Silvio A CaldareraGermany2024-06-12Chapman, Ross E Esq NEW31Bernardo Dominic
1027Tony N GlickBrazil2024-06-11Dorl, James J Esq NEW21Ioni Bowcher
1028Aika V ButtFrance2024-05-30Chapman, Ross E Esq QUALIFIED1Asiya Javayant
1029Francesco M GarufiItaly2024-06-13Chemel, James L Cpa QUALIFIED47Elwin Sharvill
1030Maisha U InouyeBrazil2024-06-06King, Christopher A Esq QUALIFIED1Bernardo Dominic
1031Costa O GlickAustralia2024-06-02Rangoni Of Florence QUALIFIED97Asiya Javayant
1032Kadeem I StensethAustralia2024-05-31Rangoni Of Florence NEW95Xuxue Feng
1033Octavia B BologniaUnited Kingdom2024-06-20King, Christopher A Esq QUALIFIED18Ivan Magalhaes
1034Costa B BologniaFrance2024-06-20Chanay, Jeffrey A Esq NEGOTIATION65Bernardo Dominic
1035Tony O KolmetzIndia2024-05-29Buckley Miller Wright NEGOTIATION55Elwin Sharvill
1036Maisha S InouyeItaly2024-06-16Commercial Press PROPOSAL19Bernardo Dominic
1037James I KuskoArgentina2024-06-21Buckley Miller Wright UNQUALIFIED87Stephen Shaw
1038Jeanfrancois U StensethGermany2024-06-17Truhlar And Truhlar Attys QUALIFIED54Ioni Bowcher
1039Adams D CaudyAustralia2024-06-05Printing Dimensions UNQUALIFIED38Ivan Magalhaes
1040Salvatore P StensethUnited Kingdom2024-06-14Dorl, James J Esq QUALIFIED41Bernardo Dominic
1041Misaki Q FigeroaItaly2024-06-06Printing Dimensions QUALIFIED60Onyama Limba
1042Mayumi P RoysterGermany2024-06-09Commercial Press PROPOSAL60Bernardo Dominic
1043Julie H GarufiFrance2024-06-15Chemel, James L Cpa NEGOTIATION21Amy Elsner
1044Arvin F BologniaUnited Kingdom2024-06-21Chanay, Jeffrey A Esq NEGOTIATION65Elwin Sharvill
1045Faith O StockhamBrazil2024-06-16Morlong Associates NEGOTIATION73Xuxue Feng
1046Aika I RutaGermany2024-06-10Commercial Press RENEWAL27Ivan Magalhaes
1047Adams V PoquetteItaly2024-06-12Feltz Printing Service NEW6Asiya Javayant
1048Ivar W WaycottJapan2024-06-15Chanay, Jeffrey A Esq UNQUALIFIED89Elwin Sharvill
1049Juan P DilliardFrance2024-06-14Feltz Printing Service QUALIFIED54Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
James Q GarufiJapanIoni Bowcher PROPOSAL
Greenwood X PaprockiUnited KingdomAnna Fali QUALIFIED
Maisha S PoquetteItalyBernardo Dominic QUALIFIED
Salvatore F KuskoAustraliaOnyama Limba QUALIFIED
Kaitlin Z MaletAustraliaAnna Fali RENEWAL
Aditya N WaycottRussiaIvan Magalhaes NEW
Adams D SaylorsItalyAnna Fali RENEWAL
Isabel A GarufiRussiaStephen Shaw PROPOSAL
Julie P OstroskyGermanyStephen Shaw NEW
Mayumi F CampainJapanStephen Shaw PROPOSAL
Silvio Z FerenczUnited KingdomAsiya Javayant QUALIFIED
Isabel X OldroydFranceXuxue Feng NEW
Jefferson L StockhamGermanyIoni Bowcher RENEWAL
Mujtaba Q WhobreyFranceXuxue Feng RENEWAL
Darci P BriddickRussiaBernardo Dominic QUALIFIED
Wickens Y FollerIndiaBernardo Dominic QUALIFIED
Ashley A BologniaFranceAnna Fali RENEWAL
Chavez C RulapaughRussiaBernardo Dominic RENEWAL
Munro K SergiRussiaIoni Bowcher UNQUALIFIED
Deepesh H MorascaRussiaIvan Magalhaes NEGOTIATION
Mujtaba S NickaRussiaXuxue Feng NEGOTIATION
Mayumi R MaletArgentinaAnna Fali NEGOTIATION
James N OstroskyJapanAsiya Javayant QUALIFIED
Munro M FollerArgentinaAnna Fali UNQUALIFIED
Munro F FerenczSpainAsiya Javayant NEGOTIATION
Jefferson O InouyeSpainAnna Fali NEGOTIATION
Rodrigues A PerinIndiaStephen Shaw UNQUALIFIED
Cody C RulapaughGermanyIvan Magalhaes NEW
Sinclair T SlusarskiJapanAnna Fali NEW
Deepesh E MaletBrazilIvan Magalhaes UNQUALIFIED
Murillo A PaprockiSpainXuxue Feng NEW
Munro U BowleyArgentinaAsiya Javayant PROPOSAL
Morrow C FerenczFranceOnyama Limba RENEWAL
Morrow F KolmetzUnited KingdomIoni Bowcher UNQUALIFIED
Alejandro O WieserJapanIoni Bowcher PROPOSAL
Misaki F TollnerRussiaXuxue Feng NEGOTIATION
Nicolas J CaldareraRussiaElwin Sharvill QUALIFIED
Sinclair D GarufiSpainXuxue Feng NEGOTIATION
Tony A DilliardBrazilElwin Sharvill RENEWAL
Johnson Y MacleadGermanyXuxue Feng QUALIFIED
Aruna C GillianGermanyElwin Sharvill RENEWAL
Salvatore C BriddickJapanIoni Bowcher QUALIFIED
Claire K FollerGermanyStephen Shaw NEGOTIATION
Octavia Y PaprockiJapanStephen Shaw RENEWAL
Morrow R KolmetzCanadaOnyama Limba PROPOSAL
Munro P TollnerAustraliaXuxue Feng NEW
Salvatore W OstroskyRussiaStephen Shaw UNQUALIFIED
Stacey L CampainUnited KingdomAnna Fali NEW
James L RimAustraliaStephen Shaw QUALIFIED
Misaki M DilliardBrazilAsiya Javayant RENEWAL
Frozen Columns
Name
Murillo N Paprocki
Leon Q Poquette
Salvatore O Foller
Ashley A Butt
Mayumi D Ostrosky
Aika E Marrier
Julie G Marrier
Wickens P Maclead
Ashley Y Paprocki
Ricardo X Ruta
Julie K Butt
Greenwood R Bolognia
Salvatore C Ferencz
Greenwood F Foller
Francesco K Rim
Ricardo M Vocelka
Ricardo A Nestle
Mujtaba G Waycott
Izzy S Waycott
Octavia X Stockham
Kaitlin W Stockham
Smith R Caudy
Cody Z Kusko
Aika B Nicka
Emily Q Vocelka
Munro O Schemmer
Isabel O Chui
Ashley Y Poquette
Claire W Darakjy
Antonio K Waycott
Jennifer P Gaucho
Salvatore R Caudy
Wickens G Whobrey
Silvio Z Bowley
Jones L Rim
Adams B Ferencz
Misaki U Garufi
Alejandro D Nicka
Mujtaba Q Malet
Arvin F Stockham
Johnson P Sergi
Misaki M Saylors
Mayumi N Shinko
Juan X Malet
Kaitlin D Schemmer
Isabel V Venere
Julie S Gillian
Stacey F Albares
Murillo N Oldroyd
Aditya W Caudy
IdCountryDate
1000Russia2024-06-14
1001Canada2024-06-04
1002Spain2024-06-11
1003Canada2024-06-05
1004Argentina2024-06-06
1005France2024-06-21
1006United Kingdom2024-06-07
1007Brazil2024-06-10
1008Australia2024-06-14
1009Brazil2024-06-15
1010Argentina2024-06-05
1011France2024-06-13
1012Argentina2024-06-23
1013Italy2024-06-04
1014United Kingdom2024-06-05
1015Germany2024-06-16
1016Brazil2024-06-12
1017Spain2024-06-11
1018Brazil2024-06-18
1019Brazil2024-05-31
1020Japan2024-06-12
1021Spain2024-06-12
1022Australia2024-06-06
1023Australia2024-05-26
1024France2024-06-06
1025Germany2024-05-28
1026Canada2024-06-17
1027United Kingdom2024-05-29
1028Spain2024-05-27
1029Germany2024-06-03
1030Canada2024-06-14
1031United Kingdom2024-06-21
1032Russia2024-06-22
1033Germany2024-06-03
1034Russia2024-06-18
1035India2024-06-07
1036India2024-05-28
1037India2024-06-03
1038United Kingdom2024-06-07
1039Japan2024-06-23
1040Brazil2024-06-21
1041Italy2024-06-15
1042United Kingdom2024-06-04
1043United Kingdom2024-06-17
1044France2024-05-28
1045United Kingdom2024-06-20
1046Argentina2024-05-27
1047Brazil2024-05-30
1048Russia2024-06-15
1049Italy2024-06-14

On-Demand Data

NameIdCountryDate
Mujtaba D Malet1000Germany2024-06-06
Nicolas Y Bolognia1001Canada2024-06-12
Juan N Oldroyd1002Germany2024-06-18
Aika B Albares1003Germany2024-06-21
Leon I Nestle1004Canada2024-06-13
Nicolas V Darakjy1005Australia2024-05-25
Antonio T Darakjy1006Spain2024-06-02
Smith B Ferencz1007Germany2024-06-02
Leja X Kusko1008Japan2024-05-31
Munro Q Albares1009United Kingdom2024-06-18
Kaitlin D Sergi1010Italy2024-05-26
Wickens O Darakjy1011Italy2024-06-04
Costa H Briddick1012Russia2024-06-05
Darci C Paprocki1013Japan2024-06-10
David P Caudy1014India2024-06-21
Tony S Malet1015Canada2024-06-07
Kadeem D Gaucho1016Italy2024-06-04
Johnson G Paprocki1017United Kingdom2024-06-14
Aditya E Sergi1018United Kingdom2024-06-07
Kadeem W Poquette1019United Kingdom2024-06-01
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Arvin A MarrierJapanAnna Fali NEW
Emily V WieserSpainOnyama Limba PROPOSAL
Leon F SlusarskiFranceOnyama Limba RENEWAL
Mujtaba D SergiArgentinaElwin Sharvill PROPOSAL
Costa N GarufiIndiaIoni Bowcher NEGOTIATION
Rodrigues V OstroskyAustraliaXuxue Feng NEGOTIATION
Darci T StockhamBrazilOnyama Limba PROPOSAL
Julie W MarrierGermanyIvan Magalhaes PROPOSAL
Deepesh J MaletAustraliaBernardo Dominic NEGOTIATION
Aditya W MaletRussiaBernardo Dominic QUALIFIED
Jefferson Q IturbideBrazilAnna Fali NEW
Murillo P NickaUnited KingdomIoni Bowcher NEGOTIATION
Cody W GauchoJapanIoni Bowcher NEW
Rodrigues W RulapaughBrazilOnyama Limba RENEWAL
Greenwood G CaldareraSpainAnna Fali PROPOSAL
Sinclair A AmigonItalyElwin Sharvill NEW
Antonio S CampainArgentinaIoni Bowcher QUALIFIED
Aika N MorascaJapanXuxue Feng RENEWAL
David R MarrierGermanyStephen Shaw QUALIFIED
Smith B MaletArgentinaBernardo Dominic UNQUALIFIED
Leon Z SlusarskiJapanAmy Elsner QUALIFIED
Ivar H MorascaCanadaElwin Sharvill NEGOTIATION
Alejandro H SchemmerIndiaOnyama Limba NEW
Maisha V PerinJapanOnyama Limba PROPOSAL
Julie W IturbideJapanXuxue Feng RENEWAL
Francesco Z FollerJapanAsiya Javayant NEGOTIATION
Jefferson Y NickaRussiaIoni Bowcher PROPOSAL
Tony Y MacleadGermanyIvan Magalhaes NEGOTIATION
Murillo Z InouyeUnited KingdomAsiya Javayant QUALIFIED
Octavia N MacleadJapanAnna Fali QUALIFIED
Ivar C MorascaBrazilOnyama Limba RENEWAL
Salvatore V RimArgentinaXuxue Feng RENEWAL
Chavez T MaletBrazilAmy Elsner UNQUALIFIED
Octavia E MaletArgentinaStephen Shaw RENEWAL
Darci F SergiRussiaIvan Magalhaes NEW
Deepesh T AmigonCanadaAsiya Javayant UNQUALIFIED
Ivar Y PoquetteSpainAmy Elsner UNQUALIFIED
Antonio K OstroskyRussiaAmy Elsner QUALIFIED
Tony Q BowleyFranceXuxue Feng NEW
Adams R RoysterIndiaIoni Bowcher NEW

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