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
Juan K AlbaresSpainXuxue Feng NEGOTIATION
Darci M WaycottJapanBernardo Dominic NEGOTIATION
Isabel H AlbaresAustraliaOnyama Limba UNQUALIFIED
Mujtaba R RimUnited KingdomAsiya Javayant PROPOSAL
Jeanfrancois B StensethBrazilAsiya Javayant PROPOSAL
Tony P SaylorsSpainStephen Shaw UNQUALIFIED
Julie X SergiItalyOnyama Limba UNQUALIFIED
Salvatore O OldroydFranceBernardo Dominic PROPOSAL
Costa K RutaBrazilStephen Shaw RENEWAL
Leja Z OstroskyGermanyAsiya Javayant UNQUALIFIED
Salvatore W PoquetteUnited KingdomAmy Elsner NEGOTIATION
Stacey X MorascaItalyBernardo Dominic RENEWAL
Arvin G AlbaresGermanyStephen Shaw RENEWAL
Nicolas J CaudySpainIoni Bowcher UNQUALIFIED
Alejandro R MacleadAustraliaIvan Magalhaes NEGOTIATION
Aika K MaletItalyIoni Bowcher PROPOSAL
Smith G MaletJapanIvan Magalhaes NEW
Jefferson Q BowleyUnited KingdomAsiya Javayant NEW
Maisha O FollerJapanOnyama Limba RENEWAL
Jefferson H ButtCanadaAmy Elsner NEGOTIATION
Aika G MarrierFranceXuxue Feng UNQUALIFIED
Chavez X WhobreyUnited KingdomStephen Shaw NEW
Kaitlin X PoquetteArgentinaAsiya Javayant NEGOTIATION
Maria P ButtSpainOnyama Limba NEW
Arvin X DarakjySpainAmy Elsner PROPOSAL
Darci R MarrierCanadaXuxue Feng QUALIFIED
Isabel H MaletArgentinaElwin Sharvill UNQUALIFIED
Nicolas K FlosiCanadaXuxue Feng QUALIFIED
Izzy D SaylorsSpainStephen Shaw NEW
Nicolas P KuskoIndiaStephen Shaw UNQUALIFIED
Aika X GillianArgentinaStephen Shaw NEW
Adams Z MaletJapanAnna Fali RENEWAL
Salvatore O ChuiAustraliaOnyama Limba QUALIFIED
Greenwood Y VocelkaSpainXuxue Feng PROPOSAL
Antonio A FigeroaJapanBernardo Dominic PROPOSAL
Costa L BowleyItalyAmy Elsner UNQUALIFIED
Faith C CampainItalyAnna Fali UNQUALIFIED
Cody J AlbaresRussiaIoni Bowcher NEW
Costa H WhobreyIndiaOnyama Limba UNQUALIFIED
Johnson B SlusarskiSpainIvan Magalhaes UNQUALIFIED
Nicolas L MaletRussiaAmy Elsner QUALIFIED
Nicolas Y FollerJapanIvan Magalhaes UNQUALIFIED
Aruna S CaudyJapanStephen Shaw RENEWAL
Maisha S MorascaJapanIvan Magalhaes PROPOSAL
Julie R MacleadBrazilAsiya Javayant NEGOTIATION
Wickens G MacleadGermanyIvan Magalhaes NEGOTIATION
Murillo D FollerGermanyStephen Shaw QUALIFIED
James J MaletRussiaAnna Fali UNQUALIFIED
Isabel W StensethItalyElwin Sharvill RENEWAL
Alejandro P NestleJapanAmy Elsner UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Cody L DoeJapanIvan Magalhaes UNQUALIFIED
David L KuskoArgentinaAsiya Javayant PROPOSAL
David D StensethBrazilElwin Sharvill UNQUALIFIED
Francesco G WaycottGermanyAmy Elsner NEW
Rodrigues L KuskoSpainElwin Sharvill QUALIFIED
Maria Z RoysterRussiaAsiya Javayant NEGOTIATION
Smith V ChuiCanadaXuxue Feng RENEWAL
Jones C NestleUnited KingdomOnyama Limba NEGOTIATION
Isabel F InouyeSpainStephen Shaw QUALIFIED
David X CaudyJapanXuxue Feng NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Smith F PerinCanada2024-06-16Feiner Bros RENEWAL9Elwin Sharvill
1001Adams X StensethSpain2024-05-29King, Christopher A Esq UNQUALIFIED70Ioni Bowcher
1002Juan Q ButtBrazil2024-05-24Morlong Associates NEW7Ioni Bowcher
1003Juan D CampainIndia2024-06-04Chapman, Ross E Esq NEGOTIATION45Stephen Shaw
1004Octavia V PoquetteIndia2024-05-25Buckley Miller Wright UNQUALIFIED88Bernardo Dominic
1005Jefferson B MorascaRussia2024-05-30King, Christopher A Esq PROPOSAL84Amy Elsner
1006Wickens P CampainUnited Kingdom2024-05-25Feltz Printing Service RENEWAL64Stephen Shaw
1007Munro O CaudyArgentina2024-05-19King, Christopher A Esq NEW22Amy Elsner
1008Adams K AmigonCanada2024-06-11Chemel, James L Cpa QUALIFIED9Ioni Bowcher
1009Mujtaba B WhobreySpain2024-05-25Buckley Miller Wright UNQUALIFIED31Amy Elsner
1010Munro L VenereIndia2024-06-13Rousseaux, Michael Esq QUALIFIED74Amy Elsner
1011David S CaldareraAustralia2024-06-14Feiner Bros UNQUALIFIED14Ioni Bowcher
1012Isabel C FollerSpain2024-06-08Chapman, Ross E Esq RENEWAL52Amy Elsner
1013Isabel B BologniaRussia2024-06-08Rousseaux, Michael Esq PROPOSAL81Anna Fali
1014Julie P GauchoUnited Kingdom2024-06-16Truhlar And Truhlar Attys NEW6Ioni Bowcher
1015Aika N RoysterJapan2024-05-23Printing Dimensions NEW55Elwin Sharvill
1016David L VocelkaRussia2024-06-13King, Christopher A Esq RENEWAL56Bernardo Dominic
1017Stacey Y FlosiAustralia2024-06-08Commercial Press UNQUALIFIED48Anna Fali
1018Sinclair M MaletGermany2024-06-08Commercial Press UNQUALIFIED78Amy Elsner
1019Jones X WaycottItaly2024-06-02Dorl, James J Esq NEGOTIATION8Anna Fali
1020James V PaprockiBrazil2024-06-06Buckley Miller Wright NEW61Amy Elsner
1021Mayumi Y PaprockiArgentina2024-06-13Benton, John B Jr QUALIFIED6Onyama Limba
1022Izzy Z IturbideIndia2024-06-12Chapman, Ross E Esq NEGOTIATION76Stephen Shaw
1023Mayumi W AlbaresUnited Kingdom2024-06-15Truhlar And Truhlar Attys RENEWAL27Ivan Magalhaes
1024Jones E InouyeRussia2024-05-25Morlong Associates RENEWAL61Amy Elsner
1025Misaki A AmigonRussia2024-05-22Feltz Printing Service NEGOTIATION0Bernardo Dominic
1026Julie N MarrierAustralia2024-06-14Morlong Associates QUALIFIED5Onyama Limba
1027Murillo B CaldareraSpain2024-05-28Benton, John B Jr PROPOSAL40Xuxue Feng
1028Aika Z StensethItaly2024-06-10Benton, John B Jr QUALIFIED84Anna Fali
1029Leja U OstroskyIndia2024-06-02Truhlar And Truhlar Attys QUALIFIED84Elwin Sharvill
1030Munro V WieserGermany2024-06-06Printing Dimensions RENEWAL75Stephen Shaw
1031Leja G MarrierBrazil2024-05-23Commercial Press QUALIFIED67Anna Fali
1032Adams Y GlickItaly2024-05-20Feiner Bros PROPOSAL25Onyama Limba
1033Murillo X VocelkaJapan2024-05-27Printing Dimensions NEGOTIATION21Asiya Javayant
1034Aruna T StensethGermany2024-06-13Commercial Press QUALIFIED39Stephen Shaw
1035Clifford H CampainJapan2024-06-12Rousseaux, Michael Esq UNQUALIFIED48Stephen Shaw
1036Jennifer J VenereItaly2024-06-02Truhlar And Truhlar Attys PROPOSAL75Bernardo Dominic
1037Leon G PoquetteSpain2024-06-17Commercial Press QUALIFIED59Bernardo Dominic
1038Ivar V FigeroaIndia2024-06-07Buckley Miller Wright PROPOSAL93Anna Fali
1039Smith L AlbaresGermany2024-05-21Feltz Printing Service NEW97Elwin Sharvill
1040Isabel A BowleyIndia2024-05-19Chanay, Jeffrey A Esq NEW56Stephen Shaw
1041Clifford K InouyeIndia2024-06-12Benton, John B Jr RENEWAL42Xuxue Feng
1042Adams K AlbaresUnited Kingdom2024-06-17Rousseaux, Michael Esq NEGOTIATION55Stephen Shaw
1043Munro P VocelkaFrance2024-06-03Chanay, Jeffrey A Esq NEW9Anna Fali
1044Johnson C NestleBrazil2024-06-01Benton, John B Jr NEW48Ivan Magalhaes
1045Stacey K BologniaUnited Kingdom2024-05-25Truhlar And Truhlar Attys NEW30Bernardo Dominic
1046Darci M MarrierRussia2024-05-30Commercial Press NEW76Elwin Sharvill
1047Nicolas W MorascaGermany2024-05-20Printing Dimensions PROPOSAL12Ioni Bowcher
1048Munro P OstroskyJapan2024-05-26Rousseaux, Michael Esq NEGOTIATION82Ioni Bowcher
1049Nicolas S VocelkaIndia2024-05-21Commercial Press RENEWAL70Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Aruna V GauchoCanadaIvan Magalhaes UNQUALIFIED
Kaitlin X ButtArgentinaOnyama Limba RENEWAL
Nicolas T SchemmerAustraliaOnyama Limba NEGOTIATION
Clifford J PoquetteIndiaStephen Shaw RENEWAL
Cody U MacleadFranceAnna Fali PROPOSAL
Aruna Q StensethItalyAsiya Javayant RENEWAL
David A MorascaIndiaOnyama Limba QUALIFIED
Chavez I KuskoSpainAsiya Javayant NEGOTIATION
Chavez N NestleBrazilIvan Magalhaes NEW
Murillo W WaycottGermanyIvan Magalhaes UNQUALIFIED
Munro U SaylorsGermanyAnna Fali PROPOSAL
Aika B DilliardGermanyAnna Fali UNQUALIFIED
Jefferson C RulapaughFranceIoni Bowcher PROPOSAL
Alejandro G SlusarskiJapanOnyama Limba RENEWAL
Wickens Z GlickBrazilIoni Bowcher NEGOTIATION
Adams V AmigonUnited KingdomAsiya Javayant UNQUALIFIED
Cody I StensethRussiaStephen Shaw PROPOSAL
Mayumi T AmigonJapanAnna Fali NEGOTIATION
Stacey S GauchoSpainAmy Elsner UNQUALIFIED
Rodrigues X VenereItalyAnna Fali RENEWAL
Morrow P VocelkaIndiaAmy Elsner QUALIFIED
Claire R RutaItalyAnna Fali QUALIFIED
Alejandro E VocelkaGermanyOnyama Limba NEGOTIATION
Mujtaba U CampainJapanElwin Sharvill NEGOTIATION
Octavia M MacleadUnited KingdomIoni Bowcher UNQUALIFIED
Wickens U DarakjyItalyIvan Magalhaes UNQUALIFIED
Rodrigues M ButtFranceOnyama Limba QUALIFIED
Morrow I StockhamGermanyStephen Shaw UNQUALIFIED
Mayumi W InouyeItalyAnna Fali UNQUALIFIED
Izzy I GauchoBrazilAsiya Javayant QUALIFIED
James M MaletGermanyIoni Bowcher NEGOTIATION
Aditya T CaldareraIndiaAnna Fali QUALIFIED
Deepesh U IturbideJapanElwin Sharvill PROPOSAL
Ivar V FollerIndiaAmy Elsner RENEWAL
Kaitlin J SergiBrazilBernardo Dominic PROPOSAL
Octavia F StensethFranceBernardo Dominic RENEWAL
Misaki M RutaGermanyAsiya Javayant PROPOSAL
Murillo I CaldareraJapanElwin Sharvill RENEWAL
Misaki M TollnerItalyAnna Fali NEW
Aditya H VocelkaCanadaElwin Sharvill RENEWAL
Jefferson S WhobreyCanadaXuxue Feng RENEWAL
Mujtaba U GillianRussiaBernardo Dominic NEGOTIATION
Johnson S WhobreyIndiaOnyama Limba NEW
Ivar M WaycottFranceAnna Fali QUALIFIED
Leja I FlosiAustraliaElwin Sharvill NEGOTIATION
Stacey Y MacleadArgentinaOnyama Limba PROPOSAL
Francesco V NestleAustraliaAmy Elsner PROPOSAL
Mujtaba Y MaletArgentinaXuxue Feng RENEWAL
Claire Y RimCanadaXuxue Feng QUALIFIED
Wickens X BriddickAustraliaBernardo Dominic PROPOSAL
Frozen Columns
Name
Octavia D Ruta
Nicolas F Oldroyd
Adams F Tollner
Juan Y Rulapaugh
Silvio L Amigon
Kadeem Z Slusarski
Rodrigues R Venere
Alejandro O Glick
Isabel F Glick
James A Kusko
Ricardo M Saylors
Tony N Malet
Octavia H Waycott
Mayumi Q Rim
Ricardo C Figeroa
Munro V Foller
Mayumi O Malet
Chavez Q Bowley
Mujtaba L Schemmer
Mujtaba T Chui
Jennifer V Bowley
Munro V Bolognia
Julie X Iturbide
Salvatore D Rim
Jefferson N Garufi
Rodrigues O Sergi
Leon G Iturbide
Greenwood H Caldarera
Arvin A Rim
Francesco Y Schemmer
Rodrigues V Darakjy
Aditya A Slusarski
Murillo Y Amigon
Emily O Flosi
Jones Y Nicka
Wickens H Doe
Faith X Stenseth
Alejandro X Bowley
Maria R Oldroyd
Maisha Q Paprocki
Leon R Whobrey
Juan N Nestle
Octavia T Dilliard
Juan X Venere
Aruna P Dilliard
Tony K Figeroa
Alejandro D Ruta
Misaki V Royster
Leon N Nestle
Maria S Marrier
IdCountryDate
1000United Kingdom2024-06-16
1001Japan2024-05-30
1002Canada2024-06-10
1003Canada2024-06-14
1004Italy2024-06-06
1005Australia2024-06-16
1006Canada2024-05-26
1007Brazil2024-06-14
1008Australia2024-06-04
1009Italy2024-05-29
1010Australia2024-05-26
1011Australia2024-05-19
1012Australia2024-06-12
1013United Kingdom2024-06-13
1014India2024-06-06
1015Argentina2024-06-10
1016United Kingdom2024-06-04
1017Japan2024-06-12
1018Italy2024-06-17
1019Italy2024-05-28
1020Australia2024-06-03
1021India2024-05-23
1022Italy2024-06-08
1023Brazil2024-06-10
1024Argentina2024-05-20
1025Spain2024-06-14
1026France2024-05-21
1027India2024-05-31
1028Russia2024-06-03
1029Germany2024-06-11
1030Japan2024-06-17
1031Russia2024-05-29
1032France2024-06-09
1033Canada2024-06-17
1034Germany2024-06-11
1035Japan2024-05-24
1036Brazil2024-05-25
1037India2024-05-31
1038Argentina2024-05-19
1039United Kingdom2024-06-01
1040Argentina2024-06-13
1041India2024-06-17
1042Japan2024-06-10
1043Spain2024-06-06
1044Canada2024-05-28
1045Brazil2024-06-05
1046Italy2024-05-21
1047Italy2024-05-30
1048United Kingdom2024-05-31
1049Argentina2024-05-29

