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 V VenereGermanyAmy Elsner QUALIFIED
Murillo P CaudyUnited KingdomBernardo Dominic NEW
Leon B ButtFranceStephen Shaw RENEWAL
Faith K NickaJapanIoni Bowcher RENEWAL
Johnson F MacleadSpainStephen Shaw UNQUALIFIED
Wickens K KuskoSpainXuxue Feng RENEWAL
Aika X PaprockiIndiaIoni Bowcher NEGOTIATION
Clifford N VocelkaFranceIoni Bowcher NEGOTIATION
Kadeem S MaletIndiaXuxue Feng PROPOSAL
Izzy P SergiCanadaOnyama Limba UNQUALIFIED
Nicolas L StensethCanadaAmy Elsner QUALIFIED
Leon Q WhobreyAustraliaIvan Magalhaes NEGOTIATION
Clifford K BowleyFranceAnna Fali RENEWAL
Ricardo B WhobreyUnited KingdomBernardo Dominic UNQUALIFIED
Jefferson I AlbaresRussiaAnna Fali QUALIFIED
Greenwood L SchemmerCanadaStephen Shaw RENEWAL
Murillo Y SaylorsSpainAnna Fali UNQUALIFIED
Octavia O MaletItalyIvan Magalhaes QUALIFIED
Sinclair I KolmetzCanadaXuxue Feng QUALIFIED
Maisha G OldroydSpainAmy Elsner QUALIFIED
Francesco O NickaBrazilOnyama Limba RENEWAL
Darci Q ButtJapanIoni Bowcher QUALIFIED
Jefferson O WaycottFranceOnyama Limba QUALIFIED
Greenwood L CaudyFranceIvan Magalhaes PROPOSAL
Stacey J NestleArgentinaXuxue Feng UNQUALIFIED
Sinclair A CampainUnited KingdomStephen Shaw NEW
Smith E WieserAustraliaAsiya Javayant RENEWAL
Cody G StensethArgentinaOnyama Limba PROPOSAL
Morrow S WaycottItalyIvan Magalhaes NEW
Clifford A MarrierAustraliaBernardo Dominic NEW
Julie H ShinkoAustraliaStephen Shaw PROPOSAL
Faith W IturbideUnited KingdomBernardo Dominic UNQUALIFIED
Alejandro F BologniaUnited KingdomStephen Shaw RENEWAL
Ricardo I MorascaCanadaElwin Sharvill PROPOSAL
Maisha Q SergiAustraliaIvan Magalhaes NEW
Claire V DilliardCanadaIvan Magalhaes NEGOTIATION
Ricardo M KolmetzAustraliaAmy Elsner QUALIFIED
Kadeem I StockhamGermanyOnyama Limba RENEWAL
Leja W RoysterGermanyBernardo Dominic QUALIFIED
Jefferson V MorascaGermanyXuxue Feng NEW
Mayumi V NestleAustraliaAsiya Javayant NEW
Jones X SaylorsJapanIvan Magalhaes PROPOSAL
James J ButtFranceElwin Sharvill QUALIFIED
Octavia N TollnerSpainXuxue Feng RENEWAL
Ricardo F SergiIndiaAmy Elsner NEW
Ivar A DoeIndiaIvan Magalhaes UNQUALIFIED
Arvin W GauchoCanadaXuxue Feng UNQUALIFIED
Claire W OstroskyRussiaAmy Elsner RENEWAL
Aditya F DoeRussiaIoni Bowcher UNQUALIFIED
Faith R FerenczCanadaElwin Sharvill NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Greenwood D KuskoCanadaElwin Sharvill UNQUALIFIED
Chavez T SlusarskiIndiaAsiya Javayant RENEWAL
Stacey X KuskoItalyIoni Bowcher NEW
Arvin H AmigonUnited KingdomAsiya Javayant NEGOTIATION
Arvin U OstroskyRussiaStephen Shaw NEGOTIATION
Aika X RulapaughAustraliaAmy Elsner RENEWAL
Claire C SaylorsArgentinaAnna Fali NEGOTIATION
Alejandro L StockhamJapanStephen Shaw NEGOTIATION
Greenwood O RulapaughGermanyStephen Shaw QUALIFIED
Julie X NickaItalyXuxue Feng NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Munro D NickaSpain2024-05-06Morlong Associates UNQUALIFIED77Xuxue Feng
1001Claire A WaycottUnited Kingdom2024-05-16Commercial Press PROPOSAL35Elwin Sharvill
1002Cody Q SchemmerIndia2024-05-10Chapman, Ross E Esq RENEWAL21Amy Elsner
1003Francesco B OldroydJapan2024-05-29Truhlar And Truhlar Attys NEW31Elwin Sharvill
1004Jennifer Z PaprockiIndia2024-05-23Commercial Press PROPOSAL82Onyama Limba
1005Adams S RoysterArgentina2024-06-01Printing Dimensions RENEWAL74Anna Fali
1006Smith N WieserItaly2024-05-21Rousseaux, Michael Esq NEW47Ivan Magalhaes
1007Clifford J RulapaughArgentina2024-05-25Feiner Bros RENEWAL77Bernardo Dominic
1008Claire L MaletRussia2024-05-21Rangoni Of Florence NEGOTIATION22Bernardo Dominic
1009Leja Y RulapaughRussia2024-05-30Rangoni Of Florence UNQUALIFIED23Bernardo Dominic
1010Morrow B WieserBrazil2024-05-06Rangoni Of Florence UNQUALIFIED3Ivan Magalhaes
1011Morrow U MaletArgentina2024-05-21King, Christopher A Esq UNQUALIFIED76Onyama Limba
1012Tony J RoysterBrazil2024-05-23Chemel, James L Cpa NEW37Bernardo Dominic
1013Clifford R AmigonJapan2024-06-02Feltz Printing Service NEGOTIATION98Anna Fali
1014Sinclair W GauchoCanada2024-05-14Feiner Bros NEGOTIATION27Bernardo Dominic
1015Jones R FerenczRussia2024-05-17Rousseaux, Michael Esq PROPOSAL82Asiya Javayant
1016Maisha Z CaldareraBrazil2024-05-24Buckley Miller Wright NEW85Bernardo Dominic
1017Kaitlin P BriddickItaly2024-05-06Printing Dimensions PROPOSAL21Asiya Javayant
1018Juan I SaylorsArgentina2024-05-09Benton, John B Jr PROPOSAL73Xuxue Feng
1019Kadeem W SergiBrazil2024-05-15Chapman, Ross E Esq NEGOTIATION94Asiya Javayant
1020Ricardo D CaldareraItaly2024-05-14Chapman, Ross E Esq RENEWAL4Onyama Limba
1021Claire E AlbaresAustralia2024-05-30Feltz Printing Service NEGOTIATION59Elwin Sharvill
1022Jones T WaycottRussia2024-05-25Printing Dimensions NEGOTIATION40Asiya Javayant
1023Ivar C FigeroaCanada2024-05-16Printing Dimensions NEGOTIATION89Bernardo Dominic
1024Julie J RimUnited Kingdom2024-05-19Commercial Press PROPOSAL1Ivan Magalhaes
1025Jones U RoysterSpain2024-05-13Benton, John B Jr UNQUALIFIED57Ioni Bowcher
1026Darci N SaylorsJapan2024-06-01Truhlar And Truhlar Attys PROPOSAL15Anna Fali
1027Ivar U NestleGermany2024-05-13Chanay, Jeffrey A Esq UNQUALIFIED68Elwin Sharvill
1028Maria L RulapaughFrance2024-05-30Commercial Press QUALIFIED9Onyama Limba
1029Silvio U ChuiBrazil2024-06-01Truhlar And Truhlar Attys RENEWAL34Anna Fali
1030Leja T MaletSpain2024-05-26Feltz Printing Service NEGOTIATION34Bernardo Dominic
1031Costa C TollnerCanada2024-05-28Feltz Printing Service UNQUALIFIED23Xuxue Feng
1032Johnson U ButtUnited Kingdom2024-05-04Morlong Associates RENEWAL18Ivan Magalhaes
1033Adams C BriddickSpain2024-05-26Feiner Bros PROPOSAL11Xuxue Feng
1034Johnson H RutaSpain2024-05-05Chanay, Jeffrey A Esq UNQUALIFIED13Elwin Sharvill
1035Maria F CaudyJapan2024-05-31Commercial Press NEW8Xuxue Feng
1036Silvio O MaletBrazil2024-05-17Feltz Printing Service QUALIFIED9Bernardo Dominic
1037Kaitlin Q RulapaughJapan2024-05-22Chapman, Ross E Esq QUALIFIED40Stephen Shaw
1038Munro L NestleSpain2024-05-27Benton, John B Jr PROPOSAL71Xuxue Feng
1039Isabel M WieserCanada2024-05-23Benton, John B Jr UNQUALIFIED48Ivan Magalhaes
1040Munro P ButtArgentina2024-05-26Rangoni Of Florence PROPOSAL36Ivan Magalhaes
1041Darci B DilliardFrance2024-05-28Buckley Miller Wright UNQUALIFIED69Ivan Magalhaes
1042Murillo F WhobreyUnited Kingdom2024-05-04Truhlar And Truhlar Attys UNQUALIFIED10Bernardo Dominic
1043James I DarakjySpain2024-05-31Dorl, James J Esq RENEWAL79Amy Elsner
1044Leon E PoquetteFrance2024-05-29Chanay, Jeffrey A Esq RENEWAL29Xuxue Feng
1045Ashley A KolmetzRussia2024-05-06Benton, John B Jr UNQUALIFIED27Amy Elsner
1046Salvatore G DarakjyFrance2024-05-12Rangoni Of Florence PROPOSAL45Asiya Javayant
1047Deepesh Q GauchoFrance2024-05-28Rousseaux, Michael Esq NEW52Stephen Shaw
1048Isabel M InouyeJapan2024-05-05Feiner Bros NEGOTIATION95Ivan Magalhaes
1049Deepesh L GillianJapan2024-05-21Feltz Printing Service NEW44Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Johnson P BriddickAustraliaXuxue Feng QUALIFIED
Nicolas I VocelkaBrazilXuxue Feng NEGOTIATION
Claire J DoeGermanyAnna Fali QUALIFIED
Ivar J OstroskyArgentinaBernardo Dominic NEW
Mayumi J NickaBrazilIoni Bowcher QUALIFIED
Kadeem M TollnerCanadaAsiya Javayant UNQUALIFIED
Claire S PerinGermanyAmy Elsner NEW
Morrow B DoeArgentinaIoni Bowcher NEGOTIATION
Misaki U WieserUnited KingdomIoni Bowcher NEW
Adams M GarufiSpainAsiya Javayant UNQUALIFIED
Costa F CampainAustraliaAsiya Javayant NEW
Jennifer O SlusarskiItalyElwin Sharvill UNQUALIFIED
Smith V GauchoUnited KingdomAmy Elsner PROPOSAL
Claire V MarrierArgentinaXuxue Feng NEW
Cody F VocelkaGermanyAnna Fali UNQUALIFIED
Julie W GarufiJapanElwin Sharvill UNQUALIFIED
Johnson H StockhamSpainBernardo Dominic PROPOSAL
Faith B GauchoUnited KingdomOnyama Limba UNQUALIFIED
David V CaudyIndiaXuxue Feng PROPOSAL
Jeanfrancois Q CaldareraUnited KingdomAnna Fali RENEWAL
Octavia Z PaprockiRussiaOnyama Limba NEGOTIATION
Wickens Q FollerItalyBernardo Dominic QUALIFIED
Cody B RutaItalyStephen Shaw QUALIFIED
Arvin W GauchoSpainStephen Shaw PROPOSAL
Ivar X NickaSpainStephen Shaw QUALIFIED
Aika L MaletRussiaOnyama Limba QUALIFIED
Costa W FigeroaGermanyBernardo Dominic PROPOSAL
Munro G GlickSpainIvan Magalhaes NEGOTIATION
Julie B SchemmerGermanyStephen Shaw NEGOTIATION
Salvatore E MaletFranceElwin Sharvill NEW
Izzy U MaletRussiaIvan Magalhaes PROPOSAL
Clifford D NestleFranceIvan Magalhaes RENEWAL
Jennifer D CaudyJapanAsiya Javayant NEW
Costa V MacleadFranceXuxue Feng RENEWAL
Jones S FollerUnited KingdomElwin Sharvill UNQUALIFIED
Mujtaba E ChuiArgentinaBernardo Dominic NEW
Mujtaba S FlosiUnited KingdomIoni Bowcher PROPOSAL
Darci E InouyeUnited KingdomOnyama Limba UNQUALIFIED
Greenwood B AlbaresGermanyBernardo Dominic NEW
Aruna E ButtSpainAmy Elsner NEGOTIATION
Leja K SchemmerFranceElwin Sharvill PROPOSAL
Ivar N SergiRussiaAsiya Javayant PROPOSAL
Leon M RutaRussiaAsiya Javayant QUALIFIED
Maisha C FlosiSpainIoni Bowcher NEW
Johnson N DarakjyItalyIoni Bowcher QUALIFIED
Ashley W WaycottItalyElwin Sharvill PROPOSAL
Tony L MarrierGermanyElwin Sharvill PROPOSAL
Kaitlin I KolmetzGermanyXuxue Feng NEGOTIATION
Sinclair H PerinItalyElwin Sharvill NEGOTIATION
Adams F SergiGermanyIvan Magalhaes QUALIFIED
Frozen Columns
Name
Ricardo U Marrier
Jeanfrancois C Caldarera
Darci E Waycott
Clifford W Rulapaugh
Isabel P Kusko
Ivar C Rulapaugh
Mujtaba C Ruta
Murillo Q Rulapaugh
Antonio Z Rulapaugh
Darci X Slusarski
Smith F Rim
Antonio F Maclead
Wickens U Darakjy
Leja X Gillian
Kaitlin D Venere
Munro H Shinko
Smith M Rim
Clifford K Saylors
Silvio C Albares
Claire P Rulapaugh
Juan C Iturbide
Emily F Nicka
Nicolas G Briddick
Darci G Doe
Izzy P Nestle
Deepesh V Dilliard
Izzy T Caldarera
Jones Z Albares
Costa N Darakjy
Jennifer T Darakjy
Emily R Oldroyd
Juan K Wieser
Sinclair Z Campain
Greenwood W Inouye
Adams D Venere
Faith M Tollner
Isabel K Caudy
Deepesh P Gillian
Stacey R Stenseth
Ricardo C Stenseth
Antonio E Chui
Aditya Y Flosi
Chavez H Butt
Ashley Y Tollner
Francesco F Caudy
Octavia J Rulapaugh
Deepesh R Albares
Wickens S Kusko
Morrow S Perin
Darci I Rim
IdCountryDate
1000Australia2024-06-02
1001United Kingdom2024-05-26
1002Australia2024-05-10
1003Germany2024-05-28
1004France2024-05-23
1005Argentina2024-05-25
1006India2024-05-31
1007France2024-05-22
1008Australia2024-05-05
1009Japan2024-05-29
1010Canada2024-05-19
1011India2024-05-05
1012India2024-05-04
1013United Kingdom2024-05-15
1014Japan2024-05-23
1015France2024-05-13
1016Germany2024-05-21
1017Canada2024-06-02
1018Japan2024-05-16
1019Canada2024-05-23
1020Brazil2024-05-22
1021Russia2024-05-14
1022Germany2024-05-15
1023Spain2024-05-07
1024Russia2024-05-16
1025Spain2024-05-08
1026Russia2024-05-20
1027Australia2024-05-24
1028Australia2024-05-30
1029Spain2024-06-01
1030Argentina2024-05-27
1031Spain2024-05-23
1032Japan2024-05-25
1033Russia2024-05-19
1034India2024-05-16
1035Spain2024-06-02
1036Canada2024-06-02
1037Russia2024-05-17
1038Brazil2024-05-31
1039Japan2024-05-22
1040United Kingdom2024-05-18
1041India2024-05-08
1042Germany2024-05-14
1043France2024-05-21
1044Japan2024-06-02
1045India2024-05-22
1046India2024-05-04
1047Brazil2024-05-27
1048Russia2024-05-12
1049France2024-05-28

