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
James J AlbaresCanadaAsiya Javayant RENEWAL
Jones C VocelkaAustraliaAmy Elsner RENEWAL
Maisha W MarrierAustraliaIoni Bowcher QUALIFIED
Maria G NestleGermanyStephen Shaw PROPOSAL
Rodrigues M GarufiAustraliaAnna Fali NEGOTIATION
Jones E FerenczIndiaAnna Fali NEW
Antonio K SergiIndiaXuxue Feng RENEWAL
Johnson W FigeroaJapanAsiya Javayant UNQUALIFIED
Ivar R RulapaughBrazilOnyama Limba QUALIFIED
Izzy X FerenczGermanyIvan Magalhaes NEW
Misaki O CaldareraRussiaBernardo Dominic PROPOSAL
Smith F RutaAustraliaXuxue Feng NEW
Tony Z FigeroaFranceElwin Sharvill PROPOSAL
Cody M MorascaUnited KingdomXuxue Feng QUALIFIED
Jennifer Q ChuiRussiaXuxue Feng PROPOSAL
Ivar G NickaBrazilOnyama Limba NEW
Leon V WaycottAustraliaIvan Magalhaes NEW
Murillo M WhobreyArgentinaOnyama Limba UNQUALIFIED
David D SergiFranceAnna Fali UNQUALIFIED
Johnson M InouyeUnited KingdomAsiya Javayant UNQUALIFIED
Misaki T CaldareraJapanIvan Magalhaes PROPOSAL
Deepesh L FollerAustraliaAmy Elsner UNQUALIFIED
Nicolas Q StensethFranceAsiya Javayant QUALIFIED
Jones J VenereBrazilIvan Magalhaes QUALIFIED
Smith G ButtJapanElwin Sharvill PROPOSAL
Greenwood M WhobreyBrazilAsiya Javayant NEGOTIATION
Antonio P FollerFranceStephen Shaw RENEWAL
Faith F RoysterCanadaStephen Shaw QUALIFIED
Juan E NestleBrazilElwin Sharvill RENEWAL
Misaki M DoeAustraliaAsiya Javayant QUALIFIED
Adams P StockhamItalyBernardo Dominic NEW
Mayumi S RimSpainOnyama Limba RENEWAL
Kaitlin A ButtFranceXuxue Feng RENEWAL
Maisha T MorascaGermanyOnyama Limba QUALIFIED
Stacey D VocelkaAustraliaBernardo Dominic QUALIFIED
Maria R RulapaughSpainStephen Shaw QUALIFIED
Deepesh T ChuiFranceIvan Magalhaes PROPOSAL
Greenwood M CaudyRussiaIvan Magalhaes NEGOTIATION
Smith S StockhamCanadaIvan Magalhaes UNQUALIFIED
Juan I FlosiArgentinaXuxue Feng NEGOTIATION
Ivar F PerinRussiaXuxue Feng QUALIFIED
Aruna K MaletRussiaAmy Elsner NEW
Ivar M GlickGermanyAnna Fali PROPOSAL
Johnson Z OstroskyRussiaIoni Bowcher UNQUALIFIED
Kaitlin G GlickRussiaIoni Bowcher NEW
Deepesh F StockhamIndiaIvan Magalhaes RENEWAL
Francesco W MorascaUnited KingdomAsiya Javayant NEW
Isabel S DarakjyArgentinaElwin Sharvill PROPOSAL
Emily D StensethUnited KingdomElwin Sharvill UNQUALIFIED
Izzy D SlusarskiSpainIvan Magalhaes UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Jefferson V KolmetzGermanyIoni Bowcher NEW
Rodrigues Q KuskoSpainIoni Bowcher RENEWAL
Smith N RimUnited KingdomXuxue Feng RENEWAL
Jones B GauchoIndiaBernardo Dominic PROPOSAL
Ashley V OstroskyBrazilIvan Magalhaes RENEWAL
Misaki C MacleadSpainAmy Elsner RENEWAL
Octavia E PerinBrazilIoni Bowcher RENEWAL
Deepesh T VocelkaGermanyElwin Sharvill PROPOSAL
Jennifer R PoquetteRussiaIoni Bowcher PROPOSAL
Arvin Z CaldareraRussiaBernardo Dominic UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ivar U MaletSpain2024-06-12Benton, John B Jr UNQUALIFIED1Anna Fali
1001Ricardo B SaylorsBrazil2024-05-18Feiner Bros NEW96Asiya Javayant
1002Ashley X GillianItaly2024-05-23Morlong Associates RENEWAL44Asiya Javayant
1003Silvio I IturbideIndia2024-05-25Feltz Printing Service UNQUALIFIED0Amy Elsner
1004Johnson K ChuiCanada2024-05-31Feiner Bros RENEWAL91Bernardo Dominic
1005Stacey F PoquetteGermany2024-05-25Feltz Printing Service NEW97Anna Fali
1006Ashley U MarrierFrance2024-06-11Commercial Press NEGOTIATION4Xuxue Feng
1007Jennifer P BowleyArgentina2024-05-25Commercial Press QUALIFIED59Amy Elsner
1008Izzy W SaylorsJapan2024-05-30Dorl, James J Esq PROPOSAL43Amy Elsner
1009Faith I FlosiUnited Kingdom2024-05-19King, Christopher A Esq RENEWAL11Asiya Javayant
1010Izzy Z StensethSpain2024-06-05Printing Dimensions RENEWAL63Onyama Limba
1011Johnson M NickaFrance2024-06-08King, Christopher A Esq RENEWAL88Asiya Javayant
1012Rodrigues I ButtAustralia2024-06-13Chanay, Jeffrey A Esq QUALIFIED84Ivan Magalhaes
1013Isabel G PaprockiUnited Kingdom2024-05-28Benton, John B Jr RENEWAL12Xuxue Feng
1014Stacey V WaycottArgentina2024-05-25Rangoni Of Florence NEW40Asiya Javayant
1015Wickens R SaylorsSpain2024-06-15Feiner Bros NEW61Asiya Javayant
1016Salvatore X VocelkaArgentina2024-06-04Dorl, James J Esq NEGOTIATION34Anna Fali
1017Mujtaba U RulapaughItaly2024-06-15Feiner Bros UNQUALIFIED36Anna Fali
1018Darci V MarrierRussia2024-05-21Rousseaux, Michael Esq NEW34Bernardo Dominic
1019Tony Y WhobreyIndia2024-06-03Benton, John B Jr PROPOSAL93Xuxue Feng
1020Francesco H SaylorsFrance2024-06-09Rangoni Of Florence UNQUALIFIED10Asiya Javayant
1021Octavia R RoysterFrance2024-06-13Morlong Associates NEGOTIATION51Asiya Javayant
1022Salvatore Q SchemmerJapan2024-06-13Chapman, Ross E Esq PROPOSAL63Anna Fali
1023Darci A KuskoCanada2024-06-14Feiner Bros PROPOSAL58Asiya Javayant
1024Adams V MacleadUnited Kingdom2024-05-23Buckley Miller Wright PROPOSAL76Asiya Javayant
1025Cody P FollerItaly2024-06-02Rangoni Of Florence UNQUALIFIED37Elwin Sharvill
1026Jennifer M FollerBrazil2024-05-26Printing Dimensions NEGOTIATION10Elwin Sharvill
1027Kaitlin Z SaylorsBrazil2024-05-23Dorl, James J Esq PROPOSAL31Ivan Magalhaes
1028Chavez A RoysterUnited Kingdom2024-05-29Truhlar And Truhlar Attys PROPOSAL73Elwin Sharvill
1029Isabel G StockhamIndia2024-06-04Dorl, James J Esq PROPOSAL45Ioni Bowcher
1030Adams N IturbideAustralia2024-06-06Morlong Associates RENEWAL43Anna Fali
1031Kadeem J VenereRussia2024-05-19Rangoni Of Florence RENEWAL73Asiya Javayant
1032Johnson N CaudyIndia2024-06-03Printing Dimensions RENEWAL21Asiya Javayant
1033Faith H WhobreyGermany2024-06-08Feiner Bros PROPOSAL23Stephen Shaw
1034Maisha E PoquetteItaly2024-06-10Feiner Bros NEW88Ivan Magalhaes
1035Juan U BologniaUnited Kingdom2024-06-12Commercial Press QUALIFIED19Ivan Magalhaes
1036Sinclair V FigeroaBrazil2024-06-15Feiner Bros PROPOSAL75Onyama Limba
1037Silvio C CaldareraSpain2024-06-14Dorl, James J Esq QUALIFIED0Ioni Bowcher
1038Cody Z PoquetteSpain2024-05-30Truhlar And Truhlar Attys NEW98Asiya Javayant
1039Tony P OldroydBrazil2024-06-03Commercial Press RENEWAL8Asiya Javayant
1040Cody E OstroskyRussia2024-06-07Buckley Miller Wright RENEWAL74Ivan Magalhaes
1041Smith U AmigonCanada2024-06-10Feltz Printing Service QUALIFIED45Stephen Shaw
1042Sinclair Q CaudyAustralia2024-05-18Truhlar And Truhlar Attys NEW61Asiya Javayant
1043Juan J CaldareraAustralia2024-06-11King, Christopher A Esq PROPOSAL2Elwin Sharvill
1044Izzy C BowleyIndia2024-06-03Dorl, James J Esq UNQUALIFIED66Stephen Shaw
1045Chavez J GauchoSpain2024-05-22Feltz Printing Service UNQUALIFIED88Ioni Bowcher
1046Ivar F StensethGermany2024-05-26Chanay, Jeffrey A Esq QUALIFIED79Amy Elsner
1047Maisha L RoysterSpain2024-06-12Truhlar And Truhlar Attys RENEWAL52Stephen Shaw
1048Chavez B SlusarskiRussia2024-05-19Commercial Press QUALIFIED89Ivan Magalhaes
1049Nicolas E PoquetteAustralia2024-06-06Printing Dimensions QUALIFIED96Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Octavia Q DoeArgentinaAmy Elsner UNQUALIFIED
Maria K BowleyFranceIvan Magalhaes NEW
Costa L PaprockiUnited KingdomAnna Fali NEW
Antonio Z MaletAustraliaIvan Magalhaes RENEWAL
Maisha Y SchemmerGermanyAmy Elsner QUALIFIED
Julie Z MaletUnited KingdomAmy Elsner NEW
Greenwood E PerinArgentinaIoni Bowcher UNQUALIFIED
Faith M MarrierAustraliaIoni Bowcher RENEWAL
Munro W ShinkoIndiaElwin Sharvill NEW
Ashley O VenereItalyOnyama Limba UNQUALIFIED
Octavia M KuskoSpainIvan Magalhaes RENEWAL
Salvatore Q VenereIndiaElwin Sharvill RENEWAL
Murillo S GillianArgentinaAmy Elsner NEGOTIATION
Adams O BologniaBrazilElwin Sharvill RENEWAL
Alejandro H CampainRussiaBernardo Dominic NEGOTIATION
Tony U ChuiJapanOnyama Limba QUALIFIED
Sinclair O GillianBrazilXuxue Feng NEW
Morrow D IturbideFranceElwin Sharvill UNQUALIFIED
Maria C MaletFranceElwin Sharvill PROPOSAL
Clifford L BowleyArgentinaAsiya Javayant NEW
Smith E FollerBrazilAnna Fali PROPOSAL
Mujtaba F RoysterAustraliaOnyama Limba QUALIFIED
Nicolas I ButtAustraliaAsiya Javayant UNQUALIFIED
Greenwood N WhobreySpainStephen Shaw NEGOTIATION
Aika G FerenczUnited KingdomIoni Bowcher NEW
Misaki F RoysterUnited KingdomBernardo Dominic NEGOTIATION
Murillo N StensethItalyAmy Elsner PROPOSAL
Antonio H SlusarskiAustraliaAnna Fali NEW
Jeanfrancois X MorascaJapanElwin Sharvill NEW
Clifford W SaylorsUnited KingdomOnyama Limba RENEWAL
Cody K GillianAustraliaAsiya Javayant NEGOTIATION
Maisha F SergiAustraliaElwin Sharvill QUALIFIED
Arvin E MarrierUnited KingdomOnyama Limba QUALIFIED
Jeanfrancois Y TollnerGermanyBernardo Dominic PROPOSAL
Claire S SchemmerJapanElwin Sharvill RENEWAL
Jeanfrancois A ButtCanadaAsiya Javayant UNQUALIFIED
Smith L BologniaAustraliaElwin Sharvill QUALIFIED
Ricardo L CaldareraGermanyAnna Fali NEW
Mujtaba D FlosiAustraliaIvan Magalhaes NEGOTIATION
James O GlickAustraliaBernardo Dominic UNQUALIFIED
Silvio S CampainItalyAmy Elsner PROPOSAL
Isabel A NickaArgentinaAnna Fali NEW
Izzy O MorascaFranceElwin Sharvill PROPOSAL
Aika M PoquetteJapanIoni Bowcher RENEWAL
Ashley C OldroydFranceStephen Shaw QUALIFIED
Maria I VenereCanadaAnna Fali NEGOTIATION
Octavia V DarakjyGermanyIoni Bowcher RENEWAL
Wickens E BologniaIndiaElwin Sharvill UNQUALIFIED
Sinclair D PerinBrazilAsiya Javayant PROPOSAL
Maria R ShinkoAustraliaElwin Sharvill PROPOSAL
Frozen Columns
Name
Jefferson G Kolmetz
Maria S Figeroa
Darci J Briddick
Claire M Vocelka
Juan B Ostrosky
Clifford E Oldroyd
Faith A Malet
Misaki V Venere
Misaki G Venere
Jeanfrancois E Darakjy
Jones B Malet
Jennifer N Bolognia
Adams I Ostrosky
Deepesh J Morasca
Jones A Albares
Alejandro H Inouye
Maria Z Royster
Kadeem H Bolognia
Morrow H Royster
Silvio R Iturbide
Wickens Z Schemmer
David T Ostrosky
Jennifer P Perin
Silvio A Caldarera
Wickens Z Amigon
Faith R Caldarera
Francesco B Doe
Arvin N Marrier
Morrow Q Wieser
Claire P Darakjy
Tony A Briddick
Salvatore K Albares
Ashley G Nestle
Morrow Z Sergi
Leon M Foller
Silvio W Foller
Munro K Sergi
Misaki K Rulapaugh
Ivar F Gillian
Francesco J Ostrosky
Isabel U Nicka
Aika F Dilliard
Arvin G Sergi
Rodrigues Y Whobrey
Jeanfrancois B Chui
Francesco B Foller
Stacey I Briddick
Silvio S Albares
Jennifer W Tollner
Juan G Oldroyd
IdCountryDate
1000Brazil2024-05-29
1001Argentina2024-05-30
1002Australia2024-05-18
1003India2024-06-11
1004Australia2024-05-22
1005Brazil2024-06-02
1006United Kingdom2024-06-13
1007Italy2024-05-28
1008Japan2024-05-19
1009Brazil2024-05-29
1010Italy2024-05-28
1011Argentina2024-06-15
1012Japan2024-06-06
1013Brazil2024-05-20
1014United Kingdom2024-06-09
1015Australia2024-05-20
1016Italy2024-05-28
1017Australia2024-05-31
1018Japan2024-05-21
1019Argentina2024-06-07
1020Germany2024-06-13
1021Argentina2024-05-24
1022Japan2024-06-16
1023Spain2024-06-03
1024Canada2024-06-04
1025Germany2024-05-23
1026Germany2024-05-30
1027Argentina2024-06-13
1028Russia2024-05-26
1029Japan2024-05-30
1030Canada2024-06-04
1031Spain2024-05-21
1032Canada2024-06-05
1033India2024-06-04
1034Italy2024-06-11
1035Argentina2024-05-20
1036Japan2024-06-15
1037United Kingdom2024-05-25
1038Australia2024-05-21
1039Japan2024-06-05
1040United Kingdom2024-06-09
1041United Kingdom2024-06-14
1042Germany2024-06-12
1043United Kingdom2024-05-22
1044Italy2024-06-03
1045Canada2024-05-27
1046Brazil2024-05-19
1047Argentina2024-05-27
1048Germany2024-05-19
1049Australia2024-05-26

