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
Aditya J FlosiItalyIvan Magalhaes PROPOSAL
Tony A PoquetteGermanyBernardo Dominic PROPOSAL
Tony I GauchoCanadaIoni Bowcher NEGOTIATION
Maria V MaletCanadaBernardo Dominic UNQUALIFIED
Alejandro S MaletGermanyIoni Bowcher QUALIFIED
Claire A NestleUnited KingdomIvan Magalhaes RENEWAL
Faith H SchemmerJapanAsiya Javayant NEGOTIATION
Aika J BologniaFranceAnna Fali PROPOSAL
Deepesh D AmigonBrazilXuxue Feng PROPOSAL
Faith J StensethRussiaOnyama Limba UNQUALIFIED
Maisha O NickaItalyAsiya Javayant NEGOTIATION
Ashley W PerinIndiaOnyama Limba PROPOSAL
Smith N RutaFranceOnyama Limba QUALIFIED
Aruna V SergiRussiaIoni Bowcher UNQUALIFIED
Maria M CaldareraAustraliaAnna Fali QUALIFIED
Costa S SchemmerGermanyIoni Bowcher PROPOSAL
Smith J GarufiCanadaAsiya Javayant NEW
Adams P DoeBrazilXuxue Feng PROPOSAL
Greenwood Y PerinGermanyAsiya Javayant NEW
Aruna Z WhobreySpainAnna Fali QUALIFIED
Juan Q NickaItalyOnyama Limba NEW
Izzy W SchemmerRussiaAnna Fali NEW
Tony E SchemmerAustraliaElwin Sharvill NEW
Maria M SergiItalyXuxue Feng PROPOSAL
Ashley A BriddickAustraliaIvan Magalhaes NEW
Aika C StockhamJapanElwin Sharvill PROPOSAL
Jennifer T SergiFranceOnyama Limba NEW
Johnson V SergiGermanyXuxue Feng QUALIFIED
Antonio J MorascaAustraliaAsiya Javayant NEGOTIATION
Rodrigues Y FerenczBrazilAnna Fali RENEWAL
Ricardo F MaletArgentinaXuxue Feng NEGOTIATION
Ashley Y MaletAustraliaAmy Elsner UNQUALIFIED
Ivar H FlosiJapanAsiya Javayant UNQUALIFIED
Emily J PerinGermanyAnna Fali PROPOSAL
Faith G MorascaIndiaXuxue Feng QUALIFIED
Chavez F FerenczRussiaStephen Shaw QUALIFIED
Sinclair Z VocelkaJapanOnyama Limba PROPOSAL
Ivar Q FigeroaUnited KingdomOnyama Limba NEGOTIATION
Misaki I TollnerCanadaBernardo Dominic QUALIFIED
Greenwood G FigeroaUnited KingdomIoni Bowcher UNQUALIFIED
Darci J MaletFranceAmy Elsner RENEWAL
Jeanfrancois S InouyeFranceAsiya Javayant PROPOSAL
Misaki I ButtItalyAnna Fali QUALIFIED
Maria D ChuiCanadaAnna Fali NEGOTIATION
Adams B GarufiFranceBernardo Dominic PROPOSAL
Chavez U StockhamCanadaAmy Elsner NEGOTIATION
James F GauchoSpainOnyama Limba QUALIFIED
Salvatore B CaudyAustraliaXuxue Feng RENEWAL
Isabel R CampainFranceXuxue Feng UNQUALIFIED
Jeanfrancois Q FollerArgentinaIoni Bowcher NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Sinclair E DilliardBrazilIvan Magalhaes UNQUALIFIED
Jennifer L DarakjyArgentinaOnyama Limba NEW
James O GillianArgentinaAsiya Javayant PROPOSAL
Faith K BriddickArgentinaXuxue Feng PROPOSAL
Darci R FlosiIndiaAsiya Javayant UNQUALIFIED
Misaki A FerenczSpainBernardo Dominic NEW
Darci N RutaJapanAmy Elsner PROPOSAL
James X BologniaJapanAsiya Javayant QUALIFIED
Silvio E NestleItalyOnyama Limba PROPOSAL
Kaitlin F MorascaUnited KingdomAnna Fali NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Rodrigues R CampainItaly2024-06-16Chapman, Ross E Esq UNQUALIFIED76Elwin Sharvill
1001Smith I CaudyItaly2024-06-14Truhlar And Truhlar Attys UNQUALIFIED23Onyama Limba
1002Murillo F WieserRussia2024-06-01Truhlar And Truhlar Attys RENEWAL70Bernardo Dominic
1003Claire Z VocelkaIndia2024-06-05King, Christopher A Esq NEGOTIATION85Stephen Shaw
1004Juan D AmigonGermany2024-05-25Dorl, James J Esq QUALIFIED19Onyama Limba
1005Tony W OstroskyGermany2024-06-10Feltz Printing Service NEW88Bernardo Dominic
1006Mayumi U FlosiFrance2024-06-02Feltz Printing Service UNQUALIFIED21Amy Elsner
1007Jennifer C OstroskySpain2024-06-08Benton, John B Jr UNQUALIFIED9Onyama Limba
1008Chavez P ButtGermany2024-06-07Chapman, Ross E Esq NEW35Ivan Magalhaes
1009Tony J AmigonAustralia2024-06-05Rousseaux, Michael Esq QUALIFIED68Anna Fali
1010Jennifer Q NickaAustralia2024-06-10Morlong Associates UNQUALIFIED50Bernardo Dominic
1011Rodrigues O RutaCanada2024-05-30Morlong Associates RENEWAL17Ioni Bowcher
1012Munro A RutaFrance2024-05-21Feiner Bros NEGOTIATION26Anna Fali
1013Adams A AmigonFrance2024-05-31Buckley Miller Wright UNQUALIFIED39Xuxue Feng
1014Johnson A ButtCanada2024-05-28Dorl, James J Esq PROPOSAL5Anna Fali
1015David X AmigonItaly2024-06-13King, Christopher A Esq NEGOTIATION28Ioni Bowcher
1016Sinclair N ChuiSpain2024-06-13Buckley Miller Wright NEGOTIATION28Amy Elsner
1017Claire L SergiIndia2024-05-23Benton, John B Jr UNQUALIFIED56Onyama Limba
1018Aruna V BowleyBrazil2024-05-26Feiner Bros QUALIFIED19Bernardo Dominic
1019Costa B PerinIndia2024-06-03Dorl, James J Esq NEGOTIATION33Asiya Javayant
1020Clifford A VenereItaly2024-05-30Chanay, Jeffrey A Esq RENEWAL89Asiya Javayant
1021Kadeem P GarufiArgentina2024-05-24Chanay, Jeffrey A Esq UNQUALIFIED21Anna Fali
1022Stacey R WieserAustralia2024-06-05Feltz Printing Service PROPOSAL75Onyama Limba
1023Kaitlin S NickaFrance2024-05-20Truhlar And Truhlar Attys UNQUALIFIED67Ioni Bowcher
1024James C SergiFrance2024-06-05Rousseaux, Michael Esq UNQUALIFIED99Onyama Limba
1025Smith M StensethItaly2024-06-12Feiner Bros QUALIFIED55Amy Elsner
1026Jeanfrancois H RimGermany2024-05-28Commercial Press NEW99Bernardo Dominic
1027Darci A WaycottRussia2024-05-28Chapman, Ross E Esq NEW25Elwin Sharvill
1028Isabel K SaylorsGermany2024-06-06Benton, John B Jr UNQUALIFIED44Asiya Javayant
1029Juan Z SchemmerSpain2024-06-10Chanay, Jeffrey A Esq NEW54Elwin Sharvill
1030Ashley K DilliardIndia2024-06-04Commercial Press QUALIFIED24Anna Fali
1031Clifford N KolmetzItaly2024-06-11Chanay, Jeffrey A Esq NEGOTIATION59Asiya Javayant
1032Emily G GauchoIndia2024-05-22Truhlar And Truhlar Attys RENEWAL18Amy Elsner
1033Munro P GillianArgentina2024-06-14Benton, John B Jr RENEWAL45Stephen Shaw
1034Tony X NestleIndia2024-06-16Chapman, Ross E Esq NEGOTIATION25Elwin Sharvill
1035Kaitlin L MaletItaly2024-05-20Truhlar And Truhlar Attys PROPOSAL65Elwin Sharvill
1036Francesco E BriddickArgentina2024-05-22Printing Dimensions QUALIFIED56Ioni Bowcher
1037Aika Q CaldareraJapan2024-05-22Rousseaux, Michael Esq NEW49Ivan Magalhaes
1038Chavez D BriddickIndia2024-05-27Feiner Bros RENEWAL14Asiya Javayant
1039Aditya N BriddickFrance2024-05-22Dorl, James J Esq NEW70Anna Fali
1040Maisha Q SchemmerCanada2024-05-29Feltz Printing Service NEGOTIATION17Amy Elsner
1041Mujtaba T GauchoFrance2024-05-19King, Christopher A Esq NEGOTIATION85Anna Fali
1042Juan Z KolmetzArgentina2024-06-06Commercial Press UNQUALIFIED33Bernardo Dominic
1043Cody O GauchoBrazil2024-06-09Feiner Bros NEGOTIATION7Asiya Javayant
1044Tony Q FlosiGermany2024-05-30Chapman, Ross E Esq NEW86Bernardo Dominic
1045David K FerenczFrance2024-05-21Feltz Printing Service RENEWAL3Stephen Shaw
1046Antonio R WhobreySpain2024-06-08Printing Dimensions NEW60Onyama Limba
1047Sinclair G WaycottJapan2024-05-22Buckley Miller Wright RENEWAL81Ivan Magalhaes
1048Morrow C FerenczArgentina2024-06-03Truhlar And Truhlar Attys QUALIFIED90Ivan Magalhaes
1049Arvin F AmigonGermany2024-06-05Buckley Miller Wright NEW26Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Arvin F CaudyFranceBernardo Dominic NEW
Mujtaba N DarakjyRussiaAmy Elsner QUALIFIED
Mujtaba C RimUnited KingdomXuxue Feng NEGOTIATION
Isabel Y IturbideUnited KingdomStephen Shaw UNQUALIFIED
Darci N KolmetzBrazilIoni Bowcher NEGOTIATION
Maria W MorascaRussiaAsiya Javayant UNQUALIFIED
Wickens P GarufiJapanBernardo Dominic NEW
Francesco V VocelkaBrazilXuxue Feng NEW
Maisha G CampainGermanyXuxue Feng UNQUALIFIED
Faith Y AlbaresSpainElwin Sharvill PROPOSAL
Julie O PaprockiBrazilXuxue Feng NEW
James J IturbideArgentinaXuxue Feng QUALIFIED
Wickens J KolmetzIndiaIvan Magalhaes NEGOTIATION
Ivar J MaletGermanyOnyama Limba NEW
Munro L GillianAustraliaAsiya Javayant PROPOSAL
Adams C AlbaresGermanyIoni Bowcher NEGOTIATION
Isabel C OstroskyItalyBernardo Dominic RENEWAL
Emily N NestleAustraliaXuxue Feng PROPOSAL
Sinclair H TollnerFranceBernardo Dominic UNQUALIFIED
Munro C WaycottGermanyIoni Bowcher UNQUALIFIED
Sinclair R SaylorsBrazilAmy Elsner QUALIFIED
Mayumi P WieserItalyOnyama Limba PROPOSAL
Mujtaba B BowleyRussiaXuxue Feng NEGOTIATION
Aruna W DarakjyAustraliaStephen Shaw PROPOSAL
Silvio J GarufiJapanIoni Bowcher QUALIFIED
Ashley W DarakjyCanadaElwin Sharvill UNQUALIFIED
Munro D RimJapanIvan Magalhaes NEGOTIATION
Ashley C RoysterAustraliaAmy Elsner NEGOTIATION
Chavez W OstroskyArgentinaAsiya Javayant NEW
Leja N GauchoBrazilIoni Bowcher NEGOTIATION
Faith S RimRussiaAmy Elsner PROPOSAL
Darci T StockhamRussiaAsiya Javayant RENEWAL
Julie Z FerenczSpainBernardo Dominic NEW
Jones G ButtBrazilIoni Bowcher UNQUALIFIED
Aditya C NestleBrazilOnyama Limba RENEWAL
Ricardo X AlbaresCanadaAnna Fali PROPOSAL
Antonio M RulapaughBrazilAsiya Javayant NEGOTIATION
Johnson U SergiRussiaStephen Shaw QUALIFIED
Jeanfrancois L BowleyArgentinaElwin Sharvill UNQUALIFIED
Wickens Z RulapaughBrazilAmy Elsner NEW
Nicolas D AmigonSpainXuxue Feng PROPOSAL
Francesco X VenereIndiaAsiya Javayant QUALIFIED
Claire M AlbaresFranceAnna Fali PROPOSAL
Aika S MarrierFranceAnna Fali NEW
Chavez I DoeBrazilOnyama Limba NEGOTIATION
Darci B GillianRussiaXuxue Feng NEW
Rodrigues G KuskoSpainIvan Magalhaes PROPOSAL
Juan N NestleGermanyElwin Sharvill NEGOTIATION
Wickens S KolmetzFranceBernardo Dominic QUALIFIED
Mujtaba A StensethUnited KingdomElwin Sharvill UNQUALIFIED
Frozen Columns
Name
Kadeem V Darakjy
Isabel K Flosi
Smith W Gillian
Maisha U Venere
Salvatore P Saylors
Leja E Ferencz
Jennifer M Stockham
Claire V Chui
Darci X Tollner
Emily V Morasca
Ashley L Wieser
Stacey D Maclead
Isabel S Wieser
Wickens I Rim
Sinclair V Oldroyd
Tony Q Campain
Maisha H Tollner
Costa S Kolmetz
Darci W Albares
Salvatore F Gillian
Johnson E Amigon
Darci O Tollner
Kadeem V Campain
Salvatore G Gillian
Morrow T Caldarera
Sinclair U Poquette
Octavia P Inouye
Greenwood W Ruta
Aruna U Caudy
Tony Q Darakjy
Arvin J Ferencz
Aditya Y Rim
Juan S Paprocki
David W Rim
Munro G Marrier
Smith N Tollner
Arvin V Kolmetz
Cody Q Kolmetz
Juan A Chui
Murillo E Morasca
Sinclair X Venere
Izzy A Briddick
Ricardo W Amigon
Aruna L Amigon
Nicolas W Rulapaugh
Silvio O Schemmer
Ivar Z Figeroa
Julie S Caudy
Tony A Nicka
Wickens H Shinko
IdCountryDate
1000Canada2024-06-03
1001France2024-06-14
1002France2024-05-23
1003Russia2024-06-09
1004France2024-05-23
1005India2024-06-09
1006Japan2024-05-19
1007Australia2024-06-14
1008Argentina2024-06-02
1009Russia2024-05-30
1010Russia2024-06-15
1011India2024-06-12
1012France2024-06-16
1013United Kingdom2024-05-27
1014Australia2024-06-06
1015United Kingdom2024-05-19
1016Japan2024-06-10
1017France2024-06-12
1018Australia2024-06-05
1019Argentina2024-06-05
1020Germany2024-05-25
1021Canada2024-05-27
1022Russia2024-06-02
1023France2024-06-12
1024Canada2024-05-25
1025United Kingdom2024-06-09
1026Canada2024-05-24
1027India2024-05-30
1028Australia2024-05-28
1029Australia2024-05-26
1030United Kingdom2024-06-14
1031Russia2024-05-25
1032Australia2024-05-27
1033Spain2024-05-23
1034Spain2024-05-18
1035Italy2024-05-25
1036France2024-06-06
1037United Kingdom2024-06-03
1038United Kingdom2024-05-25
1039Australia2024-05-21
1040Italy2024-05-21
1041Spain2024-05-30
1042France2024-06-03
1043Argentina2024-05-29
1044Germany2024-06-08
1045Spain2024-06-12
1046Italy2024-05-29
1047Germany2024-05-24
1048Australia2024-05-29
1049Russia2024-05-25

