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
Silvio D VenereGermanyStephen Shaw RENEWAL
Ashley L MacleadSpainAmy Elsner NEW
Arvin J BriddickAustraliaIoni Bowcher QUALIFIED
Greenwood K OldroydIndiaElwin Sharvill UNQUALIFIED
Murillo U FigeroaIndiaBernardo Dominic RENEWAL
Mayumi R PerinCanadaIvan Magalhaes UNQUALIFIED
Isabel H BowleyUnited KingdomAnna Fali UNQUALIFIED
Tony B TollnerUnited KingdomAnna Fali NEW
Leon R SlusarskiCanadaStephen Shaw RENEWAL
Ashley S WaycottRussiaIvan Magalhaes NEGOTIATION
Jennifer F RoysterCanadaAmy Elsner UNQUALIFIED
Octavia R SaylorsAustraliaAmy Elsner UNQUALIFIED
Costa J InouyeItalyAnna Fali NEGOTIATION
Nicolas Q SchemmerRussiaAnna Fali UNQUALIFIED
Alejandro N TollnerItalyOnyama Limba QUALIFIED
Nicolas H IturbideBrazilAmy Elsner QUALIFIED
Juan K NickaUnited KingdomXuxue Feng NEW
Cody Q NestleRussiaAmy Elsner PROPOSAL
Maisha J CaldareraFranceIoni Bowcher NEGOTIATION
Leja F WieserItalyBernardo Dominic RENEWAL
Francesco W RulapaughUnited KingdomAnna Fali NEW
Octavia P ButtItalyAsiya Javayant QUALIFIED
Aruna E GlickRussiaBernardo Dominic QUALIFIED
Wickens I DarakjyJapanXuxue Feng PROPOSAL
Ricardo H GauchoRussiaStephen Shaw PROPOSAL
Leja K VocelkaItalyBernardo Dominic UNQUALIFIED
Adams W InouyeFranceStephen Shaw NEW
Johnson C BowleyAustraliaIvan Magalhaes NEW
Wickens N StockhamAustraliaBernardo Dominic UNQUALIFIED
Isabel P NickaRussiaElwin Sharvill NEGOTIATION
Leon A StockhamJapanElwin Sharvill QUALIFIED
James E SchemmerFranceBernardo Dominic RENEWAL
Emily X VocelkaJapanAsiya Javayant QUALIFIED
Octavia C ChuiSpainXuxue Feng PROPOSAL
Ivar S MaletJapanStephen Shaw RENEWAL
Ricardo T PoquetteJapanOnyama Limba QUALIFIED
Salvatore Z MacleadIndiaIvan Magalhaes NEGOTIATION
Murillo F DilliardItalyStephen Shaw RENEWAL
Deepesh P RutaGermanyXuxue Feng QUALIFIED
Stacey E InouyeArgentinaIvan Magalhaes PROPOSAL
Murillo F PoquetteCanadaBernardo Dominic NEGOTIATION
Stacey B GauchoIndiaXuxue Feng PROPOSAL
Arvin L DarakjyFranceBernardo Dominic UNQUALIFIED
Sinclair R MacleadArgentinaIvan Magalhaes NEGOTIATION
Mujtaba R StockhamArgentinaOnyama Limba QUALIFIED
Leon K VenereJapanAnna Fali RENEWAL
Mayumi W RulapaughRussiaOnyama Limba NEGOTIATION
Smith N MorascaBrazilAsiya Javayant PROPOSAL
Ivar V BriddickUnited KingdomXuxue Feng NEW
Johnson Z RutaAustraliaAmy Elsner QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Munro K PaprockiItalyXuxue Feng PROPOSAL
Ivar B RutaUnited KingdomAnna Fali NEGOTIATION
Adams P PerinAustraliaIoni Bowcher NEGOTIATION
Juan Q FerenczSpainXuxue Feng NEGOTIATION
Leon X FollerAustraliaAsiya Javayant PROPOSAL
Jennifer Z OstroskyGermanyIoni Bowcher RENEWAL
Stacey D SergiFranceAsiya Javayant PROPOSAL
Julie N StensethUnited KingdomBernardo Dominic NEW
Chavez K OstroskyIndiaIoni Bowcher UNQUALIFIED
Leja P RimUnited KingdomBernardo Dominic UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Rodrigues W RulapaughFrance2024-08-23Morlong Associates PROPOSAL51Elwin Sharvill
1001Isabel R FerenczArgentina2024-09-17Morlong Associates NEGOTIATION20Amy Elsner
1002Kaitlin K KuskoBrazil2024-09-17Rangoni Of Florence PROPOSAL96Anna Fali
1003Nicolas W MorascaCanada2024-09-14Morlong Associates QUALIFIED64Elwin Sharvill
1004Morrow P DarakjyBrazil2024-08-23Chapman, Ross E Esq NEGOTIATION4Onyama Limba
1005Morrow K FerenczIndia2024-08-30Chapman, Ross E Esq NEW80Bernardo Dominic
1006Ivar W SlusarskiIndia2024-08-23Truhlar And Truhlar Attys NEW83Elwin Sharvill
1007Tony G MaletSpain2024-08-19Rousseaux, Michael Esq NEGOTIATION14Elwin Sharvill
1008Kadeem W MaletAustralia2024-08-21Chapman, Ross E Esq NEGOTIATION11Amy Elsner
1009Aditya W WieserBrazil2024-08-28Feltz Printing Service RENEWAL61Xuxue Feng
1010Jeanfrancois V CaudySpain2024-09-02Printing Dimensions UNQUALIFIED59Amy Elsner
1011Misaki Y ButtFrance2024-09-12Benton, John B Jr NEW68Xuxue Feng
1012Leon D PerinSpain2024-08-26Feiner Bros UNQUALIFIED41Xuxue Feng
1013Arvin U ButtAustralia2024-08-20Rousseaux, Michael Esq NEW26Ivan Magalhaes
1014Jennifer E FollerArgentina2024-08-23Feiner Bros RENEWAL84Ivan Magalhaes
1015Clifford L GillianCanada2024-09-04Rousseaux, Michael Esq PROPOSAL1Onyama Limba
1016Murillo R MorascaAustralia2024-09-05Feltz Printing Service QUALIFIED26Amy Elsner
1017Arvin H PerinArgentina2024-09-05Chapman, Ross E Esq RENEWAL88Ioni Bowcher
1018Julie N WaycottUnited Kingdom2024-08-24King, Christopher A Esq QUALIFIED45Asiya Javayant
1019Kadeem F VenereBrazil2024-09-16Truhlar And Truhlar Attys PROPOSAL17Elwin Sharvill
1020Izzy S VocelkaJapan2024-09-06Benton, John B Jr NEW64Asiya Javayant
1021Leja G GauchoBrazil2024-08-22King, Christopher A Esq RENEWAL80Ivan Magalhaes
1022Jeanfrancois Y CampainGermany2024-08-22Chapman, Ross E Esq PROPOSAL80Anna Fali
1023Johnson U AmigonArgentina2024-08-27Buckley Miller Wright PROPOSAL46Onyama Limba
1024Smith H IturbideFrance2024-08-23Rangoni Of Florence NEW98Ivan Magalhaes
1025Alejandro P DoeSpain2024-08-23Rangoni Of Florence QUALIFIED52Xuxue Feng
1026Silvio Z BowleySpain2024-08-24Benton, John B Jr NEGOTIATION16Amy Elsner
1027Alejandro M AmigonFrance2024-08-28Rousseaux, Michael Esq UNQUALIFIED25Anna Fali
1028Ricardo J PoquetteItaly2024-08-27Rousseaux, Michael Esq QUALIFIED24Bernardo Dominic
1029Greenwood L StockhamCanada2024-09-12King, Christopher A Esq RENEWAL39Amy Elsner
1030Murillo B InouyeBrazil2024-09-11Benton, John B Jr NEW77Elwin Sharvill
1031Aditya W SaylorsArgentina2024-09-13Chanay, Jeffrey A Esq NEGOTIATION20Ivan Magalhaes
1032Sinclair O MarrierUnited Kingdom2024-08-24Commercial Press QUALIFIED34Elwin Sharvill
1033Isabel A MacleadItaly2024-09-15Buckley Miller Wright RENEWAL28Stephen Shaw
1034Kadeem T OldroydSpain2024-08-21Rousseaux, Michael Esq QUALIFIED5Asiya Javayant
1035Ivar D NestleCanada2024-08-22Chanay, Jeffrey A Esq PROPOSAL74Anna Fali
1036Stacey T FlosiSpain2024-08-22Morlong Associates NEGOTIATION1Anna Fali
1037Leja L IturbideUnited Kingdom2024-08-28Morlong Associates NEGOTIATION39Ivan Magalhaes
1038Ashley F FerenczItaly2024-08-20Commercial Press QUALIFIED94Ioni Bowcher
1039Izzy K WaycottRussia2024-09-09Buckley Miller Wright QUALIFIED69Asiya Javayant
1040Munro P WieserItaly2024-09-13Commercial Press QUALIFIED47Stephen Shaw
1041Misaki J GlickRussia2024-09-02Buckley Miller Wright PROPOSAL65Ioni Bowcher
1042Jeanfrancois M OstroskyCanada2024-09-08Commercial Press NEW84Amy Elsner
1043Jeanfrancois W SchemmerRussia2024-09-14Feltz Printing Service NEW38Asiya Javayant
1044Mujtaba M DilliardSpain2024-08-21Rangoni Of Florence NEW62Stephen Shaw
1045David Q InouyeItaly2024-09-03Feiner Bros PROPOSAL85Stephen Shaw
1046Darci N NestleArgentina2024-09-06Feiner Bros UNQUALIFIED7Bernardo Dominic
1047Greenwood R RimSpain2024-09-15Dorl, James J Esq PROPOSAL15Amy Elsner
1048Greenwood Z NickaUnited Kingdom2024-08-31Chapman, Ross E Esq NEGOTIATION33Ivan Magalhaes
1049Johnson Y RulapaughUnited Kingdom2024-09-13Chapman, Ross E Esq UNQUALIFIED93Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Jefferson R AlbaresItalyElwin Sharvill RENEWAL
Francesco F RulapaughCanadaAmy Elsner RENEWAL
Munro F GillianJapanOnyama Limba NEW
Misaki K DilliardAustraliaStephen Shaw NEW
Aruna A NestleGermanyIoni Bowcher PROPOSAL
Morrow D GlickFranceStephen Shaw NEW
Izzy N NestleJapanXuxue Feng NEW
Maria B FollerItalyAsiya Javayant UNQUALIFIED
Antonio K ShinkoAustraliaAsiya Javayant PROPOSAL
Jefferson D BologniaUnited KingdomIvan Magalhaes NEW
Greenwood Z PoquetteBrazilIoni Bowcher UNQUALIFIED
Claire M SergiUnited KingdomElwin Sharvill NEGOTIATION
Jefferson S PaprockiRussiaAsiya Javayant NEW
Adams N VenereBrazilBernardo Dominic PROPOSAL
Murillo U RimRussiaIoni Bowcher QUALIFIED
Emily S RimGermanyIoni Bowcher NEW
Octavia M RoysterArgentinaXuxue Feng NEGOTIATION
Izzy I DarakjyUnited KingdomAmy Elsner UNQUALIFIED
David K ButtItalyAsiya Javayant PROPOSAL
Deepesh N ChuiFranceIvan Magalhaes UNQUALIFIED
Faith D KolmetzJapanAsiya Javayant RENEWAL
Wickens R FollerSpainAmy Elsner NEW
Antonio A CaldareraGermanyBernardo Dominic UNQUALIFIED
Ivar E BriddickAustraliaIvan Magalhaes QUALIFIED
Jeanfrancois Q WhobreyUnited KingdomAnna Fali NEGOTIATION
Deepesh W InouyeFranceOnyama Limba PROPOSAL
Kadeem Y TollnerGermanyAnna Fali NEGOTIATION
Ashley K OstroskyCanadaIvan Magalhaes QUALIFIED
Tony V NestleFranceXuxue Feng QUALIFIED
Maria U DarakjyGermanyIoni Bowcher NEW
Maria V OstroskyIndiaElwin Sharvill UNQUALIFIED
Faith K FlosiAustraliaAmy Elsner UNQUALIFIED
Murillo J WhobreyRussiaAnna Fali NEGOTIATION
Greenwood J SergiGermanyXuxue Feng NEW
Aika T PerinAustraliaIvan Magalhaes QUALIFIED
David L OldroydRussiaIoni Bowcher QUALIFIED
Wickens B SlusarskiCanadaAsiya Javayant NEW
Izzy B SaylorsFranceAmy Elsner NEW
Morrow A FerenczSpainAnna Fali PROPOSAL
Rodrigues Y KuskoIndiaBernardo Dominic PROPOSAL
Sinclair P SlusarskiBrazilAmy Elsner QUALIFIED
Clifford G ChuiItalyAnna Fali NEGOTIATION
Jeanfrancois L RimItalyIvan Magalhaes QUALIFIED
Sinclair Q CampainBrazilXuxue Feng QUALIFIED
Maisha K ChuiIndiaElwin Sharvill NEGOTIATION
Kaitlin M RutaJapanAmy Elsner NEW
Julie Z StockhamJapanStephen Shaw NEW
Greenwood K SchemmerBrazilBernardo Dominic QUALIFIED
Claire Y MarrierIndiaAsiya Javayant UNQUALIFIED
Misaki T GlickArgentinaAnna Fali NEGOTIATION
Frozen Columns
Name
Ashley K Kusko
Mayumi H Malet
Sinclair G Rulapaugh
Murillo T Kolmetz
Munro E Nestle
Mujtaba W Saylors
Aruna B Ferencz
Darci O Amigon
Juan A Ruta
Darci L Venere
Deepesh S Amigon
Mujtaba F Foller
Ashley H Tollner
Chavez C Waycott
Francesco V Caldarera
Jefferson L Poquette
Morrow V Stenseth
Jones S Amigon
Arvin E Inouye
Stacey N Vocelka
Alejandro T Foller
Leja H Ostrosky
Costa C Vocelka
Salvatore G Morasca
Jeanfrancois J Paprocki
Adams K Inouye
Munro K Gillian
Aika V Inouye
Ricardo I Shinko
Costa O Sergi
Aditya V Waycott
Tony X Caudy
Greenwood L Kolmetz
Deepesh G Glick
Julie S Vocelka
Francesco E Caldarera
Misaki V Stenseth
Maisha W Dilliard
Antonio Z Flosi
Maisha Y Caldarera
Nicolas U Figeroa
Silvio K Waycott
Deepesh V Morasca
Sinclair A Inouye
Mujtaba T Briddick
Alejandro C Oldroyd
Kaitlin N Gaucho
Salvatore E Rim
Isabel E Doe
James B Paprocki
IdCountryDate
1000India2024-08-19
1001Germany2024-09-06
1002Argentina2024-08-30
1003Germany2024-09-07
1004Canada2024-08-26
1005Russia2024-09-01
1006France2024-09-03
1007Germany2024-09-10
1008France2024-08-24
1009Japan2024-09-08
1010India2024-09-10
1011Germany2024-09-03
1012Argentina2024-09-07
1013Canada2024-09-15
1014Italy2024-08-21
1015Italy2024-08-29
1016France2024-09-10
1017Italy2024-08-25
1018Russia2024-08-24
1019France2024-09-17
1020Russia2024-08-23
1021United Kingdom2024-08-27
1022Italy2024-08-28
1023Brazil2024-09-02
1024Germany2024-09-17
1025Argentina2024-08-25
1026France2024-08-20
1027Italy2024-09-01
1028Argentina2024-08-22
1029Argentina2024-08-19
1030Japan2024-09-03
1031Japan2024-09-15
1032Canada2024-08-27
1033Italy2024-08-23
1034Russia2024-08-21
1035Australia2024-09-17
1036Argentina2024-08-26
1037Brazil2024-08-22
1038Italy2024-08-19
1039Brazil2024-08-30
1040Germany2024-08-26
1041Australia2024-08-25
1042United Kingdom2024-09-03
1043Argentina2024-09-02
1044Brazil2024-08-21
1045United Kingdom2024-09-10
1046Japan2024-09-16
1047Germany2024-08-23
1048Australia2024-08-21
1049Germany2024-08-30

