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
Rodrigues T SaylorsArgentinaBernardo Dominic PROPOSAL
Jennifer A ButtBrazilXuxue Feng QUALIFIED
Juan D GarufiUnited KingdomAsiya Javayant QUALIFIED
Ivar F AmigonSpainXuxue Feng QUALIFIED
Maria J BologniaRussiaXuxue Feng NEW
Ricardo U KuskoItalyIoni Bowcher NEGOTIATION
Emily O BologniaIndiaStephen Shaw QUALIFIED
Mujtaba F AmigonBrazilAnna Fali NEW
Cody Y WieserBrazilOnyama Limba NEW
Octavia A ChuiUnited KingdomAnna Fali PROPOSAL
Isabel Q ChuiRussiaIoni Bowcher NEGOTIATION
Leon P AlbaresRussiaStephen Shaw NEGOTIATION
Wickens F RimUnited KingdomAmy Elsner PROPOSAL
Wickens H SchemmerSpainAsiya Javayant NEW
Octavia P FlosiCanadaIoni Bowcher QUALIFIED
David S WaycottArgentinaElwin Sharvill NEW
Francesco R BologniaCanadaStephen Shaw NEW
Aruna Y TollnerArgentinaIvan Magalhaes NEW
Darci O GarufiSpainOnyama Limba QUALIFIED
Maria J MarrierRussiaOnyama Limba UNQUALIFIED
Ivar I StensethSpainAnna Fali PROPOSAL
Aruna T ButtJapanAmy Elsner PROPOSAL
Ricardo T FerenczRussiaAmy Elsner NEGOTIATION
Ricardo M DilliardIndiaElwin Sharvill UNQUALIFIED
Octavia Y RutaFranceAmy Elsner NEGOTIATION
Claire G GauchoBrazilOnyama Limba NEW
Cody V WieserCanadaOnyama Limba PROPOSAL
Faith T NestleArgentinaAmy Elsner RENEWAL
Greenwood B SlusarskiBrazilStephen Shaw NEW
Isabel Z BowleyCanadaBernardo Dominic QUALIFIED
Francesco O NestleItalyXuxue Feng PROPOSAL
James G RoysterSpainXuxue Feng RENEWAL
Nicolas Q MaletIndiaElwin Sharvill PROPOSAL
Mujtaba Y MacleadJapanAmy Elsner NEW
Tony C PaprockiUnited KingdomIvan Magalhaes UNQUALIFIED
Munro F DoeSpainElwin Sharvill NEGOTIATION
Kaitlin S SergiBrazilElwin Sharvill NEW
Morrow C TollnerItalyAmy Elsner PROPOSAL
Mujtaba I SergiItalyIoni Bowcher QUALIFIED
Johnson P SlusarskiFranceAnna Fali RENEWAL
Ricardo A DoeUnited KingdomAsiya Javayant NEW
Jefferson E DarakjyRussiaBernardo Dominic NEGOTIATION
Julie C KolmetzCanadaElwin Sharvill PROPOSAL
Morrow W FigeroaJapanAnna Fali PROPOSAL
Antonio C AmigonRussiaElwin Sharvill QUALIFIED
Morrow P BriddickUnited KingdomStephen Shaw PROPOSAL
Rodrigues N MarrierJapanXuxue Feng NEGOTIATION
Wickens N GlickCanadaOnyama Limba NEGOTIATION
Aditya I MaletIndiaIvan Magalhaes NEGOTIATION
Misaki A GauchoJapanAsiya Javayant NEW
Horizontal
NameCountryRepresentativeStatus
Maisha H FlosiRussiaAnna Fali NEGOTIATION
Aruna N InouyeSpainAmy Elsner NEW
Deepesh O ButtSpainIoni Bowcher RENEWAL
Octavia T WaycottItalyAnna Fali NEGOTIATION
Chavez E DoeUnited KingdomAnna Fali RENEWAL
Chavez A NestleUnited KingdomAnna Fali NEGOTIATION
Smith L WaycottIndiaElwin Sharvill PROPOSAL
Mujtaba B VenereJapanAmy Elsner QUALIFIED
Juan F VenereGermanyOnyama Limba NEGOTIATION
Nicolas G GillianArgentinaXuxue Feng NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Murillo O OstroskyIndia2024-05-25Morlong Associates PROPOSAL55Anna Fali
1001Jones A SergiJapan2024-05-22Chapman, Ross E Esq RENEWAL69Asiya Javayant
1002Leon B WieserSpain2024-05-21Dorl, James J Esq PROPOSAL49Onyama Limba
1003Ashley Y BologniaBrazil2024-05-19Feiner Bros QUALIFIED23Elwin Sharvill
1004Smith G RimIndia2024-05-11Feiner Bros PROPOSAL8Anna Fali
1005Maria H GarufiUnited Kingdom2024-05-17Chanay, Jeffrey A Esq RENEWAL69Ivan Magalhaes
1006Jennifer J NestleBrazil2024-05-21Rangoni Of Florence QUALIFIED24Bernardo Dominic
1007Murillo B CaldareraUnited Kingdom2024-05-21Truhlar And Truhlar Attys QUALIFIED77Xuxue Feng
1008Jones K WhobreyUnited Kingdom2024-05-26Feiner Bros NEGOTIATION51Elwin Sharvill
1009Costa A VenereFrance2024-05-01Printing Dimensions RENEWAL7Elwin Sharvill
1010Wickens R DilliardCanada2024-05-07Chanay, Jeffrey A Esq RENEWAL79Ivan Magalhaes
1011Morrow T CaudyUnited Kingdom2024-05-22Buckley Miller Wright NEGOTIATION15Anna Fali
1012Francesco S DoeRussia2024-05-13Chemel, James L Cpa QUALIFIED88Anna Fali
1013Greenwood U MarrierSpain2024-05-15Printing Dimensions RENEWAL86Stephen Shaw
1014Sinclair A SlusarskiRussia2024-05-20Chemel, James L Cpa NEW55Anna Fali
1015Maisha I OstroskyCanada2024-05-27Rangoni Of Florence NEW86Amy Elsner
1016Deepesh Y GarufiRussia2024-05-25Printing Dimensions QUALIFIED79Anna Fali
1017Salvatore B BriddickItaly2024-05-09Feiner Bros UNQUALIFIED48Stephen Shaw
1018Ricardo V BologniaJapan2024-05-24King, Christopher A Esq PROPOSAL21Elwin Sharvill
1019Clifford O VocelkaRussia2024-05-21Feiner Bros NEW77Ivan Magalhaes
1020Kadeem F SaylorsAustralia2024-05-29Printing Dimensions NEGOTIATION70Stephen Shaw
1021Nicolas A MorascaArgentina2024-05-01Morlong Associates UNQUALIFIED81Onyama Limba
1022Adams L OldroydAustralia2024-05-22Feiner Bros UNQUALIFIED26Onyama Limba
1023Julie Q ButtFrance2024-05-03Buckley Miller Wright NEW10Elwin Sharvill
1024Jennifer K MaletAustralia2024-05-15Feiner Bros NEW32Onyama Limba
1025Ivar G MarrierBrazil2024-05-25Chanay, Jeffrey A Esq PROPOSAL80Elwin Sharvill
1026Jeanfrancois R SchemmerSpain2024-05-29Rangoni Of Florence NEGOTIATION23Bernardo Dominic
1027Isabel J DilliardFrance2024-05-07King, Christopher A Esq UNQUALIFIED55Anna Fali
1028Aruna T PoquetteBrazil2024-05-07Rangoni Of Florence QUALIFIED17Amy Elsner
1029Jones J OstroskyGermany2024-05-19Rousseaux, Michael Esq PROPOSAL59Stephen Shaw
1030Munro Z PoquetteItaly2024-05-08King, Christopher A Esq UNQUALIFIED69Onyama Limba
1031Isabel X MaletUnited Kingdom2024-05-17Printing Dimensions PROPOSAL38Ivan Magalhaes
1032Francesco B CaldareraUnited Kingdom2024-05-24Benton, John B Jr PROPOSAL67Ivan Magalhaes
1033Salvatore H CampainIndia2024-05-20Chapman, Ross E Esq NEW60Elwin Sharvill
1034Tony Y VocelkaGermany2024-05-11Feltz Printing Service UNQUALIFIED29Onyama Limba
1035Smith R AmigonUnited Kingdom2024-05-18Dorl, James J Esq UNQUALIFIED78Amy Elsner
1036Maria E KuskoBrazil2024-05-16Truhlar And Truhlar Attys QUALIFIED53Asiya Javayant
1037Leon I InouyeUnited Kingdom2024-05-01Dorl, James J Esq NEW62Ioni Bowcher
1038Emily U RutaArgentina2024-05-24Printing Dimensions QUALIFIED9Onyama Limba
1039Nicolas P MacleadBrazil2024-05-24Truhlar And Truhlar Attys UNQUALIFIED31Asiya Javayant
1040Julie U RimItaly2024-05-28Benton, John B Jr PROPOSAL91Stephen Shaw
1041Alejandro U OstroskySpain2024-05-23Rousseaux, Michael Esq QUALIFIED38Amy Elsner
1042Smith F SergiBrazil2024-05-16Chapman, Ross E Esq QUALIFIED31Ioni Bowcher
1043Sinclair I TollnerAustralia2024-05-27Chemel, James L Cpa NEGOTIATION18Amy Elsner
1044Nicolas M FerenczSpain2024-05-16Truhlar And Truhlar Attys RENEWAL71Anna Fali
1045Tony I BriddickIndia2024-05-05Truhlar And Truhlar Attys RENEWAL74Xuxue Feng
1046Deepesh Z WieserItaly2024-05-09Truhlar And Truhlar Attys NEGOTIATION96Bernardo Dominic
1047Jefferson V PaprockiArgentina2024-05-04Rangoni Of Florence NEW47Bernardo Dominic
1048Johnson V TollnerItaly2024-05-05Chanay, Jeffrey A Esq UNQUALIFIED63Asiya Javayant
1049Juan C KolmetzGermany2024-05-22Dorl, James J Esq UNQUALIFIED34Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Tony Y VenereUnited KingdomXuxue Feng NEGOTIATION
Ivar S GillianArgentinaXuxue Feng RENEWAL
Francesco J VenereRussiaElwin Sharvill NEGOTIATION
Morrow S FlosiSpainOnyama Limba QUALIFIED
Aika I MaletArgentinaStephen Shaw NEW
Maria W MarrierIndiaIvan Magalhaes NEW
Ashley G SaylorsGermanyOnyama Limba PROPOSAL
Faith L GillianArgentinaXuxue Feng QUALIFIED
Julie C GillianBrazilXuxue Feng RENEWAL
Stacey X MorascaUnited KingdomAnna Fali UNQUALIFIED
Maria F SlusarskiItalyBernardo Dominic QUALIFIED
Nicolas I GillianUnited KingdomIvan Magalhaes NEW
Tony J RoysterBrazilBernardo Dominic NEGOTIATION
Emily Z FerenczCanadaAmy Elsner NEGOTIATION
Emily Q MacleadArgentinaIvan Magalhaes QUALIFIED
Jeanfrancois K KolmetzFranceAsiya Javayant NEW
Nicolas G IturbideIndiaXuxue Feng PROPOSAL
Tony J AlbaresArgentinaXuxue Feng NEW
Juan W DoeUnited KingdomIoni Bowcher QUALIFIED
David Z MorascaUnited KingdomAnna Fali UNQUALIFIED
Tony B OstroskyGermanyIoni Bowcher UNQUALIFIED
Clifford I SaylorsBrazilAmy Elsner NEGOTIATION
Wickens E ChuiFranceAnna Fali PROPOSAL
Leja Q WieserArgentinaStephen Shaw QUALIFIED
Mayumi V CaldareraItalyElwin Sharvill QUALIFIED
Antonio C NickaSpainXuxue Feng NEGOTIATION
Julie E RimAustraliaIoni Bowcher RENEWAL
Stacey H MacleadArgentinaIvan Magalhaes NEW
Costa K OstroskyJapanBernardo Dominic UNQUALIFIED
Leon G ButtAustraliaOnyama Limba NEW
David D VocelkaFranceXuxue Feng NEW
Juan Q AlbaresCanadaXuxue Feng RENEWAL
Alejandro M WieserGermanyBernardo Dominic PROPOSAL
Adams S MaletJapanAsiya Javayant RENEWAL
Morrow C WaycottSpainBernardo Dominic UNQUALIFIED
Cody F CaldareraAustraliaAmy Elsner UNQUALIFIED
Ivar A VocelkaRussiaXuxue Feng UNQUALIFIED
Murillo Y RutaAustraliaAnna Fali PROPOSAL
Maisha N WhobreyBrazilAmy Elsner QUALIFIED
Ricardo D FerenczBrazilAsiya Javayant NEGOTIATION
Deepesh G PerinSpainStephen Shaw NEW
Aruna K StockhamUnited KingdomAsiya Javayant NEGOTIATION
Isabel V VenereRussiaBernardo Dominic PROPOSAL
Mayumi K BowleyArgentinaIoni Bowcher UNQUALIFIED
Adams V OldroydUnited KingdomXuxue Feng NEW
Isabel K CaldareraSpainIvan Magalhaes PROPOSAL
Emily N GlickItalyIoni Bowcher UNQUALIFIED
Wickens Q FerenczRussiaXuxue Feng PROPOSAL
Isabel G MaletArgentinaAnna Fali QUALIFIED
Mujtaba M InouyeFranceXuxue Feng UNQUALIFIED
Frozen Columns
Name
Morrow D Poquette
Julie J Flosi
Octavia W Caudy
James U Gaucho
Kadeem Z Figeroa
Faith J Whobrey
Tony D Flosi
Octavia E Slusarski
Silvio N Ferencz
Adams U Rim
James U Rulapaugh
Mayumi D Venere
Leon E Inouye
Aruna Q Paprocki
Leon A Gillian
Darci D Royster
Smith L Slusarski
Alejandro L Amigon
Alejandro D Oldroyd
David Z Rulapaugh
Chavez Q Marrier
Mayumi W Butt
Jones G Shinko
Darci C Oldroyd
Jennifer E Marrier
Isabel U Waycott
Costa U Malet
Aruna C Saylors
Francesco K Paprocki
Alejandro Q Poquette
Leja V Glick
Morrow S Albares
Tony K Malet
Ashley A Whobrey
Stacey H Caldarera
Mayumi D Shinko
David O Wieser
Kadeem R Chui
Jennifer T Schemmer
Francesco I Rim
Silvio T Poquette
Claire L Tollner
Maria Y Rulapaugh
Maisha M Doe
Mayumi A Tollner
Claire A Iturbide
Aditya Q Bowley
Costa X Iturbide
Maisha G Bolognia
Jones Q Bowley
IdCountryDate
1000Australia2024-05-05
1001Canada2024-05-24
1002Australia2024-05-26
1003Canada2024-05-01
1004Brazil2024-05-02
1005France2024-05-04
1006India2024-05-07
1007Argentina2024-05-02
1008Germany2024-05-08
1009Brazil2024-05-10
1010Australia2024-05-18
1011India2024-05-03
1012Japan2024-05-05
1013Argentina2024-05-14
1014India2024-05-22
1015France2024-05-13
1016France2024-04-30
1017Brazil2024-05-19
1018Japan2024-05-29
1019Canada2024-04-30
1020Brazil2024-05-11
1021Russia2024-05-05
1022Australia2024-05-22
1023India2024-05-03
1024Japan2024-05-21
1025Brazil2024-05-20
1026France2024-05-03
1027Argentina2024-05-15
1028Japan2024-05-08
1029France2024-05-26
1030Italy2024-04-30
1031India2024-05-14
1032Australia2024-05-19
1033Spain2024-05-11
1034Argentina2024-05-12
1035India2024-05-27
1036Australia2024-05-20
1037Australia2024-05-07
1038Japan2024-05-29
1039Japan2024-05-18
1040France2024-05-25
1041United Kingdom2024-05-28
1042Germany2024-05-01
1043United Kingdom2024-05-22
1044Spain2024-05-02
1045Italy2024-05-01
1046Italy2024-05-21
1047Spain2024-04-30
1048Italy2024-05-05
1049India2024-05-28

