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 O VenereSpainElwin Sharvill RENEWAL
James J NestleArgentinaIoni Bowcher RENEWAL
Darci A VocelkaGermanyElwin Sharvill PROPOSAL
Mujtaba V RutaBrazilAmy Elsner QUALIFIED
Julie J IturbideIndiaXuxue Feng UNQUALIFIED
Adams H DarakjySpainXuxue Feng RENEWAL
Murillo Q RutaUnited KingdomIoni Bowcher NEGOTIATION
Leja O StockhamUnited KingdomAmy Elsner QUALIFIED
Stacey K DilliardIndiaBernardo Dominic RENEWAL
Faith U MacleadArgentinaStephen Shaw NEGOTIATION
Misaki T MorascaUnited KingdomAnna Fali NEW
Rodrigues L MacleadItalyStephen Shaw QUALIFIED
Cody Y KolmetzItalyXuxue Feng NEW
Aditya O ButtItalyElwin Sharvill QUALIFIED
Leon M RimItalyElwin Sharvill RENEWAL
Clifford E FigeroaArgentinaXuxue Feng PROPOSAL
Isabel V CaldareraJapanBernardo Dominic RENEWAL
Johnson A KolmetzFranceElwin Sharvill RENEWAL
Jennifer H PaprockiCanadaXuxue Feng RENEWAL
Adams Y ShinkoCanadaStephen Shaw RENEWAL
Darci U SaylorsArgentinaOnyama Limba NEGOTIATION
Julie W MacleadRussiaElwin Sharvill PROPOSAL
Murillo E OldroydUnited KingdomOnyama Limba QUALIFIED
Smith A StensethGermanyIvan Magalhaes NEGOTIATION
Juan W SchemmerAustraliaAsiya Javayant QUALIFIED
David Z TollnerAustraliaBernardo Dominic NEGOTIATION
Stacey O ChuiSpainXuxue Feng QUALIFIED
Francesco K PaprockiArgentinaIvan Magalhaes NEW
Misaki U MaletAustraliaBernardo Dominic QUALIFIED
Sinclair R FigeroaAustraliaXuxue Feng NEGOTIATION
Clifford J WieserRussiaOnyama Limba QUALIFIED
Mayumi C RutaAustraliaIvan Magalhaes NEGOTIATION
Kaitlin E GarufiItalyStephen Shaw QUALIFIED
Claire Z TollnerSpainOnyama Limba RENEWAL
Faith G NickaRussiaXuxue Feng RENEWAL
Isabel F RulapaughBrazilElwin Sharvill PROPOSAL
Silvio Z MaletItalyIvan Magalhaes UNQUALIFIED
Sinclair M GlickRussiaXuxue Feng RENEWAL
Aruna G ChuiCanadaIoni Bowcher UNQUALIFIED
Jones C DilliardBrazilIvan Magalhaes RENEWAL
James Y BowleyAustraliaAmy Elsner QUALIFIED
Aika N DoeCanadaStephen Shaw RENEWAL
Jefferson P CaldareraBrazilIoni Bowcher UNQUALIFIED
Mujtaba D MaletSpainBernardo Dominic NEW
Adams K DoeRussiaBernardo Dominic PROPOSAL
Tony J CaldareraUnited KingdomOnyama Limba PROPOSAL
Maisha B SergiGermanyBernardo Dominic UNQUALIFIED
Kadeem U DilliardRussiaIvan Magalhaes RENEWAL
Juan M SaylorsRussiaStephen Shaw UNQUALIFIED
Antonio Q KolmetzBrazilOnyama Limba QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Maria F RutaArgentinaElwin Sharvill NEGOTIATION
Darci A FigeroaJapanIoni Bowcher NEGOTIATION
Stacey T KuskoUnited KingdomAmy Elsner PROPOSAL
Maisha I KolmetzAustraliaOnyama Limba QUALIFIED
Ashley A MorascaCanadaAmy Elsner NEW
Aika V ChuiAustraliaXuxue Feng NEW
Stacey N SchemmerIndiaIvan Magalhaes QUALIFIED
Cody S OldroydArgentinaOnyama Limba NEGOTIATION
Nicolas T CaldareraSpainAmy Elsner QUALIFIED
Clifford O MaletBrazilXuxue Feng NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Darci O GarufiBrazil2026-07-12Commercial Press RENEWAL87Ioni Bowcher
1001Julie O DoeIndia2026-06-25Rangoni Of Florence RENEWAL6Amy Elsner
1002Darci C NickaFrance2026-07-07King, Christopher A Esq NEW55Bernardo Dominic
1003Kaitlin L IturbideSpain2026-07-05King, Christopher A Esq PROPOSAL95Ioni Bowcher
1004Johnson W BologniaItaly2026-06-17Chapman, Ross E Esq QUALIFIED87Xuxue Feng
1005Antonio X AmigonSpain2026-06-23Dorl, James J Esq PROPOSAL97Ioni Bowcher
1006Aika R CaudyGermany2026-06-17Chapman, Ross E Esq NEGOTIATION73Onyama Limba
1007Cody I NickaJapan2026-06-26King, Christopher A Esq PROPOSAL25Stephen Shaw
1008Arvin V ChuiSpain2026-06-20Commercial Press RENEWAL40Stephen Shaw
1009Leja W MaletAustralia2026-06-30Chanay, Jeffrey A Esq QUALIFIED26Xuxue Feng
1010Morrow G PoquetteIndia2026-06-25Benton, John B Jr QUALIFIED99Stephen Shaw
1011Aika C FerenczIndia2026-07-09Printing Dimensions PROPOSAL82Asiya Javayant
1012Clifford I BowleyArgentina2026-06-13Feiner Bros RENEWAL19Amy Elsner
1013Sinclair G FerenczJapan2026-06-19Buckley Miller Wright NEW82Anna Fali
1014Morrow D CaudyArgentina2026-07-05Feltz Printing Service NEGOTIATION0Anna Fali
1015Stacey V SaylorsFrance2026-06-28Chanay, Jeffrey A Esq UNQUALIFIED37Elwin Sharvill
1016Francesco G GlickAustralia2026-07-03Morlong Associates NEW42Onyama Limba
1017Clifford I VenereIndia2026-06-19Feiner Bros NEW69Ivan Magalhaes
1018Smith U BologniaGermany2026-06-21Chapman, Ross E Esq NEW49Ivan Magalhaes
1019Octavia F NestleAustralia2026-06-28Morlong Associates NEW30Stephen Shaw
1020Johnson T AlbaresGermany2026-06-22Buckley Miller Wright RENEWAL20Onyama Limba
1021Alejandro A IturbideIndia2026-07-03Chapman, Ross E Esq QUALIFIED12Ivan Magalhaes
1022Leon F ShinkoAustralia2026-06-30Morlong Associates QUALIFIED64Anna Fali
1023Leon Z VenereUnited Kingdom2026-06-29Truhlar And Truhlar Attys NEGOTIATION93Amy Elsner
1024Greenwood E WieserBrazil2026-06-26Chanay, Jeffrey A Esq NEW32Ioni Bowcher
1025Chavez J PoquetteUnited Kingdom2026-06-20Feltz Printing Service UNQUALIFIED32Xuxue Feng
1026Ivar R FigeroaSpain2026-06-24Chanay, Jeffrey A Esq NEGOTIATION16Ioni Bowcher
1027Francesco X RimCanada2026-06-26Chanay, Jeffrey A Esq PROPOSAL78Amy Elsner
1028Ashley X PaprockiIndia2026-06-24Morlong Associates NEW29Amy Elsner
1029Leon T KuskoIndia2026-06-16Feiner Bros RENEWAL50Elwin Sharvill
1030Cody Y BowleyRussia2026-06-29Dorl, James J Esq PROPOSAL46Ivan Magalhaes
1031James H MorascaBrazil2026-06-17Feiner Bros NEW50Amy Elsner
1032Johnson G StensethGermany2026-06-18Morlong Associates PROPOSAL8Xuxue Feng
1033Arvin U KolmetzFrance2026-07-09Truhlar And Truhlar Attys PROPOSAL91Asiya Javayant
1034Faith M RutaAustralia2026-07-11Chanay, Jeffrey A Esq UNQUALIFIED59Xuxue Feng
1035Salvatore R MaletUnited Kingdom2026-06-20Feltz Printing Service PROPOSAL15Anna Fali
1036Wickens Q BologniaCanada2026-06-25King, Christopher A Esq PROPOSAL29Onyama Limba
1037Rodrigues S FigeroaCanada2026-06-28Chemel, James L Cpa PROPOSAL99Asiya Javayant
1038Jefferson V DarakjyAustralia2026-06-23Commercial Press UNQUALIFIED87Xuxue Feng
1039Claire B AmigonFrance2026-06-30Chemel, James L Cpa PROPOSAL70Anna Fali
1040Aruna F SaylorsUnited Kingdom2026-06-24Chemel, James L Cpa NEW40Asiya Javayant
1041Ashley N MaletGermany2026-07-05Morlong Associates QUALIFIED86Onyama Limba
1042Emily Y MacleadUnited Kingdom2026-06-23Chemel, James L Cpa PROPOSAL44Anna Fali
1043Murillo G GarufiCanada2026-06-22Chemel, James L Cpa PROPOSAL3Ivan Magalhaes
1044Jefferson Z IturbideSpain2026-06-20Benton, John B Jr UNQUALIFIED41Asiya Javayant
1045Stacey B BologniaSpain2026-07-08Chanay, Jeffrey A Esq QUALIFIED29Xuxue Feng
1046Smith Z MaletGermany2026-06-26Dorl, James J Esq UNQUALIFIED51Ivan Magalhaes
1047Arvin M MarrierUnited Kingdom2026-07-07Feiner Bros RENEWAL40Xuxue Feng
1048Sinclair F InouyeFrance2026-07-12Rousseaux, Michael Esq QUALIFIED14Onyama Limba
1049Kadeem W MaletBrazil2026-06-29Feiner Bros QUALIFIED79Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Costa A BologniaBrazilIvan Magalhaes NEW
Kaitlin O ButtFranceBernardo Dominic RENEWAL
James Y RimJapanIvan Magalhaes RENEWAL
Jones D WaycottGermanyXuxue Feng UNQUALIFIED
Julie H KolmetzJapanStephen Shaw QUALIFIED
Faith U InouyeGermanyIvan Magalhaes RENEWAL
Jennifer U FerenczGermanyElwin Sharvill NEW
Mayumi A BologniaAustraliaIoni Bowcher NEW
David G FerenczGermanyStephen Shaw UNQUALIFIED
Tony Z InouyeFranceAsiya Javayant PROPOSAL
Kaitlin F DoeSpainAmy Elsner PROPOSAL
Johnson Q FollerSpainElwin Sharvill NEW
James Y DilliardArgentinaElwin Sharvill PROPOSAL
Isabel D InouyeCanadaOnyama Limba QUALIFIED
Salvatore E DilliardBrazilIvan Magalhaes RENEWAL
Costa M StensethFranceAsiya Javayant RENEWAL
Greenwood I VenereGermanyOnyama Limba NEGOTIATION
Smith W SaylorsJapanBernardo Dominic UNQUALIFIED
Izzy S RutaItalyStephen Shaw RENEWAL
Julie S DilliardUnited KingdomAnna Fali NEGOTIATION
Clifford W InouyeIndiaElwin Sharvill RENEWAL
Arvin C StockhamFranceXuxue Feng NEW
Jefferson G WaycottAustraliaOnyama Limba NEW
Leja B OstroskyRussiaOnyama Limba NEW
Izzy P SergiCanadaIvan Magalhaes UNQUALIFIED
Greenwood R FollerUnited KingdomIvan Magalhaes RENEWAL
Deepesh A RoysterAustraliaAnna Fali RENEWAL
Aditya Q WhobreyBrazilIoni Bowcher QUALIFIED
Mayumi T SergiArgentinaIoni Bowcher RENEWAL
Morrow I GauchoFranceAmy Elsner RENEWAL
Johnson C SchemmerJapanOnyama Limba NEGOTIATION
James O StensethJapanIvan Magalhaes RENEWAL
Johnson K OstroskyAustraliaElwin Sharvill QUALIFIED
Arvin K BologniaIndiaBernardo Dominic NEGOTIATION
Cody Y CaldareraSpainIoni Bowcher QUALIFIED
Julie B RulapaughAustraliaBernardo Dominic NEGOTIATION
Smith R KolmetzBrazilStephen Shaw NEW
Leon P CaldareraItalyAnna Fali UNQUALIFIED
Jeanfrancois Y MorascaBrazilStephen Shaw PROPOSAL
Octavia I GillianIndiaAsiya Javayant UNQUALIFIED
Ricardo T ChuiAustraliaOnyama Limba UNQUALIFIED
Morrow Z PaprockiArgentinaElwin Sharvill UNQUALIFIED
Adams T MarrierFranceOnyama Limba PROPOSAL
Chavez J DilliardAustraliaIvan Magalhaes PROPOSAL
Leon U OstroskyArgentinaIoni Bowcher NEGOTIATION
Costa N DilliardIndiaBernardo Dominic RENEWAL
Francesco R MaletBrazilIvan Magalhaes NEW
Morrow N RimArgentinaAsiya Javayant NEGOTIATION
Silvio K MacleadCanadaAsiya Javayant PROPOSAL
Ricardo C DilliardJapanBernardo Dominic NEGOTIATION
Frozen Columns
Name
Francesco Y Stenseth
Aruna Q Dilliard
Stacey Y Schemmer
Izzy T Albares
Johnson U Ferencz
Ashley W Doe
Morrow E Maclead
Greenwood P Kolmetz
Adams G Flosi
James Y Oldroyd
Leja L Dilliard
Tony L Amigon
Aika I Campain
Jeanfrancois A Nicka
Aruna J Slusarski
Silvio S Marrier
Mayumi K Gaucho
Aruna G Gaucho
Isabel G Malet
Julie Z Royster
Salvatore B Amigon
Claire X Campain
Darci A Maclead
Jeanfrancois I Kusko
Adams D Stockham
Julie M Paprocki
Darci S Stockham
James Z Waycott
David D Stockham
Antonio V Ostrosky
Leja K Gaucho
Ivar Z Flosi
Morrow J Gillian
Ivar N Nestle
Rodrigues A Kusko
Cody W Ostrosky
Jeanfrancois K Saylors
Ricardo O Rim
Emily E Chui
Clifford U Albares
Ashley U Ruta
Nicolas T Oldroyd
David A Vocelka
Faith K Vocelka
James C Garufi
Deepesh D Wieser
Claire I Darakjy
Murillo I Malet
Arvin W Caldarera
Francesco D Iturbide
IdCountryDate
1000Argentina2026-06-15
1001Brazil2026-07-03
1002Germany2026-06-20
1003India2026-07-07
1004Japan2026-06-23
1005Canada2026-07-11
1006Germany2026-07-07
1007Argentina2026-07-08
1008Brazil2026-06-24
1009Germany2026-07-10
1010Brazil2026-06-17
1011Australia2026-06-15
1012Canada2026-06-18
1013Spain2026-07-02
1014Germany2026-07-01
1015United Kingdom2026-07-05
1016Australia2026-06-17
1017Australia2026-06-18
1018Argentina2026-06-15
1019India2026-07-01
1020Russia2026-07-01
1021Germany2026-06-14
1022Australia2026-07-11
1023Spain2026-07-09
1024Japan2026-06-20
1025Argentina2026-06-29
1026Canada2026-06-25
1027Australia2026-06-14
1028Canada2026-06-15
1029Italy2026-06-22
1030Spain2026-06-25
1031Australia2026-06-13
1032France2026-06-29
1033Australia2026-06-22
1034Canada2026-06-22
1035India2026-07-10
1036Germany2026-07-11
1037Japan2026-07-04
1038Argentina2026-06-20
1039Russia2026-07-02
1040Germany2026-07-04
1041Argentina2026-07-03
1042France2026-07-07
1043France2026-06-20
1044Argentina2026-07-06
1045Japan2026-07-08
1046Brazil2026-06-15
1047France2026-07-11
1048Russia2026-07-04
1049Canada2026-06-14

