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
Alejandro N AmigonGermanyBernardo Dominic RENEWAL
Ashley K GauchoFranceElwin Sharvill NEGOTIATION
Rodrigues H PerinCanadaAmy Elsner RENEWAL
Misaki I CaudySpainIvan Magalhaes NEGOTIATION
Julie E KolmetzUnited KingdomStephen Shaw NEW
Stacey O InouyeAustraliaIoni Bowcher RENEWAL
Costa Q SaylorsGermanyBernardo Dominic RENEWAL
Clifford W RulapaughAustraliaBernardo Dominic UNQUALIFIED
Chavez M PerinGermanyXuxue Feng NEW
Mujtaba G NestleCanadaAsiya Javayant PROPOSAL
Darci T KolmetzSpainBernardo Dominic RENEWAL
Faith R WhobreySpainIvan Magalhaes PROPOSAL
Jeanfrancois P CampainArgentinaStephen Shaw NEGOTIATION
Arvin L StensethGermanyXuxue Feng NEGOTIATION
Mujtaba L BologniaFranceXuxue Feng NEW
Maria R MaletArgentinaOnyama Limba UNQUALIFIED
Mayumi R ButtSpainElwin Sharvill QUALIFIED
Smith E ShinkoGermanyElwin Sharvill NEW
Arvin L PaprockiCanadaAnna Fali UNQUALIFIED
Ivar L ChuiGermanyElwin Sharvill NEW
Wickens B FlosiArgentinaIoni Bowcher NEW
Maisha N SaylorsRussiaBernardo Dominic PROPOSAL
Emily F PaprockiUnited KingdomXuxue Feng NEW
Johnson G MaletBrazilXuxue Feng QUALIFIED
Faith E FollerJapanAsiya Javayant QUALIFIED
Munro Y StensethSpainAsiya Javayant NEGOTIATION
Costa F FerenczRussiaElwin Sharvill UNQUALIFIED
Izzy W WhobreyArgentinaXuxue Feng UNQUALIFIED
Cody X MacleadArgentinaBernardo Dominic RENEWAL
Kadeem F VenereAustraliaOnyama Limba PROPOSAL
Maria P GlickGermanyIvan Magalhaes RENEWAL
Deepesh K OldroydAustraliaIvan Magalhaes NEW
Aika C AmigonGermanyOnyama Limba QUALIFIED
Maria P BriddickRussiaStephen Shaw RENEWAL
Sinclair N MacleadSpainOnyama Limba PROPOSAL
Leon W GillianFranceAmy Elsner NEW
Francesco Z BowleyGermanyBernardo Dominic UNQUALIFIED
Aditya A MacleadFranceXuxue Feng NEGOTIATION
Rodrigues N RoysterArgentinaXuxue Feng RENEWAL
Izzy S RutaAustraliaOnyama Limba RENEWAL
Ricardo G GarufiFranceIvan Magalhaes NEW
Francesco W BriddickSpainAsiya Javayant UNQUALIFIED
Adams F CaldareraItalyOnyama Limba QUALIFIED
Jones D KuskoArgentinaElwin Sharvill NEGOTIATION
Aruna J PoquetteItalyBernardo Dominic RENEWAL
Julie A GauchoJapanIvan Magalhaes UNQUALIFIED
Nicolas I DilliardBrazilAmy Elsner RENEWAL
Emily A MacleadSpainStephen Shaw QUALIFIED
Kaitlin V GlickJapanXuxue Feng NEGOTIATION
Leja R MarrierUnited KingdomElwin Sharvill NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Juan V DoeArgentinaElwin Sharvill NEGOTIATION
Wickens U KolmetzFranceAnna Fali PROPOSAL
Costa Q KuskoGermanyIvan Magalhaes PROPOSAL
Cody F MacleadFranceXuxue Feng UNQUALIFIED
Darci O CaudyArgentinaXuxue Feng UNQUALIFIED
Aditya Y NestleUnited KingdomStephen Shaw UNQUALIFIED
Misaki X RoysterRussiaIoni Bowcher QUALIFIED
Alejandro F RulapaughJapanStephen Shaw NEW
Nicolas B KolmetzJapanIvan Magalhaes PROPOSAL
Sinclair R NickaUnited KingdomStephen Shaw UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Arvin L OldroydAustralia2024-06-15Morlong Associates UNQUALIFIED16Amy Elsner
1001Emily E PaprockiSpain2024-06-07Feltz Printing Service NEGOTIATION26Anna Fali
1002Nicolas R InouyeBrazil2024-05-23Chanay, Jeffrey A Esq RENEWAL29Elwin Sharvill
1003Silvio V MarrierGermany2024-06-17Feltz Printing Service NEGOTIATION35Anna Fali
1004Julie K BriddickGermany2024-06-10Chemel, James L Cpa NEW50Xuxue Feng
1005Aditya V SaylorsAustralia2024-06-21Buckley Miller Wright PROPOSAL79Anna Fali
1006Smith F SchemmerArgentina2024-05-30King, Christopher A Esq UNQUALIFIED37Onyama Limba
1007Cody X WieserJapan2024-05-23King, Christopher A Esq NEW61Bernardo Dominic
1008Johnson R MorascaIndia2024-06-12Feiner Bros RENEWAL41Asiya Javayant
1009Munro D DilliardUnited Kingdom2024-05-31King, Christopher A Esq PROPOSAL71Asiya Javayant
1010Jeanfrancois K SaylorsSpain2024-06-07Commercial Press UNQUALIFIED34Ioni Bowcher
1011Munro K AlbaresGermany2024-06-19Benton, John B Jr RENEWAL35Ioni Bowcher
1012Aika A ChuiSpain2024-06-13Rousseaux, Michael Esq NEW74Anna Fali
1013Stacey Q StensethAustralia2024-06-13Rangoni Of Florence NEGOTIATION99Ivan Magalhaes
1014Aika N DoeRussia2024-05-30King, Christopher A Esq NEGOTIATION65Asiya Javayant
1015Smith M FollerGermany2024-05-31Rousseaux, Michael Esq NEGOTIATION2Onyama Limba
1016Deepesh M RimJapan2024-06-08Commercial Press RENEWAL83Onyama Limba
1017Isabel G BowleyCanada2024-05-28Rousseaux, Michael Esq UNQUALIFIED7Bernardo Dominic
1018Antonio V CaudyJapan2024-06-12Rousseaux, Michael Esq QUALIFIED12Elwin Sharvill
1019Clifford K MaletBrazil2024-06-21King, Christopher A Esq NEGOTIATION13Bernardo Dominic
1020Cody P KolmetzFrance2024-05-29Truhlar And Truhlar Attys UNQUALIFIED68Elwin Sharvill
1021Isabel H MacleadArgentina2024-06-18Feiner Bros PROPOSAL43Xuxue Feng
1022Julie H GauchoBrazil2024-05-25Buckley Miller Wright NEW21Amy Elsner
1023Adams U TollnerAustralia2024-06-16Commercial Press QUALIFIED41Amy Elsner
1024Jeanfrancois F NickaJapan2024-06-16Commercial Press QUALIFIED70Ivan Magalhaes
1025Mujtaba Q MorascaRussia2024-06-12Chapman, Ross E Esq PROPOSAL31Ivan Magalhaes
1026Greenwood R OstroskyAustralia2024-06-09Printing Dimensions UNQUALIFIED0Amy Elsner
1027Jefferson A MaletGermany2024-05-31Dorl, James J Esq NEGOTIATION17Bernardo Dominic
1028Faith R KolmetzGermany2024-06-07Chemel, James L Cpa NEW14Xuxue Feng
1029Jones M FigeroaGermany2024-06-13Rousseaux, Michael Esq NEGOTIATION87Xuxue Feng
1030Emily Z OstroskyCanada2024-06-01King, Christopher A Esq NEGOTIATION88Anna Fali
1031James B ChuiCanada2024-06-20Commercial Press PROPOSAL51Ivan Magalhaes
1032Arvin R StockhamArgentina2024-06-17Feiner Bros NEGOTIATION68Elwin Sharvill
1033Chavez D InouyeIndia2024-05-29Feiner Bros RENEWAL24Elwin Sharvill
1034Stacey J BologniaUnited Kingdom2024-05-30Buckley Miller Wright RENEWAL63Anna Fali
1035Arvin O AlbaresJapan2024-05-24Chapman, Ross E Esq NEGOTIATION44Onyama Limba
1036Stacey Y StockhamJapan2024-06-14Morlong Associates QUALIFIED37Ivan Magalhaes
1037Adams B PoquetteBrazil2024-06-07King, Christopher A Esq RENEWAL20Anna Fali
1038Nicolas V PoquetteIndia2024-06-19Feiner Bros UNQUALIFIED55Ioni Bowcher
1039Aika T PerinUnited Kingdom2024-05-26Benton, John B Jr UNQUALIFIED86Asiya Javayant
1040Arvin N AmigonSpain2024-05-31Feiner Bros RENEWAL15Anna Fali
1041Maisha K WhobreyJapan2024-06-17Rangoni Of Florence RENEWAL13Onyama Limba
1042Emily G FigeroaFrance2024-05-26Chemel, James L Cpa PROPOSAL8Xuxue Feng
1043Ashley U FlosiBrazil2024-06-17Commercial Press UNQUALIFIED29Elwin Sharvill
1044Silvio O PaprockiIndia2024-06-09Feltz Printing Service QUALIFIED83Onyama Limba
1045Rodrigues Z GarufiArgentina2024-05-23Benton, John B Jr RENEWAL53Asiya Javayant
1046Izzy T VenereSpain2024-05-24Dorl, James J Esq NEW60Ivan Magalhaes
1047Sinclair J RulapaughArgentina2024-06-21King, Christopher A Esq UNQUALIFIED16Xuxue Feng
1048Francesco F BriddickCanada2024-06-03Feltz Printing Service NEW88Amy Elsner
1049Costa J SlusarskiItaly2024-06-21Truhlar And Truhlar Attys PROPOSAL73Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Francesco Z RoysterSpainOnyama Limba UNQUALIFIED
Stacey J CaldareraAustraliaStephen Shaw UNQUALIFIED
Isabel G ShinkoArgentinaBernardo Dominic UNQUALIFIED
Ricardo R GillianGermanyIvan Magalhaes UNQUALIFIED
Mayumi M VocelkaJapanIoni Bowcher UNQUALIFIED
Leja W NestleGermanyOnyama Limba PROPOSAL
Jennifer L KuskoFranceIoni Bowcher QUALIFIED
Mujtaba Z FollerCanadaAnna Fali RENEWAL
Cody T RulapaughCanadaIoni Bowcher RENEWAL
Alejandro D CaudyBrazilIoni Bowcher RENEWAL
Ricardo P GlickCanadaAnna Fali NEGOTIATION
Ricardo W ChuiAustraliaOnyama Limba PROPOSAL
Aika Q VenereFranceElwin Sharvill QUALIFIED
Isabel R MarrierSpainAsiya Javayant UNQUALIFIED
Ivar P BologniaItalyIoni Bowcher PROPOSAL
Mayumi N FollerFranceIoni Bowcher PROPOSAL
Julie C GillianRussiaAsiya Javayant NEW
Ashley I BowleyBrazilAnna Fali NEGOTIATION
Darci F TollnerCanadaAnna Fali NEGOTIATION
Darci J CaldareraSpainBernardo Dominic RENEWAL
Juan C InouyeAustraliaBernardo Dominic RENEWAL
Jeanfrancois V DilliardSpainAsiya Javayant QUALIFIED
Antonio W AlbaresRussiaBernardo Dominic QUALIFIED
Kaitlin D PerinJapanAsiya Javayant NEGOTIATION
Salvatore R MarrierFranceAmy Elsner NEW
Aditya N MarrierItalyAnna Fali QUALIFIED
Deepesh Q WieserFranceXuxue Feng PROPOSAL
Wickens U DoeBrazilAmy Elsner QUALIFIED
Leja I MacleadCanadaAnna Fali RENEWAL
David F VenereBrazilAnna Fali RENEWAL
David Z TollnerItalyIvan Magalhaes RENEWAL
Maisha C BriddickFranceIvan Magalhaes PROPOSAL
Jones Y NestleItalyAmy Elsner PROPOSAL
Claire I StockhamFranceAsiya Javayant RENEWAL
Arvin K AmigonJapanStephen Shaw UNQUALIFIED
Cody J CaldareraAustraliaBernardo Dominic NEGOTIATION
James I PerinBrazilXuxue Feng RENEWAL
Chavez U KolmetzUnited KingdomIvan Magalhaes NEGOTIATION
James H MaletIndiaAmy Elsner PROPOSAL
Jones J CaudyRussiaAsiya Javayant NEW
Munro R RoysterFranceAnna Fali QUALIFIED
Jefferson X MorascaUnited KingdomStephen Shaw NEW
Sinclair D MaletRussiaIvan Magalhaes NEGOTIATION
Salvatore C CaudyGermanyIvan Magalhaes PROPOSAL
Ashley H OstroskyGermanyAmy Elsner NEW
Salvatore J WieserFranceStephen Shaw RENEWAL
Kaitlin D TollnerUnited KingdomIvan Magalhaes QUALIFIED
Sinclair A DarakjyCanadaIoni Bowcher PROPOSAL
Arvin F DarakjyArgentinaXuxue Feng PROPOSAL
Sinclair R VocelkaRussiaOnyama Limba NEGOTIATION
Frozen Columns
Name
Claire S Gaucho
Tony S Schemmer
Mayumi Q Inouye
Munro I Nestle
Jennifer F Oldroyd
Ricardo F Iturbide
Izzy O Iturbide
Juan X Paprocki
Octavia K Kusko
Smith L Royster
Octavia L Perin
Arvin A Waycott
Nicolas L Rim
Aditya Z Oldroyd
Julie V Figeroa
Kaitlin M Malet
Maisha J Malet
Faith J Tollner
Izzy Z Ferencz
Chavez W Kolmetz
James W Nicka
Aika V Garufi
Adams X Perin
Francesco X Caudy
Smith L Bowley
Emily H Flosi
Rodrigues E Malet
Ivar X Venere
Leja V Flosi
Octavia B Gaucho
Octavia P Gillian
Alejandro Z Campain
Greenwood X Chui
Smith H Glick
Ricardo B Nestle
Julie B Caudy
Kaitlin O Doe
Leja Q Ferencz
James L Morasca
Chavez R Chui
Maria O Nestle
Maria B Rim
Smith O Malet
Kadeem U Glick
Munro J Malet
Mujtaba R Rim
Jefferson I Nestle
Deepesh N Kolmetz
Isabel S Amigon
Mayumi Y Sergi
IdCountryDate
1000Germany2024-05-28
1001Canada2024-05-29
1002Italy2024-05-24
1003India2024-06-13
1004Brazil2024-05-28
1005India2024-06-16
1006Canada2024-06-20
1007France2024-06-15
1008France2024-06-04
1009Germany2024-06-03
1010India2024-05-25
1011Russia2024-06-07
1012Canada2024-06-07
1013France2024-06-11
1014Canada2024-05-27
1015Japan2024-05-26
1016Brazil2024-06-10
1017Spain2024-06-16
1018Australia2024-06-02
1019Argentina2024-06-10
1020India2024-05-27
1021Australia2024-05-26
1022India2024-06-08
1023France2024-06-01
1024India2024-06-09
1025Brazil2024-06-07
1026Spain2024-05-29
1027Spain2024-06-04
1028Spain2024-06-20
1029France2024-06-05
1030Canada2024-06-12
1031Italy2024-05-28
1032Canada2024-06-19
1033Canada2024-06-15
1034Spain2024-06-09
1035United Kingdom2024-06-18
1036Australia2024-05-25
1037Canada2024-05-25
1038Germany2024-06-09
1039France2024-06-06
1040Spain2024-06-20
1041Italy2024-06-18
1042Australia2024-06-20
1043United Kingdom2024-05-23
1044India2024-05-24
1045Argentina2024-06-11
1046Russia2024-05-23
1047Brazil2024-06-09
1048Spain2024-06-07
1049United Kingdom2024-05-29

