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
Salvatore T VocelkaIndiaAmy Elsner NEGOTIATION
Misaki P KolmetzArgentinaAnna Fali UNQUALIFIED
Stacey X FlosiCanadaAnna Fali PROPOSAL
Antonio A WieserRussiaAnna Fali PROPOSAL
Juan X MarrierRussiaAsiya Javayant NEGOTIATION
Rodrigues S NickaUnited KingdomIvan Magalhaes RENEWAL
Maria C IturbideGermanyAsiya Javayant QUALIFIED
Jefferson A TollnerRussiaAnna Fali RENEWAL
Clifford O RutaCanadaAsiya Javayant NEGOTIATION
Emily Q DilliardItalyIoni Bowcher PROPOSAL
Kadeem O PerinArgentinaStephen Shaw RENEWAL
Claire J RoysterBrazilStephen Shaw NEGOTIATION
Aditya M GillianJapanBernardo Dominic NEGOTIATION
Adams B SlusarskiIndiaAnna Fali NEW
Chavez X StockhamIndiaAnna Fali QUALIFIED
Faith T FerenczCanadaAmy Elsner NEW
Mayumi C DarakjyRussiaIvan Magalhaes UNQUALIFIED
Cody H TollnerSpainStephen Shaw QUALIFIED
Sinclair V WhobreyAustraliaElwin Sharvill RENEWAL
James F StockhamItalyStephen Shaw QUALIFIED
Alejandro P MaletFranceBernardo Dominic QUALIFIED
Emily N FlosiFranceAsiya Javayant PROPOSAL
Izzy V FerenczItalyIvan Magalhaes QUALIFIED
Deepesh V VocelkaBrazilOnyama Limba NEW
Rodrigues D SchemmerFranceXuxue Feng UNQUALIFIED
Munro K SergiSpainAmy Elsner UNQUALIFIED
Deepesh X MarrierUnited KingdomElwin Sharvill RENEWAL
Mujtaba L ShinkoJapanIoni Bowcher NEW
Maria F ButtRussiaStephen Shaw PROPOSAL
Munro S PaprockiUnited KingdomIvan Magalhaes QUALIFIED
Antonio S WaycottCanadaBernardo Dominic NEGOTIATION
Ashley P DilliardAustraliaAsiya Javayant PROPOSAL
Arvin V WieserJapanAnna Fali UNQUALIFIED
Claire V PoquetteAustraliaElwin Sharvill PROPOSAL
Deepesh C KuskoUnited KingdomIoni Bowcher RENEWAL
Ivar E NickaArgentinaAsiya Javayant UNQUALIFIED
Clifford S WieserJapanElwin Sharvill QUALIFIED
Julie C VenereSpainAsiya Javayant RENEWAL
Aruna C RulapaughIndiaIvan Magalhaes UNQUALIFIED
Maria Z MacleadBrazilAnna Fali QUALIFIED
Greenwood A FigeroaAustraliaAnna Fali QUALIFIED
Mayumi E MaletItalyBernardo Dominic UNQUALIFIED
Aditya K ChuiSpainOnyama Limba NEGOTIATION
Aika S PaprockiBrazilStephen Shaw NEGOTIATION
Kadeem X FollerJapanIvan Magalhaes NEGOTIATION
Chavez J RimFranceIoni Bowcher QUALIFIED
Mayumi V SaylorsCanadaXuxue Feng UNQUALIFIED
Darci T PaprockiRussiaIoni Bowcher PROPOSAL
Jefferson C NestleBrazilOnyama Limba RENEWAL
James B BologniaGermanyElwin Sharvill NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Cody J NestleUnited KingdomAmy Elsner PROPOSAL
Maria X MarrierItalyIoni Bowcher QUALIFIED
Aditya Y OldroydGermanyElwin Sharvill PROPOSAL
Jefferson Q FollerItalyAmy Elsner UNQUALIFIED
Ivar X NickaFranceElwin Sharvill RENEWAL
Cody U GlickArgentinaAmy Elsner QUALIFIED
Munro W GlickItalyOnyama Limba QUALIFIED
Leja I SlusarskiSpainAmy Elsner RENEWAL
Arvin H NestleUnited KingdomAnna Fali UNQUALIFIED
Francesco R CampainSpainAsiya Javayant PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000David G FigeroaRussia2024-06-09Feltz Printing Service NEGOTIATION0Ivan Magalhaes
1001Smith V BowleyIndia2024-06-08Chapman, Ross E Esq QUALIFIED98Xuxue Feng
1002James O SaylorsAustralia2024-05-28Chemel, James L Cpa NEGOTIATION92Anna Fali
1003James P GlickSpain2024-06-05Chapman, Ross E Esq NEGOTIATION74Bernardo Dominic
1004Leja S MaletBrazil2024-06-20Printing Dimensions NEW87Bernardo Dominic
1005Nicolas Q MaletArgentina2024-06-16Chapman, Ross E Esq NEW77Bernardo Dominic
1006Faith C ButtFrance2024-06-18Rangoni Of Florence NEGOTIATION44Bernardo Dominic
1007Silvio B GillianIndia2024-06-11Commercial Press NEW67Ioni Bowcher
1008Maria K ButtAustralia2024-06-20Truhlar And Truhlar Attys QUALIFIED38Ivan Magalhaes
1009Maisha E CaldareraArgentina2024-05-27Feiner Bros RENEWAL73Xuxue Feng
1010Ashley Q SlusarskiSpain2024-06-21Chemel, James L Cpa RENEWAL89Elwin Sharvill
1011Ivar T DoeCanada2024-06-20Buckley Miller Wright RENEWAL51Elwin Sharvill
1012Alejandro L TollnerAustralia2024-06-02Benton, John B Jr NEW45Xuxue Feng
1013Smith L AmigonIndia2024-06-15Chanay, Jeffrey A Esq PROPOSAL91Stephen Shaw
1014Maisha B SlusarskiGermany2024-06-10King, Christopher A Esq QUALIFIED0Amy Elsner
1015Maria S PaprockiJapan2024-06-19King, Christopher A Esq UNQUALIFIED78Onyama Limba
1016Darci X SlusarskiBrazil2024-06-16Morlong Associates RENEWAL53Xuxue Feng
1017Jones U WieserArgentina2024-06-01Chanay, Jeffrey A Esq QUALIFIED45Asiya Javayant
1018Tony L StockhamRussia2024-06-10Printing Dimensions NEGOTIATION43Stephen Shaw
1019Smith Q PerinUnited Kingdom2024-05-27Morlong Associates RENEWAL13Asiya Javayant
1020Isabel O PoquetteAustralia2024-06-09Morlong Associates RENEWAL3Ioni Bowcher
1021Maisha A FlosiRussia2024-06-04Dorl, James J Esq NEW89Xuxue Feng
1022Salvatore U MaletJapan2024-05-25Morlong Associates PROPOSAL48Onyama Limba
1023Adams F MaletUnited Kingdom2024-06-13Chapman, Ross E Esq RENEWAL97Xuxue Feng
1024Kadeem M DarakjySpain2024-06-17Chapman, Ross E Esq NEW84Elwin Sharvill
1025Darci Q SchemmerGermany2024-06-20Rousseaux, Michael Esq QUALIFIED36Onyama Limba
1026Misaki S TollnerSpain2024-06-13Chapman, Ross E Esq UNQUALIFIED32Ioni Bowcher
1027Arvin A WhobreyUnited Kingdom2024-06-15Chanay, Jeffrey A Esq NEW69Ioni Bowcher
1028Octavia U StensethJapan2024-05-28Dorl, James J Esq NEW33Xuxue Feng
1029Costa V MaletSpain2024-06-21Buckley Miller Wright NEGOTIATION8Ioni Bowcher
1030Aika L DarakjyBrazil2024-06-07Morlong Associates PROPOSAL65Onyama Limba
1031Jennifer E RimGermany2024-05-31Commercial Press RENEWAL7Amy Elsner
1032Emily N StensethBrazil2024-06-05Feltz Printing Service NEGOTIATION60Stephen Shaw
1033Kadeem Z GillianSpain2024-06-17Dorl, James J Esq UNQUALIFIED42Onyama Limba
1034Ashley T SaylorsGermany2024-06-04Benton, John B Jr PROPOSAL0Stephen Shaw
1035Morrow R FigeroaGermany2024-05-28Chemel, James L Cpa NEGOTIATION42Bernardo Dominic
1036Stacey F OstroskyJapan2024-05-26Dorl, James J Esq UNQUALIFIED2Elwin Sharvill
1037Emily Y RulapaughFrance2024-05-28Rangoni Of Florence NEW51Asiya Javayant
1038Antonio Q FlosiJapan2024-06-14Chemel, James L Cpa UNQUALIFIED74Xuxue Feng
1039Deepesh G StensethIndia2024-06-19Rousseaux, Michael Esq NEW35Anna Fali
1040Jones T WieserGermany2024-05-24Rangoni Of Florence NEGOTIATION61Ivan Magalhaes
1041Kaitlin W AmigonFrance2024-05-28Rangoni Of Florence PROPOSAL92Asiya Javayant
1042Morrow P MarrierAustralia2024-06-03Buckley Miller Wright PROPOSAL59Asiya Javayant
1043Ashley X FerenczRussia2024-06-06Truhlar And Truhlar Attys NEW10Bernardo Dominic
1044David O FerenczArgentina2024-05-28Chemel, James L Cpa NEGOTIATION44Anna Fali
1045Mujtaba O CaldareraUnited Kingdom2024-05-28Morlong Associates RENEWAL88Elwin Sharvill
1046Jefferson J PaprockiAustralia2024-06-06Dorl, James J Esq RENEWAL30Bernardo Dominic
1047David Y BriddickArgentina2024-06-06Feiner Bros PROPOSAL41Xuxue Feng
1048Leon Y AlbaresBrazil2024-06-01Chemel, James L Cpa NEGOTIATION71Elwin Sharvill
1049Clifford J KuskoArgentina2024-05-27Truhlar And Truhlar Attys PROPOSAL61Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Leja E MorascaArgentinaAsiya Javayant RENEWAL
Rodrigues X SchemmerArgentinaAnna Fali NEW
Tony P VenereUnited KingdomIvan Magalhaes NEW
Aruna Y GlickBrazilOnyama Limba QUALIFIED
Jefferson M FerenczCanadaOnyama Limba UNQUALIFIED
Claire B NestleAustraliaOnyama Limba QUALIFIED
Cody T GillianRussiaAmy Elsner UNQUALIFIED
Johnson C DilliardAustraliaXuxue Feng PROPOSAL
Kadeem M BowleyCanadaAmy Elsner RENEWAL
Leja J AmigonItalyElwin Sharvill QUALIFIED
Munro D MacleadBrazilIvan Magalhaes UNQUALIFIED
David H StockhamSpainIoni Bowcher QUALIFIED
Octavia J CampainGermanyAmy Elsner NEGOTIATION
Aruna Q PerinArgentinaXuxue Feng RENEWAL
Morrow M BriddickUnited KingdomXuxue Feng PROPOSAL
Tony G StockhamSpainAnna Fali QUALIFIED
Antonio X ShinkoRussiaXuxue Feng QUALIFIED
Ashley S MacleadGermanyElwin Sharvill PROPOSAL
Jennifer T ChuiFranceOnyama Limba NEGOTIATION
Rodrigues W MorascaRussiaXuxue Feng NEGOTIATION
Aditya M DarakjyRussiaStephen Shaw NEGOTIATION
Wickens M MaletFranceXuxue Feng QUALIFIED
Mujtaba E ShinkoCanadaElwin Sharvill RENEWAL
Leja D WhobreySpainAmy Elsner NEGOTIATION
Mujtaba S CaldareraIndiaAnna Fali PROPOSAL
Stacey M MaletAustraliaElwin Sharvill UNQUALIFIED
Emily Q RutaBrazilOnyama Limba UNQUALIFIED
Aika M OstroskyArgentinaIvan Magalhaes RENEWAL
Murillo I RimBrazilOnyama Limba PROPOSAL
Mayumi W RoysterItalyBernardo Dominic PROPOSAL
Ivar W OldroydSpainStephen Shaw QUALIFIED
Claire W RutaIndiaElwin Sharvill UNQUALIFIED
Aruna O StockhamIndiaIvan Magalhaes NEGOTIATION
Ricardo K FlosiItalyElwin Sharvill PROPOSAL
Munro J VocelkaSpainAmy Elsner UNQUALIFIED
Isabel P CaudyAustraliaIoni Bowcher PROPOSAL
Nicolas M SchemmerItalyXuxue Feng PROPOSAL
Isabel C SchemmerArgentinaOnyama Limba UNQUALIFIED
Adams Y PaprockiArgentinaOnyama Limba RENEWAL
Aditya C MacleadSpainAnna Fali QUALIFIED
Ricardo S CampainArgentinaAmy Elsner RENEWAL
Maria W BologniaIndiaIoni Bowcher PROPOSAL
Kadeem A OstroskyJapanAmy Elsner QUALIFIED
Maisha Y TollnerSpainIoni Bowcher PROPOSAL
Leon T KuskoFranceAsiya Javayant NEGOTIATION
Aditya N GlickSpainStephen Shaw NEGOTIATION
Murillo R IturbideIndiaIoni Bowcher NEGOTIATION
Julie N ChuiFranceIvan Magalhaes NEW
Emily A IturbideBrazilXuxue Feng QUALIFIED
Mujtaba Q FigeroaBrazilAnna Fali PROPOSAL
Frozen Columns
Name
Aditya Q Briddick
Stacey C Figeroa
Costa F Kolmetz
Silvio O Oldroyd
Alejandro K Waycott
Aditya O Gillian
Tony A Sergi
Alejandro G Oldroyd
Adams D Bolognia
Antonio F Oldroyd
Silvio T Dilliard
Deepesh U Malet
Wickens N Ferencz
Misaki E Rulapaugh
Ricardo Y Royster
Mujtaba Z Bolognia
Munro W Glick
Jones E Stockham
Jones T Flosi
Antonio Q Stenseth
Isabel H Shinko
Ivar M Wieser
Leon Z Amigon
Kadeem R Shinko
Nicolas A Whobrey
David B Flosi
Antonio G Garufi
Arvin X Caldarera
Julie C Waycott
Antonio T Marrier
Mujtaba Y Briddick
Johnson G Tollner
Octavia K Poquette
Jones S Paprocki
Antonio B Perin
Francesco O Caudy
Darci W Schemmer
Johnson O Perin
Silvio Q Ostrosky
Alejandro O Nicka
Darci O Whobrey
Ivar P Perin
Darci D Bowley
Smith Y Malet
Aruna O Garufi
Arvin S Flosi
Chavez W Chui
Jeanfrancois D Briddick
Darci S Paprocki
Costa X Sergi
IdCountryDate
1000Brazil2024-06-15
1001France2024-06-19
1002Canada2024-06-11
1003India2024-05-26
1004United Kingdom2024-06-08
1005Germany2024-06-14
1006Germany2024-06-17
1007Argentina2024-06-07
1008Russia2024-05-31
1009Argentina2024-06-21
1010United Kingdom2024-05-28
1011Australia2024-06-16
1012Brazil2024-06-12
1013Australia2024-05-26
1014Russia2024-06-04
1015Germany2024-06-06
1016Australia2024-05-26
1017Spain2024-06-03
1018United Kingdom2024-05-27
1019Spain2024-06-05
1020France2024-06-03
1021United Kingdom2024-05-24
1022Japan2024-05-26
1023Italy2024-06-02
1024Spain2024-05-31
1025United Kingdom2024-06-13
1026Australia2024-06-19
1027Brazil2024-05-25
1028Australia2024-05-26
1029Japan2024-06-04
1030France2024-06-14
1031Canada2024-06-12
1032Spain2024-06-07
1033Canada2024-06-20
1034United Kingdom2024-06-05
1035Australia2024-05-31
1036Russia2024-06-10
1037Spain2024-06-04
1038Russia2024-06-04
1039Spain2024-06-04
1040Italy2024-06-06
1041Australia2024-06-01
1042Brazil2024-06-01
1043Italy2024-06-13
1044Canada2024-06-09
1045Spain2024-06-11
1046France2024-06-22
1047Russia2024-06-06
1048Brazil2024-06-05
1049India2024-06-13

