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 S RoysterRussiaAnna Fali UNQUALIFIED
Cody K WhobreyCanadaIoni Bowcher NEGOTIATION
Francesco V KolmetzRussiaAmy Elsner NEGOTIATION
Leja G FigeroaAustraliaAsiya Javayant QUALIFIED
Leja U MaletFranceXuxue Feng QUALIFIED
Arvin C RulapaughSpainStephen Shaw QUALIFIED
Jefferson S WhobreyFranceBernardo Dominic PROPOSAL
Julie F ButtGermanyIoni Bowcher UNQUALIFIED
Isabel F OstroskyArgentinaStephen Shaw RENEWAL
Jefferson Z FerenczSpainBernardo Dominic RENEWAL
Silvio A ButtJapanBernardo Dominic NEGOTIATION
Maria Q StockhamCanadaXuxue Feng PROPOSAL
Stacey A InouyeGermanyAnna Fali PROPOSAL
Misaki Y TollnerArgentinaStephen Shaw NEW
Mujtaba G MarrierSpainXuxue Feng RENEWAL
Costa M FlosiArgentinaStephen Shaw QUALIFIED
Antonio P GlickAustraliaXuxue Feng PROPOSAL
Leon Q SergiItalyIvan Magalhaes RENEWAL
Salvatore B MaletRussiaIoni Bowcher UNQUALIFIED
Leon X StensethArgentinaAmy Elsner NEW
Alejandro V WhobreyUnited KingdomAmy Elsner NEW
Aika V GillianCanadaIoni Bowcher NEGOTIATION
Kaitlin Y MacleadIndiaOnyama Limba RENEWAL
Morrow M BriddickAustraliaOnyama Limba NEGOTIATION
Jefferson B FollerItalyAnna Fali PROPOSAL
Silvio H RulapaughUnited KingdomAmy Elsner NEW
David V GlickRussiaAsiya Javayant PROPOSAL
James G TollnerJapanXuxue Feng PROPOSAL
Rodrigues A CaudyJapanXuxue Feng PROPOSAL
Aruna R MarrierCanadaBernardo Dominic NEGOTIATION
Alejandro T SlusarskiBrazilXuxue Feng NEGOTIATION
Julie P SaylorsAustraliaStephen Shaw PROPOSAL
Jones W SlusarskiCanadaIvan Magalhaes NEW
Nicolas N ShinkoJapanOnyama Limba NEW
Adams Z RimSpainBernardo Dominic QUALIFIED
Aditya D WaycottJapanElwin Sharvill QUALIFIED
Jefferson O RulapaughSpainXuxue Feng RENEWAL
Ricardo V GillianIndiaIoni Bowcher NEGOTIATION
Antonio M VocelkaGermanyIoni Bowcher QUALIFIED
Darci J OldroydItalyBernardo Dominic UNQUALIFIED
Kadeem I MarrierFranceXuxue Feng UNQUALIFIED
Juan B WaycottAustraliaAsiya Javayant NEW
Murillo R CaldareraBrazilElwin Sharvill UNQUALIFIED
Morrow Y KolmetzRussiaElwin Sharvill NEW
Leon Y FigeroaArgentinaIvan Magalhaes UNQUALIFIED
Aika F FigeroaFranceStephen Shaw NEGOTIATION
Nicolas W TollnerItalyIvan Magalhaes UNQUALIFIED
Kaitlin O RulapaughIndiaIvan Magalhaes PROPOSAL
Jennifer C CaldareraRussiaAmy Elsner UNQUALIFIED
Juan S TollnerFranceOnyama Limba RENEWAL
Horizontal
NameCountryRepresentativeStatus
James H NickaItalyAnna Fali PROPOSAL
Jones A IturbideUnited KingdomElwin Sharvill PROPOSAL
Izzy Z BowleyCanadaIvan Magalhaes QUALIFIED
Chavez G FerenczAustraliaAmy Elsner RENEWAL
Kaitlin Y FerenczUnited KingdomIoni Bowcher RENEWAL
Kaitlin S GauchoSpainAnna Fali PROPOSAL
Cody E BologniaJapanAsiya Javayant PROPOSAL
Greenwood M PoquetteSpainElwin Sharvill NEGOTIATION
Faith Y MarrierGermanyElwin Sharvill NEGOTIATION
Adams N WhobreyAustraliaAsiya Javayant QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Mayumi F KolmetzArgentina2024-06-08King, Christopher A Esq PROPOSAL89Ioni Bowcher
1001David L MaletRussia2024-05-21Truhlar And Truhlar Attys RENEWAL74Anna Fali
1002Octavia E InouyeJapan2024-06-11Buckley Miller Wright NEW9Amy Elsner
1003Ivar L MarrierCanada2024-05-28Buckley Miller Wright NEGOTIATION6Bernardo Dominic
1004Julie W DilliardBrazil2024-06-14Commercial Press PROPOSAL28Xuxue Feng
1005Jennifer P VenereItaly2024-06-07Morlong Associates QUALIFIED87Bernardo Dominic
1006Ricardo N AlbaresJapan2024-05-28Benton, John B Jr RENEWAL61Amy Elsner
1007Greenwood H WaycottArgentina2024-05-30Rousseaux, Michael Esq RENEWAL76Onyama Limba
1008Morrow T ButtIndia2024-05-21Chapman, Ross E Esq UNQUALIFIED2Xuxue Feng
1009Alejandro N KuskoArgentina2024-06-04King, Christopher A Esq RENEWAL92Stephen Shaw
1010Arvin E CampainFrance2024-06-14Morlong Associates QUALIFIED3Xuxue Feng
1011Deepesh N TollnerArgentina2024-06-17Chanay, Jeffrey A Esq PROPOSAL87Xuxue Feng
1012Ashley H DilliardGermany2024-06-16Feiner Bros NEGOTIATION54Anna Fali
1013Ricardo J GarufiBrazil2024-05-21Truhlar And Truhlar Attys UNQUALIFIED80Elwin Sharvill
1014Jennifer L DoeJapan2024-06-11Rousseaux, Michael Esq QUALIFIED74Amy Elsner
1015Aditya L CaudyRussia2024-05-19Printing Dimensions NEW73Elwin Sharvill
1016Maria S FollerGermany2024-06-06Chapman, Ross E Esq QUALIFIED91Onyama Limba
1017Maria S SlusarskiJapan2024-05-28Morlong Associates PROPOSAL93Xuxue Feng
1018Rodrigues R MorascaFrance2024-05-29Benton, John B Jr NEW13Ivan Magalhaes
1019Tony D IturbideUnited Kingdom2024-06-07Buckley Miller Wright UNQUALIFIED67Onyama Limba
1020Jones P NestleBrazil2024-06-01Benton, John B Jr NEGOTIATION32Xuxue Feng
1021Leja D OldroydJapan2024-06-16King, Christopher A Esq NEGOTIATION21Amy Elsner
1022Deepesh O DarakjyIndia2024-06-03Dorl, James J Esq NEW94Xuxue Feng
1023Sinclair I DoeFrance2024-05-19Truhlar And Truhlar Attys PROPOSAL54Asiya Javayant
1024Alejandro F MarrierRussia2024-05-24Benton, John B Jr QUALIFIED7Bernardo Dominic
1025Sinclair T TollnerIndia2024-06-04Commercial Press NEGOTIATION38Elwin Sharvill
1026Aditya C PoquetteBrazil2024-06-01Feiner Bros NEW78Ivan Magalhaes
1027Jones G GlickGermany2024-06-06Morlong Associates UNQUALIFIED82Xuxue Feng
1028Johnson J NickaBrazil2024-06-10Dorl, James J Esq PROPOSAL71Anna Fali
1029Silvio B CaldareraAustralia2024-06-01Feltz Printing Service UNQUALIFIED1Xuxue Feng
1030Stacey Q OldroydBrazil2024-05-26Dorl, James J Esq RENEWAL8Stephen Shaw
1031Juan G ChuiFrance2024-06-17Feltz Printing Service QUALIFIED82Bernardo Dominic
1032Stacey Y PoquetteCanada2024-05-31Commercial Press PROPOSAL36Ioni Bowcher
1033Silvio S PerinSpain2024-06-02Chapman, Ross E Esq UNQUALIFIED87Ioni Bowcher
1034Rodrigues K WaycottGermany2024-06-14Rousseaux, Michael Esq UNQUALIFIED57Anna Fali
1035Salvatore E MorascaUnited Kingdom2024-06-02Dorl, James J Esq PROPOSAL2Ivan Magalhaes
1036Juan P BriddickUnited Kingdom2024-06-13Truhlar And Truhlar Attys QUALIFIED90Ioni Bowcher
1037Emily A DarakjySpain2024-06-07Chanay, Jeffrey A Esq RENEWAL22Ivan Magalhaes
1038Jones B StockhamFrance2024-06-06Chemel, James L Cpa QUALIFIED34Elwin Sharvill
1039Tony A AlbaresJapan2024-06-17Benton, John B Jr UNQUALIFIED16Onyama Limba
1040Johnson U FlosiUnited Kingdom2024-05-20Feltz Printing Service UNQUALIFIED21Asiya Javayant
1041Costa Z SaylorsRussia2024-06-09Truhlar And Truhlar Attys RENEWAL84Anna Fali
1042Jefferson R RutaIndia2024-05-24Truhlar And Truhlar Attys NEGOTIATION17Onyama Limba
1043Deepesh P FollerRussia2024-06-10Feiner Bros NEGOTIATION54Ivan Magalhaes
1044Julie D BowleyAustralia2024-06-12Feiner Bros PROPOSAL14Onyama Limba
1045Jennifer U StensethFrance2024-06-10Feiner Bros RENEWAL47Xuxue Feng
1046Antonio I MaletCanada2024-05-23Morlong Associates UNQUALIFIED63Amy Elsner
1047James R ChuiItaly2024-05-24Chapman, Ross E Esq UNQUALIFIED54Asiya Javayant
1048Darci G InouyeCanada2024-06-16Commercial Press RENEWAL1Elwin Sharvill
1049Jennifer M TollnerCanada2024-06-17Chapman, Ross E Esq QUALIFIED80Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Mayumi Q PerinArgentinaBernardo Dominic PROPOSAL
Leja P PoquetteAustraliaIoni Bowcher PROPOSAL
Morrow I FigeroaBrazilStephen Shaw UNQUALIFIED
James U BriddickCanadaAmy Elsner RENEWAL
Emily N WaycottIndiaAnna Fali PROPOSAL
Johnson G NickaUnited KingdomIoni Bowcher NEW
Murillo G WhobreyUnited KingdomAnna Fali QUALIFIED
Izzy B KuskoFranceAmy Elsner RENEWAL
Ashley S OstroskyFranceStephen Shaw UNQUALIFIED
Greenwood O DilliardAustraliaAnna Fali PROPOSAL
Kaitlin H MaletIndiaXuxue Feng NEGOTIATION
Stacey Y CampainUnited KingdomStephen Shaw RENEWAL
Salvatore Z GillianItalyIoni Bowcher QUALIFIED
Darci N ChuiGermanyAsiya Javayant UNQUALIFIED
Jennifer P RimJapanAmy Elsner UNQUALIFIED
Misaki T DoeGermanyBernardo Dominic NEGOTIATION
Kaitlin P SchemmerBrazilXuxue Feng UNQUALIFIED
Munro Y CampainGermanyElwin Sharvill NEGOTIATION
James K MaletAustraliaAsiya Javayant QUALIFIED
Wickens F VenereUnited KingdomOnyama Limba PROPOSAL
Clifford N OstroskySpainOnyama Limba NEGOTIATION
Ivar N FollerIndiaAmy Elsner UNQUALIFIED
Juan J AlbaresAustraliaIoni Bowcher QUALIFIED
Izzy N StensethBrazilAnna Fali RENEWAL
Murillo I DarakjyArgentinaStephen Shaw UNQUALIFIED
Ivar P MarrierCanadaElwin Sharvill UNQUALIFIED
Aika M VocelkaCanadaIvan Magalhaes NEW
Maisha Y KuskoItalyStephen Shaw RENEWAL
Alejandro Z AlbaresArgentinaOnyama Limba NEGOTIATION
David R MacleadAustraliaXuxue Feng UNQUALIFIED
Emily Q MacleadSpainElwin Sharvill UNQUALIFIED
Wickens U SchemmerCanadaBernardo Dominic PROPOSAL
Clifford S FerenczUnited KingdomIoni Bowcher QUALIFIED
Rodrigues Z FlosiIndiaElwin Sharvill QUALIFIED
Aditya F StockhamSpainAsiya Javayant RENEWAL
Cody R StensethCanadaElwin Sharvill PROPOSAL
Salvatore I GauchoAustraliaElwin Sharvill NEGOTIATION
Nicolas M BologniaAustraliaXuxue Feng RENEWAL
Stacey Z RoysterUnited KingdomBernardo Dominic NEW
Julie C StensethSpainIoni Bowcher NEW
Alejandro B InouyeCanadaBernardo Dominic NEW
Maria K MacleadRussiaIoni Bowcher NEW
Juan B BologniaRussiaAsiya Javayant NEGOTIATION
Wickens K WhobreyIndiaBernardo Dominic PROPOSAL
Leja S MaletArgentinaAnna Fali RENEWAL
Silvio J GauchoBrazilStephen Shaw UNQUALIFIED
Arvin J PerinIndiaElwin Sharvill UNQUALIFIED
James H BriddickUnited KingdomAsiya Javayant RENEWAL
Mayumi P NestleGermanyOnyama Limba PROPOSAL
Francesco T PoquetteJapanElwin Sharvill NEW
Frozen Columns
Name
Sinclair J Doe
Leja O Foller
Isabel P Perin
James G Waycott
Wickens M Stockham
James V Campain
Leja S Wieser
Francesco J Kusko
Greenwood M Ferencz
Greenwood N Dilliard
Leon R Iturbide
Jennifer C Iturbide
Wickens T Paprocki
Ivar W Butt
Jennifer R Dilliard
Stacey E Saylors
Sinclair T Saylors
Mayumi P Caldarera
Silvio I Stenseth
Aditya K Inouye
Adams U Wieser
Leja G Albares
Claire W Stockham
Kadeem D Caldarera
Francesco Z Bowley
Izzy Q Foller
Aika E Tollner
Alejandro E Stenseth
Kaitlin P Royster
Costa F Stockham
Kaitlin T Gillian
Faith Y Rim
Salvatore U Caldarera
Salvatore J Doe
Julie V Caudy
Antonio B Rim
Mujtaba A Rim
Francesco J Caldarera
Maisha W Glick
Nicolas V Bowley
Aditya W Albares
Arvin J Paprocki
Silvio Z Bolognia
Murillo M Garufi
Greenwood I Doe
Kadeem F Vocelka
Leja Y Gaucho
Julie F Stockham
Tony V Whobrey
Isabel H Stenseth
IdCountryDate
1000United Kingdom2024-05-22
1001Japan2024-05-22
1002Brazil2024-05-25
1003Argentina2024-05-20
1004United Kingdom2024-05-30
1005France2024-06-16
1006Germany2024-06-07
1007Spain2024-06-04
1008United Kingdom2024-05-25
1009Spain2024-06-08
1010Germany2024-06-12
1011France2024-05-27
1012Australia2024-05-24
1013Australia2024-06-07
1014Brazil2024-05-24
1015Canada2024-05-21
1016Russia2024-06-17
1017Canada2024-06-04
1018Japan2024-05-28
1019Spain2024-05-29
1020Spain2024-06-11
1021France2024-06-01
1022Spain2024-05-27
1023India2024-06-09
1024Brazil2024-06-12
1025Brazil2024-05-26
1026Brazil2024-06-17
1027Spain2024-06-08
1028France2024-05-26
1029India2024-06-08
1030Germany2024-06-08
1031Russia2024-05-27
1032Spain2024-05-30
1033Russia2024-05-31
1034Canada2024-05-29
1035United Kingdom2024-06-11
1036Russia2024-05-28
1037Argentina2024-06-15
1038India2024-05-26
1039Australia2024-06-02
1040Russia2024-05-28
1041India2024-05-24
1042India2024-05-24
1043India2024-05-22
1044Russia2024-06-06
1045Italy2024-06-06
1046Argentina2024-06-02
1047Spain2024-05-21
1048Russia2024-06-17
1049Germany2024-06-03