On-Demand Data

NameIdCountryDate
Izzy L Schemmer1000India2024-05-26
Clifford J Caldarera1001Argentina2024-05-23
Adams J Inouye1002France2024-05-22
Cody L Whobrey1003Australia2024-06-10
Juan Z Bolognia1004Argentina2024-06-14
Johnson J Shinko1005Russia2024-05-22
Kadeem X Iturbide1006Argentina2024-05-21
Juan D Bolognia1007India2024-06-12
Ricardo T Briddick1008Australia2024-05-26
Sinclair B Tollner1009Italy2024-06-16
Clifford Q Saylors1010Argentina2024-05-30
Mujtaba A Nicka1011Spain2024-05-24
Darci Q Foller1012Italy2024-05-19
Juan X Flosi1013Spain2024-05-28
James O Stenseth1014Spain2024-05-30
Emily U Marrier1015Spain2024-05-30
Darci N Waycott1016Spain2024-06-10
Deepesh S Vocelka1017Italy2024-05-24
Faith S Foller1018Russia2024-05-28
David T Ferencz1019India2024-06-10
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jeanfrancois C MaletRussiaAsiya Javayant PROPOSAL
Costa Y TollnerAustraliaOnyama Limba NEGOTIATION
David L AmigonBrazilAnna Fali NEW
Nicolas T WieserJapanAnna Fali UNQUALIFIED
Cody K VenereCanadaAsiya Javayant RENEWAL
Maria Y SlusarskiSpainBernardo Dominic QUALIFIED
Jennifer M FerenczAustraliaIvan Magalhaes UNQUALIFIED
Mayumi R MaletFranceOnyama Limba UNQUALIFIED
Octavia E BriddickItalyAmy Elsner RENEWAL
Greenwood J MorascaFranceBernardo Dominic NEW
Kaitlin E StockhamUnited KingdomElwin Sharvill RENEWAL
Aika L FigeroaSpainStephen Shaw PROPOSAL
Alejandro T VenereIndiaIvan Magalhaes QUALIFIED
Antonio A PerinUnited KingdomIvan Magalhaes NEGOTIATION
Emily G TollnerSpainIoni Bowcher PROPOSAL
Tony M OstroskyBrazilAnna Fali NEGOTIATION
Antonio S DoeCanadaIoni Bowcher RENEWAL
Alejandro X BriddickItalyAsiya Javayant UNQUALIFIED
Jefferson F GlickFranceAnna Fali QUALIFIED
Wickens M FerenczAustraliaIoni Bowcher RENEWAL
Greenwood R WhobreyAustraliaElwin Sharvill PROPOSAL
David X DoeBrazilIvan Magalhaes UNQUALIFIED
Chavez L ButtBrazilAsiya Javayant PROPOSAL
Octavia Q NickaCanadaAnna Fali RENEWAL
Jeanfrancois P SchemmerCanadaBernardo Dominic PROPOSAL
Maisha X RutaRussiaXuxue Feng UNQUALIFIED
Silvio D GauchoUnited KingdomElwin Sharvill QUALIFIED
Juan X StockhamRussiaStephen Shaw QUALIFIED
Juan W MaletSpainIoni Bowcher RENEWAL
Munro T WieserArgentinaAnna Fali PROPOSAL
Arvin J CaldareraGermanyBernardo Dominic QUALIFIED
Nicolas W FlosiUnited KingdomAnna Fali NEW
Costa G InouyeGermanyElwin Sharvill RENEWAL
Izzy O RoysterFranceStephen Shaw PROPOSAL
Leja W SaylorsJapanAnna Fali NEW
Isabel J VenereGermanyBernardo Dominic RENEWAL
Tony V RoysterIndiaAmy Elsner QUALIFIED
Ashley B WieserIndiaOnyama Limba PROPOSAL
Jones L KolmetzBrazilStephen Shaw RENEWAL
Mayumi A RoysterArgentinaAsiya Javayant 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>