On-Demand Data

NameIdCountryDate
Morrow U Chui1000India2024-06-10
Francesco M Vocelka1001Australia2024-06-14
Arvin W Gillian1002Italy2024-06-18
James F Whobrey1003Australia2024-05-28
Murillo E Butt1004Russia2024-05-31
Aruna W Gillian1005Brazil2024-06-07
Maria N Caldarera1006Spain2024-06-05
Silvio R Bowley1007Japan2024-05-29
Clifford K Glick1008Russia2024-06-16
Kaitlin A Oldroyd1009Japan2024-06-07
Salvatore B Caldarera1010Spain2024-06-16
Cody Q Perin1011Canada2024-06-01
Deepesh Q Oldroyd1012Japan2024-06-11
Leon E Shinko1013Brazil2024-06-02
Maria J Amigon1014France2024-06-12
Clifford C Ruta1015Italy2024-06-01
Kadeem Z Rulapaugh1016Spain2024-06-05
Kadeem O Butt1017Australia2024-06-08
Smith I Poquette1018Russia2024-05-29
Jones J Morasca1019Argentina2024-05-26
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jeanfrancois H GillianUnited KingdomBernardo Dominic RENEWAL
Costa Z DarakjyAustraliaStephen Shaw NEGOTIATION
Darci R PerinBrazilOnyama Limba RENEWAL
Ricardo D VocelkaFranceElwin Sharvill NEGOTIATION
James C FlosiItalyIvan Magalhaes PROPOSAL
Jefferson V PerinFranceIoni Bowcher UNQUALIFIED
Isabel P MacleadJapanOnyama Limba NEW
Francesco V SchemmerGermanyAsiya Javayant QUALIFIED
Faith U GauchoCanadaElwin Sharvill RENEWAL
Kadeem Z NestleFranceIvan Magalhaes NEGOTIATION
David M NickaArgentinaAsiya Javayant NEW
Jefferson S FigeroaArgentinaAmy Elsner NEGOTIATION
Costa G RulapaughArgentinaOnyama Limba NEW
Antonio K RutaIndiaAmy Elsner RENEWAL
Wickens W NestleCanadaOnyama Limba RENEWAL
Salvatore T RulapaughArgentinaElwin Sharvill PROPOSAL
Munro L DarakjyFranceAmy Elsner RENEWAL
Antonio L PaprockiRussiaAnna Fali RENEWAL
Maisha X SchemmerCanadaAnna Fali NEW
Smith S CaudyCanadaAmy Elsner QUALIFIED
Ricardo T OstroskyAustraliaAnna Fali RENEWAL
James K DilliardFranceIoni Bowcher UNQUALIFIED
Jones Z RutaGermanyBernardo Dominic NEGOTIATION
Izzy B WieserJapanElwin Sharvill PROPOSAL
Stacey L NickaRussiaAnna Fali NEGOTIATION
Arvin W TollnerJapanStephen Shaw NEGOTIATION
Smith N PaprockiItalyElwin Sharvill NEGOTIATION
Smith L CaudyGermanyIvan Magalhaes NEW
Kadeem X OstroskyIndiaXuxue Feng UNQUALIFIED
Murillo M GauchoGermanyBernardo Dominic NEW
Greenwood P SaylorsIndiaAmy Elsner UNQUALIFIED
Ashley V MaletBrazilIvan Magalhaes NEW
Aruna U GlickRussiaStephen Shaw RENEWAL
Cody G RimJapanIvan Magalhaes UNQUALIFIED
Ricardo L CaudyGermanyAnna Fali PROPOSAL
Rodrigues U AlbaresSpainBernardo Dominic QUALIFIED
Arvin S CampainGermanyIoni Bowcher UNQUALIFIED
Claire M AlbaresCanadaAmy Elsner QUALIFIED
Greenwood W TollnerIndiaStephen Shaw UNQUALIFIED
Smith U ChuiArgentinaAmy Elsner 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>