On-Demand Data

NameIdCountryDate
Costa J Inouye1000Russia2024-06-07
Tony J Garufi1001Italy2024-06-12
Ricardo T Morasca1002Argentina2024-06-13
Leon J Inouye1003Argentina2024-05-29
Tony G Chui1004Brazil2024-06-16
Nicolas P Caldarera1005Japan2024-06-08
Silvio I Butt1006Spain2024-06-11
Aditya R Stenseth1007United Kingdom2024-06-14
Johnson C Garufi1008Germany2024-05-28
Murillo P Figeroa1009Italy2024-05-29
Mayumi C Briddick1010Germany2024-06-10
Kaitlin X Gaucho1011Argentina2024-05-20
Tony R Doe1012Spain2024-06-04
Ivar E Flosi1013Russia2024-05-21
Maria G Vocelka1014Argentina2024-05-27
Nicolas T Tollner1015United Kingdom2024-06-02
Greenwood F Malet1016India2024-06-07
Maria R Malet1017Germany2024-06-10
Rodrigues J Whobrey1018Australia2024-05-25
Wickens H Bolognia1019Australia2024-06-07
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Silvio Q DilliardBrazilStephen Shaw RENEWAL
Murillo J NestleSpainBernardo Dominic QUALIFIED
Emily G MorascaBrazilIvan Magalhaes NEGOTIATION
Smith T GlickCanadaXuxue Feng NEGOTIATION
Tony W DoeIndiaOnyama Limba UNQUALIFIED
Octavia X AmigonCanadaIoni Bowcher PROPOSAL
Jones H ChuiCanadaXuxue Feng NEW
Ricardo Q StensethSpainIoni Bowcher RENEWAL
Julie R PaprockiItalyAmy Elsner QUALIFIED
Jennifer X FerenczBrazilAnna Fali RENEWAL
Emily L ShinkoJapanElwin Sharvill PROPOSAL
Greenwood U CaldareraBrazilElwin Sharvill NEGOTIATION
Greenwood B BriddickJapanOnyama Limba NEW
Jennifer R PaprockiUnited KingdomStephen Shaw QUALIFIED
Leon P BriddickUnited KingdomStephen Shaw NEW
Munro B WieserJapanOnyama Limba NEW
Darci O BowleyRussiaOnyama Limba UNQUALIFIED
Jennifer W PaprockiGermanyStephen Shaw NEGOTIATION
Emily D RoysterArgentinaElwin Sharvill NEW
Ricardo F PaprockiJapanXuxue Feng NEW
Tony O InouyeItalyIoni Bowcher NEGOTIATION
James F RutaIndiaAmy Elsner NEW
Mayumi M RoysterGermanyAnna Fali PROPOSAL
Kaitlin L RutaIndiaAmy Elsner UNQUALIFIED
Octavia K ButtJapanBernardo Dominic PROPOSAL
Leon I MaletIndiaAmy Elsner RENEWAL
Maisha L IturbideAustraliaIvan Magalhaes PROPOSAL
Clifford H BologniaSpainAnna Fali UNQUALIFIED
Izzy V RutaGermanyStephen Shaw UNQUALIFIED
Jefferson D StensethItalyElwin Sharvill PROPOSAL
Mayumi G BriddickItalyAsiya Javayant PROPOSAL
Jeanfrancois G SaylorsSpainXuxue Feng RENEWAL
Jefferson S RulapaughSpainOnyama Limba PROPOSAL
Cody V ButtCanadaIoni Bowcher QUALIFIED
Munro U RimJapanBernardo Dominic QUALIFIED
David S RoysterIndiaAmy Elsner NEGOTIATION
Leon S AmigonJapanAnna Fali PROPOSAL
Octavia R GarufiRussiaOnyama Limba QUALIFIED
Alejandro P FerenczJapanBernardo Dominic RENEWAL
Claire Q ChuiGermanyElwin Sharvill 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>