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 E StensethGermanyOnyama Limba RENEWAL
Adams K MaletJapanStephen Shaw RENEWAL
Mujtaba Z OstroskyArgentinaIoni Bowcher NEW
Tony Q MarrierJapanAnna Fali NEW
Costa I GillianBrazilElwin Sharvill QUALIFIED
Deepesh I StockhamSpainAsiya Javayant QUALIFIED
Ashley U WhobreyRussiaIvan Magalhaes NEW
Leja S FlosiJapanXuxue Feng QUALIFIED
James Y SchemmerItalyStephen Shaw NEGOTIATION
Aruna N SaylorsJapanXuxue Feng NEW
Juan J GlickJapanIvan Magalhaes PROPOSAL
Jones D ChuiArgentinaIoni Bowcher RENEWAL
Jones Y FollerGermanyAnna Fali UNQUALIFIED
Isabel G RoysterCanadaStephen Shaw NEGOTIATION
Antonio C InouyeGermanyIoni Bowcher UNQUALIFIED
Maria K FerenczUnited KingdomElwin Sharvill RENEWAL
Mujtaba C GarufiAustraliaXuxue Feng PROPOSAL
Isabel Z RoysterSpainIvan Magalhaes UNQUALIFIED
Kadeem C StockhamSpainElwin Sharvill RENEWAL
Deepesh F SchemmerGermanyAsiya Javayant NEW
Rodrigues M DarakjyFranceIoni Bowcher QUALIFIED
Salvatore B FlosiRussiaElwin Sharvill QUALIFIED
Jefferson D ChuiFranceElwin Sharvill UNQUALIFIED
Julie U RulapaughSpainBernardo Dominic QUALIFIED
Ashley M CaudySpainIoni Bowcher NEGOTIATION
Johnson C DilliardCanadaAnna Fali UNQUALIFIED
Faith H AlbaresSpainXuxue Feng NEW
Murillo D ChuiIndiaXuxue Feng UNQUALIFIED
Adams Z OstroskySpainIvan Magalhaes NEW
Aditya X VenereUnited KingdomAmy Elsner UNQUALIFIED
Munro P ButtArgentinaIvan Magalhaes QUALIFIED
Antonio T KuskoRussiaBernardo Dominic NEW
Misaki H MacleadRussiaAnna Fali RENEWAL
Salvatore R ButtItalyIoni Bowcher NEGOTIATION
Maisha K InouyeArgentinaElwin Sharvill NEW
Juan Z DoeJapanElwin Sharvill UNQUALIFIED
Kaitlin J SaylorsUnited KingdomOnyama Limba QUALIFIED
Maria C RutaFranceAnna Fali UNQUALIFIED
Isabel L InouyeBrazilIoni Bowcher PROPOSAL
James W NestleSpainAnna Fali NEW
Jeanfrancois Q SchemmerBrazilIvan Magalhaes PROPOSAL
Murillo U PerinItalyAsiya Javayant PROPOSAL
Greenwood D NestleJapanXuxue Feng QUALIFIED
Darci P PerinSpainBernardo Dominic RENEWAL
Cody Y GauchoBrazilAmy Elsner PROPOSAL
Aika L FerenczGermanyBernardo Dominic NEGOTIATION
Jefferson R RulapaughRussiaOnyama Limba RENEWAL
Kaitlin P BriddickUnited KingdomStephen Shaw NEW
Isabel I PaprockiAustraliaIoni Bowcher QUALIFIED
Murillo Y MarrierAustraliaStephen Shaw NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Julie T FollerRussiaAsiya Javayant UNQUALIFIED
Jeanfrancois Y VocelkaArgentinaXuxue Feng NEGOTIATION
Aditya E FlosiRussiaAnna Fali RENEWAL
Salvatore T SergiFranceIvan Magalhaes UNQUALIFIED
Jones W MaletJapanXuxue Feng RENEWAL
Costa D StockhamSpainOnyama Limba UNQUALIFIED
Adams J SaylorsGermanyAsiya Javayant PROPOSAL
Arvin J OldroydIndiaBernardo Dominic RENEWAL
Jones I InouyeUnited KingdomIoni Bowcher RENEWAL
Johnson O MaletIndiaOnyama Limba PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Rodrigues R MorascaBrazil2024-05-20King, Christopher A Esq NEGOTIATION62Asiya Javayant
1001Wickens Z GarufiBrazil2024-05-17Feltz Printing Service NEGOTIATION35Asiya Javayant
1002Aruna V SergiBrazil2024-05-02Rangoni Of Florence NEGOTIATION14Asiya Javayant
1003Adams H SchemmerCanada2024-05-09Rousseaux, Michael Esq PROPOSAL90Ivan Magalhaes
1004James H TollnerGermany2024-05-04Printing Dimensions NEW68Bernardo Dominic
1005Maria N DilliardSpain2024-05-04Printing Dimensions PROPOSAL76Onyama Limba
1006Julie Q GlickSpain2024-04-28Morlong Associates UNQUALIFIED82Ioni Bowcher
1007Kadeem G BowleyRussia2024-05-16Chanay, Jeffrey A Esq UNQUALIFIED90Elwin Sharvill
1008Deepesh W FigeroaAustralia2024-05-18Printing Dimensions QUALIFIED67Amy Elsner
1009Octavia V InouyeIndia2024-05-05Buckley Miller Wright NEW23Elwin Sharvill
1010Leon Y BowleyGermany2024-05-04Truhlar And Truhlar Attys UNQUALIFIED87Xuxue Feng
1011Juan N AlbaresRussia2024-05-18Rangoni Of Florence RENEWAL22Bernardo Dominic
1012Stacey A BologniaBrazil2024-05-11Feiner Bros RENEWAL34Amy Elsner
1013Chavez A OstroskyCanada2024-05-04Chapman, Ross E Esq RENEWAL57Stephen Shaw
1014Isabel L FerenczItaly2024-05-06Rangoni Of Florence RENEWAL1Onyama Limba
1015Kaitlin S VocelkaSpain2024-05-12Benton, John B Jr UNQUALIFIED23Ivan Magalhaes
1016Jennifer J RutaFrance2024-05-26Rousseaux, Michael Esq UNQUALIFIED76Stephen Shaw
1017Maisha J RimBrazil2024-05-10Truhlar And Truhlar Attys QUALIFIED42Bernardo Dominic
1018David U KolmetzIndia2024-05-22Truhlar And Truhlar Attys UNQUALIFIED4Ivan Magalhaes
1019Jennifer P StensethItaly2024-05-03Feiner Bros NEGOTIATION0Ivan Magalhaes
1020Darci Z PaprockiRussia2024-05-22Rangoni Of Florence UNQUALIFIED53Elwin Sharvill
1021Maria Y TollnerIndia2024-04-28Feltz Printing Service UNQUALIFIED37Ivan Magalhaes
1022Silvio B StockhamRussia2024-05-09Morlong Associates RENEWAL34Ivan Magalhaes
1023David V KuskoGermany2024-05-18Printing Dimensions PROPOSAL61Xuxue Feng
1024Darci J CampainItaly2024-05-18Rangoni Of Florence PROPOSAL3Stephen Shaw
1025Jefferson F StockhamSpain2024-05-12Truhlar And Truhlar Attys NEGOTIATION77Bernardo Dominic
1026Misaki B DoeUnited Kingdom2024-05-24Chemel, James L Cpa NEW20Ioni Bowcher
1027Isabel D KuskoRussia2024-05-26Commercial Press NEW79Amy Elsner
1028Misaki Y MaletJapan2024-05-20Rangoni Of Florence RENEWAL66Ivan Magalhaes
1029Maisha X KolmetzCanada2024-05-17Commercial Press RENEWAL22Bernardo Dominic
1030Faith W AmigonAustralia2024-05-14Truhlar And Truhlar Attys RENEWAL96Asiya Javayant
1031Stacey F DarakjyArgentina2024-05-07Truhlar And Truhlar Attys NEW89Stephen Shaw
1032James D ChuiBrazil2024-05-21Feiner Bros RENEWAL85Anna Fali
1033Kadeem S VenereArgentina2024-05-23Truhlar And Truhlar Attys PROPOSAL16Xuxue Feng
1034Claire F ChuiGermany2024-05-14Rangoni Of Florence NEGOTIATION85Onyama Limba
1035Murillo A GlickAustralia2024-05-11Chemel, James L Cpa PROPOSAL8Asiya Javayant
1036Kadeem D DarakjyBrazil2024-05-07Truhlar And Truhlar Attys RENEWAL99Stephen Shaw
1037Leja B ChuiSpain2024-05-26Chapman, Ross E Esq NEGOTIATION9Onyama Limba
1038Faith B MaletCanada2024-05-18Chemel, James L Cpa NEW65Amy Elsner
1039Adams C WieserCanada2024-04-28Chemel, James L Cpa PROPOSAL99Ivan Magalhaes
1040Deepesh C GarufiArgentina2024-05-16Dorl, James J Esq PROPOSAL50Onyama Limba
1041Wickens G GauchoSpain2024-04-28Chanay, Jeffrey A Esq PROPOSAL47Stephen Shaw
1042James E OldroydSpain2024-05-11Buckley Miller Wright PROPOSAL2Ivan Magalhaes
1043Johnson M AlbaresItaly2024-05-18Rousseaux, Michael Esq PROPOSAL88Stephen Shaw
1044Claire S FerenczAustralia2024-04-29Printing Dimensions UNQUALIFIED83Bernardo Dominic
1045Costa Q FigeroaJapan2024-05-02Benton, John B Jr RENEWAL21Ioni Bowcher
1046Wickens Y VenereCanada2024-05-02Chanay, Jeffrey A Esq NEGOTIATION1Xuxue Feng
1047Smith B ButtRussia2024-05-25Benton, John B Jr PROPOSAL79Elwin Sharvill
1048Maisha B SchemmerIndia2024-05-09King, Christopher A Esq QUALIFIED84Stephen Shaw
1049Johnson Z TollnerIndia2024-05-18Printing Dimensions NEGOTIATION72Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Stacey J DarakjyFranceIoni Bowcher QUALIFIED
Aditya Y KolmetzIndiaAnna Fali UNQUALIFIED
Faith L StensethArgentinaAnna Fali RENEWAL
Ricardo X MaletFranceAnna Fali NEGOTIATION
Antonio U RoysterJapanXuxue Feng NEW
Claire I SchemmerAustraliaXuxue Feng NEW
Morrow L AlbaresBrazilAmy Elsner NEW
Claire B RimRussiaAsiya Javayant NEGOTIATION
Tony N PoquetteRussiaAmy Elsner NEGOTIATION
Julie J MacleadJapanAsiya Javayant NEW
Rodrigues D PoquetteItalyIvan Magalhaes NEGOTIATION
Faith T ChuiFranceAsiya Javayant NEGOTIATION
Aika Z FerenczAustraliaStephen Shaw RENEWAL
Emily J MorascaRussiaBernardo Dominic QUALIFIED
Maisha O ChuiIndiaXuxue Feng NEW
Cody J ShinkoUnited KingdomBernardo Dominic UNQUALIFIED
Aika U PerinRussiaBernardo Dominic QUALIFIED
Francesco I BriddickIndiaOnyama Limba RENEWAL
Sinclair G NickaBrazilIoni Bowcher NEW
Leon U PoquetteBrazilElwin Sharvill RENEWAL
Wickens T NestleSpainIoni Bowcher RENEWAL
Murillo K CaudyBrazilStephen Shaw RENEWAL
Adams K StockhamRussiaIvan Magalhaes QUALIFIED
Octavia A FerenczBrazilBernardo Dominic NEW
Ashley W AlbaresUnited KingdomBernardo Dominic PROPOSAL
Salvatore A MaletFranceOnyama Limba NEW
Jefferson I MorascaBrazilAmy Elsner RENEWAL
Salvatore D VenereFranceAsiya Javayant QUALIFIED
Isabel W VenereRussiaBernardo Dominic NEGOTIATION
Silvio I ButtJapanOnyama Limba UNQUALIFIED
Murillo F VenereItalyAnna Fali UNQUALIFIED
Salvatore I StensethItalyOnyama Limba UNQUALIFIED
Alejandro O AlbaresItalyOnyama Limba NEGOTIATION
Morrow V ButtIndiaOnyama Limba NEGOTIATION
Alejandro S WhobreyUnited KingdomXuxue Feng PROPOSAL
Aditya P CaudyAustraliaAsiya Javayant NEGOTIATION
James J PaprockiItalyAsiya Javayant PROPOSAL
Greenwood G GauchoRussiaAmy Elsner NEW
Chavez Z MarrierRussiaXuxue Feng NEGOTIATION
Clifford J RulapaughFranceXuxue Feng UNQUALIFIED
Sinclair M GillianItalyIvan Magalhaes NEW
Rodrigues R StockhamBrazilAsiya Javayant NEW
Costa Q VocelkaAustraliaBernardo Dominic NEGOTIATION
Sinclair R CampainJapanAsiya Javayant NEGOTIATION
Salvatore I SchemmerItalyXuxue Feng QUALIFIED
Costa F FigeroaItalyBernardo Dominic QUALIFIED
Ashley E ButtItalyIvan Magalhaes QUALIFIED
Alejandro U SlusarskiArgentinaBernardo Dominic PROPOSAL
Jefferson I NickaItalyAmy Elsner UNQUALIFIED
Aika S InouyeArgentinaAsiya Javayant QUALIFIED
Frozen Columns
Name
Munro J Venere
Nicolas M Shinko
Salvatore C Vocelka
Aruna Z Doe
Antonio N Flosi
Emily J Tollner
Ivar N Shinko
Rodrigues H Darakjy
Kadeem N Figeroa
Izzy C Campain
Deepesh H Marrier
Adams K Schemmer
David L Briddick
Cody F Malet
Antonio Q Wieser
Chavez F Morasca
Murillo Z Whobrey
Faith K Sergi
Mujtaba Z Dilliard
Chavez W Doe
Misaki Q Campain
Tony M Venere
Murillo P Maclead
Faith A Oldroyd
Munro Q Tollner
Smith R Doe
Aika L Vocelka
Adams P Slusarski
Jennifer W Butt
Jones N Paprocki
Darci A Foller
Nicolas J Ruta
Darci T Saylors
Kadeem I Kolmetz
Chavez X Rulapaugh
Alejandro F Ruta
Jefferson X Shinko
Adams O Tollner
Misaki G Saylors
James Z Shinko
Leja G Campain
Jones G Schemmer
Salvatore S Rim
Faith T Albares
Chavez H Ruta
Jennifer B Wieser
Jeanfrancois G Bowley
Deepesh N Chui
Mujtaba V Stenseth
Aika M Marrier
IdCountryDate
1000Canada2024-05-24
1001Russia2024-05-03
1002United Kingdom2024-05-11
1003Russia2024-05-21
1004Russia2024-05-13
1005Canada2024-05-02
1006France2024-05-02
1007Japan2024-05-05
1008Canada2024-05-02
1009Canada2024-05-15
1010Germany2024-05-18
1011Brazil2024-04-28
1012Italy2024-05-06
1013Spain2024-05-19
1014Spain2024-05-08
1015Australia2024-05-04
1016Brazil2024-05-06
1017Australia2024-05-18
1018Australia2024-05-11
1019Russia2024-05-02
1020Canada2024-05-02
1021Italy2024-05-14
1022Italy2024-05-13
1023Australia2024-05-10
1024Argentina2024-05-08
1025Japan2024-05-20
1026India2024-05-11
1027Argentina2024-05-08
1028Argentina2024-05-19
1029Germany2024-05-03
1030Argentina2024-05-02
1031India2024-05-24
1032France2024-05-01
1033Japan2024-05-15
1034Canada2024-05-22
1035Australia2024-05-26
1036Brazil2024-05-01
1037Germany2024-05-01
1038Russia2024-05-27
1039Argentina2024-05-03
1040Brazil2024-05-24
1041United Kingdom2024-05-25
1042Italy2024-05-15
1043Argentina2024-05-16
1044United Kingdom2024-05-08
1045Italy2024-05-19
1046Canada2024-05-21
1047United Kingdom2024-05-24
1048Germany2024-05-20
1049Russia2024-05-04