On-Demand Data

NameIdCountryDate
Kadeem M Oldroyd1000Japan2026-06-27
Murillo B Ruta1001United Kingdom2026-07-09
Aditya U Waycott1002France2026-06-20
Greenwood L Malet1003Germany2026-06-24
Jeanfrancois W Stenseth1004Canada2026-06-23
Leja L Rulapaugh1005Australia2026-07-12
Misaki T Albares1006Germany2026-06-24
Kadeem T Slusarski1007Australia2026-06-13
Francesco G Briddick1008Australia2026-06-25
Greenwood A Amigon1009Argentina2026-06-27
Adams X Schemmer1010Italy2026-06-23
Ashley M Darakjy1011Australia2026-06-21
Alejandro S Doe1012Argentina2026-06-23
Jennifer U Venere1013Italy2026-06-20
Silvio J Amigon1014France2026-07-08
Morrow H Foller1015Argentina2026-07-03
Chavez V Maclead1016United Kingdom2026-06-14
Jennifer I Caldarera1017India2026-06-16
Deepesh T Malet1018India2026-06-26
Antonio Y Stenseth1019France2026-06-18
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Tony P NestleCanadaBernardo Dominic RENEWAL
Morrow F BologniaGermanyOnyama Limba UNQUALIFIED
Antonio C KolmetzJapanElwin Sharvill NEGOTIATION
Tony Y GarufiUnited KingdomStephen Shaw UNQUALIFIED
Morrow V BowleyGermanyAsiya Javayant QUALIFIED
Jefferson W InouyeFranceOnyama Limba QUALIFIED
Aruna L WieserRussiaBernardo Dominic NEW
Jones E StockhamJapanAsiya Javayant QUALIFIED
Jeanfrancois D NickaUnited KingdomIvan Magalhaes PROPOSAL
Aruna L MorascaFranceAmy Elsner UNQUALIFIED
Leon D VocelkaItalyIoni Bowcher PROPOSAL
Jennifer C SlusarskiGermanyIvan Magalhaes QUALIFIED
Darci H ButtCanadaAnna Fali UNQUALIFIED
Mayumi J OstroskyCanadaAnna Fali NEW
Claire V RutaAustraliaOnyama Limba NEGOTIATION
Juan H ChuiSpainAsiya Javayant PROPOSAL
Mujtaba C PoquetteItalyOnyama Limba NEGOTIATION
Ricardo I InouyeAustraliaAmy Elsner NEW
Silvio D WieserSpainOnyama Limba NEGOTIATION
Julie T WhobreyJapanIoni Bowcher PROPOSAL
Greenwood Q OstroskyBrazilStephen Shaw NEW
Stacey X SlusarskiRussiaXuxue Feng NEGOTIATION
James F PaprockiSpainXuxue Feng RENEWAL
Juan D SergiRussiaAsiya Javayant RENEWAL
Leon M GauchoUnited KingdomAmy Elsner NEW
Izzy S MorascaAustraliaIoni Bowcher PROPOSAL
David I MaletAustraliaXuxue Feng NEW
Isabel P StensethFranceAnna Fali RENEWAL
Clifford N VenereItalyIvan Magalhaes PROPOSAL
Leja C DoeRussiaAsiya Javayant RENEWAL
Aika A MaletSpainStephen Shaw QUALIFIED
Antonio Q SaylorsItalyAmy Elsner RENEWAL
Clifford H DoeAustraliaAmy Elsner NEW
Aika E MarrierItalyElwin Sharvill RENEWAL
Darci X MaletArgentinaIvan Magalhaes UNQUALIFIED
Izzy P VenereRussiaBernardo Dominic PROPOSAL
Silvio I ButtUnited KingdomBernardo Dominic QUALIFIED
Maria O NestleSpainAmy Elsner NEW
Francesco E VenereGermanyAsiya Javayant NEW
Jeanfrancois O OldroydIndiaStephen Shaw QUALIFIED

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