On-Demand Data

NameIdCountryDate
Morrow P Shinko1000Germany2024-06-18
Emily P Flosi1001Italy2024-06-09
Leja H Figeroa1002Argentina2024-06-12
Aditya A Rulapaugh1003Japan2024-06-20
Mujtaba M Rim1004France2024-05-25
Mayumi Q Bolognia1005Italy2024-05-23
Greenwood A Maclead1006Italy2024-06-07
Tony G Stenseth1007India2024-06-05
Francesco M Royster1008Australia2024-05-31
Stacey E Oldroyd1009Spain2024-05-28
Nicolas P Morasca1010Brazil2024-06-14
Tony V Bowley1011France2024-06-12
James H Bowley1012India2024-06-05
Jefferson T Shinko1013Canada2024-05-27
Chavez D Maclead1014Germany2024-06-03
James E Rulapaugh1015Brazil2024-06-18
Johnson H Nicka1016Japan2024-06-19
Jeanfrancois T Dilliard1017Canada2024-06-06
David S Bowley1018India2024-06-03
Ashley B Maclead1019Spain2024-06-18
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Darci M OstroskyFranceAmy Elsner UNQUALIFIED
Costa B SergiGermanyIoni Bowcher PROPOSAL
Salvatore V SchemmerBrazilIvan Magalhaes NEW
Johnson W SlusarskiItalyOnyama Limba UNQUALIFIED
Julie X PerinGermanyAsiya Javayant NEW
Francesco P WhobreyUnited KingdomBernardo Dominic NEGOTIATION
Jennifer B BriddickCanadaIoni Bowcher RENEWAL
Murillo C FerenczArgentinaStephen Shaw PROPOSAL
Alejandro T CaldareraItalyElwin Sharvill NEGOTIATION
Costa A OldroydBrazilIvan Magalhaes UNQUALIFIED
Aruna Z DoeCanadaElwin Sharvill NEW
Nicolas E GauchoFranceAmy Elsner QUALIFIED
Mayumi R MaletRussiaAnna Fali RENEWAL
Murillo Y TollnerJapanElwin Sharvill NEGOTIATION
Stacey G KolmetzSpainElwin Sharvill UNQUALIFIED
James R RimItalyAnna Fali QUALIFIED
Murillo X AlbaresBrazilXuxue Feng NEGOTIATION
Mayumi Z MorascaUnited KingdomStephen Shaw NEW
Kaitlin D RutaItalyAnna Fali UNQUALIFIED
Claire A DoeSpainOnyama Limba RENEWAL
Francesco Z KolmetzAustraliaAnna Fali QUALIFIED
Tony Z AmigonGermanyAnna Fali NEW
Adams W StensethGermanyXuxue Feng NEW
Stacey T FollerFranceAsiya Javayant UNQUALIFIED
Juan M CampainJapanAnna Fali PROPOSAL
Octavia R GauchoGermanyOnyama Limba RENEWAL
Kaitlin L MaletCanadaOnyama Limba NEGOTIATION
Tony V FollerIndiaAsiya Javayant NEGOTIATION
Claire T MaletAustraliaStephen Shaw PROPOSAL
Greenwood K SchemmerJapanStephen Shaw NEW
Darci G NickaItalyBernardo Dominic RENEWAL
Ricardo O MarrierSpainOnyama Limba UNQUALIFIED
Morrow V ChuiUnited KingdomElwin Sharvill NEW
Greenwood J WieserArgentinaBernardo Dominic RENEWAL
Ivar M KolmetzJapanAsiya Javayant PROPOSAL
Maria G KolmetzUnited KingdomStephen Shaw QUALIFIED
Antonio L RoysterGermanyAnna Fali NEGOTIATION
Jeanfrancois C ShinkoAustraliaStephen Shaw PROPOSAL
Nicolas I VenereUnited KingdomIoni Bowcher RENEWAL
Wickens M FerenczSpainAmy Elsner 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>