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
Mujtaba W DoeGermanyStephen Shaw NEGOTIATION
Claire S SergiAustraliaAsiya Javayant NEGOTIATION
Salvatore M MaletCanadaElwin Sharvill PROPOSAL
Ricardo Y FigeroaArgentinaStephen Shaw QUALIFIED
Ivar J CaudyJapanStephen Shaw UNQUALIFIED
Octavia S SaylorsIndiaBernardo Dominic NEGOTIATION
Aika G AmigonAustraliaXuxue Feng UNQUALIFIED
Greenwood Y FerenczIndiaIvan Magalhaes PROPOSAL
Tony D MacleadAustraliaOnyama Limba NEW
Ivar T SlusarskiAustraliaAsiya Javayant NEGOTIATION
Wickens F StockhamCanadaAsiya Javayant NEW
Mujtaba O FlosiSpainOnyama Limba NEW
Misaki K RulapaughBrazilAmy Elsner QUALIFIED
Arvin P ShinkoJapanAmy Elsner RENEWAL
Aruna U IturbideCanadaIvan Magalhaes PROPOSAL
Julie X TollnerGermanyXuxue Feng NEGOTIATION
Mujtaba V FigeroaRussiaElwin Sharvill QUALIFIED
Leon K FerenczAustraliaIoni Bowcher PROPOSAL
Claire B FerenczCanadaAsiya Javayant PROPOSAL
Isabel M SergiIndiaElwin Sharvill QUALIFIED
Aditya R KuskoItalyXuxue Feng RENEWAL
Antonio L KuskoJapanOnyama Limba QUALIFIED
Greenwood Q MacleadRussiaStephen Shaw PROPOSAL
Ashley Z RimItalyIoni Bowcher RENEWAL
Jennifer O RoysterCanadaAmy Elsner NEW
Tony H MaletIndiaIoni Bowcher RENEWAL
Emily R MaletBrazilIoni Bowcher RENEWAL
Juan F BowleyUnited KingdomStephen Shaw NEGOTIATION
Aika D FollerBrazilAmy Elsner PROPOSAL
Claire C PoquetteFranceAmy Elsner UNQUALIFIED
Mayumi M OstroskyCanadaBernardo Dominic NEGOTIATION
Aditya S TollnerCanadaAnna Fali NEW
Wickens M SergiBrazilAmy Elsner PROPOSAL
Aruna D SaylorsFranceIoni Bowcher NEW
Adams M DilliardArgentinaAsiya Javayant PROPOSAL
Leon V OldroydRussiaXuxue Feng NEGOTIATION
Tony Z RoysterArgentinaBernardo Dominic UNQUALIFIED
Octavia H SchemmerItalyOnyama Limba NEW
Costa F ShinkoGermanyElwin Sharvill NEW
Mayumi U GlickIndiaBernardo Dominic PROPOSAL
Chavez W FerenczCanadaAsiya Javayant UNQUALIFIED
Emily M WaycottJapanIvan Magalhaes QUALIFIED
Claire V PoquetteSpainXuxue Feng UNQUALIFIED
Aruna C SchemmerUnited KingdomAnna Fali QUALIFIED
Jones A DoeJapanIoni Bowcher UNQUALIFIED
Aditya A MacleadJapanXuxue Feng NEGOTIATION
Emily N NestleItalyStephen Shaw NEGOTIATION
Ivar Q AlbaresFranceAsiya Javayant QUALIFIED
Izzy G BowleyAustraliaAmy Elsner UNQUALIFIED
Rodrigues O SaylorsGermanyXuxue Feng RENEWAL
Horizontal
NameCountryRepresentativeStatus
Jeanfrancois F MaletJapanIoni Bowcher QUALIFIED
Jefferson Y MaletItalyOnyama Limba UNQUALIFIED
Sinclair B MorascaGermanyStephen Shaw RENEWAL
Costa N RulapaughItalyXuxue Feng NEGOTIATION
Kadeem G StensethBrazilXuxue Feng QUALIFIED
Murillo R CampainArgentinaBernardo Dominic NEW
Costa V SlusarskiFranceAsiya Javayant PROPOSAL
Jennifer H MaletFranceIvan Magalhaes NEGOTIATION
Mujtaba T RulapaughAustraliaIoni Bowcher PROPOSAL
Wickens C OstroskyItalyBernardo Dominic NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Munro E RutaFrance2024-05-24Dorl, James J Esq NEGOTIATION9Anna Fali
1001Kaitlin T KolmetzRussia2024-05-10Commercial Press RENEWAL47Onyama Limba
1002Silvio X FigeroaCanada2024-05-22Commercial Press QUALIFIED49Onyama Limba
1003Leon R IturbideCanada2024-05-15Chanay, Jeffrey A Esq QUALIFIED69Elwin Sharvill
1004Alejandro C FerenczCanada2024-05-02Feltz Printing Service QUALIFIED88Xuxue Feng
1005Izzy P PoquetteJapan2024-05-18Chapman, Ross E Esq UNQUALIFIED18Ioni Bowcher
1006Cody K NickaGermany2024-04-28Printing Dimensions PROPOSAL96Stephen Shaw
1007Morrow Q VenereGermany2024-05-13Feltz Printing Service NEGOTIATION28Ioni Bowcher
1008Tony T SchemmerCanada2024-05-11Morlong Associates NEW70Onyama Limba
1009Kadeem J MarrierRussia2024-05-17Buckley Miller Wright UNQUALIFIED53Elwin Sharvill
1010Munro X GarufiGermany2024-05-21Printing Dimensions PROPOSAL77Onyama Limba
1011Arvin F KolmetzArgentina2024-05-03Printing Dimensions PROPOSAL39Anna Fali
1012Mayumi H VenereGermany2024-05-07Dorl, James J Esq NEGOTIATION66Elwin Sharvill
1013Munro D GarufiArgentina2024-05-07Chapman, Ross E Esq RENEWAL3Asiya Javayant
1014Clifford F WieserAustralia2024-05-19Chapman, Ross E Esq NEGOTIATION50Ivan Magalhaes
1015Faith Z RoysterBrazil2024-05-25Chemel, James L Cpa NEW59Bernardo Dominic
1016Faith C CaudySpain2024-05-12Truhlar And Truhlar Attys PROPOSAL22Stephen Shaw
1017Johnson P AlbaresJapan2024-05-11Chapman, Ross E Esq QUALIFIED67Bernardo Dominic
1018David Y FollerItaly2024-05-27Printing Dimensions NEGOTIATION10Bernardo Dominic
1019Izzy R SlusarskiUnited Kingdom2024-05-09Chapman, Ross E Esq QUALIFIED99Asiya Javayant
1020Aika P InouyeUnited Kingdom2024-05-20Buckley Miller Wright PROPOSAL29Bernardo Dominic
1021Jefferson Q GlickSpain2024-05-26Benton, John B Jr QUALIFIED84Onyama Limba
1022Alejandro M FollerJapan2024-05-08Morlong Associates UNQUALIFIED69Bernardo Dominic
1023Ricardo Y FigeroaJapan2024-05-24Chapman, Ross E Esq PROPOSAL70Asiya Javayant
1024Mujtaba X MarrierRussia2024-05-19Morlong Associates NEW77Stephen Shaw
1025Aditya K BriddickRussia2024-05-09Feiner Bros NEW47Asiya Javayant
1026Johnson G InouyeSpain2024-05-17Feltz Printing Service PROPOSAL65Asiya Javayant
1027Aditya Q StockhamBrazil2024-04-28Chanay, Jeffrey A Esq PROPOSAL7Amy Elsner
1028Claire J FerenczFrance2024-05-12Chanay, Jeffrey A Esq NEW23Bernardo Dominic
1029Ashley B OstroskyJapan2024-05-17Benton, John B Jr NEGOTIATION4Asiya Javayant
1030Julie K AmigonGermany2024-04-30Chemel, James L Cpa PROPOSAL60Xuxue Feng
1031Smith C GlickFrance2024-05-06Dorl, James J Esq NEW58Anna Fali
1032Clifford G RutaCanada2024-05-06Chapman, Ross E Esq NEGOTIATION77Bernardo Dominic
1033Silvio K BriddickUnited Kingdom2024-05-26Chanay, Jeffrey A Esq UNQUALIFIED70Ivan Magalhaes
1034Leon P DarakjySpain2024-05-01Feltz Printing Service QUALIFIED73Bernardo Dominic
1035Mujtaba H NestleFrance2024-05-09Buckley Miller Wright UNQUALIFIED39Xuxue Feng
1036Juan I MorascaArgentina2024-05-10Commercial Press PROPOSAL17Stephen Shaw
1037Misaki X GauchoFrance2024-05-12King, Christopher A Esq QUALIFIED41Onyama Limba
1038Smith Z MacleadUnited Kingdom2024-05-27Dorl, James J Esq NEW0Ivan Magalhaes
1039Antonio U GlickItaly2024-04-30Printing Dimensions UNQUALIFIED27Stephen Shaw
1040Maria O FollerUnited Kingdom2024-05-24Printing Dimensions RENEWAL8Onyama Limba
1041Mujtaba Z WaycottItaly2024-05-27Benton, John B Jr NEGOTIATION10Amy Elsner
1042David I KolmetzAustralia2024-05-09Buckley Miller Wright NEGOTIATION89Bernardo Dominic
1043Emily W FerenczIndia2024-05-26Morlong Associates NEW66Asiya Javayant
1044Greenwood O PoquetteArgentina2024-05-12Commercial Press NEGOTIATION50Asiya Javayant
1045Wickens K ButtCanada2024-05-02Dorl, James J Esq PROPOSAL7Elwin Sharvill
1046Cody W OstroskyGermany2024-05-02Printing Dimensions QUALIFIED36Ioni Bowcher
1047Ricardo R MorascaFrance2024-05-15Chapman, Ross E Esq QUALIFIED73Anna Fali
1048Faith Q BologniaFrance2024-05-11Benton, John B Jr QUALIFIED24Amy Elsner
1049Smith P WhobreyItaly2024-05-09King, Christopher A Esq PROPOSAL55Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Wickens S VocelkaGermanyIvan Magalhaes PROPOSAL
Johnson L StockhamUnited KingdomOnyama Limba RENEWAL
Maisha H StockhamArgentinaAmy Elsner QUALIFIED
Mujtaba P DilliardIndiaStephen Shaw UNQUALIFIED
Jeanfrancois Z FerenczBrazilOnyama Limba NEW
Greenwood Y StockhamSpainAnna Fali RENEWAL
David H MaletItalyIvan Magalhaes NEGOTIATION
Julie T MaletJapanOnyama Limba NEGOTIATION
Leja L VocelkaAustraliaAsiya Javayant PROPOSAL
James C SaylorsFranceAnna Fali QUALIFIED
Mujtaba O WhobreyUnited KingdomBernardo Dominic PROPOSAL
Ricardo W MaletUnited KingdomXuxue Feng NEGOTIATION
Jefferson H ShinkoArgentinaAnna Fali UNQUALIFIED
Murillo N ShinkoUnited KingdomStephen Shaw NEW
Mayumi U OldroydIndiaIvan Magalhaes NEGOTIATION
Deepesh D FerenczRussiaOnyama Limba UNQUALIFIED
Cody Q BowleyUnited KingdomOnyama Limba QUALIFIED
Mujtaba O PaprockiGermanyAmy Elsner NEW
Chavez G SchemmerBrazilIvan Magalhaes PROPOSAL
Cody G NickaRussiaBernardo Dominic QUALIFIED
Chavez J NickaRussiaAmy Elsner QUALIFIED
Jennifer I KolmetzFranceElwin Sharvill RENEWAL
Ivar E BologniaItalyElwin Sharvill PROPOSAL
Murillo X StensethIndiaElwin Sharvill QUALIFIED
Deepesh X StockhamBrazilStephen Shaw NEGOTIATION
Emily M SlusarskiJapanAsiya Javayant RENEWAL
Aika J RutaAustraliaBernardo Dominic RENEWAL
Jones H GarufiSpainAmy Elsner UNQUALIFIED
Murillo K RoysterBrazilAsiya Javayant QUALIFIED
Adams T BologniaAustraliaAmy Elsner QUALIFIED
Aika N WhobreyIndiaAnna Fali UNQUALIFIED
Mayumi Z PoquetteUnited KingdomIvan Magalhaes NEGOTIATION
Arvin G MaletAustraliaAnna Fali UNQUALIFIED
Ashley O ButtFranceXuxue Feng NEGOTIATION
Alejandro X WhobreySpainElwin Sharvill PROPOSAL
Greenwood B ShinkoArgentinaElwin Sharvill UNQUALIFIED
Deepesh W WaycottIndiaOnyama Limba QUALIFIED
Stacey T FollerGermanyAnna Fali NEW
Ricardo Q MaletIndiaAnna Fali PROPOSAL
Arvin L FerenczItalyAnna Fali RENEWAL
Kadeem M WieserJapanXuxue Feng NEW
Ivar Q GlickBrazilIoni Bowcher UNQUALIFIED
Aika S AlbaresSpainXuxue Feng QUALIFIED
Cody G AmigonArgentinaStephen Shaw NEGOTIATION
Smith E WhobreyUnited KingdomAnna Fali UNQUALIFIED
Nicolas O MacleadUnited KingdomIvan Magalhaes NEGOTIATION
Murillo I NestleAustraliaAmy Elsner NEW
Misaki B FigeroaUnited KingdomElwin Sharvill PROPOSAL
Aditya T FlosiItalyAnna Fali UNQUALIFIED
Clifford L BologniaItalyXuxue Feng QUALIFIED
Frozen Columns
Name
Munro S Saylors
Leon M Bolognia
Clifford A Stockham
Murillo L Rulapaugh
Cody R Morasca
Murillo N Campain
Leon A Wieser
Leja P Darakjy
Francesco A Kolmetz
Tony S Tollner
Misaki N Paprocki
Adams M Foller
James P Paprocki
Aika L Venere
Jeanfrancois C Gaucho
Aika J Kusko
Wickens P Bowley
Mujtaba R Glick
Adams F Flosi
Isabel M Dilliard
Ashley F Ostrosky
Smith F Sergi
Munro V Bowley
Isabel Y Morasca
Juan Z Kusko
Antonio W Slusarski
Jeanfrancois F Venere
Kadeem T Vocelka
Mayumi M Dilliard
Jeanfrancois X Campain
Aditya L Saylors
Emily L Perin
Jefferson T Garufi
Morrow L Saylors
Kadeem Z Amigon
Costa V Malet
Salvatore P Rim
Izzy J Caldarera
Costa W Slusarski
Mujtaba H Tollner
Claire Z Maclead
Aruna E Venere
Greenwood L Slusarski
Adams G Waycott
Salvatore A Vocelka
Juan B Maclead
Maisha B Rulapaugh
Maria A Bowley
Isabel D Nicka
Sinclair A Ruta
IdCountryDate
1000Brazil2024-04-30
1001Australia2024-05-19
1002Australia2024-05-02
1003India2024-05-13
1004Russia2024-05-13
1005Japan2024-05-01
1006Russia2024-05-18
1007Canada2024-05-09
1008Germany2024-05-02
1009Russia2024-05-25
1010Argentina2024-05-10
1011Brazil2024-05-14
1012Italy2024-04-30
1013Argentina2024-05-15
1014Australia2024-05-27
1015Italy2024-04-28
1016Germany2024-05-25
1017India2024-05-19
1018Russia2024-05-20
1019Russia2024-05-08
1020India2024-05-08
1021Australia2024-05-03
1022United Kingdom2024-05-02
1023Japan2024-05-22
1024Italy2024-05-17
1025Germany2024-05-25
1026Argentina2024-04-28
1027Italy2024-05-11
1028Spain2024-05-07
1029Brazil2024-05-14
1030United Kingdom2024-05-07
1031Italy2024-05-19
1032India2024-05-27
1033Canada2024-05-19
1034Australia2024-05-06
1035France2024-05-03
1036Australia2024-05-04
1037Brazil2024-05-02
1038India2024-04-30
1039United Kingdom2024-05-01
1040Russia2024-05-15
1041Japan2024-05-08
1042Argentina2024-05-02
1043India2024-05-10
1044France2024-05-11
1045Japan2024-05-11
1046India2024-05-18
1047Japan2024-05-05
1048Germany2024-05-03
1049United Kingdom2024-04-28