On-Demand Data

NameIdCountryDate
Greenwood G Malet1000Italy2024-08-20
Claire V Butt1001Italy2024-08-24
Jeanfrancois A Kolmetz1002India2024-08-22
Salvatore B Dilliard1003France2024-08-24
Faith Y Albares1004Germany2024-08-25
Francesco M Kolmetz1005Canada2024-08-27
Maisha D Vocelka1006Canada2024-09-09
David I Nestle1007Germany2024-08-27
James E Garufi1008Argentina2024-09-13
Aika B Figeroa1009Brazil2024-08-25
Johnson G Morasca1010Canada2024-08-29
Leja V Bolognia1011Spain2024-08-24
Mujtaba T Figeroa1012Brazil2024-09-05
Leja S Ostrosky1013Italy2024-09-03
Wickens T Royster1014United Kingdom2024-08-25
Izzy T Paprocki1015Brazil2024-09-16
Antonio U Chui1016Italy2024-09-16
Cody N Stenseth1017Germany2024-08-29
Nicolas V Oldroyd1018France2024-09-10
Aditya W Rim1019Japan2024-08-22
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Antonio X ShinkoUnited KingdomElwin Sharvill NEGOTIATION
Alejandro I KolmetzRussiaBernardo Dominic RENEWAL
Stacey J CampainGermanyAnna Fali RENEWAL
Ivar M WieserRussiaAsiya Javayant NEGOTIATION
Clifford N KolmetzSpainIvan Magalhaes NEW
Leja H PoquetteArgentinaIoni Bowcher QUALIFIED
Faith W NickaGermanyAmy Elsner RENEWAL
Costa M AmigonSpainElwin Sharvill NEW
Mayumi Q WaycottRussiaAsiya Javayant UNQUALIFIED
Claire I SergiGermanyAmy Elsner RENEWAL
Kadeem D RutaItalyIoni Bowcher NEW
Deepesh C TollnerCanadaAnna Fali NEGOTIATION
Costa T BriddickCanadaXuxue Feng RENEWAL
Francesco K MaletGermanyAmy Elsner RENEWAL
Mujtaba E AlbaresRussiaAsiya Javayant QUALIFIED
Smith B FollerJapanAnna Fali UNQUALIFIED
Jefferson F PaprockiRussiaAnna Fali QUALIFIED
James I AlbaresArgentinaAmy Elsner QUALIFIED
Johnson D WaycottJapanIvan Magalhaes UNQUALIFIED
Aika W MaletGermanyXuxue Feng NEW
Izzy X NickaJapanBernardo Dominic RENEWAL
Mayumi I MaletIndiaBernardo Dominic PROPOSAL
Antonio T TollnerItalyIoni Bowcher PROPOSAL
Wickens Y MacleadRussiaElwin Sharvill NEW
Ivar C KolmetzItalyBernardo Dominic QUALIFIED
Deepesh B FollerSpainBernardo Dominic PROPOSAL
Francesco F BologniaCanadaBernardo Dominic PROPOSAL
Emily X AlbaresIndiaOnyama Limba PROPOSAL
Octavia U StensethAustraliaBernardo Dominic NEW
Leon X NickaUnited KingdomXuxue Feng RENEWAL
Clifford A TollnerFranceXuxue Feng UNQUALIFIED
Mayumi L RoysterAustraliaIoni Bowcher UNQUALIFIED
Cody Z DarakjySpainAnna Fali QUALIFIED
David F DilliardUnited KingdomXuxue Feng QUALIFIED
Ashley D NickaCanadaAmy Elsner NEW
Munro V GarufiItalyXuxue Feng UNQUALIFIED
Stacey H ChuiFranceIoni Bowcher UNQUALIFIED
David G WaycottJapanXuxue Feng PROPOSAL
Rodrigues H ShinkoCanadaAsiya Javayant QUALIFIED
Juan Q NestleSpainIoni 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>