On-Demand Data

NameIdCountryDate
James A Stockham1000Australia2024-05-22
David K Ruta1001Germany2024-05-28
Chavez H Sergi1002Canada2024-06-02
Aruna C Chui1003Japan2024-05-24
Ashley D Venere1004Canada2024-06-16
Cody W Gaucho1005Brazil2024-05-31
Julie H Rulapaugh1006Brazil2024-06-16
Ricardo E Poquette1007India2024-05-28
Maria R Royster1008France2024-06-02
Julie V Malet1009Japan2024-05-30
Emily L Poquette1010Australia2024-06-07
Tony J Flosi1011Italy2024-05-27
Morrow G Tollner1012Australia2024-05-29
Aika H Albares1013Spain2024-05-24
Aruna D Gaucho1014Canada2024-05-30
Faith E Nestle1015Spain2024-05-22
Ivar N Schemmer1016Australia2024-05-20
Smith P Iturbide1017Canada2024-05-26
Smith J Paprocki1018Japan2024-06-03
Francesco Z Malet1019Australia2024-06-07
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jones D SchemmerUnited KingdomAnna Fali NEW
Leon H AlbaresSpainOnyama Limba RENEWAL
Cody T WaycottJapanIoni Bowcher NEW
Mayumi W BologniaJapanXuxue Feng UNQUALIFIED
Antonio V AmigonRussiaElwin Sharvill PROPOSAL
Emily N CampainArgentinaStephen Shaw PROPOSAL
Cody U PerinCanadaAmy Elsner PROPOSAL
Aruna G FigeroaBrazilAmy Elsner NEGOTIATION
Rodrigues M WieserUnited KingdomIvan Magalhaes QUALIFIED
Sinclair X MaletBrazilOnyama Limba UNQUALIFIED
Faith Y VenereAustraliaIvan Magalhaes PROPOSAL
Morrow Y IturbideAustraliaIvan Magalhaes NEW
Tony O AmigonArgentinaBernardo Dominic QUALIFIED
Emily S WaycottIndiaAsiya Javayant NEGOTIATION
Tony A MarrierArgentinaAmy Elsner UNQUALIFIED
Aika S MacleadIndiaElwin Sharvill NEGOTIATION
Misaki V AmigonBrazilIvan Magalhaes UNQUALIFIED
Aruna J IturbideGermanyIvan Magalhaes RENEWAL
Silvio Y OstroskyJapanElwin Sharvill NEGOTIATION
Aika G DoeRussiaBernardo Dominic PROPOSAL
Leja P BologniaAustraliaBernardo Dominic NEW
Sinclair K FerenczIndiaElwin Sharvill UNQUALIFIED
Silvio I StensethJapanOnyama Limba QUALIFIED
Mujtaba X OstroskyRussiaOnyama Limba PROPOSAL
Greenwood W SlusarskiSpainXuxue Feng NEW
Aditya J FlosiJapanOnyama Limba NEW
Mayumi Z SchemmerBrazilBernardo Dominic QUALIFIED
Johnson X RulapaughJapanOnyama Limba NEGOTIATION
Francesco F CaldareraIndiaXuxue Feng QUALIFIED
Jefferson E FollerJapanIoni Bowcher NEW
Rodrigues J VenereSpainOnyama Limba QUALIFIED
Wickens K FerenczBrazilStephen Shaw UNQUALIFIED
Stacey V WhobreyJapanAsiya Javayant RENEWAL
Kadeem Y ButtRussiaIvan Magalhaes PROPOSAL
Arvin G AlbaresFranceElwin Sharvill UNQUALIFIED
Mayumi A BologniaCanadaAnna Fali QUALIFIED
Munro K KuskoUnited KingdomAsiya Javayant QUALIFIED
Maria M NestleBrazilIoni Bowcher QUALIFIED
Ricardo W VenereUnited KingdomOnyama Limba QUALIFIED
Ivar Y DilliardRussiaAmy 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>