On-Demand Data

NameIdCountryDate
Leja Z Chui1000Brazil2024-05-24
Claire V Stockham1001United Kingdom2024-05-09
Maisha D Tollner1002Germany2024-05-07
Costa U Darakjy1003Brazil2024-05-06
Mujtaba J Caldarera1004Japan2024-05-09
Ricardo T Saylors1005Japan2024-04-29
Johnson O Royster1006Russia2024-05-16
Jeanfrancois S Foller1007Australia2024-05-14
Misaki N Paprocki1008United Kingdom2024-05-08
Silvio V Oldroyd1009Germany2024-05-27
Izzy D Malet1010Australia2024-05-15
Mayumi J Amigon1011Brazil2024-05-26
Jefferson D Whobrey1012Australia2024-05-12
Darci E Campain1013Brazil2024-05-06
Jennifer L Caudy1014Argentina2024-05-18
Adams Z Kolmetz1015Australia2024-05-26
Greenwood H Oldroyd1016Japan2024-05-08
Mayumi A Kusko1017Australia2024-05-26
Arvin S Schemmer1018Russia2024-05-02
Darci U Albares1019Russia2024-05-24
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Isabel H FigeroaArgentinaAmy Elsner UNQUALIFIED
Jeanfrancois O KolmetzAustraliaIoni Bowcher UNQUALIFIED
Kadeem O MorascaSpainBernardo Dominic NEGOTIATION
Clifford H RoysterJapanStephen Shaw RENEWAL
Faith M FerenczSpainOnyama Limba RENEWAL
Isabel V MaletBrazilIvan Magalhaes PROPOSAL
Julie X SchemmerItalyXuxue Feng UNQUALIFIED
Johnson J BriddickRussiaStephen Shaw NEW
James K NestleAustraliaAmy Elsner NEW
Greenwood Y GillianRussiaOnyama Limba RENEWAL
Ricardo O NestleCanadaAmy Elsner PROPOSAL
Faith Z VenereJapanAsiya Javayant UNQUALIFIED
Morrow U FlosiJapanBernardo Dominic NEW
Murillo Y VocelkaUnited KingdomElwin Sharvill UNQUALIFIED
Aditya C WaycottArgentinaBernardo Dominic PROPOSAL
Greenwood T ShinkoUnited KingdomXuxue Feng NEW
Nicolas A BowleyItalyAmy Elsner RENEWAL
Mujtaba P NickaArgentinaIvan Magalhaes QUALIFIED
Maisha V DarakjyBrazilElwin Sharvill UNQUALIFIED
Clifford W VocelkaCanadaOnyama Limba RENEWAL
Johnson V MaletItalyBernardo Dominic NEGOTIATION
David D ChuiItalyStephen Shaw UNQUALIFIED
Mayumi N WaycottArgentinaOnyama Limba QUALIFIED
Stacey V KolmetzSpainIvan Magalhaes NEW
Adams W IturbideItalyOnyama Limba QUALIFIED
Cody Q PaprockiFranceIoni Bowcher NEGOTIATION
Aika V PerinRussiaIoni Bowcher NEW
Juan J AlbaresSpainXuxue Feng UNQUALIFIED
Jennifer J RulapaughItalyXuxue Feng RENEWAL
Stacey G GauchoArgentinaAnna Fali PROPOSAL
Tony V FlosiIndiaAmy Elsner NEGOTIATION
Ashley S FollerAustraliaAsiya Javayant PROPOSAL
Claire Z SchemmerRussiaXuxue Feng NEW
Faith E WaycottArgentinaStephen Shaw NEW
Munro V DilliardCanadaAmy Elsner RENEWAL
Jefferson V CaldareraIndiaAnna Fali UNQUALIFIED
Cody M MaletGermanyElwin Sharvill NEGOTIATION
Smith F KuskoCanadaBernardo Dominic NEGOTIATION
Costa E AmigonItalyIvan Magalhaes PROPOSAL
Jennifer P MarrierCanadaBernardo Dominic NEGOTIATION

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