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
Aditya U VenereArgentinaXuxue Feng NEW
Morrow V DarakjyArgentinaOnyama Limba PROPOSAL
Maisha V GlickAustraliaOnyama Limba QUALIFIED
James G AmigonJapanAnna Fali QUALIFIED
Clifford U VocelkaGermanyIvan Magalhaes RENEWAL
Maisha N GlickAustraliaAmy Elsner QUALIFIED
Cody Z PoquetteSpainAsiya Javayant NEW
Jeanfrancois A MorascaIndiaAmy Elsner RENEWAL
Izzy Q VenereAustraliaAsiya Javayant PROPOSAL
Stacey O MaletCanadaXuxue Feng UNQUALIFIED
Chavez D WieserCanadaOnyama Limba RENEWAL
Morrow E GauchoArgentinaOnyama Limba QUALIFIED
Murillo A PoquetteUnited KingdomStephen Shaw NEW
Izzy P WieserUnited KingdomBernardo Dominic QUALIFIED
Cody M CaldareraAustraliaBernardo Dominic QUALIFIED
Arvin O MarrierArgentinaOnyama Limba RENEWAL
Deepesh W SlusarskiSpainXuxue Feng NEW
Johnson O WieserIndiaXuxue Feng NEGOTIATION
Johnson M StensethUnited KingdomElwin Sharvill QUALIFIED
Emily Y RoysterJapanOnyama Limba PROPOSAL
Greenwood X OldroydGermanyAnna Fali PROPOSAL
Ashley Y AlbaresCanadaAnna Fali RENEWAL
Ricardo E KuskoBrazilXuxue Feng RENEWAL
Murillo R PaprockiArgentinaIvan Magalhaes NEW
Leon J PaprockiIndiaIoni Bowcher RENEWAL
Claire D BologniaItalyElwin Sharvill RENEWAL
Ricardo X ChuiGermanyAsiya Javayant NEW
Ashley M GillianCanadaOnyama Limba NEGOTIATION
Mayumi C WhobreyIndiaElwin Sharvill PROPOSAL
Mujtaba K FerenczIndiaIvan Magalhaes NEGOTIATION
Kadeem F NickaIndiaOnyama Limba QUALIFIED
Claire L NickaIndiaXuxue Feng PROPOSAL
Jeanfrancois R ShinkoBrazilOnyama Limba UNQUALIFIED
Chavez X BowleyBrazilAnna Fali RENEWAL
Kaitlin H RimCanadaIvan Magalhaes QUALIFIED
Greenwood V CaudyJapanAmy Elsner NEGOTIATION
Mujtaba I ButtIndiaElwin Sharvill NEW
Darci X PaprockiSpainIvan Magalhaes QUALIFIED
Mayumi T AmigonArgentinaStephen Shaw RENEWAL
Wickens K PoquetteUnited KingdomBernardo Dominic NEGOTIATION
Aditya L KolmetzSpainIvan Magalhaes RENEWAL
Izzy X CaudyIndiaAnna Fali PROPOSAL
Leja A DoeBrazilOnyama Limba PROPOSAL
Francesco H StensethCanadaAsiya Javayant RENEWAL
Wickens C StensethSpainAsiya Javayant QUALIFIED
Jefferson K AlbaresSpainElwin Sharvill PROPOSAL
Juan B NestleRussiaOnyama Limba NEW
Stacey Z RimGermanyElwin Sharvill PROPOSAL
Julie N DilliardIndiaElwin Sharvill UNQUALIFIED
Alejandro L GauchoGermanyStephen Shaw QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Clifford C OldroydBrazilElwin Sharvill RENEWAL
Isabel E FollerBrazilIvan Magalhaes UNQUALIFIED
Octavia V MaletJapanElwin Sharvill NEW
Salvatore Q DoeGermanyIoni Bowcher QUALIFIED
Kaitlin F PerinArgentinaIoni Bowcher PROPOSAL
Leja K KuskoUnited KingdomAnna Fali NEW
Aika K FollerUnited KingdomElwin Sharvill RENEWAL
Tony L WhobreyUnited KingdomElwin Sharvill UNQUALIFIED
James X SergiBrazilElwin Sharvill QUALIFIED
James Z MaletUnited KingdomXuxue Feng RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Leja M RimJapan2025-04-20Printing Dimensions RENEWAL29Elwin Sharvill
1001Kadeem L SaylorsAustralia2025-04-06Commercial Press NEGOTIATION27Onyama Limba
1002Aika I RulapaughUnited Kingdom2025-04-19Chemel, James L Cpa NEGOTIATION35Amy Elsner
1003Leon P KuskoBrazil2025-04-08Chapman, Ross E Esq UNQUALIFIED16Ioni Bowcher
1004Misaki R MaletRussia2025-04-04Feltz Printing Service UNQUALIFIED0Ioni Bowcher
1005Nicolas X SaylorsCanada2025-04-12Commercial Press NEGOTIATION11Ioni Bowcher
1006Sinclair Y MaletSpain2025-04-03Rousseaux, Michael Esq UNQUALIFIED92Elwin Sharvill
1007Johnson G IturbideArgentina2025-03-31Dorl, James J Esq RENEWAL77Elwin Sharvill
1008Tony V SlusarskiItaly2025-04-26Truhlar And Truhlar Attys QUALIFIED70Ioni Bowcher
1009Costa E GillianArgentina2025-04-18Buckley Miller Wright UNQUALIFIED0Amy Elsner
1010Adams F SergiGermany2025-04-13Chemel, James L Cpa PROPOSAL29Xuxue Feng
1011Ashley R FerenczItaly2025-04-18Dorl, James J Esq QUALIFIED59Ivan Magalhaes
1012Kadeem A StensethUnited Kingdom2025-04-28Benton, John B Jr QUALIFIED61Ivan Magalhaes
1013Julie M StensethArgentina2025-04-12Rangoni Of Florence RENEWAL53Stephen Shaw
1014Salvatore S FigeroaItaly2025-04-14Rousseaux, Michael Esq RENEWAL27Amy Elsner
1015Ricardo Y IturbideUnited Kingdom2025-03-31King, Christopher A Esq QUALIFIED5Stephen Shaw
1016Silvio T OldroydAustralia2025-04-19Printing Dimensions PROPOSAL24Onyama Limba
1017Faith Q AlbaresRussia2025-04-15Chemel, James L Cpa NEGOTIATION52Bernardo Dominic
1018Deepesh D SlusarskiUnited Kingdom2025-04-08Printing Dimensions NEGOTIATION8Anna Fali
1019Jennifer D InouyeJapan2025-04-22Morlong Associates PROPOSAL45Ivan Magalhaes
1020Mujtaba Z GlickIndia2025-04-19Dorl, James J Esq PROPOSAL55Bernardo Dominic
1021Cody F GarufiItaly2025-04-07Rangoni Of Florence NEGOTIATION66Amy Elsner
1022Alejandro F SaylorsItaly2025-04-05Rousseaux, Michael Esq UNQUALIFIED73Xuxue Feng
1023Mayumi H GillianUnited Kingdom2025-04-14Dorl, James J Esq NEGOTIATION66Bernardo Dominic
1024Izzy Q CaudyFrance2025-04-17Chanay, Jeffrey A Esq NEGOTIATION78Ioni Bowcher
1025Tony Q CaudyRussia2025-04-01Printing Dimensions PROPOSAL78Asiya Javayant
1026Arvin G WieserIndia2025-04-17Morlong Associates NEGOTIATION26Amy Elsner
1027Kaitlin V BowleyGermany2025-04-19Dorl, James J Esq QUALIFIED37Bernardo Dominic
1028Adams H BriddickItaly2025-04-18Commercial Press QUALIFIED79Amy Elsner
1029Maisha F PaprockiIndia2025-04-29Dorl, James J Esq PROPOSAL50Onyama Limba
1030Antonio C StockhamArgentina2025-04-21Rousseaux, Michael Esq PROPOSAL80Onyama Limba
1031Jennifer J CampainUnited Kingdom2025-04-07Rousseaux, Michael Esq QUALIFIED67Onyama Limba
1032Misaki S AlbaresJapan2025-04-08Morlong Associates RENEWAL44Elwin Sharvill
1033Tony C PoquetteIndia2025-04-14Benton, John B Jr NEGOTIATION9Amy Elsner
1034Izzy Z AlbaresRussia2025-04-07Buckley Miller Wright QUALIFIED56Bernardo Dominic
1035David G FerenczRussia2025-04-03Morlong Associates PROPOSAL46Ivan Magalhaes
1036Aika T WaycottArgentina2025-04-24Buckley Miller Wright PROPOSAL81Onyama Limba
1037Faith U OldroydJapan2025-04-21Chapman, Ross E Esq PROPOSAL56Bernardo Dominic
1038Clifford C GillianRussia2025-04-18Printing Dimensions PROPOSAL32Xuxue Feng
1039Faith H SaylorsFrance2025-04-17Rousseaux, Michael Esq QUALIFIED84Xuxue Feng
1040Aditya S WaycottFrance2025-04-21Truhlar And Truhlar Attys NEW63Anna Fali
1041David B GlickIndia2025-04-23Truhlar And Truhlar Attys NEGOTIATION45Amy Elsner
1042Leon J WhobreyGermany2025-04-03Dorl, James J Esq NEGOTIATION48Xuxue Feng
1043Aruna Y GlickJapan2025-04-24Chanay, Jeffrey A Esq NEGOTIATION2Ivan Magalhaes
1044Jennifer V FigeroaBrazil2025-04-23Rousseaux, Michael Esq PROPOSAL55Xuxue Feng
1045Claire G GlickSpain2025-04-21Buckley Miller Wright PROPOSAL21Stephen Shaw
1046Chavez C DilliardBrazil2025-04-24Buckley Miller Wright RENEWAL50Asiya Javayant
1047Smith U BowleyUnited Kingdom2025-04-19Buckley Miller Wright NEW45Stephen Shaw
1048Maisha O CaldareraSpain2025-04-22Commercial Press QUALIFIED1Onyama Limba
1049Smith P MaletIndia2025-04-27Feiner Bros NEW39Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Tony U BologniaSpainElwin Sharvill NEW
Murillo L AlbaresRussiaAnna Fali UNQUALIFIED
Wickens G WhobreyUnited KingdomStephen Shaw NEGOTIATION
Izzy R DoeSpainAmy Elsner NEGOTIATION
Jeanfrancois Z VocelkaSpainAnna Fali RENEWAL
Mujtaba E AmigonGermanyIvan Magalhaes NEW
Isabel D CaldareraArgentinaElwin Sharvill RENEWAL
Aruna M DoeUnited KingdomIvan Magalhaes RENEWAL
Faith C ChuiBrazilElwin Sharvill RENEWAL
Darci W OstroskyCanadaXuxue Feng NEW
Silvio N DarakjyUnited KingdomStephen Shaw QUALIFIED
Clifford Z ChuiJapanIoni Bowcher QUALIFIED
Aruna M KuskoJapanElwin Sharvill UNQUALIFIED
Faith E CampainItalyOnyama Limba UNQUALIFIED
Jeanfrancois I GauchoItalyAsiya Javayant RENEWAL
Smith G MorascaFranceXuxue Feng PROPOSAL
Greenwood M FollerItalyBernardo Dominic PROPOSAL
Deepesh U KolmetzIndiaOnyama Limba NEW
Kaitlin Q DoeSpainStephen Shaw UNQUALIFIED
Jennifer S FerenczRussiaBernardo Dominic NEW
Francesco C GauchoRussiaAmy Elsner QUALIFIED
Aika R SaylorsSpainElwin Sharvill RENEWAL
Sinclair M NestleRussiaIvan Magalhaes NEGOTIATION
Izzy L SergiArgentinaIoni Bowcher NEGOTIATION
Julie Y CaldareraBrazilAsiya Javayant UNQUALIFIED
Ricardo I DoeJapanOnyama Limba NEW
Silvio R VenereItalyOnyama Limba NEW
Izzy T CaudyUnited KingdomBernardo Dominic NEGOTIATION
Deepesh Y SaylorsItalyIvan Magalhaes NEW
Darci R FerenczItalyAnna Fali QUALIFIED
Kaitlin W PoquetteUnited KingdomAsiya Javayant NEGOTIATION
Arvin M PerinSpainAmy Elsner NEGOTIATION
Antonio N GarufiUnited KingdomAnna Fali UNQUALIFIED
Adams R SergiCanadaXuxue Feng NEGOTIATION
Maisha V DoeFranceXuxue Feng QUALIFIED
Salvatore F SergiItalyXuxue Feng UNQUALIFIED
Chavez E StockhamUnited KingdomAnna Fali NEW
Octavia N DarakjyRussiaOnyama Limba QUALIFIED
Clifford P MaletFranceBernardo Dominic RENEWAL
Deepesh O StockhamItalyXuxue Feng NEGOTIATION
Ricardo E KolmetzIndiaIoni Bowcher UNQUALIFIED
Aruna P AlbaresArgentinaOnyama Limba UNQUALIFIED
Arvin H VenereRussiaXuxue Feng NEW
Silvio M CampainGermanyAsiya Javayant QUALIFIED
Darci N SergiUnited KingdomStephen Shaw PROPOSAL
Alejandro Q GauchoUnited KingdomXuxue Feng NEW
Silvio B MaletCanadaAsiya Javayant RENEWAL
Munro S SaylorsJapanAmy Elsner NEGOTIATION
Francesco V BologniaFranceAmy Elsner PROPOSAL
Juan A TollnerRussiaOnyama Limba QUALIFIED
Frozen Columns
Name
Munro T Kolmetz
Wickens T Waycott
Arvin S Vocelka
Deepesh N Nestle
Costa R Shinko
Greenwood H Briddick
Munro O Vocelka
Clifford F Dilliard
Aika I Saylors
Costa Y Flosi
Rodrigues T Doe
Octavia U Oldroyd
Ashley R Nestle
Kaitlin C Doe
Chavez J Royster
Emily P Perin
Darci Q Ruta
Leon N Poquette
Cody Y Maclead
Jefferson U Rulapaugh
Maria N Darakjy
Maisha S Doe
Morrow M Slusarski
Munro J Saylors
Maria P Tollner
Mujtaba Y Gaucho
Clifford B Chui
Maisha Z Royster
Arvin K Briddick
Maisha R Shinko
Antonio A Foller
Leja C Royster
David R Malet
Claire I Poquette
Greenwood E Bolognia
Julie Z Inouye
Leja Z Whobrey
Kaitlin S Darakjy
Smith L Paprocki
Nicolas E Perin
Johnson A Rim
Silvio O Amigon
Jennifer S Dilliard
Smith P Nestle
Jefferson X Waycott
Nicolas C Venere
Faith N Iturbide
Aika T Kusko
Rodrigues V Gillian
Maisha E Darakjy
IdCountryDate
1000Argentina2025-04-03
1001Canada2025-04-19
1002United Kingdom2025-04-05
1003Argentina2025-04-22
1004Australia2025-04-21
1005Canada2025-04-01
1006Canada2025-04-04
1007Russia2025-04-01
1008Canada2025-04-01
1009Argentina2025-04-02
1010Germany2025-04-16
1011Canada2025-04-28
1012Spain2025-04-08
1013Canada2025-04-02
1014France2025-04-16
1015Brazil2025-04-08
1016Italy2025-04-22
1017Russia2025-04-22
1018Italy2025-04-02
1019Spain2025-04-03
1020Canada2025-04-04
1021United Kingdom2025-04-28
1022Italy2025-04-26
1023Argentina2025-04-17
1024Russia2025-04-13
1025India2025-04-08
1026India2025-04-19
1027Italy2025-04-19
1028Canada2025-04-07
1029Germany2025-04-24
1030Canada2025-04-22
1031Argentina2025-04-27
1032Australia2025-04-26
1033Australia2025-04-02
1034United Kingdom2025-04-05
1035Italy2025-04-10
1036Germany2025-04-01
1037Japan2025-04-17
1038United Kingdom2025-04-16
1039Germany2025-04-24
1040Russia2025-03-31
1041Spain2025-04-23
1042Argentina2025-04-07
1043Argentina2025-04-24
1044Spain2025-04-02
1045Japan2025-04-19
1046Argentina2025-04-12
1047Australia2025-04-23
1048Argentina2025-04-12
1049India2025-04-25

