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 Y MaletAustraliaIoni Bowcher RENEWAL
Ivar R RoysterArgentinaAmy Elsner RENEWAL
Izzy N MarrierFranceStephen Shaw UNQUALIFIED
Emily V StensethBrazilOnyama Limba NEW
Faith V RulapaughGermanyStephen Shaw NEW
Tony W FlosiIndiaAnna Fali PROPOSAL
David I BologniaUnited KingdomAsiya Javayant NEW
Morrow K AmigonUnited KingdomXuxue Feng QUALIFIED
Deepesh D CaudyAustraliaBernardo Dominic QUALIFIED
Faith I TollnerJapanAmy Elsner PROPOSAL
Ricardo O BriddickCanadaStephen Shaw NEW
David E BowleyIndiaIoni Bowcher NEGOTIATION
David C NestleBrazilOnyama Limba NEGOTIATION
Jefferson C OldroydRussiaIvan Magalhaes RENEWAL
Arvin J NestleCanadaAnna Fali QUALIFIED
Chavez Y DoeAustraliaIvan Magalhaes PROPOSAL
Aika G DoeFranceStephen Shaw UNQUALIFIED
Jennifer D ChuiRussiaStephen Shaw NEGOTIATION
Arvin R ButtArgentinaAmy Elsner PROPOSAL
Ashley Q AmigonFranceOnyama Limba RENEWAL
David B DilliardGermanyIvan Magalhaes QUALIFIED
James Y BologniaJapanAsiya Javayant NEW
Ivar D WieserJapanElwin Sharvill RENEWAL
Jeanfrancois X AlbaresIndiaElwin Sharvill UNQUALIFIED
Sinclair K FollerCanadaIvan Magalhaes RENEWAL
Jefferson B SergiGermanyAnna Fali NEGOTIATION
James I MarrierGermanyBernardo Dominic NEW
Deepesh U CaudyAustraliaXuxue Feng UNQUALIFIED
Silvio R SergiFranceAmy Elsner RENEWAL
Claire Z ChuiGermanyStephen Shaw PROPOSAL
Maisha M InouyeBrazilStephen Shaw PROPOSAL
Wickens M DarakjyUnited KingdomAnna Fali NEGOTIATION
Ricardo M ShinkoUnited KingdomStephen Shaw PROPOSAL
Costa S BologniaRussiaAsiya Javayant PROPOSAL
Alejandro J StensethCanadaAsiya Javayant QUALIFIED
Julie L FlosiUnited KingdomIoni Bowcher NEW
Isabel Z BriddickAustraliaAnna Fali NEW
Nicolas R FerenczSpainOnyama Limba NEGOTIATION
Tony H PaprockiRussiaAmy Elsner NEW
Jeanfrancois X ShinkoRussiaBernardo Dominic NEGOTIATION
Aika D GarufiJapanOnyama Limba QUALIFIED
Jeanfrancois U KuskoFranceBernardo Dominic UNQUALIFIED
Mayumi S RimJapanIoni Bowcher QUALIFIED
Sinclair A VocelkaArgentinaIvan Magalhaes RENEWAL
Julie W MorascaIndiaStephen Shaw NEGOTIATION
Juan N OstroskyItalyIvan Magalhaes PROPOSAL
Jefferson L WieserAustraliaAnna Fali PROPOSAL
Cody X BriddickUnited KingdomStephen Shaw PROPOSAL
Maisha R BowleyCanadaXuxue Feng PROPOSAL
Aruna W NickaArgentinaXuxue Feng NEW
Horizontal
NameCountryRepresentativeStatus
Darci O KolmetzArgentinaAnna Fali UNQUALIFIED
Stacey G TollnerUnited KingdomStephen Shaw RENEWAL
Mujtaba J PaprockiItalyElwin Sharvill RENEWAL
Jeanfrancois T InouyeUnited KingdomXuxue Feng NEW
Ivar V OstroskyGermanyAsiya Javayant UNQUALIFIED
Nicolas I MorascaBrazilElwin Sharvill UNQUALIFIED
Ivar N FlosiBrazilXuxue Feng NEGOTIATION
Murillo X FigeroaItalyElwin Sharvill UNQUALIFIED
Morrow G CampainItalyElwin Sharvill UNQUALIFIED
Darci G WhobreyBrazilAnna Fali RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Sinclair X TollnerBrazil2024-06-10Chapman, Ross E Esq NEW99Ivan Magalhaes
1001Octavia A FlosiGermany2024-06-21Feltz Printing Service UNQUALIFIED33Anna Fali
1002Sinclair D GarufiFrance2024-06-10Feltz Printing Service RENEWAL50Stephen Shaw
1003Aika S StockhamJapan2024-06-15Commercial Press NEGOTIATION99Asiya Javayant
1004Cody J GillianFrance2024-06-06Rousseaux, Michael Esq NEGOTIATION7Elwin Sharvill
1005Arvin B VocelkaArgentina2024-06-14Rangoni Of Florence RENEWAL8Asiya Javayant
1006Chavez A RutaSpain2024-06-12Morlong Associates NEW45Bernardo Dominic
1007Wickens W SchemmerBrazil2024-05-31Printing Dimensions PROPOSAL2Ioni Bowcher
1008Leon Z AlbaresAustralia2024-06-06Truhlar And Truhlar Attys RENEWAL26Elwin Sharvill
1009Salvatore D NestleIndia2024-06-15Chemel, James L Cpa NEGOTIATION61Onyama Limba
1010Mujtaba M MaletAustralia2024-06-20Morlong Associates RENEWAL99Anna Fali
1011Jefferson G MaletGermany2024-06-19King, Christopher A Esq RENEWAL97Stephen Shaw
1012Misaki A FollerFrance2024-05-29King, Christopher A Esq UNQUALIFIED34Stephen Shaw
1013Ivar F OstroskyItaly2024-06-18Chemel, James L Cpa QUALIFIED1Anna Fali
1014Darci L RutaJapan2024-06-10Commercial Press NEW72Asiya Javayant
1015Maria L StensethArgentina2024-06-14Printing Dimensions PROPOSAL92Anna Fali
1016Munro B InouyeGermany2024-06-07Printing Dimensions PROPOSAL90Onyama Limba
1017Deepesh Q BowleySpain2024-06-11Printing Dimensions UNQUALIFIED69Anna Fali
1018Juan Z MacleadIndia2024-06-19Morlong Associates RENEWAL73Xuxue Feng
1019Mujtaba A CaldareraCanada2024-06-22Morlong Associates NEW73Ivan Magalhaes
1020Kadeem O DoeGermany2024-05-25Chapman, Ross E Esq NEW21Xuxue Feng
1021Aika H GauchoRussia2024-05-29Buckley Miller Wright NEGOTIATION82Elwin Sharvill
1022Faith I MaletRussia2024-05-29Chemel, James L Cpa RENEWAL13Ioni Bowcher
1023Jefferson U GarufiAustralia2024-06-16Feiner Bros RENEWAL81Amy Elsner
1024Ivar F GarufiGermany2024-05-29Rousseaux, Michael Esq RENEWAL19Onyama Limba
1025Stacey F GlickJapan2024-05-30Dorl, James J Esq UNQUALIFIED48Onyama Limba
1026Smith O BowleyItaly2024-06-21Rangoni Of Florence PROPOSAL37Anna Fali
1027Kaitlin I SchemmerUnited Kingdom2024-06-12Buckley Miller Wright RENEWAL40Asiya Javayant
1028Faith D WhobreyItaly2024-05-31Morlong Associates QUALIFIED35Bernardo Dominic
1029Sinclair J TollnerJapan2024-06-17Truhlar And Truhlar Attys NEW36Bernardo Dominic
1030Octavia Q GarufiGermany2024-06-18Morlong Associates QUALIFIED59Anna Fali
1031Silvio Z RimAustralia2024-06-10Chapman, Ross E Esq RENEWAL4Amy Elsner
1032Salvatore D StensethCanada2024-06-01Printing Dimensions QUALIFIED13Anna Fali
1033Octavia R SaylorsIndia2024-06-22King, Christopher A Esq NEGOTIATION11Stephen Shaw
1034Antonio N RoysterSpain2024-06-09King, Christopher A Esq NEGOTIATION61Stephen Shaw
1035Darci P PerinFrance2024-06-16Feiner Bros QUALIFIED26Stephen Shaw
1036Isabel L WieserIndia2024-06-20Printing Dimensions NEW89Ivan Magalhaes
1037Isabel W CaldareraFrance2024-06-21Buckley Miller Wright QUALIFIED0Ioni Bowcher
1038Ashley M AlbaresSpain2024-06-21Chemel, James L Cpa UNQUALIFIED50Asiya Javayant
1039Costa W PoquetteSpain2024-05-31Chapman, Ross E Esq NEGOTIATION62Asiya Javayant
1040Adams C BologniaArgentina2024-06-16Rangoni Of Florence PROPOSAL78Anna Fali
1041Julie A StensethBrazil2024-06-13Truhlar And Truhlar Attys NEGOTIATION90Stephen Shaw
1042Aditya E ShinkoAustralia2024-05-30Morlong Associates UNQUALIFIED41Amy Elsner
1043Murillo M GlickFrance2024-06-19Feiner Bros PROPOSAL91Bernardo Dominic
1044Izzy F StockhamArgentina2024-06-07Commercial Press NEW27Ioni Bowcher
1045Mujtaba H NestleItaly2024-06-04King, Christopher A Esq QUALIFIED16Onyama Limba
1046Ricardo T RoysterCanada2024-06-06Benton, John B Jr PROPOSAL24Amy Elsner
1047Faith G ButtSpain2024-06-09Feltz Printing Service UNQUALIFIED90Elwin Sharvill
1048Jennifer G BologniaGermany2024-06-21King, Christopher A Esq UNQUALIFIED60Onyama Limba
1049Juan X PoquetteRussia2024-06-08Buckley Miller Wright QUALIFIED98Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Mayumi I BologniaIndiaAsiya Javayant NEGOTIATION
Silvio E PaprockiItalyIvan Magalhaes UNQUALIFIED
Darci E SlusarskiItalyOnyama Limba RENEWAL
Leon C InouyeBrazilBernardo Dominic QUALIFIED
Costa Z GauchoAustraliaAsiya Javayant QUALIFIED
Alejandro O WieserRussiaBernardo Dominic NEGOTIATION
David O RoysterArgentinaIoni Bowcher QUALIFIED
Izzy Q ShinkoFranceBernardo Dominic NEW
Tony K RimJapanStephen Shaw QUALIFIED
Munro G NestleArgentinaIoni Bowcher UNQUALIFIED
Maisha Q VenereGermanyAmy Elsner QUALIFIED
Claire W MorascaFranceBernardo Dominic NEGOTIATION
Jones M DarakjyArgentinaElwin Sharvill UNQUALIFIED
Faith W CaudyRussiaAnna Fali UNQUALIFIED
James Q PaprockiGermanyAsiya Javayant PROPOSAL
Izzy X GauchoItalyIoni Bowcher RENEWAL
Murillo M WhobreyIndiaOnyama Limba NEW
Smith I PoquetteFranceAsiya Javayant NEGOTIATION
Johnson E PoquetteRussiaOnyama Limba NEW
Silvio I SlusarskiCanadaStephen Shaw UNQUALIFIED
Aditya B SergiAustraliaElwin Sharvill RENEWAL
Deepesh O RoysterItalyIoni Bowcher NEGOTIATION
Aika L SlusarskiAustraliaAnna Fali NEGOTIATION
David J InouyeIndiaElwin Sharvill QUALIFIED
Deepesh G BologniaGermanyElwin Sharvill NEGOTIATION
Mayumi V KolmetzCanadaIvan Magalhaes QUALIFIED
Morrow F AmigonSpainStephen Shaw NEW
Sinclair Z BowleyIndiaXuxue Feng UNQUALIFIED
Cody M StockhamGermanyAsiya Javayant PROPOSAL
Jennifer O DarakjyAustraliaXuxue Feng PROPOSAL
Aika G MorascaJapanElwin Sharvill QUALIFIED
Smith I IturbideRussiaAnna Fali QUALIFIED
Johnson G OldroydItalyXuxue Feng NEW
Aruna G SchemmerCanadaAnna Fali RENEWAL
Maria A FerenczUnited KingdomBernardo Dominic PROPOSAL
Cody J ButtItalyXuxue Feng NEGOTIATION
Leja I GillianItalyAmy Elsner PROPOSAL
Aditya M AlbaresIndiaXuxue Feng UNQUALIFIED
Silvio K PoquetteUnited KingdomAsiya Javayant NEGOTIATION
Wickens C MorascaRussiaAmy Elsner UNQUALIFIED
Izzy X AlbaresRussiaBernardo Dominic QUALIFIED
Jennifer C DilliardArgentinaOnyama Limba NEW
Rodrigues E WaycottCanadaStephen Shaw NEW
Juan W KolmetzRussiaBernardo Dominic RENEWAL
Sinclair U OldroydRussiaIoni Bowcher QUALIFIED
Rodrigues P BowleyCanadaAsiya Javayant PROPOSAL
Jeanfrancois Z WaycottItalyXuxue Feng QUALIFIED
Jeanfrancois O FollerFranceAnna Fali QUALIFIED
Sinclair V FlosiBrazilIoni Bowcher UNQUALIFIED
Jefferson X SaylorsSpainXuxue Feng UNQUALIFIED
Frozen Columns
Name
Faith H Ruta
Leon F Darakjy
Costa T Waycott
Leja A Ostrosky
Tony I Iturbide
Claire J Ruta
Ivar E Schemmer
Munro N Malet
Salvatore I Ostrosky
Arvin D Slusarski
Silvio X Kolmetz
Ivar D Doe
Kadeem R Morasca
Munro C Maclead
Clifford J Sergi
Nicolas Q Morasca
Mayumi O Oldroyd
Juan T Figeroa
Emily H Venere
Rodrigues L Doe
Antonio I Ostrosky
Nicolas F Rim
Stacey T Gaucho
Juan S Shinko
Murillo V Shinko
Ivar W Bowley
Salvatore E Oldroyd
Jones U Figeroa
Faith W Waycott
Silvio I Schemmer
Rodrigues O Doe
Smith T Venere
Maria I Rim
Arvin T Poquette
Chavez O Rulapaugh
Cody S Bolognia
Izzy O Inouye
Alejandro Q Saylors
James F Kolmetz
Octavia R Gillian
Faith G Stenseth
Darci F Ostrosky
James T Inouye
Faith N Kusko
Murillo N Waycott
Maria W Foller
Leja N Oldroyd
Chavez L Shinko
Misaki X Campain
Sinclair O Figeroa
IdCountryDate
1000France2024-06-20
1001Germany2024-06-07
1002Italy2024-05-30
1003Canada2024-06-21
1004Argentina2024-05-29
1005France2024-05-30
1006Brazil2024-06-12
1007Spain2024-06-02
1008Germany2024-05-26
1009Germany2024-06-02
1010United Kingdom2024-05-27
1011Russia2024-06-11
1012Australia2024-06-22
1013Italy2024-05-28
1014Canada2024-05-24
1015Canada2024-06-15
1016Brazil2024-05-28
1017France2024-06-21
1018Canada2024-06-03
1019Australia2024-05-27
1020Japan2024-06-13
1021India2024-05-27
1022Japan2024-06-05
1023France2024-06-07
1024Russia2024-06-10
1025Italy2024-06-15
1026India2024-06-12
1027Italy2024-06-17
1028India2024-06-10
1029France2024-06-02
1030India2024-05-30
1031United Kingdom2024-06-14
1032Italy2024-06-08
1033Brazil2024-05-25
1034Russia2024-05-24
1035United Kingdom2024-05-28
1036Japan2024-05-29
1037Argentina2024-06-11
1038India2024-06-10
1039France2024-05-27
1040Spain2024-05-28
1041Germany2024-06-04
1042Germany2024-06-16
1043Australia2024-06-12
1044Italy2024-06-06
1045Russia2024-06-12
1046Japan2024-06-15
1047Japan2024-06-22
1048Russia2024-05-25
1049Germany2024-06-09

