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
Smith J RulapaughAustraliaBernardo Dominic QUALIFIED
Ricardo Z SaylorsRussiaStephen Shaw NEW
Jones F VenereCanadaAnna Fali PROPOSAL
Cody C SlusarskiArgentinaIoni Bowcher NEW
Francesco I KolmetzBrazilStephen Shaw PROPOSAL
Emily H RutaRussiaAnna Fali QUALIFIED
Kadeem I RoysterJapanStephen Shaw UNQUALIFIED
Misaki F ChuiBrazilIvan Magalhaes RENEWAL
Smith Z VocelkaGermanyAmy Elsner RENEWAL
Adams D SlusarskiIndiaXuxue Feng NEGOTIATION
Arvin S OstroskyJapanElwin Sharvill PROPOSAL
Morrow W BowleyFranceElwin Sharvill RENEWAL
Cody B IturbideRussiaElwin Sharvill PROPOSAL
Jennifer Q RimUnited KingdomIvan Magalhaes UNQUALIFIED
Murillo E ButtArgentinaBernardo Dominic NEGOTIATION
Sinclair U CaldareraBrazilElwin Sharvill NEW
Clifford H RutaSpainIvan Magalhaes UNQUALIFIED
Ricardo R FerenczJapanAsiya Javayant UNQUALIFIED
Emily S MaletIndiaXuxue Feng RENEWAL
Leon F SergiIndiaAmy Elsner NEGOTIATION
Clifford Q KolmetzUnited KingdomAsiya Javayant NEW
Murillo P FlosiArgentinaOnyama Limba PROPOSAL
Adams M FlosiFranceAnna Fali RENEWAL
Mayumi K SaylorsSpainStephen Shaw RENEWAL
Faith O SergiJapanXuxue Feng RENEWAL
Wickens V DilliardJapanAsiya Javayant QUALIFIED
Chavez A MaletIndiaOnyama Limba NEGOTIATION
Greenwood O KolmetzRussiaAsiya Javayant RENEWAL
Adams N WaycottSpainElwin Sharvill PROPOSAL
Morrow Y GillianJapanStephen Shaw NEW
Munro S GauchoFranceAsiya Javayant PROPOSAL
James D WaycottIndiaIvan Magalhaes PROPOSAL
Morrow F StockhamIndiaStephen Shaw PROPOSAL
Sinclair M GarufiRussiaStephen Shaw QUALIFIED
Octavia H FerenczItalyAnna Fali QUALIFIED
Sinclair Z CaldareraArgentinaAsiya Javayant NEGOTIATION
Jennifer C NestleJapanOnyama Limba UNQUALIFIED
Wickens P CampainRussiaOnyama Limba UNQUALIFIED
Silvio K RoysterBrazilElwin Sharvill PROPOSAL
Leon W NickaArgentinaBernardo Dominic PROPOSAL
Morrow Z OldroydRussiaIvan Magalhaes NEW
Ashley Z OstroskyJapanStephen Shaw NEGOTIATION
Julie I WaycottAustraliaAmy Elsner UNQUALIFIED
Johnson P MacleadJapanAmy Elsner NEW
Leja T RulapaughUnited KingdomAnna Fali QUALIFIED
Wickens O OstroskyUnited KingdomAsiya Javayant QUALIFIED
Aditya S FollerIndiaAmy Elsner RENEWAL
Emily U WhobreyFranceElwin Sharvill UNQUALIFIED
Adams Q WhobreyJapanAnna Fali PROPOSAL
Aditya X KuskoBrazilIvan Magalhaes RENEWAL
Horizontal
NameCountryRepresentativeStatus
Alejandro E RimGermanyElwin Sharvill RENEWAL
Faith B TollnerCanadaIoni Bowcher UNQUALIFIED
Wickens O BowleyUnited KingdomAmy Elsner RENEWAL
Salvatore G KolmetzUnited KingdomAnna Fali RENEWAL
Jefferson E GarufiAustraliaXuxue Feng UNQUALIFIED
Rodrigues M DoeJapanAnna Fali PROPOSAL
Juan R PerinUnited KingdomAsiya Javayant PROPOSAL
Ivar H OldroydFranceAnna Fali PROPOSAL
Claire L BologniaItalyXuxue Feng PROPOSAL
Jeanfrancois P CaudyAustraliaBernardo Dominic QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jefferson O StensethUnited Kingdom2024-06-10King, Christopher A Esq RENEWAL54Onyama Limba
1001Sinclair D RimItaly2024-06-11Truhlar And Truhlar Attys RENEWAL87Anna Fali
1002Jefferson P WhobreyArgentina2024-05-19Rangoni Of Florence UNQUALIFIED55Ioni Bowcher
1003Mujtaba A CampainIndia2024-05-21Rousseaux, Michael Esq NEW45Elwin Sharvill
1004James L MorascaBrazil2024-05-19Feiner Bros QUALIFIED83Amy Elsner
1005Aruna X ShinkoFrance2024-05-26Printing Dimensions QUALIFIED94Anna Fali
1006Julie L RutaItaly2024-06-13Feiner Bros PROPOSAL27Bernardo Dominic
1007Julie P WhobreyItaly2024-05-18Buckley Miller Wright QUALIFIED50Ioni Bowcher
1008David X GillianIndia2024-06-03Chapman, Ross E Esq NEGOTIATION80Elwin Sharvill
1009Tony X OldroydBrazil2024-05-19Buckley Miller Wright NEGOTIATION24Amy Elsner
1010Ricardo H SlusarskiFrance2024-06-06Rangoni Of Florence QUALIFIED2Elwin Sharvill
1011Darci J WhobreyJapan2024-06-14Rangoni Of Florence RENEWAL98Amy Elsner
1012Aruna W GauchoArgentina2024-05-19Chapman, Ross E Esq PROPOSAL63Asiya Javayant
1013Arvin C PoquetteRussia2024-06-09Chanay, Jeffrey A Esq QUALIFIED82Bernardo Dominic
1014Alejandro M GillianArgentina2024-06-11Rangoni Of Florence NEGOTIATION68Elwin Sharvill
1015Johnson H OstroskyItaly2024-05-18King, Christopher A Esq UNQUALIFIED96Xuxue Feng
1016Stacey D RoysterJapan2024-06-10Chapman, Ross E Esq RENEWAL10Stephen Shaw
1017Faith X KolmetzJapan2024-06-08Chemel, James L Cpa NEW73Stephen Shaw
1018Johnson W FlosiArgentina2024-05-23Buckley Miller Wright UNQUALIFIED25Bernardo Dominic
1019Arvin Y PerinGermany2024-06-07Chanay, Jeffrey A Esq NEGOTIATION69Bernardo Dominic
1020Sinclair K TollnerCanada2024-06-01Chapman, Ross E Esq QUALIFIED34Elwin Sharvill
1021Francesco D DilliardJapan2024-06-04Commercial Press PROPOSAL28Asiya Javayant
1022Jones S NickaUnited Kingdom2024-06-02Dorl, James J Esq QUALIFIED52Amy Elsner
1023Mujtaba B InouyeJapan2024-05-25Buckley Miller Wright NEW57Stephen Shaw
1024Julie F RimJapan2024-06-09Benton, John B Jr RENEWAL95Amy Elsner
1025Kadeem C GarufiJapan2024-06-05Truhlar And Truhlar Attys NEW20Amy Elsner
1026Murillo M GarufiUnited Kingdom2024-05-22Chapman, Ross E Esq PROPOSAL30Xuxue Feng
1027Mayumi Q SaylorsAustralia2024-05-31Morlong Associates NEGOTIATION56Bernardo Dominic
1028James M BologniaUnited Kingdom2024-06-07Dorl, James J Esq UNQUALIFIED21Anna Fali
1029Munro C MorascaCanada2024-06-03Benton, John B Jr PROPOSAL69Xuxue Feng
1030Claire I CampainArgentina2024-05-28Commercial Press UNQUALIFIED91Asiya Javayant
1031Aika B CampainIndia2024-06-02Dorl, James J Esq NEW14Ivan Magalhaes
1032Cody S OstroskyCanada2024-06-10Chemel, James L Cpa PROPOSAL20Anna Fali
1033Antonio H MarrierGermany2024-06-09Commercial Press NEGOTIATION22Ioni Bowcher
1034Jennifer X ButtBrazil2024-05-25Feiner Bros NEW99Anna Fali
1035Maria A InouyeGermany2024-06-01Commercial Press QUALIFIED69Bernardo Dominic
1036Isabel G VocelkaJapan2024-06-13Commercial Press PROPOSAL89Amy Elsner
1037Julie I BriddickArgentina2024-05-28Buckley Miller Wright PROPOSAL81Ioni Bowcher
1038Aditya H GarufiItaly2024-05-27Feltz Printing Service NEW64Stephen Shaw
1039Johnson T SlusarskiFrance2024-06-11Rangoni Of Florence QUALIFIED81Xuxue Feng
1040James F DoeAustralia2024-06-14Morlong Associates NEW34Ivan Magalhaes
1041Faith A CaudyArgentina2024-05-22Chanay, Jeffrey A Esq NEW6Amy Elsner
1042Faith K PaprockiJapan2024-05-20Commercial Press RENEWAL60Onyama Limba
1043Morrow A DoeItaly2024-05-20Truhlar And Truhlar Attys UNQUALIFIED45Xuxue Feng
1044Maisha V IturbideFrance2024-05-18Benton, John B Jr UNQUALIFIED76Asiya Javayant
1045Wickens H WaycottCanada2024-06-03Commercial Press NEW70Amy Elsner
1046Izzy B IturbideSpain2024-05-21Buckley Miller Wright NEGOTIATION47Amy Elsner
1047Octavia U SaylorsItaly2024-06-09Rangoni Of Florence QUALIFIED82Elwin Sharvill
1048Smith G GillianUnited Kingdom2024-05-30Truhlar And Truhlar Attys QUALIFIED35Onyama Limba
1049Johnson E GarufiCanada2024-05-26Benton, John B Jr QUALIFIED5Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Clifford S MarrierArgentinaBernardo Dominic NEGOTIATION
Aruna X VenereRussiaStephen Shaw RENEWAL
Murillo N PoquetteAustraliaStephen Shaw RENEWAL
Maria W PerinArgentinaOnyama Limba UNQUALIFIED
Claire F CaldareraIndiaBernardo Dominic RENEWAL
Jones G KolmetzJapanStephen Shaw NEW
Aruna A DarakjyRussiaXuxue Feng QUALIFIED
Tony U FollerIndiaStephen Shaw NEGOTIATION
Antonio G FigeroaCanadaOnyama Limba NEW
Julie P FigeroaGermanyAsiya Javayant UNQUALIFIED
Rodrigues M GillianIndiaOnyama Limba NEGOTIATION
Arvin R StockhamIndiaXuxue Feng UNQUALIFIED
Isabel D DoeIndiaAnna Fali NEGOTIATION
Claire E PerinFranceAsiya Javayant NEW
Emily R WaycottUnited KingdomAnna Fali PROPOSAL
Arvin Q ButtBrazilStephen Shaw RENEWAL
Julie B PerinCanadaAsiya Javayant RENEWAL
Francesco J BriddickIndiaAnna Fali NEGOTIATION
Francesco A SchemmerArgentinaElwin Sharvill RENEWAL
Wickens R CaudyItalyElwin Sharvill RENEWAL
Ricardo J FigeroaFranceIoni Bowcher UNQUALIFIED
Leja W CampainSpainStephen Shaw NEGOTIATION
Emily W GarufiCanadaBernardo Dominic RENEWAL
Ivar H ButtGermanyAsiya Javayant QUALIFIED
Misaki P FlosiJapanIoni Bowcher PROPOSAL
Leon R WaycottRussiaStephen Shaw QUALIFIED
Julie Z InouyeRussiaOnyama Limba QUALIFIED
Francesco R KolmetzSpainElwin Sharvill RENEWAL
Mayumi S StensethIndiaBernardo Dominic PROPOSAL
Greenwood O GlickItalyAnna Fali UNQUALIFIED
Wickens H DarakjyBrazilIoni Bowcher PROPOSAL
Ivar L StockhamCanadaOnyama Limba NEW
Nicolas B IturbideItalyBernardo Dominic NEW
Jones P RutaRussiaAnna Fali NEGOTIATION
Salvatore G IturbideCanadaBernardo Dominic PROPOSAL
Francesco L RutaFranceStephen Shaw QUALIFIED
Kadeem C RulapaughIndiaAmy Elsner UNQUALIFIED
Aika V RoysterSpainAnna Fali NEW
Smith V MaletAustraliaAmy Elsner UNQUALIFIED
Jones W CampainArgentinaAnna Fali NEW
Leja S GauchoJapanBernardo Dominic PROPOSAL
Munro G MorascaBrazilIoni Bowcher PROPOSAL
Salvatore M CampainItalyXuxue Feng PROPOSAL
Mujtaba M GarufiJapanAmy Elsner UNQUALIFIED
Ivar Z WaycottJapanIoni Bowcher PROPOSAL
Murillo K CampainBrazilOnyama Limba NEW
Sinclair K RoysterAustraliaIvan Magalhaes RENEWAL
Costa F WaycottCanadaAmy Elsner PROPOSAL
Ricardo I MorascaRussiaAnna Fali QUALIFIED
Greenwood H OldroydCanadaBernardo Dominic NEW
Frozen Columns
Name
Misaki O Maclead
Ricardo F Kolmetz
Jennifer L Rim
Faith H Whobrey
Deepesh J Gillian
Maisha G Wieser
Kaitlin T Whobrey
Ivar Y Stockham
James F Foller
Isabel M Slusarski
James H Doe
Maisha F Malet
Munro I Briddick
Maria I Saylors
Isabel M Morasca
Aruna M Oldroyd
Chavez F Waycott
Aika T Vocelka
Aditya S Stenseth
Maisha T Shinko
Jones Q Morasca
Izzy S Royster
Kaitlin T Gaucho
Smith Y Paprocki
Emily T Chui
Izzy C Waycott
David F Slusarski
Darci R Schemmer
Mujtaba T Garufi
Nicolas Q Glick
Darci V Malet
Darci E Ruta
Jeanfrancois C Chui
Aika J Dilliard
Octavia B Shinko
Maisha T Waycott
Ricardo U Saylors
Stacey Q Briddick
Leon K Shinko
Morrow Y Shinko
Ashley D Gillian
Sinclair K Poquette
Deepesh T Iturbide
Greenwood M Nestle
Jefferson V Sergi
Jefferson N Slusarski
Wickens V Malet
Octavia U Whobrey
Francesco C Tollner
Clifford A Wieser
IdCountryDate
1000Canada2024-05-22
1001France2024-05-27
1002India2024-06-01
1003Spain2024-06-04
1004Brazil2024-06-10
1005Australia2024-06-10
1006Russia2024-05-17
1007Japan2024-05-30
1008Australia2024-06-03
1009Russia2024-05-19
1010Italy2024-06-07
1011Argentina2024-05-18
1012Russia2024-05-27
1013India2024-06-13
1014Argentina2024-05-24
1015Spain2024-05-21
1016France2024-06-02
1017India2024-05-17
1018Brazil2024-06-10
1019India2024-05-27
1020Brazil2024-05-29
1021India2024-06-12
1022France2024-05-18
1023Italy2024-06-09
1024Brazil2024-05-17
1025Brazil2024-06-08
1026Australia2024-05-26
1027Italy2024-06-02
1028Spain2024-05-30
1029Argentina2024-05-26
1030Spain2024-06-11
1031Australia2024-06-06
1032Russia2024-05-22
1033Brazil2024-06-10
1034Australia2024-05-26
1035Germany2024-06-07
1036France2024-05-23
1037Germany2024-06-01
1038India2024-05-31
1039India2024-06-04
1040Japan2024-05-23
1041Australia2024-06-08
1042Italy2024-05-28
1043Germany2024-05-23
1044France2024-06-12
1045Argentina2024-05-31
1046Spain2024-05-20
1047Canada2024-05-19
1048France2024-05-28
1049Argentina2024-05-29