On-Demand Data

NameIdCountryDate
Adams C Nestle1000India2025-04-17
Claire P Albares1001Germany2025-04-09
Costa P Bowley1002Italy2025-03-31
Morrow Y Iturbide1003Italy2025-04-21
Maria Z Paprocki1004Russia2025-04-23
Cody A Foller1005Spain2025-04-17
Jeanfrancois W Morasca1006Brazil2025-04-12
Maisha F Ostrosky1007Australia2025-04-07
Faith Q Glick1008Germany2025-04-08
Deepesh R Oldroyd1009France2025-04-18
Leja V Venere1010Argentina2025-04-20
Antonio K Rim1011Italy2025-04-28
Francesco K Rim1012Australia2025-04-18
Antonio O Marrier1013India2025-04-12
Ricardo T Doe1014Russia2025-04-21
Smith R Caudy1015Argentina2025-04-25
Francesco H Amigon1016Russia2025-04-02
James S Ferencz1017Germany2025-04-01
Jones Q Schemmer1018India2025-04-22
Wickens L Rim1019Canada2025-04-05
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Adams X CampainRussiaOnyama Limba NEGOTIATION
Clifford K NickaRussiaOnyama Limba NEGOTIATION
Jeanfrancois B GarufiAustraliaAmy Elsner RENEWAL
Stacey U GauchoArgentinaIoni Bowcher RENEWAL
Jefferson U OldroydRussiaElwin Sharvill QUALIFIED
Aruna Y SlusarskiGermanyElwin Sharvill NEGOTIATION
James V GillianIndiaAmy Elsner QUALIFIED
Cody P CampainGermanyBernardo Dominic UNQUALIFIED
Johnson C FlosiAustraliaIvan Magalhaes PROPOSAL
Isabel K KuskoCanadaStephen Shaw PROPOSAL
Jefferson T MaletArgentinaIoni Bowcher PROPOSAL
Leon S WhobreyAustraliaAmy Elsner QUALIFIED
Faith X DoeAustraliaXuxue Feng QUALIFIED
Kaitlin F InouyeBrazilAmy Elsner RENEWAL
Chavez D MacleadSpainAmy Elsner PROPOSAL
Jones S GarufiUnited KingdomIoni Bowcher RENEWAL
Chavez S BriddickJapanIoni Bowcher RENEWAL
Aruna H CaudySpainXuxue Feng NEW
Aditya K AmigonBrazilOnyama Limba UNQUALIFIED
James D KuskoItalyIoni Bowcher RENEWAL
Misaki J OstroskyCanadaBernardo Dominic PROPOSAL
Jeanfrancois T SergiRussiaAsiya Javayant UNQUALIFIED
Jeanfrancois K FigeroaGermanyAnna Fali PROPOSAL
Chavez W FerenczFranceXuxue Feng UNQUALIFIED
Kadeem T BowleyAustraliaAmy Elsner QUALIFIED
Izzy C InouyeFranceAnna Fali NEW
Wickens E ChuiBrazilXuxue Feng UNQUALIFIED
Ashley M MaletRussiaBernardo Dominic RENEWAL
Emily J WaycottUnited KingdomAsiya Javayant PROPOSAL
Murillo W ChuiUnited KingdomStephen Shaw PROPOSAL
Salvatore T CaldareraIndiaBernardo Dominic NEGOTIATION
Jennifer R RoysterUnited KingdomAnna Fali NEGOTIATION
Emily X CampainIndiaAmy Elsner RENEWAL
Munro H FlosiRussiaBernardo Dominic NEW
Julie F WaycottGermanyStephen Shaw PROPOSAL
Antonio A DarakjyAustraliaAmy Elsner NEGOTIATION
Antonio K DarakjyUnited KingdomOnyama Limba RENEWAL
Aika O VenereGermanyAnna Fali RENEWAL
Juan O NickaItalyBernardo Dominic NEW
Rodrigues I GillianFranceIvan Magalhaes 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>