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
Wickens S MorascaRussiaAsiya Javayant QUALIFIED
Jeanfrancois S SchemmerGermanyXuxue Feng NEGOTIATION
Antonio D GauchoUnited KingdomStephen Shaw PROPOSAL
Smith F WaycottCanadaAnna Fali PROPOSAL
Cody V FollerJapanIoni Bowcher NEW
Stacey N ShinkoUnited KingdomElwin Sharvill UNQUALIFIED
Leon F StockhamBrazilIvan Magalhaes NEGOTIATION
Juan Z DilliardSpainAmy Elsner RENEWAL
Chavez N OstroskyItalyIvan Magalhaes QUALIFIED
Silvio S MaletFranceIvan Magalhaes QUALIFIED
Arvin K KolmetzIndiaAnna Fali QUALIFIED
Nicolas K MarrierBrazilAsiya Javayant RENEWAL
Francesco W SaylorsItalyAnna Fali PROPOSAL
Kadeem B RulapaughGermanyBernardo Dominic NEGOTIATION
Izzy R ChuiJapanIvan Magalhaes RENEWAL
Leon T GlickFranceOnyama Limba NEW
Stacey H BriddickBrazilIvan Magalhaes RENEWAL
Izzy L GarufiUnited KingdomXuxue Feng RENEWAL
Sinclair C ShinkoRussiaOnyama Limba NEGOTIATION
Tony N CaudyUnited KingdomBernardo Dominic NEGOTIATION
Rodrigues P AlbaresFranceIvan Magalhaes NEW
Murillo M DilliardGermanyIoni Bowcher PROPOSAL
Juan M FlosiBrazilIoni Bowcher PROPOSAL
Kaitlin E TollnerArgentinaAnna Fali NEW
Stacey H StockhamGermanyIoni Bowcher NEGOTIATION
Arvin N PerinBrazilBernardo Dominic PROPOSAL
Juan K NickaItalyIoni Bowcher QUALIFIED
Aditya N CaldareraRussiaElwin Sharvill NEGOTIATION
Jefferson F FerenczSpainXuxue Feng PROPOSAL
Ricardo J AlbaresRussiaBernardo Dominic NEW
Cody D CaldareraGermanyIoni Bowcher UNQUALIFIED
Ivar Q PerinRussiaAmy Elsner PROPOSAL
Chavez M VocelkaBrazilElwin Sharvill QUALIFIED
Aika I CaldareraUnited KingdomIvan Magalhaes RENEWAL
Munro V NestleArgentinaAsiya Javayant PROPOSAL
Mayumi K BriddickAustraliaAmy Elsner NEGOTIATION
Jennifer Q SaylorsItalyIoni Bowcher PROPOSAL
Costa N RutaGermanyStephen Shaw QUALIFIED
Izzy K OstroskySpainIoni Bowcher QUALIFIED
Greenwood S MaletAustraliaXuxue Feng NEW
Mayumi T MarrierUnited KingdomStephen Shaw NEGOTIATION
Murillo V SergiUnited KingdomIvan Magalhaes NEW
Jefferson R CampainBrazilOnyama Limba UNQUALIFIED
Emily Z RulapaughArgentinaBernardo Dominic PROPOSAL
Munro A CampainCanadaAsiya Javayant PROPOSAL
Nicolas A FigeroaItalyAnna Fali RENEWAL
Alejandro J InouyeSpainIoni Bowcher PROPOSAL
Juan W PerinAustraliaStephen Shaw NEGOTIATION
Aruna Y GauchoIndiaXuxue Feng UNQUALIFIED
Faith L VenereJapanXuxue Feng QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Leon L SergiItalyAnna Fali PROPOSAL
Maisha F DoeBrazilAnna Fali NEGOTIATION
Ashley K KuskoIndiaAmy Elsner QUALIFIED
Aruna V NickaIndiaIoni Bowcher UNQUALIFIED
Octavia G MorascaGermanyAnna Fali NEGOTIATION
Emily N DarakjyAustraliaAnna Fali QUALIFIED
Antonio U WaycottBrazilAnna Fali NEGOTIATION
Alejandro Z BologniaFranceBernardo Dominic NEGOTIATION
Ricardo T MacleadFranceXuxue Feng UNQUALIFIED
Darci W AmigonBrazilBernardo Dominic UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Leja Y KuskoItaly2024-06-14Printing Dimensions UNQUALIFIED83Onyama Limba
1001Murillo Q IturbideFrance2024-06-22Commercial Press NEW6Onyama Limba
1002Silvio Q CampainFrance2024-06-08Buckley Miller Wright NEGOTIATION90Amy Elsner
1003Johnson B PerinIndia2024-06-17Commercial Press UNQUALIFIED53Bernardo Dominic
1004Silvio B MacleadGermany2024-05-26Chemel, James L Cpa RENEWAL90Anna Fali
1005Cody N ButtSpain2024-06-07Feltz Printing Service NEGOTIATION20Asiya Javayant
1006Chavez S OldroydCanada2024-06-01Chemel, James L Cpa UNQUALIFIED96Asiya Javayant
1007Morrow D BologniaCanada2024-06-07Feltz Printing Service QUALIFIED54Ioni Bowcher
1008Isabel R IturbideFrance2024-06-01King, Christopher A Esq PROPOSAL61Stephen Shaw
1009Jefferson V FlosiAustralia2024-05-29Truhlar And Truhlar Attys UNQUALIFIED90Stephen Shaw
1010Clifford N DarakjyJapan2024-05-26Feiner Bros NEW85Bernardo Dominic
1011Murillo Z SlusarskiItaly2024-06-09Morlong Associates NEW27Amy Elsner
1012Greenwood P MacleadItaly2024-06-11Dorl, James J Esq NEGOTIATION26Bernardo Dominic
1013Ashley L RulapaughIndia2024-06-20Chapman, Ross E Esq QUALIFIED17Elwin Sharvill
1014Leja T DarakjySpain2024-05-28Printing Dimensions NEGOTIATION73Onyama Limba
1015Clifford G GillianAustralia2024-06-06Buckley Miller Wright UNQUALIFIED83Amy Elsner
1016James C RulapaughIndia2024-05-28Feltz Printing Service NEGOTIATION90Asiya Javayant
1017Cody M MacleadUnited Kingdom2024-06-23Feltz Printing Service PROPOSAL17Ioni Bowcher
1018Faith B KolmetzJapan2024-05-30Rousseaux, Michael Esq UNQUALIFIED0Amy Elsner
1019Jeanfrancois I FerenczBrazil2024-06-16Feiner Bros RENEWAL59Ioni Bowcher
1020Aruna I BologniaItaly2024-06-09Feiner Bros NEGOTIATION93Bernardo Dominic
1021Tony E FigeroaRussia2024-05-26Feiner Bros RENEWAL61Ioni Bowcher
1022Maisha A BowleyAustralia2024-06-05Rangoni Of Florence NEGOTIATION83Anna Fali
1023Aika G WhobreyArgentina2024-06-09Feltz Printing Service NEW34Stephen Shaw
1024Ivar H RoysterJapan2024-06-13Chapman, Ross E Esq UNQUALIFIED95Anna Fali
1025Jennifer B RutaIndia2024-06-20King, Christopher A Esq RENEWAL46Ivan Magalhaes
1026Morrow O NestleRussia2024-06-19Morlong Associates PROPOSAL87Amy Elsner
1027Jeanfrancois F GauchoFrance2024-06-09Feiner Bros NEW18Onyama Limba
1028Aditya K MaletItaly2024-06-21Feltz Printing Service QUALIFIED11Xuxue Feng
1029Sinclair Z SaylorsFrance2024-06-08Morlong Associates UNQUALIFIED32Asiya Javayant
1030Cody K AlbaresItaly2024-06-06King, Christopher A Esq QUALIFIED62Onyama Limba
1031Sinclair V BriddickCanada2024-06-04Feiner Bros UNQUALIFIED51Amy Elsner
1032Jeanfrancois V StensethSpain2024-06-09Buckley Miller Wright PROPOSAL7Ivan Magalhaes
1033Sinclair D MarrierItaly2024-06-09Feltz Printing Service UNQUALIFIED84Bernardo Dominic
1034Alejandro D KolmetzBrazil2024-06-13Rangoni Of Florence UNQUALIFIED11Onyama Limba
1035Ivar O VenereItaly2024-06-02Chanay, Jeffrey A Esq QUALIFIED51Ivan Magalhaes
1036Stacey K OstroskyRussia2024-06-03Morlong Associates UNQUALIFIED17Bernardo Dominic
1037Claire L SergiRussia2024-06-05Buckley Miller Wright PROPOSAL18Xuxue Feng
1038Leja A SchemmerRussia2024-06-16Dorl, James J Esq QUALIFIED85Ivan Magalhaes
1039Jefferson E RutaUnited Kingdom2024-06-16Commercial Press NEW8Onyama Limba
1040Arvin N ButtArgentina2024-06-01Printing Dimensions RENEWAL8Elwin Sharvill
1041Faith U FlosiGermany2024-06-07Buckley Miller Wright PROPOSAL49Stephen Shaw
1042Wickens M StensethGermany2024-05-26Rousseaux, Michael Esq NEW75Ioni Bowcher
1043David Q GlickArgentina2024-06-08Rangoni Of Florence UNQUALIFIED77Ivan Magalhaes
1044Morrow O StockhamFrance2024-05-27Chanay, Jeffrey A Esq UNQUALIFIED38Ioni Bowcher
1045Misaki L DilliardIndia2024-06-12King, Christopher A Esq NEGOTIATION34Stephen Shaw
1046Johnson Z SergiSpain2024-06-03Chemel, James L Cpa QUALIFIED23Elwin Sharvill
1047Leja S DoeJapan2024-06-16Chemel, James L Cpa NEGOTIATION28Ivan Magalhaes
1048Sinclair R MaletCanada2024-06-21Printing Dimensions PROPOSAL0Bernardo Dominic
1049David V KolmetzUnited Kingdom2024-06-16Chemel, James L Cpa UNQUALIFIED2Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Johnson S CampainAustraliaAmy Elsner NEW
Nicolas I MorascaGermanyOnyama Limba RENEWAL
Salvatore N RimFranceAnna Fali QUALIFIED
Salvatore R AlbaresSpainIvan Magalhaes RENEWAL
Izzy V FerenczIndiaElwin Sharvill NEW
Juan Y PoquetteGermanyElwin Sharvill NEW
Juan F FerenczJapanAnna Fali PROPOSAL
Julie H SaylorsBrazilOnyama Limba UNQUALIFIED
Chavez F NickaSpainXuxue Feng PROPOSAL
Wickens S PaprockiIndiaIoni Bowcher QUALIFIED
Rodrigues C VenereIndiaElwin Sharvill QUALIFIED
Ivar V GlickIndiaIoni Bowcher NEW
Jennifer R NickaIndiaIoni Bowcher PROPOSAL
Clifford B GlickAustraliaAsiya Javayant PROPOSAL
Emily O GauchoAustraliaStephen Shaw QUALIFIED
Jones A ChuiAustraliaOnyama Limba NEGOTIATION
Jennifer T ChuiBrazilXuxue Feng PROPOSAL
Antonio E OldroydJapanAnna Fali RENEWAL
Aruna N InouyeRussiaAsiya Javayant QUALIFIED
Leon G CaldareraUnited KingdomOnyama Limba NEGOTIATION
Kadeem L BriddickIndiaXuxue Feng QUALIFIED
Sinclair Y KolmetzAustraliaOnyama Limba UNQUALIFIED
Juan R SchemmerSpainIvan Magalhaes NEGOTIATION
Claire L PerinItalyIvan Magalhaes QUALIFIED
Jeanfrancois G FigeroaIndiaIoni Bowcher NEW
Mayumi Z VenereCanadaBernardo Dominic UNQUALIFIED
Clifford A RulapaughSpainAmy Elsner UNQUALIFIED
Jones Y PerinAustraliaBernardo Dominic QUALIFIED
Tony K SaylorsGermanyStephen Shaw UNQUALIFIED
Izzy S RulapaughArgentinaIoni Bowcher QUALIFIED
Misaki D ChuiBrazilAnna Fali QUALIFIED
Aruna A RutaRussiaIoni Bowcher QUALIFIED
Ricardo G PerinAustraliaIoni Bowcher QUALIFIED
Darci B MacleadRussiaIvan Magalhaes NEW
Emily M StensethIndiaStephen Shaw NEW
Wickens U MarrierSpainIoni Bowcher RENEWAL
Kadeem Q DoeBrazilIvan Magalhaes NEGOTIATION
Jeanfrancois K SergiRussiaStephen Shaw RENEWAL
Chavez H FerenczBrazilAmy Elsner NEW
Johnson U SlusarskiItalyBernardo Dominic NEW
Murillo I KolmetzBrazilIvan Magalhaes UNQUALIFIED
Morrow F FigeroaRussiaAmy Elsner NEW
Silvio S InouyeItalyBernardo Dominic NEGOTIATION
Murillo M VocelkaIndiaBernardo Dominic QUALIFIED
Misaki J FlosiUnited KingdomElwin Sharvill PROPOSAL
Octavia R ShinkoAustraliaIoni Bowcher RENEWAL
Morrow E TollnerIndiaElwin Sharvill NEW
Leja N CaldareraJapanAnna Fali NEW
Murillo L AlbaresFranceAnna Fali PROPOSAL
Mayumi F DilliardCanadaIvan Magalhaes RENEWAL
Frozen Columns
Name
Nicolas H Gaucho
Clifford C Briddick
Jones L Briddick
Munro B Whobrey
Nicolas J Ostrosky
Claire S Iturbide
Octavia W Tollner
Nicolas I Morasca
Ivar J Bolognia
Octavia N Tollner
Cody Z Morasca
Cody L Royster
Jeanfrancois K Doe
Clifford T Stockham
Aditya K Tollner
Greenwood J Tollner
Alejandro I Bolognia
Ivar T Oldroyd
Ricardo L Tollner
Francesco J Marrier
Alejandro P Slusarski
David L Kusko
Johnson R Ruta
Clifford F Stockham
Greenwood W Stockham
Mujtaba I Kusko
Smith U Briddick
Kaitlin B Tollner
Aditya Q Whobrey
Maisha X Darakjy
Smith V Saylors
Mayumi L Kusko
Juan W Flosi
Ashley N Amigon
Leon T Stockham
David Y Ferencz
Claire N Iturbide
Clifford U Poquette
Jefferson S Bolognia
Deepesh F Stenseth
Aruna E Maclead
Ashley E Amigon
Julie H Perin
Murillo H Albares
Clifford U Rim
Sinclair D Darakjy
Smith R Kusko
Salvatore A Amigon
Claire J Figeroa
Juan E Kusko
IdCountryDate
1000France2024-06-02
1001Australia2024-05-26
1002India2024-05-26
1003United Kingdom2024-06-09
1004United Kingdom2024-05-25
1005Spain2024-06-13
1006Australia2024-05-30
1007Japan2024-05-30
1008France2024-05-29
1009Japan2024-06-21
1010Brazil2024-06-12
1011Spain2024-06-05
1012Canada2024-06-05
1013France2024-06-06
1014Brazil2024-06-23
1015Spain2024-06-15
1016Spain2024-06-15
1017United Kingdom2024-06-09
1018United Kingdom2024-06-23
1019Japan2024-06-21
1020France2024-06-01
1021Russia2024-06-04
1022United Kingdom2024-06-23
1023Germany2024-06-18
1024Japan2024-06-19
1025Canada2024-05-26
1026Italy2024-06-01
1027Argentina2024-06-12
1028United Kingdom2024-06-18
1029Italy2024-05-26
1030Australia2024-06-19
1031Canada2024-05-27
1032Australia2024-06-19
1033Brazil2024-06-12
1034Japan2024-06-04
1035Germany2024-05-31
1036Canada2024-06-12
1037Spain2024-05-31
1038Italy2024-05-30
1039Japan2024-05-30
1040Australia2024-06-06
1041France2024-06-14
1042United Kingdom2024-06-05
1043Brazil2024-06-01
1044Russia2024-06-17
1045Australia2024-06-06
1046India2024-06-06
1047Spain2024-06-16
1048Canada2024-06-01
1049Australia2024-05-27

