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
Deepesh W StensethArgentinaStephen Shaw NEW
Claire C CaldareraJapanAnna Fali QUALIFIED
Julie N OldroydGermanyStephen Shaw NEGOTIATION
Maria M FlosiUnited KingdomAsiya Javayant NEGOTIATION
Darci X WhobreyGermanyXuxue Feng NEW
Alejandro N OldroydFranceStephen Shaw RENEWAL
Izzy A SergiGermanyAnna Fali UNQUALIFIED
Cody G KolmetzJapanBernardo Dominic UNQUALIFIED
Ivar F MaletBrazilIoni Bowcher PROPOSAL
Clifford J CaldareraIndiaElwin Sharvill NEW
Ashley B RoysterBrazilIoni Bowcher PROPOSAL
Ashley W GlickSpainStephen Shaw QUALIFIED
Murillo G OstroskyJapanAnna Fali QUALIFIED
Ricardo G KolmetzArgentinaBernardo Dominic RENEWAL
Silvio F FollerArgentinaAsiya Javayant PROPOSAL
Salvatore Q FigeroaSpainElwin Sharvill UNQUALIFIED
Jennifer T SchemmerBrazilAmy Elsner PROPOSAL
Octavia P OstroskyFranceAnna Fali NEW
Leja N InouyeIndiaIoni Bowcher UNQUALIFIED
Jefferson W InouyeGermanyAnna Fali RENEWAL
Jeanfrancois R NestleRussiaIvan Magalhaes NEW
David O WaycottArgentinaElwin Sharvill PROPOSAL
Deepesh E GlickIndiaIoni Bowcher NEGOTIATION
Misaki P ButtRussiaIvan Magalhaes NEW
Deepesh B NestleRussiaBernardo Dominic PROPOSAL
Wickens C GauchoCanadaOnyama Limba NEGOTIATION
Antonio J InouyeItalyBernardo Dominic NEGOTIATION
David R GauchoBrazilElwin Sharvill NEGOTIATION
Emily P SlusarskiItalyOnyama Limba UNQUALIFIED
Maria I SaylorsJapanAnna Fali RENEWAL
Jeanfrancois I RutaItalyElwin Sharvill NEGOTIATION
Ivar X RutaCanadaXuxue Feng PROPOSAL
Deepesh X FlosiCanadaXuxue Feng UNQUALIFIED
Smith U BowleyAustraliaStephen Shaw QUALIFIED
Ivar R PerinBrazilAmy Elsner RENEWAL
Cody N SchemmerCanadaStephen Shaw QUALIFIED
Kadeem R KuskoRussiaIvan Magalhaes NEGOTIATION
Aika Y SergiUnited KingdomStephen Shaw PROPOSAL
Maisha H SergiGermanyIoni Bowcher UNQUALIFIED
Darci W GlickAustraliaAnna Fali PROPOSAL
Isabel C MacleadSpainAsiya Javayant RENEWAL
Aika X AlbaresAustraliaIoni Bowcher PROPOSAL
Kadeem Y StockhamArgentinaAsiya Javayant QUALIFIED
Cody E ChuiSpainBernardo Dominic RENEWAL
Aditya O RoysterJapanElwin Sharvill RENEWAL
Adams C WieserGermanyElwin Sharvill QUALIFIED
Salvatore U KolmetzSpainBernardo Dominic NEGOTIATION
Darci U MaletJapanOnyama Limba PROPOSAL
James U GillianBrazilStephen Shaw PROPOSAL
Munro C MarrierCanadaAmy Elsner QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Aruna O KuskoSpainAsiya Javayant NEGOTIATION
Claire M BologniaFranceAnna Fali QUALIFIED
Jennifer B ButtAustraliaAsiya Javayant NEGOTIATION
Adams W WhobreyArgentinaXuxue Feng QUALIFIED
Greenwood N MarrierItalyOnyama Limba QUALIFIED
Ivar P NickaItalyXuxue Feng NEW
Munro U FigeroaCanadaIvan Magalhaes PROPOSAL
Maisha P NickaGermanyBernardo Dominic UNQUALIFIED
Nicolas I NickaGermanyAsiya Javayant PROPOSAL
Deepesh J RulapaughFranceIoni Bowcher QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jeanfrancois L PaprockiUnited Kingdom2024-05-31Commercial Press PROPOSAL98Bernardo Dominic
1001Jefferson A VenereGermany2024-05-25Morlong Associates NEGOTIATION62Bernardo Dominic
1002Izzy K MaletIndia2024-05-25Commercial Press NEGOTIATION88Ivan Magalhaes
1003Cody N TollnerItaly2024-05-28Morlong Associates NEGOTIATION66Stephen Shaw
1004Maria R RulapaughGermany2024-06-09King, Christopher A Esq QUALIFIED17Stephen Shaw
1005Jennifer Z InouyeGermany2024-06-09Chemel, James L Cpa NEGOTIATION41Stephen Shaw
1006Maria R GarufiIndia2024-05-22Feltz Printing Service UNQUALIFIED16Stephen Shaw
1007Alejandro H NickaCanada2024-06-10Feiner Bros RENEWAL64Anna Fali
1008Chavez U SergiItaly2024-06-14Chanay, Jeffrey A Esq RENEWAL62Anna Fali
1009Izzy W FollerFrance2024-05-29Commercial Press NEW58Ivan Magalhaes
1010Francesco S InouyeFrance2024-06-14Commercial Press NEGOTIATION3Anna Fali
1011Emily V PaprockiRussia2024-06-14Dorl, James J Esq UNQUALIFIED78Ivan Magalhaes
1012Octavia D DilliardSpain2024-06-13Chemel, James L Cpa QUALIFIED14Asiya Javayant
1013Juan G MaletItaly2024-05-17Rangoni Of Florence QUALIFIED31Ivan Magalhaes
1014Salvatore L DarakjyBrazil2024-06-15Rangoni Of Florence NEGOTIATION24Ivan Magalhaes
1015Chavez K AmigonJapan2024-06-04Chapman, Ross E Esq RENEWAL18Amy Elsner
1016Claire I SaylorsBrazil2024-06-10Commercial Press UNQUALIFIED49Anna Fali
1017Rodrigues Z GauchoFrance2024-05-23Feiner Bros NEW24Elwin Sharvill
1018Cody G OldroydJapan2024-06-08Printing Dimensions NEGOTIATION81Anna Fali
1019Cody K CampainGermany2024-05-31Benton, John B Jr NEW94Stephen Shaw
1020Mujtaba O ButtArgentina2024-06-08Rangoni Of Florence NEW14Ioni Bowcher
1021Salvatore C FerenczSpain2024-06-06Feltz Printing Service UNQUALIFIED27Bernardo Dominic
1022Antonio T GarufiGermany2024-05-17Truhlar And Truhlar Attys RENEWAL56Asiya Javayant
1023Mayumi J CaldareraUnited Kingdom2024-05-19Chapman, Ross E Esq UNQUALIFIED26Asiya Javayant
1024Stacey L MarrierCanada2024-05-19Rousseaux, Michael Esq RENEWAL66Onyama Limba
1025Tony F FerenczAustralia2024-06-12Chemel, James L Cpa RENEWAL54Ioni Bowcher
1026Arvin W BriddickBrazil2024-06-04Commercial Press NEGOTIATION58Ioni Bowcher
1027Maria G BriddickIndia2024-05-19Commercial Press PROPOSAL81Onyama Limba
1028Arvin X RoysterArgentina2024-05-18Rousseaux, Michael Esq NEW51Asiya Javayant
1029Juan U ShinkoArgentina2024-05-18Buckley Miller Wright NEW15Ivan Magalhaes
1030Silvio P MaletGermany2024-06-10Truhlar And Truhlar Attys NEGOTIATION73Bernardo Dominic
1031Jefferson O SaylorsJapan2024-05-18Chapman, Ross E Esq UNQUALIFIED99Xuxue Feng
1032Smith X VocelkaAustralia2024-06-03Truhlar And Truhlar Attys RENEWAL89Xuxue Feng
1033Maria S DarakjyBrazil2024-05-22Printing Dimensions PROPOSAL18Anna Fali
1034Murillo B SergiArgentina2024-06-13Rousseaux, Michael Esq QUALIFIED14Amy Elsner
1035Misaki N FigeroaFrance2024-06-11Morlong Associates QUALIFIED40Stephen Shaw
1036Darci T OstroskyBrazil2024-05-31Buckley Miller Wright PROPOSAL27Elwin Sharvill
1037Aditya I SlusarskiAustralia2024-06-12Printing Dimensions NEW79Anna Fali
1038Stacey L AlbaresSpain2024-06-03Dorl, James J Esq QUALIFIED50Amy Elsner
1039Costa I MaletBrazil2024-05-30Dorl, James J Esq RENEWAL54Bernardo Dominic
1040Jeanfrancois D SergiAustralia2024-06-07Chanay, Jeffrey A Esq NEW40Ivan Magalhaes
1041Aruna T FlosiBrazil2024-06-09Benton, John B Jr NEW77Asiya Javayant
1042Costa U BowleyAustralia2024-05-20Morlong Associates RENEWAL7Ivan Magalhaes
1043Munro Z DarakjyIndia2024-05-24Rangoni Of Florence QUALIFIED30Ivan Magalhaes
1044Deepesh F RimFrance2024-05-29Chemel, James L Cpa QUALIFIED27Onyama Limba
1045Jennifer L CaudyUnited Kingdom2024-06-10Chanay, Jeffrey A Esq NEW69Ivan Magalhaes
1046Leon H DarakjyBrazil2024-06-03Truhlar And Truhlar Attys UNQUALIFIED16Xuxue Feng
1047Stacey L GillianItaly2024-05-28Chapman, Ross E Esq QUALIFIED50Amy Elsner
1048Sinclair K DarakjyGermany2024-06-10Chemel, James L Cpa PROPOSAL39Anna Fali
1049Faith F ChuiItaly2024-06-04Feltz Printing Service UNQUALIFIED65Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Nicolas Y PoquetteItalyAnna Fali NEW
Francesco A MaletRussiaXuxue Feng QUALIFIED
Jones Q MaletJapanBernardo Dominic NEGOTIATION
Clifford S PaprockiBrazilAmy Elsner RENEWAL
Silvio P RutaIndiaOnyama Limba NEGOTIATION
Deepesh A MacleadIndiaStephen Shaw RENEWAL
Faith V PerinCanadaElwin Sharvill PROPOSAL
Maria O MaletArgentinaIoni Bowcher QUALIFIED
Morrow N DilliardSpainStephen Shaw UNQUALIFIED
Ashley R FigeroaRussiaStephen Shaw NEW
Izzy V AlbaresBrazilXuxue Feng NEW
Sinclair I StockhamArgentinaIvan Magalhaes PROPOSAL
Cody T BologniaAustraliaAmy Elsner NEW
David U NickaSpainOnyama Limba RENEWAL
Rodrigues R NickaSpainBernardo Dominic RENEWAL
Wickens P GlickRussiaAmy Elsner PROPOSAL
Mujtaba S IturbideBrazilStephen Shaw NEGOTIATION
Jones L KolmetzRussiaStephen Shaw NEGOTIATION
Julie J FigeroaBrazilStephen Shaw NEGOTIATION
Adams U CaldareraBrazilOnyama Limba NEGOTIATION
Munro M StockhamAustraliaXuxue Feng PROPOSAL
Alejandro Y CaudySpainAmy Elsner PROPOSAL
Claire U VenereGermanyXuxue Feng NEGOTIATION
Tony T PaprockiArgentinaIvan Magalhaes NEW
Juan L ButtFranceOnyama Limba PROPOSAL
Claire T RulapaughRussiaIvan Magalhaes QUALIFIED
Johnson W RoysterRussiaOnyama Limba NEW
Silvio S ChuiAustraliaIoni Bowcher UNQUALIFIED
Darci V WaycottRussiaAmy Elsner RENEWAL
Wickens P GlickCanadaElwin Sharvill RENEWAL
Antonio G TollnerAustraliaAmy Elsner UNQUALIFIED
Cody J RutaIndiaElwin Sharvill RENEWAL
Cody L ButtSpainAsiya Javayant PROPOSAL
Stacey C TollnerGermanyXuxue Feng QUALIFIED
Cody B RulapaughAustraliaBernardo Dominic UNQUALIFIED
Kadeem D WaycottAustraliaStephen Shaw UNQUALIFIED
Ivar I PaprockiItalyStephen Shaw NEGOTIATION
Arvin M VenereCanadaBernardo Dominic NEW
Wickens O KolmetzBrazilAmy Elsner RENEWAL
Silvio R CaudyAustraliaIoni Bowcher UNQUALIFIED
Jefferson T RutaArgentinaAsiya Javayant PROPOSAL
Aika A GauchoArgentinaXuxue Feng NEGOTIATION
Juan Z GauchoCanadaIvan Magalhaes UNQUALIFIED
Jeanfrancois S StockhamGermanyAmy Elsner QUALIFIED
David N GauchoIndiaXuxue Feng NEGOTIATION
Darci B OldroydSpainStephen Shaw QUALIFIED
Jefferson S RulapaughFranceAnna Fali PROPOSAL
Sinclair Q ButtBrazilOnyama Limba RENEWAL
Jefferson X DarakjyItalyOnyama Limba NEW
Julie F PerinIndiaAmy Elsner RENEWAL
Frozen Columns
Name
Leon R Foller
Leon X Perin
Tony W Poquette
Kadeem B Darakjy
Clifford E Chui
Maisha S Chui
Tony W Briddick
Maisha R Schemmer
Misaki Z Campain
Murillo H Stockham
Costa G Sergi
Chavez K Briddick
Smith G Caldarera
Ivar E Campain
Johnson H Whobrey
Aruna Y Saylors
Deepesh T Marrier
Munro D Whobrey
Izzy X Paprocki
Aditya Q Flosi
James K Garufi
Jefferson T Poquette
Jefferson K Figeroa
Mujtaba J Garufi
James J Iturbide
Jennifer T Marrier
Jeanfrancois X Dilliard
Aika B Shinko
Ivar R Dilliard
Cody P Whobrey
Rodrigues D Vocelka
Sinclair W Rim
Maria O Ruta
Darci H Dilliard
Izzy N Amigon
Kadeem Y Foller
Claire K Bowley
Munro R Albares
Antonio U Inouye
Alejandro P Chui
Aika Y Kusko
Nicolas E Vocelka
Aruna S Foller
Octavia F Doe
Ivar Y Glick
Darci H Doe
Clifford C Nestle
Jennifer I Caudy
Kadeem Y Schemmer
Aruna X Rim
IdCountryDate
1000Germany2024-05-17
1001Brazil2024-06-10
1002Canada2024-06-13
1003Argentina2024-05-17
1004United Kingdom2024-05-25
1005Germany2024-06-09
1006Spain2024-05-21
1007Canada2024-06-02
1008Spain2024-06-05
1009France2024-06-08
1010Spain2024-06-08
1011France2024-05-30
1012United Kingdom2024-06-12
1013Japan2024-05-28
1014Germany2024-05-18
1015Argentina2024-05-20
1016Italy2024-06-07
1017Brazil2024-06-12
1018United Kingdom2024-05-20
1019Brazil2024-06-01
1020India2024-05-27
1021Germany2024-05-27
1022Argentina2024-05-27
1023Japan2024-05-25
1024Germany2024-06-14
1025Australia2024-06-08
1026India2024-06-09
1027France2024-05-19
1028United Kingdom2024-05-28
1029Canada2024-06-11
1030Brazil2024-06-10
1031Germany2024-06-08
1032Italy2024-05-17
1033Russia2024-06-09
1034Canada2024-06-14
1035Russia2024-06-08
1036Brazil2024-06-13
1037Brazil2024-05-30
1038Canada2024-06-07
1039Germany2024-06-15
1040Russia2024-06-12
1041France2024-06-07
1042Japan2024-05-18
1043Australia2024-06-12
1044Spain2024-06-06
1045Spain2024-05-29
1046India2024-06-06
1047Germany2024-05-31
1048India2024-05-27
1049Australia2024-05-30

