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
Leon X DarakjyFranceIvan Magalhaes PROPOSAL
Stacey U GlickUnited KingdomXuxue Feng NEW
Juan T ShinkoFranceAsiya Javayant NEW
Antonio D CaldareraItalyAnna Fali QUALIFIED
Leon D WhobreyRussiaIvan Magalhaes RENEWAL
Faith D GarufiFranceElwin Sharvill QUALIFIED
Sinclair X SlusarskiGermanyStephen Shaw NEW
Munro M KuskoItalyAsiya Javayant QUALIFIED
Smith M RimAustraliaAsiya Javayant PROPOSAL
Nicolas H MaletItalyAmy Elsner QUALIFIED
Jeanfrancois Q PerinRussiaStephen Shaw NEW
Ivar O RoysterIndiaAsiya Javayant UNQUALIFIED
Darci C CampainUnited KingdomElwin Sharvill PROPOSAL
Aruna M MarrierItalyElwin Sharvill NEGOTIATION
Leon B BriddickSpainIoni Bowcher NEW
Jones H OstroskyCanadaAsiya Javayant NEW
Cody R BowleyUnited KingdomAmy Elsner PROPOSAL
Antonio C ButtAustraliaAmy Elsner NEW
Ivar Z FigeroaItalyAmy Elsner UNQUALIFIED
Ashley X GauchoRussiaXuxue Feng NEW
Nicolas R WaycottJapanOnyama Limba RENEWAL
Jeanfrancois S StockhamGermanyBernardo Dominic QUALIFIED
Faith V PerinGermanyStephen Shaw UNQUALIFIED
Claire M AlbaresAustraliaAsiya Javayant QUALIFIED
Jennifer F BriddickGermanyOnyama Limba RENEWAL
Leja S FigeroaFranceBernardo Dominic NEGOTIATION
Emily C GillianItalyStephen Shaw PROPOSAL
Misaki B DilliardFranceStephen Shaw NEGOTIATION
Leja Z MaletSpainXuxue Feng RENEWAL
Francesco D AlbaresRussiaElwin Sharvill RENEWAL
Isabel N GillianArgentinaXuxue Feng NEGOTIATION
Jennifer X FollerFranceAsiya Javayant PROPOSAL
Tony B NickaAustraliaStephen Shaw QUALIFIED
Jeanfrancois Z StensethSpainBernardo Dominic RENEWAL
Leon Y MaletRussiaIvan Magalhaes NEGOTIATION
Juan X GarufiAustraliaElwin Sharvill NEW
Emily V GlickIndiaStephen Shaw QUALIFIED
Maisha J BowleyCanadaIoni Bowcher NEW
Ivar X CaldareraGermanyAsiya Javayant NEGOTIATION
David H MarrierIndiaIoni Bowcher QUALIFIED
Octavia E KuskoArgentinaStephen Shaw UNQUALIFIED
Jeanfrancois N ButtJapanAnna Fali RENEWAL
Misaki B AmigonItalyStephen Shaw NEW
Kaitlin H BriddickBrazilIvan Magalhaes NEGOTIATION
Jefferson C RoysterAustraliaIvan Magalhaes PROPOSAL
Rodrigues A BriddickJapanAsiya Javayant QUALIFIED
Jennifer U RimSpainIoni Bowcher QUALIFIED
Jeanfrancois S RutaItalyIvan Magalhaes NEGOTIATION
Ivar T CaudyGermanyXuxue Feng PROPOSAL
Smith Y SergiCanadaXuxue Feng QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Sinclair W SchemmerGermanyAmy Elsner UNQUALIFIED
Mujtaba Q CaldareraSpainIoni Bowcher NEGOTIATION
Costa T MacleadIndiaElwin Sharvill NEGOTIATION
Smith N ShinkoSpainIoni Bowcher NEGOTIATION
Mujtaba Q RimCanadaXuxue Feng NEW
James T PerinFranceAnna Fali NEW
Clifford I TollnerCanadaOnyama Limba RENEWAL
Jennifer Z DilliardGermanyAsiya Javayant PROPOSAL
Morrow S MorascaGermanyElwin Sharvill NEGOTIATION
Juan W NestleCanadaIoni Bowcher NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Munro V ShinkoArgentina2024-06-01Chapman, Ross E Esq PROPOSAL91Asiya Javayant
1001Murillo Z DarakjyGermany2024-06-05Buckley Miller Wright NEGOTIATION48Amy Elsner
1002Emily R VocelkaFrance2024-06-19Rangoni Of Florence RENEWAL11Bernardo Dominic
1003Nicolas N WaycottItaly2024-06-15Chemel, James L Cpa UNQUALIFIED99Onyama Limba
1004Aruna X FerenczArgentina2024-06-22Feiner Bros UNQUALIFIED88Elwin Sharvill
1005Kaitlin W SchemmerCanada2024-05-27Benton, John B Jr NEGOTIATION43Elwin Sharvill
1006Julie C KolmetzJapan2024-05-30Buckley Miller Wright QUALIFIED82Onyama Limba
1007Ivar F BologniaFrance2024-05-26Dorl, James J Esq RENEWAL99Amy Elsner
1008Costa A MacleadSpain2024-06-14Printing Dimensions QUALIFIED96Stephen Shaw
1009David W CaudyCanada2024-05-29Benton, John B Jr RENEWAL76Amy Elsner
1010Wickens Y BologniaSpain2024-05-29Feiner Bros NEGOTIATION60Amy Elsner
1011Ashley Q GauchoAustralia2024-06-08Chapman, Ross E Esq UNQUALIFIED65Elwin Sharvill
1012David R DilliardFrance2024-06-03Morlong Associates UNQUALIFIED74Stephen Shaw
1013Kadeem L ButtBrazil2024-06-01Printing Dimensions PROPOSAL55Onyama Limba
1014Aika G ChuiBrazil2024-06-03Benton, John B Jr PROPOSAL21Onyama Limba
1015Jefferson L DarakjyArgentina2024-06-10Chapman, Ross E Esq RENEWAL26Onyama Limba
1016Jennifer F ButtUnited Kingdom2024-06-05King, Christopher A Esq QUALIFIED41Xuxue Feng
1017Sinclair E FlosiCanada2024-05-24King, Christopher A Esq NEW94Asiya Javayant
1018Maisha V GlickIndia2024-06-20Buckley Miller Wright PROPOSAL24Amy Elsner
1019Aruna D AlbaresCanada2024-06-21King, Christopher A Esq PROPOSAL27Ioni Bowcher
1020Clifford W DarakjyGermany2024-06-08Rousseaux, Michael Esq PROPOSAL23Elwin Sharvill
1021Isabel W TollnerFrance2024-06-17Feiner Bros PROPOSAL51Asiya Javayant
1022Murillo V SergiRussia2024-05-29Feiner Bros PROPOSAL10Ivan Magalhaes
1023Tony T BologniaFrance2024-06-04King, Christopher A Esq UNQUALIFIED84Anna Fali
1024Deepesh U DarakjyFrance2024-06-16Rangoni Of Florence RENEWAL16Ivan Magalhaes
1025Smith T RulapaughIndia2024-05-26Truhlar And Truhlar Attys NEGOTIATION64Elwin Sharvill
1026Kadeem I IturbideGermany2024-06-10King, Christopher A Esq PROPOSAL26Onyama Limba
1027Jennifer Z FollerGermany2024-05-24Morlong Associates QUALIFIED80Ivan Magalhaes
1028Wickens R BriddickGermany2024-06-20Chanay, Jeffrey A Esq PROPOSAL23Ivan Magalhaes
1029Munro B SergiJapan2024-06-08Morlong Associates PROPOSAL95Stephen Shaw
1030Adams I OstroskyUnited Kingdom2024-06-16Chapman, Ross E Esq RENEWAL1Anna Fali
1031Faith N GarufiBrazil2024-06-02Chapman, Ross E Esq NEGOTIATION61Ivan Magalhaes
1032Isabel E NestleIndia2024-06-06Chemel, James L Cpa QUALIFIED15Stephen Shaw
1033Maria R BologniaFrance2024-06-18Chapman, Ross E Esq QUALIFIED3Amy Elsner
1034Clifford N FigeroaIndia2024-05-24Feiner Bros UNQUALIFIED81Ioni Bowcher
1035Salvatore Z MorascaUnited Kingdom2024-06-21Feiner Bros NEW37Ioni Bowcher
1036Claire N DarakjyGermany2024-06-02Truhlar And Truhlar Attys QUALIFIED0Stephen Shaw
1037Nicolas D InouyeGermany2024-06-22Chanay, Jeffrey A Esq RENEWAL37Stephen Shaw
1038Mayumi G FollerGermany2024-05-25Chanay, Jeffrey A Esq RENEWAL49Anna Fali
1039Izzy K DoeArgentina2024-06-10Printing Dimensions RENEWAL76Anna Fali
1040Costa R DarakjyIndia2024-06-07Dorl, James J Esq NEGOTIATION42Bernardo Dominic
1041Francesco S SergiArgentina2024-06-03Benton, John B Jr NEW70Ioni Bowcher
1042Arvin S StensethItaly2024-05-27Chapman, Ross E Esq NEGOTIATION69Xuxue Feng
1043Izzy W BowleyUnited Kingdom2024-06-12Rangoni Of Florence NEGOTIATION28Ivan Magalhaes
1044Chavez E SlusarskiFrance2024-05-24Dorl, James J Esq UNQUALIFIED99Anna Fali
1045Ricardo B NickaCanada2024-06-09Printing Dimensions NEW63Stephen Shaw
1046Jones W SaylorsArgentina2024-06-09Feltz Printing Service NEW94Stephen Shaw
1047Claire A PerinIndia2024-05-26Chapman, Ross E Esq NEGOTIATION23Bernardo Dominic
1048Clifford Z SergiFrance2024-06-02Commercial Press UNQUALIFIED77Anna Fali
1049Kaitlin M FigeroaCanada2024-06-10Feltz Printing Service PROPOSAL10Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Costa I MacleadJapanOnyama Limba NEW
Adams K MaletBrazilOnyama Limba NEW
Leon V DarakjyIndiaStephen Shaw UNQUALIFIED
Aika I WhobreyAustraliaBernardo Dominic PROPOSAL
Emily U PaprockiRussiaOnyama Limba NEGOTIATION
Sinclair P DoeCanadaIoni Bowcher QUALIFIED
Kadeem E PaprockiAustraliaBernardo Dominic NEGOTIATION
Clifford C DarakjyIndiaAnna Fali RENEWAL
Ivar I AlbaresBrazilXuxue Feng UNQUALIFIED
Ivar B DarakjyAustraliaStephen Shaw NEGOTIATION
Maria R DarakjyJapanAsiya Javayant RENEWAL
Emily N CaldareraGermanyStephen Shaw RENEWAL
Deepesh S WieserArgentinaOnyama Limba QUALIFIED
Mujtaba A SaylorsCanadaAsiya Javayant UNQUALIFIED
Isabel J GlickSpainIvan Magalhaes QUALIFIED
Adams Y AmigonItalyIoni Bowcher PROPOSAL
Nicolas G KuskoUnited KingdomAnna Fali RENEWAL
Leja C OstroskyAustraliaIvan Magalhaes QUALIFIED
Salvatore Z SlusarskiGermanyBernardo Dominic UNQUALIFIED
Jeanfrancois A SlusarskiGermanyIvan Magalhaes RENEWAL
Kaitlin R InouyeItalyStephen Shaw PROPOSAL
Ashley I SlusarskiFranceElwin Sharvill PROPOSAL
Julie E VocelkaItalyStephen Shaw UNQUALIFIED
Misaki V GauchoSpainAmy Elsner PROPOSAL
James Q PoquetteUnited KingdomAmy Elsner UNQUALIFIED
Aditya W KolmetzAustraliaElwin Sharvill RENEWAL
Ivar V ChuiArgentinaAsiya Javayant NEW
Leon K KuskoItalyOnyama Limba RENEWAL
Johnson M MacleadItalyIoni Bowcher PROPOSAL
Munro F MaletBrazilAnna Fali RENEWAL
Deepesh Z StensethCanadaIoni Bowcher PROPOSAL
Silvio D ButtIndiaElwin Sharvill QUALIFIED
Salvatore G ButtGermanyStephen Shaw NEGOTIATION
James B SchemmerIndiaXuxue Feng NEGOTIATION
Aika U RutaItalyAnna Fali RENEWAL
Jeanfrancois P RimItalyAsiya Javayant NEW
James Z GauchoUnited KingdomAnna Fali UNQUALIFIED
Aruna H BowleyArgentinaStephen Shaw PROPOSAL
Murillo C ButtBrazilElwin Sharvill RENEWAL
Nicolas M SchemmerArgentinaElwin Sharvill NEW
Maisha J VenereBrazilElwin Sharvill NEGOTIATION
Murillo H FigeroaIndiaOnyama Limba PROPOSAL
Stacey P GauchoFranceStephen Shaw RENEWAL
Tony R DarakjyItalyXuxue Feng NEW
Kaitlin T GlickFranceIvan Magalhaes PROPOSAL
Salvatore I WieserJapanAmy Elsner PROPOSAL
Jefferson T RulapaughRussiaAnna Fali PROPOSAL
Jones O RoysterUnited KingdomIoni Bowcher RENEWAL
Jefferson T RimBrazilStephen Shaw UNQUALIFIED
Ricardo N SergiFranceElwin Sharvill PROPOSAL
Frozen Columns
Name
Julie V Amigon
Smith H Shinko
Aika X Rim
Faith Q Maclead
Julie R Tollner
Kadeem L Inouye
Johnson V Albares
Ivar C Maclead
Stacey A Amigon
Juan Z Gillian
Morrow O Glick
Rodrigues J Nestle
David V Gaucho
Chavez F Stenseth
Claire U Rulapaugh
Murillo A Nicka
Ashley E Briddick
Johnson G Malet
Sinclair Y Ruta
Kadeem E Maclead
Maisha H Tollner
Johnson Z Stenseth
Emily S Rulapaugh
Murillo E Gillian
Ricardo D Malet
Misaki C Sergi
Ivar J Waycott
Tony B Inouye
Darci U Schemmer
Alejandro W Marrier
Arvin B Caldarera
Nicolas B Bowley
Ricardo O Bowley
Costa U Saylors
Leja U Stenseth
Kadeem L Saylors
Wickens N Maclead
Deepesh X Royster
Morrow N Foller
Leja V Caldarera
Adams M Rim
Silvio F Foller
Wickens X Gillian
Rodrigues X Albares
Costa F Bowley
Julie M Butt
Kaitlin O Marrier
Murillo F Kolmetz
Stacey C Darakjy
Isabel L Nestle
IdCountryDate
1000Brazil2024-05-30
1001Spain2024-06-01
1002Russia2024-06-18
1003India2024-06-15
1004United Kingdom2024-06-04
1005Argentina2024-06-20
1006France2024-06-11
1007Russia2024-06-19
1008Argentina2024-06-07
1009Germany2024-06-18
1010Japan2024-05-26
1011Argentina2024-06-06
1012Spain2024-06-10
1013Canada2024-06-01
1014Spain2024-05-31
1015Germany2024-06-22
1016India2024-06-12
1017Spain2024-06-05
1018Canada2024-06-10
1019Russia2024-06-14
1020Italy2024-05-25
1021Australia2024-05-24
1022India2024-06-09
1023Italy2024-05-27
1024Argentina2024-06-07
1025Australia2024-06-10
1026India2024-06-05
1027France2024-06-14
1028Spain2024-06-09
1029Brazil2024-05-24
1030Russia2024-06-03
1031France2024-05-24
1032India2024-06-18
1033Australia2024-05-24
1034Germany2024-06-09
1035United Kingdom2024-05-26
1036Argentina2024-06-02
1037Spain2024-05-30
1038France2024-05-25
1039Australia2024-05-25
1040France2024-06-14
1041Japan2024-06-02
1042France2024-06-16
1043Italy2024-06-22
1044Argentina2024-06-09
1045France2024-06-10
1046Argentina2024-06-13
1047Italy2024-05-25
1048United Kingdom2024-06-09
1049France2024-06-22