On-Demand Data

NameIdCountryDate
Francesco S Glick1000France2024-06-05
Costa U Whobrey1001Australia2024-06-14
Munro P Nicka1002Spain2024-06-01
Nicolas S Perin1003Australia2024-06-18
Ivar C Chui1004United Kingdom2024-06-07
Nicolas Q Campain1005Brazil2024-06-22
Ricardo L Schemmer1006United Kingdom2024-06-07
Jefferson V Doe1007United Kingdom2024-06-16
Munro L Marrier1008Russia2024-06-14
Kaitlin E Ferencz1009Germany2024-06-14
Emily P Venere1010Italy2024-06-16
Greenwood W Stenseth1011United Kingdom2024-05-24
Maisha Q Caudy1012Argentina2024-06-10
Salvatore C Flosi1013Germany2024-06-16
Ricardo C Stockham1014Spain2024-05-31
Aditya S Slusarski1015Japan2024-05-27
Johnson I Ostrosky1016United Kingdom2024-05-26
Isabel G Darakjy1017Argentina2024-06-22
Adams I Figeroa1018Italy2024-06-07
Emily I Ruta1019Japan2024-06-03
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Rodrigues I WhobreyArgentinaOnyama Limba UNQUALIFIED
Ashley O VocelkaBrazilBernardo Dominic NEW
Morrow D AlbaresSpainIoni Bowcher NEGOTIATION
Jennifer H FerenczSpainAmy Elsner PROPOSAL
Kadeem Q DarakjyRussiaOnyama Limba QUALIFIED
Aruna L CaldareraCanadaAmy Elsner QUALIFIED
James R WieserItalyAnna Fali NEW
Greenwood R DoeItalyAmy Elsner NEGOTIATION
Jefferson C GauchoAustraliaStephen Shaw NEGOTIATION
Francesco V MacleadGermanyIvan Magalhaes UNQUALIFIED
Salvatore F StensethArgentinaBernardo Dominic NEGOTIATION
Ivar F SaylorsAustraliaIvan Magalhaes UNQUALIFIED
Emily I BriddickArgentinaXuxue Feng QUALIFIED
Izzy I RoysterItalyOnyama Limba NEGOTIATION
Julie T SchemmerUnited KingdomStephen Shaw RENEWAL
Aika A KuskoUnited KingdomIoni Bowcher NEGOTIATION
Claire Z WieserUnited KingdomStephen Shaw NEGOTIATION
Clifford U RoysterAustraliaIvan Magalhaes PROPOSAL
Francesco E CampainFranceIoni Bowcher PROPOSAL
Claire A MarrierCanadaAmy Elsner PROPOSAL
Nicolas G StockhamItalyIvan Magalhaes NEW
Wickens K CaudySpainElwin Sharvill NEW
Morrow S SaylorsFranceElwin Sharvill PROPOSAL
Isabel U MorascaAustraliaIoni Bowcher QUALIFIED
Jeanfrancois J TollnerGermanyBernardo Dominic RENEWAL
Rodrigues R PoquetteGermanyIoni Bowcher QUALIFIED
Alejandro T BowleyAustraliaBernardo Dominic NEW
Darci Q FollerJapanBernardo Dominic NEW
Kaitlin R MaletJapanAsiya Javayant PROPOSAL
Smith N AlbaresSpainXuxue Feng QUALIFIED
Murillo Q DilliardItalyXuxue Feng QUALIFIED
Ricardo C MacleadSpainElwin Sharvill UNQUALIFIED
Isabel A PerinIndiaOnyama Limba RENEWAL
Kadeem R RulapaughRussiaElwin Sharvill PROPOSAL
Adams N PoquetteFranceIoni Bowcher NEW
Antonio Q GarufiFranceAmy Elsner RENEWAL
Jennifer D ShinkoRussiaAmy Elsner QUALIFIED
Isabel K DarakjyItalyElwin Sharvill RENEWAL
Alejandro S WaycottFranceAnna Fali QUALIFIED
Alejandro Z RulapaughGermanyXuxue Feng PROPOSAL

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