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
Faith A CaldareraAustraliaXuxue Feng QUALIFIED
Murillo K ChuiAustraliaIoni Bowcher UNQUALIFIED
Julie Y ChuiGermanyAsiya Javayant QUALIFIED
Maria D CampainAustraliaAnna Fali QUALIFIED
Deepesh R KuskoFranceBernardo Dominic NEW
Mujtaba Q NestleJapanXuxue Feng UNQUALIFIED
Leja L RulapaughFranceXuxue Feng PROPOSAL
Leon A RoysterSpainOnyama Limba PROPOSAL
Alejandro J MorascaIndiaIvan Magalhaes NEGOTIATION
Kadeem B CaudyAustraliaAnna Fali QUALIFIED
Deepesh M PerinUnited KingdomAsiya Javayant QUALIFIED
Maisha J FigeroaFranceBernardo Dominic NEW
Munro F CaudyRussiaAnna Fali RENEWAL
James Q FigeroaGermanyAnna Fali PROPOSAL
Julie R WieserUnited KingdomIvan Magalhaes UNQUALIFIED
Clifford V InouyeRussiaStephen Shaw RENEWAL
Wickens H MacleadAustraliaBernardo Dominic NEGOTIATION
Ashley J MaletRussiaAsiya Javayant UNQUALIFIED
Kaitlin U SchemmerRussiaElwin Sharvill NEW
Jennifer H NickaBrazilStephen Shaw NEGOTIATION
Aika B WieserIndiaAnna Fali QUALIFIED
Silvio A CaudySpainBernardo Dominic QUALIFIED
Jefferson S FerenczRussiaElwin Sharvill RENEWAL
Kadeem A DarakjyRussiaIoni Bowcher NEW
Jefferson Z InouyeGermanyOnyama Limba QUALIFIED
Aditya P OstroskyBrazilAnna Fali QUALIFIED
Johnson D VocelkaIndiaOnyama Limba NEW
David T GlickFranceAmy Elsner NEW
Kadeem Y VocelkaJapanAnna Fali QUALIFIED
Aditya U VenereJapanStephen Shaw UNQUALIFIED
Mujtaba Q DoeIndiaAnna Fali NEGOTIATION
Clifford F PerinCanadaXuxue Feng PROPOSAL
Kaitlin I FerenczItalyBernardo Dominic QUALIFIED
Leon X GarufiAustraliaAnna Fali UNQUALIFIED
Clifford H PaprockiCanadaStephen Shaw UNQUALIFIED
Chavez E SaylorsItalyOnyama Limba RENEWAL
Deepesh O FigeroaGermanyBernardo Dominic NEGOTIATION
Munro K RulapaughCanadaAsiya Javayant RENEWAL
Salvatore Z TollnerFranceAsiya Javayant NEW
Maria X GillianArgentinaIvan Magalhaes NEGOTIATION
Adams Y ButtFranceIvan Magalhaes UNQUALIFIED
Murillo Y BowleyUnited KingdomXuxue Feng RENEWAL
Maisha X NickaAustraliaXuxue Feng NEGOTIATION
Costa F SaylorsItalyIvan Magalhaes NEW
Morrow S VocelkaCanadaAnna Fali RENEWAL
Juan R SaylorsSpainOnyama Limba UNQUALIFIED
Leja J WaycottGermanyStephen Shaw PROPOSAL
Adams X GlickGermanyElwin Sharvill RENEWAL
Sinclair A AlbaresAustraliaXuxue Feng NEW
Alejandro P VocelkaIndiaOnyama Limba NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
James U SlusarskiJapanAsiya Javayant UNQUALIFIED
Mujtaba U PaprockiBrazilElwin Sharvill UNQUALIFIED
Deepesh O NestleItalyElwin Sharvill PROPOSAL
Johnson L PerinBrazilIoni Bowcher UNQUALIFIED
Ricardo J DoeUnited KingdomIvan Magalhaes QUALIFIED
Jefferson M ButtItalyAsiya Javayant UNQUALIFIED
Darci O BriddickGermanyElwin Sharvill NEW
Francesco L DoeSpainAmy Elsner RENEWAL
Jeanfrancois Y CampainIndiaAsiya Javayant NEGOTIATION
David W IturbideSpainAnna Fali PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Tony V PerinFrance2024-05-09Rousseaux, Michael Esq PROPOSAL56Xuxue Feng
1001Mujtaba W StensethGermany2024-05-12Rangoni Of Florence QUALIFIED48Asiya Javayant
1002Leja W RimGermany2024-05-09Feltz Printing Service PROPOSAL33Stephen Shaw
1003Mujtaba U OldroydBrazil2024-05-02Chemel, James L Cpa QUALIFIED11Asiya Javayant
1004David L WieserAustralia2024-05-25Feltz Printing Service NEGOTIATION51Elwin Sharvill
1005Johnson P TollnerGermany2024-05-09Feltz Printing Service RENEWAL19Ivan Magalhaes
1006Wickens Q FlosiGermany2024-05-19Buckley Miller Wright RENEWAL72Stephen Shaw
1007Aditya A GlickJapan2024-05-26Commercial Press NEGOTIATION24Onyama Limba
1008Jones B FollerArgentina2024-05-10Rousseaux, Michael Esq UNQUALIFIED90Anna Fali
1009Kadeem Q BriddickBrazil2024-05-19Printing Dimensions UNQUALIFIED64Stephen Shaw
1010Silvio K MarrierSpain2024-04-27Commercial Press NEW29Bernardo Dominic
1011Maria J RoysterArgentina2024-04-28Rousseaux, Michael Esq QUALIFIED74Elwin Sharvill
1012Rodrigues J GauchoBrazil2024-05-19Feiner Bros PROPOSAL60Ioni Bowcher
1013Octavia N InouyeSpain2024-04-29Commercial Press QUALIFIED15Amy Elsner
1014Johnson S GarufiCanada2024-05-23King, Christopher A Esq NEGOTIATION69Onyama Limba
1015Aika V KolmetzJapan2024-04-27Chapman, Ross E Esq QUALIFIED11Xuxue Feng
1016Wickens X InouyeCanada2024-05-20Commercial Press NEW85Xuxue Feng
1017Jefferson Q GauchoUnited Kingdom2024-05-03Buckley Miller Wright QUALIFIED42Xuxue Feng
1018Chavez P BowleyAustralia2024-05-16Commercial Press NEGOTIATION32Bernardo Dominic
1019Francesco I WhobreyFrance2024-05-12Dorl, James J Esq NEW18Onyama Limba
1020Ivar M KolmetzAustralia2024-05-22Feltz Printing Service PROPOSAL72Elwin Sharvill
1021Mujtaba K InouyeFrance2024-05-01Rousseaux, Michael Esq NEW39Ivan Magalhaes
1022Mayumi R WieserItaly2024-04-28King, Christopher A Esq NEW29Stephen Shaw
1023Maria J VenereRussia2024-05-20Chanay, Jeffrey A Esq QUALIFIED94Elwin Sharvill
1024Morrow L RulapaughCanada2024-05-24King, Christopher A Esq RENEWAL28Asiya Javayant
1025Nicolas N RulapaughGermany2024-05-14Feltz Printing Service PROPOSAL59Asiya Javayant
1026Clifford J CaudySpain2024-05-24Buckley Miller Wright NEW16Ivan Magalhaes
1027Kadeem W MaletGermany2024-05-06Chemel, James L Cpa UNQUALIFIED87Asiya Javayant
1028Cody W WaycottGermany2024-05-11Commercial Press RENEWAL2Stephen Shaw
1029Cody N StensethFrance2024-05-25Rangoni Of Florence RENEWAL81Elwin Sharvill
1030Octavia W SergiArgentina2024-05-12Feiner Bros UNQUALIFIED7Ivan Magalhaes
1031Adams D StockhamCanada2024-04-29Dorl, James J Esq PROPOSAL81Anna Fali
1032Maisha H ChuiRussia2024-04-27Rangoni Of Florence PROPOSAL59Elwin Sharvill
1033Emily H InouyeFrance2024-05-26King, Christopher A Esq UNQUALIFIED91Onyama Limba
1034Claire Q RimUnited Kingdom2024-05-17King, Christopher A Esq UNQUALIFIED69Asiya Javayant
1035Maisha V FollerCanada2024-05-26King, Christopher A Esq PROPOSAL65Amy Elsner
1036Adams J RimGermany2024-05-14Truhlar And Truhlar Attys NEGOTIATION7Onyama Limba
1037Mayumi Y WieserRussia2024-05-26Chanay, Jeffrey A Esq PROPOSAL44Ivan Magalhaes
1038Francesco J WaycottSpain2024-05-23King, Christopher A Esq NEW51Onyama Limba
1039Antonio B SlusarskiFrance2024-05-05Chapman, Ross E Esq UNQUALIFIED28Asiya Javayant
1040Deepesh C RutaItaly2024-05-20Rangoni Of Florence QUALIFIED41Stephen Shaw
1041Leja Y IturbideRussia2024-05-16King, Christopher A Esq NEGOTIATION70Asiya Javayant
1042Antonio U StockhamJapan2024-05-20Printing Dimensions PROPOSAL6Stephen Shaw
1043Jeanfrancois P CaudyUnited Kingdom2024-05-04Morlong Associates QUALIFIED1Xuxue Feng
1044Munro W MarrierUnited Kingdom2024-05-18King, Christopher A Esq UNQUALIFIED48Asiya Javayant
1045Adams L MarrierBrazil2024-05-17Rangoni Of Florence NEGOTIATION54Bernardo Dominic
1046Morrow J WaycottGermany2024-04-29King, Christopher A Esq NEGOTIATION56Asiya Javayant
1047Costa T WaycottGermany2024-04-27Dorl, James J Esq NEW42Bernardo Dominic
1048Maria K OstroskyArgentina2024-05-12Chemel, James L Cpa NEGOTIATION73Asiya Javayant
1049Octavia Z FollerCanada2024-05-24Morlong Associates PROPOSAL31Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Mayumi M FerenczItalyStephen Shaw QUALIFIED
Mayumi H DarakjyArgentinaIvan Magalhaes NEGOTIATION
Octavia I PerinIndiaOnyama Limba PROPOSAL
Ivar Q KolmetzItalyElwin Sharvill UNQUALIFIED
Francesco L StensethCanadaXuxue Feng QUALIFIED
Francesco O MaletUnited KingdomAnna Fali PROPOSAL
Ricardo L RutaGermanyAsiya Javayant NEGOTIATION
Stacey R OstroskySpainAmy Elsner UNQUALIFIED
Francesco I CampainItalyAmy Elsner PROPOSAL
Maria O DoeSpainXuxue Feng NEGOTIATION
Francesco N SchemmerRussiaStephen Shaw PROPOSAL
Munro G StockhamRussiaIvan Magalhaes PROPOSAL
Ivar M FerenczAustraliaElwin Sharvill RENEWAL
Jeanfrancois J DoeSpainIoni Bowcher QUALIFIED
Maisha W AlbaresJapanAmy Elsner UNQUALIFIED
Sinclair L VocelkaSpainBernardo Dominic PROPOSAL
Jennifer L TollnerSpainAnna Fali RENEWAL
Cody B PaprockiGermanyIvan Magalhaes NEW
Julie W MaletSpainAmy Elsner NEGOTIATION
Munro U GarufiJapanXuxue Feng RENEWAL
Darci A WaycottCanadaXuxue Feng UNQUALIFIED
Maria D InouyeBrazilAsiya Javayant PROPOSAL
Stacey B GillianUnited KingdomBernardo Dominic RENEWAL
Tony G NickaBrazilAmy Elsner NEW
Aruna G SergiAustraliaIoni Bowcher NEW
David I ChuiAustraliaBernardo Dominic PROPOSAL
Ashley I IturbideJapanBernardo Dominic NEW
Aditya F MarrierRussiaAnna Fali UNQUALIFIED
Chavez W GillianGermanyAmy Elsner UNQUALIFIED
Mayumi M BologniaRussiaIoni Bowcher PROPOSAL
Faith B DarakjyIndiaElwin Sharvill QUALIFIED
Rodrigues H SaylorsGermanyXuxue Feng RENEWAL
Jefferson Q PaprockiIndiaIvan Magalhaes UNQUALIFIED
Juan L SlusarskiSpainElwin Sharvill NEGOTIATION
Mayumi M WieserAustraliaAmy Elsner RENEWAL
Stacey F TollnerArgentinaAmy Elsner NEW
Misaki D MacleadArgentinaStephen Shaw PROPOSAL
Leon S VenereGermanyElwin Sharvill UNQUALIFIED
Kadeem H RutaJapanAnna Fali NEW
Chavez B IturbideFranceStephen Shaw NEGOTIATION
Rodrigues C MorascaSpainBernardo Dominic PROPOSAL
Mayumi N RulapaughSpainIvan Magalhaes UNQUALIFIED
Misaki L SaylorsCanadaBernardo Dominic NEW
Rodrigues M CaldareraJapanElwin Sharvill NEGOTIATION
Juan Z GlickAustraliaIoni Bowcher UNQUALIFIED
Darci I FerenczIndiaElwin Sharvill UNQUALIFIED
Aruna E DoeFranceOnyama Limba PROPOSAL
Faith Q InouyeUnited KingdomAsiya Javayant QUALIFIED
Jones S CaudyFranceOnyama Limba NEW
Octavia S KolmetzSpainBernardo Dominic UNQUALIFIED
Frozen Columns
Name
Tony E Sergi
Morrow Y Stockham
Jones O Glick
Mayumi I Ostrosky
Maisha Z Albares
Cody A Marrier
Jones D Rim
Tony K Bolognia
Morrow I Gaucho
Clifford M Wieser
Isabel J Rulapaugh
Ricardo B Bowley
Julie N Figeroa
Leja U Kolmetz
Clifford H Inouye
Alejandro U Stockham
Adams N Waycott
Munro G Garufi
Leon D Gillian
Aruna X Caldarera
Francesco U Ferencz
Stacey Z Figeroa
Izzy M Maclead
Juan X Stenseth
Nicolas J Kusko
Chavez Z Schemmer
Darci N Venere
Chavez O Albares
Juan Q Whobrey
Ivar L Rulapaugh
Ivar I Ruta
Costa M Inouye
Adams A Figeroa
Maria F Iturbide
Aruna Q Stenseth
Munro U Whobrey
Stacey E Stenseth
Costa K Foller
Isabel Z Glick
Antonio J Nestle
Claire F Dilliard
Costa I Ostrosky
Leon X Shinko
Wickens H Slusarski
Ricardo Q Ostrosky
Leja M Tollner
Adams S Paprocki
Morrow U Wieser
Claire W Stenseth
Mayumi A Glick
IdCountryDate
1000Canada2024-04-27
1001India2024-05-20
1002Spain2024-05-12
1003United Kingdom2024-04-28
1004Russia2024-05-10
1005United Kingdom2024-04-29
1006United Kingdom2024-05-08
1007Canada2024-05-17
1008Russia2024-05-11
1009Spain2024-05-02
1010India2024-05-25
1011Russia2024-05-20
1012India2024-05-15
1013Australia2024-05-01
1014India2024-05-17
1015France2024-04-29
1016Japan2024-05-04
1017Brazil2024-05-19
1018Canada2024-05-03
1019France2024-05-25
1020Argentina2024-05-26
1021Spain2024-05-06
1022United Kingdom2024-05-26
1023Spain2024-05-15
1024Australia2024-05-18
1025Russia2024-05-12
1026Canada2024-05-20
1027Canada2024-05-11
1028Brazil2024-04-27
1029Argentina2024-05-25
1030Argentina2024-05-21
1031Russia2024-05-02
1032Italy2024-05-09
1033Australia2024-05-22
1034Russia2024-05-06
1035Brazil2024-05-03
1036Germany2024-05-26
1037France2024-05-25
1038Canada2024-05-24
1039Brazil2024-05-04
1040Russia2024-05-03
1041India2024-05-14
1042United Kingdom2024-05-20
1043Brazil2024-04-28
1044Brazil2024-05-17
1045Australia2024-05-15
1046Canada2024-05-09
1047Canada2024-04-28
1048Germany2024-04-27
1049Brazil2024-04-27