On-Demand Data

NameIdCountryDate
Mayumi S Doe1000Spain2024-06-07
Jefferson N Foller1001Russia2024-06-15
Faith C Briddick1002Canada2024-06-07
Maria R Foller1003Japan2024-06-09
Maria V Figeroa1004Canada2024-05-23
Jeanfrancois K Briddick1005Canada2024-05-28
Misaki I Albares1006Australia2024-06-12
Mayumi Q Gillian1007India2024-05-29
Ricardo F Waycott1008Japan2024-06-12
Jefferson X Briddick1009India2024-06-08
Emily F Schemmer1010Canada2024-05-19
Claire R Garufi1011India2024-06-09
Maria M Dilliard1012Russia2024-06-11
Cody H Morasca1013Spain2024-05-25
Aditya C Flosi1014United Kingdom2024-06-05
Murillo L Glick1015Japan2024-05-30
Leja I Amigon1016Australia2024-06-08
Izzy N Amigon1017Australia2024-06-03
Greenwood Q Waycott1018United Kingdom2024-05-24
Leja D Flosi1019Italy2024-05-22
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aditya N MaletArgentinaElwin Sharvill QUALIFIED
Smith N CampainRussiaIoni Bowcher RENEWAL
Stacey S SergiSpainAnna Fali UNQUALIFIED
Mayumi Y OstroskyCanadaAsiya Javayant UNQUALIFIED
Aditya B InouyeAustraliaBernardo Dominic RENEWAL
Darci L RoysterIndiaIvan Magalhaes UNQUALIFIED
Alejandro R StensethArgentinaOnyama Limba NEW
Jones O CaudyItalyAsiya Javayant RENEWAL
James T BologniaBrazilIoni Bowcher RENEWAL
Greenwood Z PaprockiJapanAnna Fali QUALIFIED
Arvin P SaylorsAustraliaOnyama Limba RENEWAL
James Y MaletGermanyXuxue Feng NEGOTIATION
Jeanfrancois L OstroskyFranceBernardo Dominic PROPOSAL
Kadeem G PoquetteArgentinaAsiya Javayant PROPOSAL
Ivar Z MaletGermanyIvan Magalhaes QUALIFIED
Emily Z RulapaughRussiaAnna Fali NEGOTIATION
Julie X WhobreyAustraliaOnyama Limba QUALIFIED
David A PaprockiUnited KingdomIvan Magalhaes RENEWAL
Darci G NickaFranceIoni Bowcher PROPOSAL
Alejandro W CaudyAustraliaOnyama Limba PROPOSAL
Stacey J BologniaFranceIvan Magalhaes NEGOTIATION
Octavia T GauchoRussiaXuxue Feng QUALIFIED
Deepesh S NestleUnited KingdomAmy Elsner QUALIFIED
Misaki N CaudyArgentinaAsiya Javayant NEW
Rodrigues H ChuiAustraliaAsiya Javayant PROPOSAL
Silvio A FlosiJapanBernardo Dominic PROPOSAL
Juan T MacleadFranceAsiya Javayant RENEWAL
Johnson M PoquetteBrazilElwin Sharvill RENEWAL
Silvio S FlosiGermanyAsiya Javayant NEW
Morrow P ShinkoGermanyAsiya Javayant NEGOTIATION
Salvatore U RimAustraliaAnna Fali QUALIFIED
Chavez W GlickJapanXuxue Feng RENEWAL
Murillo T GillianAustraliaOnyama Limba RENEWAL
Darci S VocelkaItalyOnyama Limba UNQUALIFIED
Sinclair B MaletIndiaBernardo Dominic UNQUALIFIED
Aika W ShinkoJapanBernardo Dominic NEGOTIATION
Cody Q TollnerUnited KingdomStephen Shaw NEGOTIATION
Leja I FigeroaFranceStephen Shaw NEGOTIATION
Morrow S SchemmerRussiaIoni Bowcher QUALIFIED
Chavez X GauchoArgentinaIoni Bowcher 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>