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
Costa X RimJapanAsiya Javayant NEW
Misaki N PaprockiCanadaOnyama Limba NEGOTIATION
Mujtaba V WieserIndiaStephen Shaw UNQUALIFIED
Jennifer O RoysterRussiaIoni Bowcher NEGOTIATION
Munro A WieserGermanyBernardo Dominic UNQUALIFIED
Wickens T RoysterArgentinaBernardo Dominic NEW
Faith E SergiJapanAmy Elsner RENEWAL
Jennifer P OldroydRussiaOnyama Limba NEGOTIATION
Adams C VenereSpainIvan Magalhaes UNQUALIFIED
Silvio R InouyeFranceIoni Bowcher PROPOSAL
Morrow L BologniaBrazilXuxue Feng RENEWAL
Alejandro O AlbaresIndiaElwin Sharvill NEW
Isabel H FlosiJapanElwin Sharvill QUALIFIED
Rodrigues C MorascaIndiaOnyama Limba NEGOTIATION
Ricardo J WhobreyFranceAmy Elsner PROPOSAL
Jones T BologniaUnited KingdomElwin Sharvill RENEWAL
Johnson F ChuiJapanIvan Magalhaes NEW
Cody S ChuiAustraliaAmy Elsner NEW
Kadeem E RoysterItalyXuxue Feng NEW
Adams N DoeSpainElwin Sharvill QUALIFIED
Julie X DoeBrazilAmy Elsner PROPOSAL
Faith J ShinkoArgentinaIoni Bowcher NEGOTIATION
Mujtaba H KuskoRussiaElwin Sharvill NEGOTIATION
Leja X KuskoAustraliaElwin Sharvill PROPOSAL
Smith T ChuiJapanIvan Magalhaes RENEWAL
Munro M KolmetzCanadaBernardo Dominic NEGOTIATION
Isabel Y WaycottAustraliaElwin Sharvill RENEWAL
Octavia A FigeroaRussiaIvan Magalhaes QUALIFIED
Chavez V KolmetzGermanyElwin Sharvill NEW
Antonio W NickaAustraliaIvan Magalhaes PROPOSAL
Ricardo N TollnerAustraliaStephen Shaw RENEWAL
Juan N KolmetzBrazilElwin Sharvill PROPOSAL
Morrow Q MaletBrazilElwin Sharvill UNQUALIFIED
Stacey T GillianAustraliaBernardo Dominic UNQUALIFIED
Claire W KolmetzFranceAmy Elsner NEW
Tony Y WieserArgentinaStephen Shaw RENEWAL
Adams J GauchoBrazilIoni Bowcher PROPOSAL
Sinclair Q BologniaItalyAmy Elsner UNQUALIFIED
Johnson Y GauchoArgentinaXuxue Feng UNQUALIFIED
Leon C OstroskyItalyAnna Fali UNQUALIFIED
Adams B FollerJapanXuxue Feng UNQUALIFIED
David T ChuiSpainStephen Shaw PROPOSAL
Alejandro G GarufiSpainAnna Fali RENEWAL
Leja A MarrierFranceAsiya Javayant NEW
Smith O InouyeBrazilAmy Elsner PROPOSAL
Morrow Y SergiAustraliaStephen Shaw PROPOSAL
Juan G SlusarskiItalyOnyama Limba QUALIFIED
Smith M GauchoCanadaElwin Sharvill NEGOTIATION
Jefferson G ShinkoRussiaElwin Sharvill NEW
Greenwood V FigeroaItalyElwin Sharvill QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Stacey H MaletFranceBernardo Dominic RENEWAL
Julie U SlusarskiFranceIvan Magalhaes RENEWAL
Ashley Q FlosiArgentinaIoni Bowcher UNQUALIFIED
David R AlbaresItalyAsiya Javayant NEGOTIATION
Silvio F WieserRussiaIvan Magalhaes PROPOSAL
Aika K NickaSpainIvan Magalhaes NEW
Francesco V FigeroaCanadaAmy Elsner NEW
Emily D KuskoCanadaAmy Elsner NEW
Sinclair E MacleadJapanAnna Fali NEW
Emily M BriddickSpainElwin Sharvill NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jeanfrancois D PaprockiJapan2025-04-29Buckley Miller Wright QUALIFIED63Elwin Sharvill
1001Octavia B MaletGermany2025-04-18Chemel, James L Cpa RENEWAL28Asiya Javayant
1002Darci B OldroydUnited Kingdom2025-04-25Chapman, Ross E Esq QUALIFIED8Onyama Limba
1003Chavez B KolmetzBrazil2025-04-26King, Christopher A Esq QUALIFIED3Stephen Shaw
1004Arvin G SergiBrazil2025-04-07Rousseaux, Michael Esq UNQUALIFIED4Anna Fali
1005Deepesh F RutaRussia2025-04-09Rousseaux, Michael Esq NEGOTIATION59Onyama Limba
1006Smith R DarakjySpain2025-04-23King, Christopher A Esq UNQUALIFIED17Ivan Magalhaes
1007Cody P WaycottCanada2025-04-15Chemel, James L Cpa NEGOTIATION17Asiya Javayant
1008Juan V MaletFrance2025-04-04Benton, John B Jr NEGOTIATION96Xuxue Feng
1009Faith F WieserRussia2025-04-19Chemel, James L Cpa NEW47Onyama Limba
1010Silvio P AlbaresAustralia2025-04-26Feiner Bros QUALIFIED17Amy Elsner
1011Juan V ButtIndia2025-04-13Feltz Printing Service NEW50Xuxue Feng
1012Mayumi E RulapaughArgentina2025-04-21Dorl, James J Esq RENEWAL35Onyama Limba
1013Octavia A KuskoRussia2025-04-28Chapman, Ross E Esq UNQUALIFIED5Xuxue Feng
1014Jefferson W FigeroaUnited Kingdom2025-04-07Chanay, Jeffrey A Esq NEW51Onyama Limba
1015David L StensethIndia2025-04-04Commercial Press NEW90Onyama Limba
1016Antonio X WhobreyItaly2025-04-15Rangoni Of Florence UNQUALIFIED91Bernardo Dominic
1017Francesco S BriddickUnited Kingdom2025-04-28Printing Dimensions PROPOSAL18Anna Fali
1018Maisha Z MacleadJapan2025-04-09Chanay, Jeffrey A Esq NEW21Ivan Magalhaes
1019Salvatore V WieserBrazil2025-04-17Rousseaux, Michael Esq QUALIFIED63Elwin Sharvill
1020Sinclair G RimItaly2025-04-30Rousseaux, Michael Esq PROPOSAL37Ioni Bowcher
1021Antonio C RutaGermany2025-04-03Chemel, James L Cpa RENEWAL53Xuxue Feng
1022Sinclair F FollerSpain2025-04-21Printing Dimensions PROPOSAL61Stephen Shaw
1023Salvatore E GlickFrance2025-04-16Rousseaux, Michael Esq PROPOSAL8Onyama Limba
1024Johnson N DilliardUnited Kingdom2025-04-24Buckley Miller Wright NEW52Elwin Sharvill
1025Munro V FollerBrazil2025-04-17Benton, John B Jr RENEWAL93Anna Fali
1026Morrow Y WieserRussia2025-04-21Chanay, Jeffrey A Esq RENEWAL50Xuxue Feng
1027Mujtaba T WhobreyJapan2025-04-15Commercial Press QUALIFIED68Ioni Bowcher
1028Emily H ButtItaly2025-04-15Buckley Miller Wright RENEWAL41Xuxue Feng
1029Antonio G DarakjyGermany2025-04-02Chemel, James L Cpa UNQUALIFIED12Amy Elsner
1030Silvio A GarufiBrazil2025-04-18Truhlar And Truhlar Attys NEGOTIATION41Anna Fali
1031Jones A ShinkoFrance2025-04-14Printing Dimensions QUALIFIED35Bernardo Dominic
1032Isabel J NickaItaly2025-04-07Chanay, Jeffrey A Esq QUALIFIED94Anna Fali
1033Francesco T FollerSpain2025-04-09Morlong Associates NEGOTIATION19Amy Elsner
1034Nicolas K CampainSpain2025-04-18Feltz Printing Service UNQUALIFIED7Xuxue Feng
1035Ivar M RimItaly2025-04-16Chemel, James L Cpa QUALIFIED73Asiya Javayant
1036Octavia H NickaRussia2025-04-19Chemel, James L Cpa UNQUALIFIED14Ioni Bowcher
1037Rodrigues U SlusarskiBrazil2025-04-29Printing Dimensions RENEWAL64Amy Elsner
1038Kaitlin Y VocelkaRussia2025-04-22Commercial Press RENEWAL25Stephen Shaw
1039Wickens U AmigonUnited Kingdom2025-04-24Rousseaux, Michael Esq UNQUALIFIED34Onyama Limba
1040Munro G MacleadJapan2025-04-05Morlong Associates UNQUALIFIED97Onyama Limba
1041Clifford A StensethSpain2025-04-28Feiner Bros NEGOTIATION7Onyama Limba
1042Murillo L VocelkaJapan2025-04-09Buckley Miller Wright NEW82Bernardo Dominic
1043Octavia N WaycottSpain2025-04-05Commercial Press PROPOSAL26Asiya Javayant
1044Smith U DoeJapan2025-04-22Benton, John B Jr NEGOTIATION37Anna Fali
1045Misaki D BriddickRussia2025-04-25Printing Dimensions NEW15Bernardo Dominic
1046Jeanfrancois Q WhobreyGermany2025-04-11Benton, John B Jr QUALIFIED2Amy Elsner
1047Antonio I MacleadSpain2025-04-28Truhlar And Truhlar Attys NEW6Ioni Bowcher
1048Ashley M DarakjyJapan2025-04-02Chemel, James L Cpa UNQUALIFIED49Asiya Javayant
1049James F IturbideArgentina2025-04-19Chanay, Jeffrey A Esq NEGOTIATION77Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Ivar Y KolmetzFranceOnyama Limba PROPOSAL
Isabel H RutaArgentinaBernardo Dominic UNQUALIFIED
Morrow N NestleUnited KingdomXuxue Feng NEGOTIATION
Faith I GillianGermanyAmy Elsner NEW
Johnson H GlickCanadaIoni Bowcher RENEWAL
Cody Q KuskoUnited KingdomIvan Magalhaes RENEWAL
Jeanfrancois J AlbaresAustraliaStephen Shaw RENEWAL
Mujtaba P ButtRussiaAmy Elsner UNQUALIFIED
Aditya O GlickGermanyXuxue Feng PROPOSAL
Greenwood A NestleGermanyXuxue Feng RENEWAL
Mujtaba I FollerJapanOnyama Limba NEW
Munro O WaycottGermanyIvan Magalhaes NEGOTIATION
Salvatore R FigeroaFranceIvan Magalhaes UNQUALIFIED
Morrow I KuskoIndiaIoni Bowcher QUALIFIED
Juan L RutaSpainAnna Fali NEGOTIATION
Salvatore Z RimAustraliaXuxue Feng RENEWAL
David D PaprockiIndiaStephen Shaw QUALIFIED
Silvio E GlickSpainStephen Shaw NEGOTIATION
Murillo D SlusarskiRussiaAmy Elsner NEGOTIATION
Maria F BowleyAustraliaElwin Sharvill NEGOTIATION
Misaki E DilliardJapanAmy Elsner PROPOSAL
Jennifer H MaletUnited KingdomIvan Magalhaes RENEWAL
Wickens X MarrierRussiaIvan Magalhaes NEW
Murillo G SlusarskiCanadaBernardo Dominic UNQUALIFIED
Silvio I RimUnited KingdomAmy Elsner PROPOSAL
Aruna G RoysterItalyOnyama Limba NEW
Mujtaba K FerenczRussiaXuxue Feng QUALIFIED
Leja B FollerJapanStephen Shaw PROPOSAL
Izzy T WhobreyArgentinaIvan Magalhaes UNQUALIFIED
Mayumi Q OldroydArgentinaAsiya Javayant RENEWAL
Munro C RimJapanStephen Shaw QUALIFIED
Chavez P StensethJapanAnna Fali RENEWAL
Wickens B DoeAustraliaBernardo Dominic PROPOSAL
Octavia S VocelkaCanadaAsiya Javayant NEGOTIATION
Aditya X MaletBrazilElwin Sharvill UNQUALIFIED
David T AlbaresFranceAnna Fali UNQUALIFIED
Jefferson Z GlickArgentinaAsiya Javayant NEGOTIATION
Ashley U OstroskyJapanXuxue Feng RENEWAL
Kadeem H SlusarskiRussiaAsiya Javayant NEW
Claire C DoeSpainElwin Sharvill RENEWAL
Misaki A DoeBrazilIvan Magalhaes PROPOSAL
Cody L BriddickGermanyStephen Shaw PROPOSAL
Mujtaba A WaycottCanadaXuxue Feng NEW
Ashley E KuskoRussiaOnyama Limba QUALIFIED
Julie K ButtSpainElwin Sharvill NEW
Emily C AmigonBrazilAmy Elsner NEW
Arvin Z DilliardItalyStephen Shaw RENEWAL
Chavez F FlosiFranceAmy Elsner PROPOSAL
Ivar I MarrierIndiaOnyama Limba NEGOTIATION
Darci F RoysterAustraliaAmy Elsner NEGOTIATION
Frozen Columns
Name
Kaitlin H Malet
Morrow Y Bowley
Emily T Shinko
David F Glick
Morrow E Perin
Mayumi K Flosi
Jones W Paprocki
Jennifer X Saylors
Aika I Amigon
Murillo P Kusko
Jennifer A Darakjy
Jefferson O Glick
Stacey F Briddick
Adams P Malet
Johnson Q Oldroyd
Maisha S Flosi
Adams P Maclead
Alejandro W Campain
Julie Y Kusko
Ricardo L Briddick
Aditya Q Caudy
Izzy S Doe
Aditya R Saylors
Munro K Glick
Octavia M Sergi
Izzy N Rim
Juan G Dilliard
Maisha Z Venere
Johnson V Marrier
Faith E Glick
Darci L Whobrey
Antonio M Chui
Jones Y Figeroa
Alejandro H Ruta
Aruna G Wieser
Misaki D Kusko
Kadeem K Whobrey
Jefferson C Caudy
Jennifer Y Chui
James O Dilliard
Kaitlin H Campain
Leja W Iturbide
Costa U Tollner
Clifford A Amigon
Ivar R Morasca
Aruna J Doe
Jennifer G Ruta
Maisha X Malet
Darci A Poquette
Jennifer T Caudy
IdCountryDate
1000Brazil2025-04-17
1001Argentina2025-04-07
1002Germany2025-04-02
1003United Kingdom2025-04-19
1004Canada2025-04-23
1005Canada2025-04-20
1006Brazil2025-04-22
1007Spain2025-04-13
1008Brazil2025-04-07
1009Spain2025-04-07
1010Japan2025-04-06
1011Argentina2025-04-01
1012France2025-04-29
1013United Kingdom2025-04-12
1014Canada2025-04-04
1015Russia2025-04-28
1016Canada2025-04-08
1017Japan2025-04-01
1018Brazil2025-04-26
1019Argentina2025-04-04
1020Australia2025-04-04
1021India2025-04-03
1022United Kingdom2025-04-11
1023Japan2025-04-23
1024Brazil2025-04-12
1025United Kingdom2025-04-07
1026India2025-04-21
1027Argentina2025-04-03
1028Canada2025-04-20
1029Germany2025-04-25
1030Germany2025-04-01
1031France2025-04-04
1032Australia2025-04-09
1033Japan2025-04-07
1034India2025-04-11
1035Italy2025-04-07
1036Spain2025-04-25
1037Russia2025-04-15
1038Canada2025-04-09
1039Japan2025-04-02
1040Canada2025-04-25
1041Russia2025-04-24
1042Australia2025-04-26
1043Italy2025-04-17
1044Brazil2025-04-17
1045Australia2025-04-07
1046Spain2025-04-17
1047Italy2025-04-06
1048Germany2025-04-24
1049United Kingdom2025-04-05

