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
Jones N BowleyBrazilElwin Sharvill RENEWAL
Clifford G ShinkoGermanyOnyama Limba RENEWAL
Faith X OldroydJapanStephen Shaw PROPOSAL
Stacey T TollnerFranceAsiya Javayant QUALIFIED
Chavez T KolmetzArgentinaIoni Bowcher QUALIFIED
Wickens Q GlickAustraliaIoni Bowcher PROPOSAL
Sinclair X WhobreyIndiaOnyama Limba RENEWAL
Nicolas S SergiItalyOnyama Limba QUALIFIED
Kadeem V FlosiAustraliaAmy Elsner UNQUALIFIED
Aditya A ChuiSpainAmy Elsner NEGOTIATION
Ivar T FlosiGermanyXuxue Feng NEW
Juan I DarakjyIndiaBernardo Dominic NEW
Salvatore E BowleyCanadaOnyama Limba NEGOTIATION
Aika L IturbideBrazilAmy Elsner NEGOTIATION
Stacey N GillianSpainOnyama Limba PROPOSAL
Sinclair V WhobreyItalyAmy Elsner NEGOTIATION
Wickens W AlbaresJapanStephen Shaw UNQUALIFIED
Jeanfrancois I SergiUnited KingdomXuxue Feng PROPOSAL
David C AlbaresArgentinaBernardo Dominic QUALIFIED
Ricardo H DoeJapanStephen Shaw QUALIFIED
Juan K InouyeArgentinaBernardo Dominic PROPOSAL
Maria T GauchoItalyIoni Bowcher UNQUALIFIED
Maria L KolmetzGermanyBernardo Dominic QUALIFIED
Faith F MaletArgentinaAmy Elsner QUALIFIED
Jones K AmigonArgentinaAmy Elsner QUALIFIED
Smith J FlosiArgentinaXuxue Feng RENEWAL
Johnson J SergiSpainAnna Fali NEGOTIATION
Chavez K KuskoCanadaElwin Sharvill NEGOTIATION
Chavez C CaldareraRussiaOnyama Limba RENEWAL
Jones A PaprockiSpainElwin Sharvill UNQUALIFIED
Maisha C FollerGermanyStephen Shaw PROPOSAL
Alejandro P DoeSpainXuxue Feng UNQUALIFIED
Ricardo E DilliardIndiaIoni Bowcher NEGOTIATION
Juan S DoeArgentinaOnyama Limba QUALIFIED
Munro C SlusarskiIndiaIvan Magalhaes NEW
Ricardo Q PoquetteSpainIoni Bowcher RENEWAL
Nicolas M SaylorsRussiaXuxue Feng NEW
Arvin O IturbideSpainOnyama Limba RENEWAL
Jeanfrancois U DilliardRussiaOnyama Limba UNQUALIFIED
Rodrigues J RulapaughJapanIvan Magalhaes UNQUALIFIED
Mayumi W DarakjyRussiaBernardo Dominic NEW
David C FerenczAustraliaAmy Elsner RENEWAL
Greenwood N ButtCanadaXuxue Feng QUALIFIED
Stacey P BologniaRussiaIoni Bowcher UNQUALIFIED
Misaki S SchemmerIndiaStephen Shaw QUALIFIED
Stacey D SlusarskiJapanAsiya Javayant NEW
Ashley K NickaFranceAnna Fali NEGOTIATION
Kaitlin R KolmetzAustraliaStephen Shaw UNQUALIFIED
Aika J KuskoJapanAsiya Javayant UNQUALIFIED
Jones G CaldareraJapanXuxue Feng QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Deepesh C VocelkaCanadaElwin Sharvill NEW
Ashley L NestleArgentinaAnna Fali NEW
David P RutaRussiaStephen Shaw QUALIFIED
Juan T PoquetteAustraliaIvan Magalhaes NEGOTIATION
Julie K OldroydJapanAnna Fali UNQUALIFIED
Mujtaba I IturbideItalyAsiya Javayant QUALIFIED
Johnson A DarakjyIndiaOnyama Limba RENEWAL
Tony Y InouyeItalyBernardo Dominic QUALIFIED
Ricardo K StensethBrazilOnyama Limba NEW
Claire F AlbaresCanadaXuxue Feng NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aika C AmigonBrazil2025-04-12Buckley Miller Wright RENEWAL73Bernardo Dominic
1001Leon V AlbaresIndia2025-04-15Chapman, Ross E Esq PROPOSAL70Ivan Magalhaes
1002Misaki Y GlickArgentina2025-04-13Morlong Associates NEW80Amy Elsner
1003Sinclair O StensethUnited Kingdom2025-04-12Rangoni Of Florence QUALIFIED52Xuxue Feng
1004Isabel G RimUnited Kingdom2025-04-07Chanay, Jeffrey A Esq NEGOTIATION83Ioni Bowcher
1005Izzy E FerenczRussia2025-04-24Benton, John B Jr PROPOSAL24Ioni Bowcher
1006Mujtaba I OstroskyAustralia2025-04-16Commercial Press RENEWAL75Xuxue Feng
1007Cody L KuskoCanada2025-04-22Rangoni Of Florence NEGOTIATION6Stephen Shaw
1008Jeanfrancois V RulapaughItaly2025-04-22Buckley Miller Wright NEW3Ivan Magalhaes
1009Greenwood I PoquetteJapan2025-04-14Printing Dimensions UNQUALIFIED61Elwin Sharvill
1010Maisha Y DoeFrance2025-04-14Buckley Miller Wright PROPOSAL93Amy Elsner
1011Munro E FlosiArgentina2025-04-03Buckley Miller Wright QUALIFIED81Asiya Javayant
1012Francesco F PaprockiGermany2025-04-26Chemel, James L Cpa NEGOTIATION6Bernardo Dominic
1013Ricardo I ChuiRussia2025-04-29Dorl, James J Esq PROPOSAL63Asiya Javayant
1014Maisha J DarakjyFrance2025-04-17Dorl, James J Esq UNQUALIFIED47Xuxue Feng
1015Isabel M DoeIndia2025-04-05Dorl, James J Esq NEW48Stephen Shaw
1016Jefferson V AlbaresCanada2025-04-08King, Christopher A Esq RENEWAL8Amy Elsner
1017Alejandro Y StockhamCanada2025-04-09Buckley Miller Wright UNQUALIFIED68Stephen Shaw
1018Kadeem H WieserFrance2025-04-01Commercial Press NEW86Asiya Javayant
1019Maisha U NickaRussia2025-04-20Buckley Miller Wright UNQUALIFIED52Ivan Magalhaes
1020Aruna S FerenczSpain2025-04-17Feltz Printing Service RENEWAL54Elwin Sharvill
1021Silvio D MaletJapan2025-04-08Chanay, Jeffrey A Esq QUALIFIED58Bernardo Dominic
1022Izzy X IturbideUnited Kingdom2025-04-18Feiner Bros NEGOTIATION0Xuxue Feng
1023Cody I OldroydIndia2025-04-22King, Christopher A Esq PROPOSAL59Bernardo Dominic
1024Jones T MorascaJapan2025-04-29Benton, John B Jr NEW86Onyama Limba
1025Maria G KolmetzCanada2025-04-07Commercial Press QUALIFIED74Xuxue Feng
1026Nicolas Z CaldareraUnited Kingdom2025-04-29Morlong Associates NEW84Anna Fali
1027Jefferson L RoysterJapan2025-04-16Chapman, Ross E Esq UNQUALIFIED57Asiya Javayant
1028Leon L OldroydSpain2025-04-24Morlong Associates PROPOSAL25Bernardo Dominic
1029Clifford E BriddickGermany2025-04-18Chapman, Ross E Esq UNQUALIFIED22Onyama Limba
1030Jennifer L DilliardIndia2025-04-10Chemel, James L Cpa NEGOTIATION64Anna Fali
1031Faith U FlosiRussia2025-03-31Chemel, James L Cpa NEW29Asiya Javayant
1032Greenwood Z PoquetteAustralia2025-04-12King, Christopher A Esq PROPOSAL75Stephen Shaw
1033Silvio J DoeBrazil2025-04-18Feltz Printing Service NEGOTIATION23Stephen Shaw
1034Leon B NickaGermany2025-04-25Benton, John B Jr RENEWAL77Elwin Sharvill
1035David U InouyeCanada2025-04-14Morlong Associates RENEWAL73Bernardo Dominic
1036Rodrigues U SlusarskiItaly2025-04-03Chapman, Ross E Esq UNQUALIFIED4Onyama Limba
1037Tony B MarrierJapan2025-04-25Chapman, Ross E Esq UNQUALIFIED60Ioni Bowcher
1038Francesco H CaldareraUnited Kingdom2025-04-26Feltz Printing Service PROPOSAL40Xuxue Feng
1039Murillo W BriddickItaly2025-04-05King, Christopher A Esq NEW35Bernardo Dominic
1040Adams X KolmetzArgentina2025-04-01Commercial Press NEGOTIATION66Anna Fali
1041Jeanfrancois Y TollnerGermany2025-04-22Chemel, James L Cpa RENEWAL32Asiya Javayant
1042Tony Y GillianBrazil2025-04-12Printing Dimensions NEW19Asiya Javayant
1043Misaki T FlosiJapan2025-04-21Feltz Printing Service QUALIFIED61Ioni Bowcher
1044Antonio J SergiGermany2025-04-09Commercial Press QUALIFIED58Bernardo Dominic
1045Francesco D SlusarskiRussia2025-04-29King, Christopher A Esq PROPOSAL57Bernardo Dominic
1046Kadeem S MaletSpain2025-04-12Morlong Associates PROPOSAL42Ivan Magalhaes
1047Faith D SergiAustralia2025-04-01Rousseaux, Michael Esq PROPOSAL59Anna Fali
1048Rodrigues H WhobreyBrazil2025-04-13Rousseaux, Michael Esq NEGOTIATION72Ivan Magalhaes
1049Aruna D VocelkaRussia2025-04-18Chapman, Ross E Esq NEW95Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Francesco H StockhamAustraliaAsiya Javayant PROPOSAL
Aika X PerinUnited KingdomStephen Shaw RENEWAL
Adams E KuskoCanadaIvan Magalhaes NEW
Clifford N ShinkoCanadaXuxue Feng PROPOSAL
Wickens N GillianSpainBernardo Dominic UNQUALIFIED
Kaitlin K BowleyFranceOnyama Limba NEGOTIATION
Clifford M NestleJapanStephen Shaw NEGOTIATION
Leon O IturbideBrazilAnna Fali NEW
Chavez G StockhamSpainIoni Bowcher UNQUALIFIED
Ivar Z SergiJapanAnna Fali UNQUALIFIED
Arvin G AmigonUnited KingdomAnna Fali PROPOSAL
Ashley C DoeCanadaStephen Shaw UNQUALIFIED
Kadeem C GlickJapanStephen Shaw PROPOSAL
Claire O StockhamIndiaBernardo Dominic UNQUALIFIED
Izzy N FerenczArgentinaStephen Shaw UNQUALIFIED
Juan M FlosiUnited KingdomXuxue Feng NEW
Morrow R BriddickItalyAsiya Javayant UNQUALIFIED
Mayumi U FlosiFranceElwin Sharvill RENEWAL
Maria Q DilliardRussiaIvan Magalhaes UNQUALIFIED
Tony K GlickIndiaAnna Fali QUALIFIED
Aruna F FollerFranceIvan Magalhaes UNQUALIFIED
Jones S MaletBrazilBernardo Dominic QUALIFIED
Octavia F ShinkoArgentinaElwin Sharvill QUALIFIED
Johnson I WhobreyJapanBernardo Dominic UNQUALIFIED
Clifford K BowleyCanadaAsiya Javayant UNQUALIFIED
Cody E MorascaCanadaBernardo Dominic QUALIFIED
Isabel L StensethArgentinaBernardo Dominic NEGOTIATION
Emily Y DoeGermanyBernardo Dominic PROPOSAL
Ivar X MacleadCanadaAmy Elsner QUALIFIED
Misaki B MacleadArgentinaAnna Fali RENEWAL
Jones U DilliardGermanyXuxue Feng PROPOSAL
Clifford A ButtIndiaAnna Fali UNQUALIFIED
Claire K MaletIndiaIoni Bowcher UNQUALIFIED
Sinclair P InouyeUnited KingdomElwin Sharvill PROPOSAL
Sinclair Y GarufiUnited KingdomBernardo Dominic RENEWAL
Morrow J RulapaughRussiaIoni Bowcher NEGOTIATION
Tony Y TollnerIndiaElwin Sharvill NEGOTIATION
Misaki R GlickArgentinaElwin Sharvill UNQUALIFIED
Faith A BriddickArgentinaBernardo Dominic RENEWAL
Juan O WieserArgentinaXuxue Feng NEGOTIATION
Morrow A CampainSpainOnyama Limba NEW
Chavez O SaylorsAustraliaStephen Shaw UNQUALIFIED
Mujtaba F VocelkaItalyAmy Elsner RENEWAL
Chavez F CampainGermanyElwin Sharvill UNQUALIFIED
David S PerinCanadaBernardo Dominic NEW
Greenwood X WhobreyBrazilIvan Magalhaes NEW
Mayumi F VocelkaRussiaBernardo Dominic RENEWAL
Johnson V MacleadItalyElwin Sharvill NEW
Greenwood N AlbaresItalyIoni Bowcher NEW
Jones L GillianRussiaXuxue Feng PROPOSAL
Frozen Columns
Name
Aditya M Inouye
Isabel U Malet
Clifford L Glick
Claire H Figeroa
Ricardo E Perin
Salvatore R Ruta
Ashley D Morasca
Tony C Rim
Jennifer W Marrier
Wickens B Paprocki
James Z Oldroyd
Mujtaba K Amigon
Kaitlin A Shinko
Ivar P Malet
Murillo Y Nicka
Emily R Marrier
Maisha H Nestle
Maria S Campain
Francesco B Glick
Sinclair I Tollner
Misaki M Dilliard
Smith P Paprocki
James D Foller
Misaki P Rim
Julie G Rulapaugh
Costa E Briddick
Mujtaba M Nicka
Darci K Malet
Jones K Caudy
Arvin N Kolmetz
Johnson L Rim
Wickens Z Flosi
Maria Y Caldarera
Misaki B Rulapaugh
Kaitlin Y Poquette
Mujtaba O Nicka
Clifford H Gaucho
Emily F Rim
Isabel S Kusko
Chavez B Poquette
Jennifer W Butt
Aditya Q Ruta
David H Ferencz
Aditya P Nestle
Tony H Albares
James X Garufi
Rodrigues M Whobrey
Jennifer U Briddick
Clifford J Oldroyd
Salvatore W Caudy
IdCountryDate
1000France2025-04-07
1001Brazil2025-04-12
1002Germany2025-04-09
1003Spain2025-04-01
1004Russia2025-04-24
1005Spain2025-04-09
1006Canada2025-04-21
1007United Kingdom2025-04-13
1008Russia2025-04-13
1009Australia2025-04-24
1010Germany2025-04-14
1011Russia2025-04-25
1012Japan2025-04-19
1013Canada2025-04-15
1014Spain2025-03-31
1015France2025-04-02
1016Argentina2025-03-31
1017France2025-04-05
1018Italy2025-04-29
1019United Kingdom2025-04-11
1020Spain2025-04-19
1021India2025-04-13
1022Spain2025-04-05
1023Argentina2025-04-06
1024Italy2025-04-21
1025Japan2025-04-12
1026Australia2025-04-20
1027Spain2025-04-04
1028France2025-04-08
1029France2025-04-20
1030Brazil2025-04-12
1031France2025-04-23
1032France2025-04-25
1033France2025-04-16
1034Argentina2025-04-11
1035France2025-04-02
1036Germany2025-04-02
1037Canada2025-04-18
1038India2025-04-25
1039India2025-04-06
1040Spain2025-04-09
1041Japan2025-04-13
1042United Kingdom2025-04-02
1043Spain2025-03-31
1044Canada2025-04-12
1045France2025-04-02
1046Japan2025-04-12
1047Japan2025-04-10
1048Germany2025-04-14
1049Argentina2025-04-18