On-Demand Data

NameIdCountryDate
Jeanfrancois E Kusko1000Italy2024-05-21
Aruna I Poquette1001Russia2024-05-16
Morrow D Stockham1002Japan2024-05-21
Mujtaba E Flosi1003Germany2024-05-04
Kadeem M Ruta1004Australia2024-05-13
Jones J Kusko1005United Kingdom2024-05-11
Juan V Caldarera1006Australia2024-05-16
Greenwood F Bowley1007Spain2024-05-07
Morrow G Kolmetz1008France2024-05-04
Jefferson R Albares1009Russia2024-05-22
Darci Q Oldroyd1010Russia2024-05-11
David V Rulapaugh1011Brazil2024-05-31
Maisha L Foller1012Australia2024-05-05
Murillo V Venere1013France2024-05-18
Antonio G Foller1014Italy2024-05-23
Johnson S Slusarski1015France2024-05-24
Aditya U Marrier1016Germany2024-05-17
Cody Q Ostrosky1017Russia2024-05-13
Jeanfrancois Z Waycott1018Russia2024-05-15
Tony B Caudy1019Spain2024-06-02
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Deepesh E CaudyRussiaAmy Elsner NEGOTIATION
Aruna L InouyeJapanBernardo Dominic QUALIFIED
Sinclair W CaldareraArgentinaIvan Magalhaes UNQUALIFIED
Alejandro T GillianItalyBernardo Dominic PROPOSAL
Ricardo O VocelkaIndiaXuxue Feng RENEWAL
Maria R MaletItalyAsiya Javayant RENEWAL
Johnson Q PoquetteCanadaStephen Shaw NEW
Claire Q SaylorsGermanyIvan Magalhaes RENEWAL
Claire V SaylorsSpainBernardo Dominic NEGOTIATION
Stacey K ShinkoIndiaXuxue Feng NEGOTIATION
Aruna K CampainFranceIoni Bowcher NEGOTIATION
Leon S ChuiJapanBernardo Dominic UNQUALIFIED
Stacey T CaudyFranceAsiya Javayant QUALIFIED
Mayumi W MarrierBrazilIvan Magalhaes UNQUALIFIED
David G FigeroaFranceAsiya Javayant NEGOTIATION
Maisha Y GauchoBrazilElwin Sharvill NEGOTIATION
Jones O ShinkoRussiaXuxue Feng PROPOSAL
James Q VocelkaFranceElwin Sharvill QUALIFIED
Ivar H CaudyFranceIoni Bowcher QUALIFIED
Jones Y SchemmerGermanyOnyama Limba NEW
Juan K RulapaughRussiaXuxue Feng QUALIFIED
Maisha T CaldareraBrazilBernardo Dominic UNQUALIFIED
Alejandro B OstroskyRussiaElwin Sharvill UNQUALIFIED
Chavez N ButtAustraliaAnna Fali PROPOSAL
Arvin D DilliardAustraliaElwin Sharvill NEGOTIATION
Juan W SchemmerSpainAsiya Javayant NEGOTIATION
Cody A KuskoGermanyAsiya Javayant QUALIFIED
Aika H SchemmerRussiaBernardo Dominic UNQUALIFIED
Aika S CampainBrazilOnyama Limba NEGOTIATION
Morrow C NickaSpainStephen Shaw QUALIFIED
Clifford O WhobreyJapanAnna Fali QUALIFIED
Smith N AlbaresSpainIoni Bowcher NEGOTIATION
Sinclair N InouyeArgentinaAsiya Javayant QUALIFIED
Antonio P MacleadRussiaBernardo Dominic NEGOTIATION
Jeanfrancois L RoysterCanadaElwin Sharvill RENEWAL
Jefferson J StensethJapanIoni Bowcher RENEWAL
Maria D DoeFranceBernardo Dominic RENEWAL
Leja X CampainCanadaAmy Elsner RENEWAL
Ricardo L GarufiGermanyXuxue Feng NEGOTIATION
Stacey Q ChuiUnited KingdomBernardo Dominic 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>