On-Demand Data

NameIdCountryDate
Jeanfrancois J Vocelka1000United Kingdom2024-05-11
Cody X Shinko1001Japan2024-05-17
Deepesh I Malet1002Italy2024-05-12
Maisha M Maclead1003India2024-05-21
Leja T Royster1004Brazil2024-05-01
James I Iturbide1005Germany2024-05-06
Ricardo L Saylors1006Brazil2024-05-06
Kadeem K Oldroyd1007Spain2024-05-26
Ricardo G Bolognia1008Japan2024-05-06
Antonio Y Darakjy1009United Kingdom2024-04-27
Leon R Waycott1010United Kingdom2024-05-05
Maria D Bolognia1011France2024-05-04
Sinclair O Butt1012Spain2024-04-28
Tony Y Tollner1013Australia2024-05-21
Izzy K Wieser1014Russia2024-05-05
Silvio G Sergi1015France2024-05-22
Alejandro L Inouye1016Spain2024-05-01
Munro E Flosi1017Russia2024-05-07
David H Foller1018Japan2024-04-30
Emily Z Saylors1019Japan2024-05-20
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Alejandro J TollnerGermanyAnna Fali PROPOSAL
James A SaylorsSpainAnna Fali QUALIFIED
Clifford E CampainIndiaBernardo Dominic PROPOSAL
Sinclair R KolmetzCanadaBernardo Dominic UNQUALIFIED
Ashley I CaldareraCanadaElwin Sharvill RENEWAL
Mayumi P SergiBrazilOnyama Limba PROPOSAL
Octavia A RulapaughAustraliaOnyama Limba QUALIFIED
Leon T CaudyBrazilAsiya Javayant RENEWAL
Ashley K ShinkoGermanyAmy Elsner UNQUALIFIED
Salvatore I StensethJapanAsiya Javayant QUALIFIED
Jeanfrancois Y RutaRussiaElwin Sharvill RENEWAL
Ashley G WaycottBrazilIoni Bowcher RENEWAL
Jones I GarufiItalyElwin Sharvill PROPOSAL
David P AlbaresRussiaOnyama Limba UNQUALIFIED
Darci F StockhamFranceStephen Shaw UNQUALIFIED
Clifford T PoquetteItalyBernardo Dominic QUALIFIED
Kadeem G SaylorsSpainAmy Elsner RENEWAL
Kadeem P OldroydJapanAsiya Javayant UNQUALIFIED
Maria A CampainArgentinaElwin Sharvill RENEWAL
Silvio C RoysterAustraliaXuxue Feng QUALIFIED
Izzy M FollerFranceIoni Bowcher NEW
Leon V InouyeArgentinaIvan Magalhaes UNQUALIFIED
Leja R ButtUnited KingdomAsiya Javayant NEGOTIATION
Clifford W MaletJapanIvan Magalhaes NEGOTIATION
Antonio G GarufiCanadaElwin Sharvill NEGOTIATION
Adams C MaletCanadaIvan Magalhaes NEGOTIATION
Misaki O RutaArgentinaAsiya Javayant UNQUALIFIED
Isabel U SlusarskiItalyAsiya Javayant NEW
Greenwood E IturbideAustraliaElwin Sharvill RENEWAL
Costa O MorascaRussiaOnyama Limba PROPOSAL
Faith O WieserJapanStephen Shaw QUALIFIED
Ricardo N CampainGermanyIoni Bowcher NEGOTIATION
Stacey I StensethCanadaAsiya Javayant PROPOSAL
Kaitlin X OstroskySpainElwin Sharvill PROPOSAL
Alejandro D FlosiIndiaAmy Elsner NEGOTIATION
Greenwood V BologniaSpainBernardo Dominic NEW
Cody J AmigonCanadaXuxue Feng NEGOTIATION
Izzy P BologniaUnited KingdomXuxue Feng NEW
Francesco Z KolmetzGermanyBernardo Dominic NEW
Johnson F FigeroaSpainBernardo Dominic NEW

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