On-Demand Data

NameIdCountryDate
Munro E Gaucho1000Russia2024-05-25
Octavia F Foller1001Russia2024-05-26
Juan S Ostrosky1002Russia2024-06-17
Alejandro R Shinko1003Argentina2024-06-22
Julie L Chui1004India2024-06-17
Jeanfrancois T Malet1005Italy2024-06-22
Smith Z Shinko1006Argentina2024-06-15
Johnson Q Rim1007Australia2024-06-04
Misaki H Schemmer1008Canada2024-05-26
Antonio C Foller1009Canada2024-06-22
Stacey L Inouye1010Spain2024-06-03
Morrow T Garufi1011Russia2024-05-28
Darci Z Malet1012Spain2024-06-16
Ivar O Gillian1013Japan2024-06-09
Izzy U Amigon1014Argentina2024-06-04
Leon X Flosi1015France2024-06-16
Mujtaba P Rim1016France2024-06-09
Munro U Kolmetz1017Russia2024-06-16
Smith C Foller1018Russia2024-05-31
Clifford X Whobrey1019France2024-05-27
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Salvatore A KuskoIndiaAsiya Javayant RENEWAL
Leon L MarrierGermanyXuxue Feng NEGOTIATION
Costa S FerenczFranceXuxue Feng NEGOTIATION
Antonio T StockhamFranceIvan Magalhaes PROPOSAL
Deepesh M CaldareraArgentinaAnna Fali RENEWAL
Aika O NickaJapanIoni Bowcher RENEWAL
Octavia K GauchoItalyAnna Fali NEGOTIATION
Jennifer D GarufiFranceIoni Bowcher PROPOSAL
Izzy H MaletUnited KingdomElwin Sharvill NEGOTIATION
Alejandro L DoeSpainElwin Sharvill PROPOSAL
James A NickaRussiaOnyama Limba NEW
Stacey H RimAustraliaAnna Fali QUALIFIED
Emily L AmigonItalyIvan Magalhaes PROPOSAL
Mayumi R FerenczIndiaAsiya Javayant UNQUALIFIED
Francesco O DoeSpainAsiya Javayant UNQUALIFIED
Jennifer Z GlickRussiaBernardo Dominic RENEWAL
Greenwood C StensethItalyBernardo Dominic RENEWAL
Emily I StensethIndiaAmy Elsner NEW
Aditya P StockhamIndiaIvan Magalhaes NEGOTIATION
Rodrigues E SaylorsIndiaBernardo Dominic UNQUALIFIED
Alejandro M MarrierFranceElwin Sharvill UNQUALIFIED
Kadeem K ButtUnited KingdomElwin Sharvill NEGOTIATION
Smith F ShinkoIndiaOnyama Limba NEGOTIATION
Sinclair U VenereGermanyAmy Elsner QUALIFIED
Leja C SchemmerSpainXuxue Feng UNQUALIFIED
Antonio Y WieserRussiaAmy Elsner NEW
Costa R DoeRussiaAmy Elsner NEGOTIATION
Salvatore E FollerUnited KingdomAnna Fali PROPOSAL
Octavia N FollerJapanElwin Sharvill RENEWAL
Ivar D DilliardAustraliaOnyama Limba RENEWAL
Rodrigues P VenereIndiaAmy Elsner UNQUALIFIED
Francesco Y BowleyUnited KingdomIvan Magalhaes QUALIFIED
Leja X PoquetteUnited KingdomAmy Elsner UNQUALIFIED
Octavia J BriddickAustraliaStephen Shaw RENEWAL
Juan P MacleadCanadaAmy Elsner PROPOSAL
Tony J SergiRussiaIoni Bowcher UNQUALIFIED
Aika E DoeAustraliaXuxue Feng NEGOTIATION
Jeanfrancois N ShinkoIndiaElwin Sharvill UNQUALIFIED
Johnson M VenereCanadaAnna Fali RENEWAL
Francesco H GauchoItalyAsiya Javayant 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>