On-Demand Data

NameIdCountryDate
Stacey O Waycott1000Russia2024-05-24
Alejandro L Albares1001Brazil2024-05-25
Mayumi N Caudy1002India2024-05-10
Aditya H Stockham1003Canada2024-05-24
Jeanfrancois U Maclead1004Brazil2024-05-23
Kaitlin Z Waycott1005Australia2024-05-29
Aika S Oldroyd1006Italy2024-05-04
Francesco B Nicka1007India2024-05-20
Octavia K Shinko1008Brazil2024-05-16
Maria L Ruta1009Germany2024-05-03
Aika E Inouye1010India2024-05-19
Rodrigues J Stockham1011Japan2024-05-08
James J Maclead1012Italy2024-05-05
Darci W Wieser1013Australia2024-05-12
James O Figeroa1014United Kingdom2024-05-10
Misaki Z Doe1015Spain2024-05-13
Greenwood X Amigon1016Brazil2024-05-12
James K Foller1017India2024-05-14
Kadeem Y Glick1018Brazil2024-05-14
Salvatore O Stenseth1019Argentina2024-05-25
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Leon M SaylorsRussiaIoni Bowcher UNQUALIFIED
Misaki R ButtFranceOnyama Limba QUALIFIED
Stacey Z SlusarskiSpainIvan Magalhaes NEGOTIATION
Silvio T DoeIndiaAsiya Javayant QUALIFIED
Greenwood R KolmetzCanadaAsiya Javayant NEW
Izzy D DilliardJapanAsiya Javayant RENEWAL
Misaki J SchemmerIndiaBernardo Dominic PROPOSAL
Mayumi A RulapaughRussiaIvan Magalhaes NEGOTIATION
Izzy P RimRussiaElwin Sharvill NEGOTIATION
Adams V CaudyAustraliaBernardo Dominic QUALIFIED
Smith E InouyeFranceOnyama Limba RENEWAL
Kaitlin M VenereJapanAnna Fali RENEWAL
Munro Y MaletSpainOnyama Limba NEGOTIATION
Nicolas J GarufiAustraliaOnyama Limba UNQUALIFIED
David L IturbideRussiaAnna Fali RENEWAL
Greenwood H ButtFranceAsiya Javayant RENEWAL
Faith R PaprockiSpainIoni Bowcher QUALIFIED
Izzy Y GauchoGermanyAnna Fali QUALIFIED
Costa A CaldareraRussiaIvan Magalhaes QUALIFIED
Deepesh A GauchoRussiaAnna Fali PROPOSAL
Deepesh D GlickJapanXuxue Feng NEGOTIATION
Nicolas T TollnerArgentinaBernardo Dominic NEGOTIATION
Tony R InouyeAustraliaBernardo Dominic NEGOTIATION
Rodrigues I InouyeUnited KingdomAmy Elsner NEGOTIATION
Morrow C CampainGermanyStephen Shaw NEW
Nicolas G KolmetzItalyBernardo Dominic UNQUALIFIED
Maisha T AlbaresFranceAmy Elsner NEGOTIATION
Cody B GlickAustraliaXuxue Feng PROPOSAL
Kadeem T WaycottAustraliaElwin Sharvill NEGOTIATION
Juan L GauchoFranceBernardo Dominic NEW
Adams E SlusarskiSpainIvan Magalhaes PROPOSAL
Stacey Q GillianUnited KingdomAsiya Javayant QUALIFIED
Francesco V CaudyUnited KingdomStephen Shaw QUALIFIED
Leja U MorascaArgentinaXuxue Feng NEGOTIATION
Sinclair P DilliardCanadaStephen Shaw UNQUALIFIED
Leon P GarufiUnited KingdomAnna Fali NEW
Isabel N RimIndiaAsiya Javayant NEW
Rodrigues H AlbaresRussiaIoni Bowcher RENEWAL
Silvio M ShinkoJapanOnyama Limba QUALIFIED
Nicolas U GillianSpainAnna Fali RENEWAL

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