On-Demand Data

NameIdCountryDate
Darci O Ostrosky1000Argentina2024-06-05
Isabel M Malet1001Canada2024-05-29
Munro A Bowley1002Canada2024-05-24
David A Malet1003India2024-05-31
Claire V Stenseth1004India2024-06-04
Johnson B Nicka1005Japan2024-05-25
Izzy C Stenseth1006Italy2024-05-31
Ivar B Nestle1007India2024-05-18
James N Morasca1008France2024-05-20
Arvin E Nestle1009Japan2024-06-10
Kaitlin J Dilliard1010Canada2024-06-04
Isabel L Morasca1011Germany2024-06-05
David L Tollner1012United Kingdom2024-06-01
Costa H Flosi1013Japan2024-05-29
Jefferson N Kusko1014Japan2024-05-30
Maria Q Kolmetz1015India2024-06-05
Juan U Garufi1016Spain2024-06-02
Jeanfrancois R Gillian1017Italy2024-06-07
Ashley V Nicka1018Japan2024-05-28
Isabel I Rulapaugh1019Argentina2024-05-24
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aika W FigeroaItalyOnyama Limba QUALIFIED
Silvio M AmigonSpainStephen Shaw NEGOTIATION
Morrow J WieserItalyIoni Bowcher UNQUALIFIED
Emily N SaylorsSpainAmy Elsner NEW
Faith Z BologniaArgentinaElwin Sharvill NEW
Alejandro I CaldareraBrazilIoni Bowcher PROPOSAL
Chavez D GauchoArgentinaAmy Elsner NEGOTIATION
Juan L OldroydItalyIoni Bowcher PROPOSAL
Chavez W OldroydJapanOnyama Limba PROPOSAL
Munro N RutaIndiaBernardo Dominic UNQUALIFIED
Nicolas V WhobreyIndiaAmy Elsner RENEWAL
Faith V InouyeSpainStephen Shaw UNQUALIFIED
Mayumi X WieserArgentinaAmy Elsner NEGOTIATION
Kadeem K CaudyAustraliaIvan Magalhaes NEGOTIATION
Emily K GarufiGermanyStephen Shaw PROPOSAL
Stacey K KuskoUnited KingdomAmy Elsner PROPOSAL
Antonio E InouyeIndiaIvan Magalhaes UNQUALIFIED
Smith B StensethAustraliaIvan Magalhaes NEGOTIATION
Aditya A KuskoJapanAnna Fali PROPOSAL
Greenwood Z StensethCanadaAmy Elsner QUALIFIED
Claire G WieserItalyXuxue Feng NEGOTIATION
Wickens D SchemmerJapanIvan Magalhaes QUALIFIED
Misaki L MaletUnited KingdomXuxue Feng RENEWAL
Aditya I FlosiBrazilBernardo Dominic NEGOTIATION
Munro W VenereArgentinaElwin Sharvill NEGOTIATION
Nicolas N NickaBrazilXuxue Feng QUALIFIED
Alejandro K WaycottGermanyElwin Sharvill NEGOTIATION
Aditya I WaycottBrazilIvan Magalhaes NEGOTIATION
Arvin E CaldareraRussiaIoni Bowcher PROPOSAL
Misaki O RutaGermanyStephen Shaw QUALIFIED
Arvin Y GlickFranceElwin Sharvill UNQUALIFIED
Stacey T FlosiUnited KingdomElwin Sharvill RENEWAL
Mayumi F DoeFranceOnyama Limba RENEWAL
Maria W BologniaJapanBernardo Dominic NEGOTIATION
Darci C NickaBrazilElwin Sharvill QUALIFIED
Silvio Y ShinkoItalyBernardo Dominic UNQUALIFIED
Deepesh G IturbideItalyAnna Fali UNQUALIFIED
Salvatore D MarrierCanadaIoni Bowcher QUALIFIED
Ashley L GillianSpainOnyama Limba PROPOSAL
Claire W NestleRussiaIoni Bowcher UNQUALIFIED

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