On-Demand Data

NameIdCountryDate
Jeanfrancois D Albares1000Argentina2025-04-30
Francesco Z Kolmetz1001Spain2025-04-19
Kadeem P Malet1002France2025-04-02
Claire M Whobrey1003Australia2025-04-20
Stacey B Malet1004Argentina2025-04-05
Maria Y Sergi1005India2025-04-21
Deepesh E Marrier1006Canada2025-04-07
Ashley C Doe1007Argentina2025-04-16
David Z Iturbide1008Germany2025-04-13
Murillo E Venere1009Spain2025-04-11
Jeanfrancois V Chui1010Spain2025-04-29
Sinclair U Wieser1011France2025-04-15
Costa F Ferencz1012Australia2025-04-03
Rodrigues O Ferencz1013Canada2025-04-21
Misaki M Slusarski1014United Kingdom2025-04-01
Clifford Q Nestle1015France2025-04-14
James L Dilliard1016Canada2025-04-17
Mujtaba D Chui1017Germany2025-04-01
Claire P Malet1018Brazil2025-04-12
Costa Q Stenseth1019Argentina2025-04-13
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Maisha N WaycottArgentinaElwin Sharvill QUALIFIED
Ashley A SchemmerCanadaOnyama Limba NEW
Leja L RimJapanAsiya Javayant NEW
Rodrigues K FerenczCanadaOnyama Limba UNQUALIFIED
Adams P KuskoBrazilBernardo Dominic QUALIFIED
Octavia Y PerinCanadaAmy Elsner UNQUALIFIED
Costa S SergiRussiaOnyama Limba RENEWAL
Kadeem O GauchoArgentinaElwin Sharvill PROPOSAL
Costa I GillianJapanOnyama Limba NEGOTIATION
Greenwood J DilliardBrazilAnna Fali UNQUALIFIED
Kadeem N MaletCanadaElwin Sharvill RENEWAL
Jennifer N SlusarskiGermanyIvan Magalhaes PROPOSAL
Mayumi F MarrierGermanyBernardo Dominic NEW
Misaki P GarufiFranceXuxue Feng QUALIFIED
Ivar E BologniaBrazilBernardo Dominic NEGOTIATION
Johnson S RulapaughJapanAnna Fali RENEWAL
Antonio C FigeroaRussiaAmy Elsner QUALIFIED
Rodrigues S DilliardArgentinaAnna Fali PROPOSAL
Nicolas X DoeJapanXuxue Feng RENEWAL
Mayumi F MarrierJapanAmy Elsner QUALIFIED
Nicolas M RulapaughIndiaAmy Elsner NEGOTIATION
Faith X MarrierJapanElwin Sharvill UNQUALIFIED
Ashley R VocelkaCanadaAsiya Javayant QUALIFIED
Murillo Z RimUnited KingdomIvan Magalhaes NEW
Chavez G AmigonFranceIoni Bowcher PROPOSAL
Aruna V WaycottJapanAmy Elsner PROPOSAL
Salvatore B SchemmerAustraliaIvan Magalhaes PROPOSAL
Kadeem G WieserRussiaStephen Shaw PROPOSAL
Silvio X RoysterJapanElwin Sharvill RENEWAL
Arvin W BowleyUnited KingdomIoni Bowcher QUALIFIED
Stacey Y TollnerJapanElwin Sharvill PROPOSAL
Stacey Z WieserSpainIoni Bowcher QUALIFIED
Cody G DarakjyJapanElwin Sharvill RENEWAL
Aika X StockhamRussiaAsiya Javayant NEGOTIATION
Stacey H CaudyIndiaXuxue Feng NEGOTIATION
Arvin F MacleadAustraliaIvan Magalhaes UNQUALIFIED
Greenwood E OstroskyBrazilXuxue Feng NEW
Leon U PaprockiUnited KingdomXuxue Feng UNQUALIFIED
Greenwood B PerinCanadaStephen Shaw PROPOSAL
Juan O BologniaSpainStephen Shaw PROPOSAL

<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>