On-Demand Data

NameIdCountryDate
Misaki O Shinko1000Brazil2024-06-10
Arvin B Figeroa1001Russia2024-06-07
James P Kusko1002Russia2024-06-14
Greenwood S Kolmetz1003Spain2024-06-07
Rodrigues M Perin1004United Kingdom2024-06-14
Sinclair V Caldarera1005Spain2024-06-21
Rodrigues T Waycott1006Australia2024-06-06
Salvatore G Stockham1007Russia2024-06-20
Chavez W Rim1008France2024-05-31
Faith F Slusarski1009India2024-06-11
David D Kolmetz1010Japan2024-06-05
Cody B Tollner1011France2024-05-27
Octavia M Sergi1012Japan2024-05-26
Jefferson Q Iturbide1013India2024-06-07
Salvatore Q Schemmer1014Russia2024-06-22
Jeanfrancois M Maclead1015Argentina2024-06-02
Arvin Q Figeroa1016Spain2024-06-06
Octavia I Rulapaugh1017Germany2024-06-12
Kadeem G Nicka1018Australia2024-06-11
Chavez Y Wieser1019Canada2024-06-07
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Murillo S KuskoIndiaIoni Bowcher QUALIFIED
Arvin X BowleyItalyStephen Shaw NEGOTIATION
Faith K OstroskyGermanyAsiya Javayant NEW
Kadeem K TollnerFranceXuxue Feng RENEWAL
Alejandro F RutaJapanAsiya Javayant UNQUALIFIED
Faith E ChuiAustraliaAnna Fali PROPOSAL
Chavez B NickaJapanIoni Bowcher PROPOSAL
Leja E NickaAustraliaIvan Magalhaes NEW
Johnson W ButtCanadaBernardo Dominic UNQUALIFIED
Arvin I SlusarskiGermanyBernardo Dominic UNQUALIFIED
Jones L KuskoBrazilOnyama Limba PROPOSAL
Ricardo K MaletGermanyElwin Sharvill QUALIFIED
Clifford N MaletCanadaIoni Bowcher PROPOSAL
Mayumi O PaprockiArgentinaBernardo Dominic RENEWAL
Claire H DilliardCanadaIoni Bowcher QUALIFIED
Greenwood Q StensethJapanAsiya Javayant UNQUALIFIED
Arvin C FollerFranceAnna Fali PROPOSAL
Antonio O TollnerRussiaStephen Shaw PROPOSAL
Claire A KuskoCanadaIvan Magalhaes QUALIFIED
Izzy E RulapaughCanadaAmy Elsner RENEWAL
Stacey G PaprockiUnited KingdomIvan Magalhaes UNQUALIFIED
Antonio A VenereRussiaAsiya Javayant NEGOTIATION
Chavez A GlickArgentinaElwin Sharvill QUALIFIED
Antonio P FigeroaUnited KingdomOnyama Limba RENEWAL
Antonio O KolmetzUnited KingdomAnna Fali UNQUALIFIED
Emily N SaylorsCanadaAsiya Javayant UNQUALIFIED
Wickens Y WaycottAustraliaIoni Bowcher RENEWAL
James O SergiRussiaBernardo Dominic PROPOSAL
Aruna H GauchoSpainAmy Elsner NEW
Leja T VenereArgentinaBernardo Dominic QUALIFIED
David T GlickBrazilAnna Fali PROPOSAL
Leja T RoysterBrazilStephen Shaw NEGOTIATION
Izzy G NickaUnited KingdomXuxue Feng UNQUALIFIED
Clifford N BowleyCanadaAnna Fali NEW
Rodrigues P SergiUnited KingdomAsiya Javayant NEGOTIATION
James R MaletCanadaStephen Shaw NEGOTIATION
Leja P KuskoUnited KingdomStephen Shaw PROPOSAL
Johnson E KuskoArgentinaAmy Elsner UNQUALIFIED
Claire I WaycottCanadaIoni Bowcher NEW
Greenwood O AlbaresAustraliaXuxue Feng QUALIFIED

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