On-Demand Data

NameIdCountryDate
Alejandro K Gaucho1000Argentina2024-06-08
Jeanfrancois K Waycott1001France2024-05-30
Aditya G Malet1002Japan2024-06-07
Stacey L Saylors1003Spain2024-05-26
Salvatore P Bowley1004Argentina2024-06-09
Greenwood B Wieser1005Australia2024-05-30
Munro L Bowley1006United Kingdom2024-06-12
David U Whobrey1007India2024-05-28
Ashley H Nestle1008Australia2024-06-13
Leon Z Sergi1009Argentina2024-06-09
Antonio P Royster1010Argentina2024-06-11
Jeanfrancois H Morasca1011United Kingdom2024-05-30
Ivar D Paprocki1012United Kingdom2024-05-29
Clifford M Shinko1013Russia2024-05-24
Rodrigues L Campain1014Spain2024-05-23
Darci Q Campain1015Italy2024-06-06
Misaki V Nestle1016Canada2024-06-02
Ricardo L Kolmetz1017United Kingdom2024-06-08
Costa Q Gillian1018Japan2024-05-21
Greenwood W Schemmer1019Australia2024-05-24
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Smith V GillianBrazilElwin Sharvill NEGOTIATION
Kadeem A WhobreyFranceOnyama Limba NEGOTIATION
Kaitlin E RulapaughArgentinaAsiya Javayant NEW
Chavez A FollerUnited KingdomAsiya Javayant PROPOSAL
Greenwood N CampainIndiaIvan Magalhaes PROPOSAL
Silvio Y OldroydAustraliaIvan Magalhaes NEW
Silvio X NestleArgentinaIoni Bowcher RENEWAL
Antonio K SlusarskiIndiaIoni Bowcher PROPOSAL
Smith T ButtUnited KingdomBernardo Dominic QUALIFIED
Morrow F AlbaresRussiaElwin Sharvill NEGOTIATION
Arvin X KolmetzFranceIvan Magalhaes PROPOSAL
Smith V PaprockiGermanyIvan Magalhaes UNQUALIFIED
Adams M BowleyBrazilIoni Bowcher PROPOSAL
Darci C FerenczArgentinaElwin Sharvill RENEWAL
Faith Y ButtAustraliaOnyama Limba UNQUALIFIED
Faith H MorascaFranceAmy Elsner RENEWAL
Kaitlin C MaletAustraliaXuxue Feng RENEWAL
Claire I AlbaresItalyBernardo Dominic QUALIFIED
Johnson I SlusarskiGermanyAsiya Javayant PROPOSAL
Aika M AmigonFranceXuxue Feng PROPOSAL
Maisha L MarrierSpainAsiya Javayant QUALIFIED
Aditya L FollerRussiaIoni Bowcher PROPOSAL
Ricardo Z StensethItalyStephen Shaw RENEWAL
Wickens Q BowleySpainIvan Magalhaes NEGOTIATION
Jeanfrancois X SergiCanadaStephen Shaw RENEWAL
Juan B RulapaughCanadaOnyama Limba RENEWAL
Kadeem E WieserUnited KingdomOnyama Limba PROPOSAL
Claire T StockhamArgentinaAnna Fali UNQUALIFIED
Leon U OldroydSpainAsiya Javayant RENEWAL
Deepesh K MorascaCanadaXuxue Feng NEGOTIATION
Kadeem B MacleadJapanIvan Magalhaes UNQUALIFIED
Misaki E KolmetzAustraliaOnyama Limba UNQUALIFIED
James J PerinArgentinaElwin Sharvill QUALIFIED
Aditya K MaletItalyAnna Fali NEW
Mayumi I CaldareraRussiaElwin Sharvill NEW
Jeanfrancois R ButtItalyStephen Shaw NEGOTIATION
Rodrigues O DilliardUnited KingdomOnyama Limba UNQUALIFIED
Ivar Z VocelkaItalyIvan Magalhaes QUALIFIED
Tony R ChuiArgentinaAnna Fali NEGOTIATION
Aika U ShinkoGermanyBernardo Dominic 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>