On-Demand Data

NameIdCountryDate
Tony K Stenseth1000Australia2025-04-24
David F Butt1001Argentina2025-04-24
Mujtaba O Kusko1002Argentina2025-04-06
Rodrigues L Iturbide1003Italy2025-04-14
Johnson N Foller1004Australia2025-04-04
Salvatore G Nestle1005Canada2025-04-11
Rodrigues P Kolmetz1006Japan2025-04-16
Alejandro X Inouye1007Italy2025-03-31
Faith R Maclead1008Russia2025-04-13
James W Saylors1009Japan2025-04-09
Greenwood Z Saylors1010United Kingdom2025-04-19
Francesco P Gillian1011Japan2025-04-25
Stacey V Darakjy1012Japan2025-04-11
Misaki J Iturbide1013Brazil2025-04-16
Costa E Marrier1014Japan2025-04-25
Kadeem J Maclead1015Spain2025-04-14
Morrow T Schemmer1016Canada2025-04-11
Ivar B Malet1017France2025-04-23
Munro J Caldarera1018United Kingdom2025-03-31
Stacey F Ferencz1019Germany2025-04-29
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Maisha Y WhobreyItalyAsiya Javayant PROPOSAL
Kaitlin T DoeGermanyElwin Sharvill PROPOSAL
Julie D RoysterIndiaAnna Fali RENEWAL
Chavez S GlickGermanyStephen Shaw PROPOSAL
Aika F PaprockiItalyIoni Bowcher UNQUALIFIED
Maria N IturbideRussiaAsiya Javayant QUALIFIED
Octavia L IturbideRussiaOnyama Limba NEGOTIATION
Murillo V MaletJapanAmy Elsner PROPOSAL
Adams W CampainSpainIoni Bowcher NEGOTIATION
Chavez W RutaCanadaElwin Sharvill PROPOSAL
Ashley X InouyeBrazilIoni Bowcher NEGOTIATION
Maria S GauchoRussiaAnna Fali UNQUALIFIED
David Q MaletFranceAsiya Javayant UNQUALIFIED
Maria P StensethCanadaIvan Magalhaes RENEWAL
Deepesh I WaycottFranceStephen Shaw NEW
Isabel U DoeGermanyStephen Shaw QUALIFIED
Arvin T VenereBrazilBernardo Dominic QUALIFIED
Emily E NestleItalyAmy Elsner UNQUALIFIED
Emily M ChuiFranceBernardo Dominic RENEWAL
Deepesh Z ButtFranceAmy Elsner UNQUALIFIED
Sinclair N FlosiBrazilStephen Shaw RENEWAL
Nicolas R BowleyBrazilIvan Magalhaes UNQUALIFIED
Munro H InouyeGermanyOnyama Limba QUALIFIED
Morrow V AlbaresRussiaElwin Sharvill QUALIFIED
Johnson A StockhamArgentinaBernardo Dominic NEGOTIATION
Jones V FerenczAustraliaAmy Elsner RENEWAL
Francesco K SlusarskiAustraliaXuxue Feng UNQUALIFIED
Isabel M PaprockiSpainAmy Elsner RENEWAL
Misaki L SlusarskiAustraliaAsiya Javayant NEGOTIATION
Emily E DoeUnited KingdomIvan Magalhaes UNQUALIFIED
David A RulapaughGermanyStephen Shaw PROPOSAL
Clifford P BriddickArgentinaAsiya Javayant NEGOTIATION
Kadeem I FlosiCanadaOnyama Limba NEW
Jones V MaletItalyBernardo Dominic UNQUALIFIED
Aika D CampainArgentinaIvan Magalhaes RENEWAL
Chavez C GlickSpainAsiya Javayant NEGOTIATION
Johnson N FollerGermanyElwin Sharvill PROPOSAL
Murillo H NickaSpainOnyama Limba QUALIFIED
Isabel T PoquetteFranceIvan Magalhaes RENEWAL
Aruna L DilliardItalyXuxue Feng 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>