On-Demand Data

NameIdCountryDate
Claire I Stenseth1000Argentina2024-05-16
Ricardo F Inouye1001Russia2024-05-04
Stacey N Figeroa1002Spain2024-05-01
Mayumi T Flosi1003Australia2024-04-28
David Y Saylors1004United Kingdom2024-05-09
Jeanfrancois R Ruta1005United Kingdom2024-05-17
Adams W Albares1006Argentina2024-05-14
Adams N Glick1007Spain2024-05-18
Deepesh I Darakjy1008Italy2024-04-28
Misaki Y Maclead1009Spain2024-05-24
James K Bolognia1010Italy2024-05-04
Stacey N Whobrey1011Russia2024-05-22
Nicolas I Campain1012Canada2024-05-26
Isabel Z Marrier1013France2024-05-16
Smith H Campain1014Russia2024-05-25
Aruna S Kusko1015United Kingdom2024-05-22
Juan R Ruta1016Argentina2024-05-03
Mujtaba B Royster1017Brazil2024-05-09
Rodrigues V Wieser1018France2024-05-02
Sinclair K Glick1019United Kingdom2024-05-09
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Izzy A NestleBrazilOnyama Limba NEW
Costa H StockhamBrazilAmy Elsner QUALIFIED
Salvatore W FlosiFranceAmy Elsner NEW
Morrow N SlusarskiItalyIvan Magalhaes PROPOSAL
Faith M WhobreyUnited KingdomBernardo Dominic NEGOTIATION
Francesco P DoeRussiaOnyama Limba QUALIFIED
Mayumi I MarrierGermanyXuxue Feng QUALIFIED
Sinclair V FlosiItalyAsiya Javayant RENEWAL
Jones C WaycottGermanyAmy Elsner RENEWAL
James J GlickIndiaIvan Magalhaes NEGOTIATION
Clifford R GillianFranceIvan Magalhaes NEW
Silvio C StensethSpainStephen Shaw PROPOSAL
Stacey G FlosiIndiaIvan Magalhaes RENEWAL
Claire B MaletFranceStephen Shaw UNQUALIFIED
Maria B ButtRussiaBernardo Dominic NEW
Aditya I InouyeCanadaElwin Sharvill RENEWAL
Leja Q StensethFranceElwin Sharvill QUALIFIED
Stacey I VenereArgentinaAmy Elsner NEW
Emily A GarufiArgentinaAsiya Javayant RENEWAL
Octavia O FlosiIndiaXuxue Feng UNQUALIFIED
Clifford J FlosiCanadaStephen Shaw PROPOSAL
Antonio M BriddickFranceAsiya Javayant RENEWAL
Chavez X SergiJapanAmy Elsner NEW
Isabel O GillianCanadaXuxue Feng PROPOSAL
Julie C GarufiFranceXuxue Feng RENEWAL
Kaitlin D PaprockiIndiaIvan Magalhaes RENEWAL
Nicolas Y WaycottIndiaAmy Elsner UNQUALIFIED
Murillo L MacleadFranceBernardo Dominic NEW
Smith F FerenczAustraliaIoni Bowcher NEW
David J MaletRussiaXuxue Feng NEGOTIATION
Jefferson T SaylorsArgentinaAsiya Javayant NEGOTIATION
Leon W DarakjyJapanStephen Shaw PROPOSAL
Izzy F DoeJapanAmy Elsner RENEWAL
Nicolas H MaletCanadaBernardo Dominic RENEWAL
Tony D BriddickGermanyXuxue Feng PROPOSAL
Ricardo K ButtSpainIoni Bowcher NEW
Kaitlin I MacleadCanadaIoni Bowcher UNQUALIFIED
Arvin T CaldareraAustraliaIvan Magalhaes QUALIFIED
Jennifer U DoeArgentinaIvan Magalhaes PROPOSAL
Isabel C OldroydAustraliaIoni Bowcher 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>