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
Johnson L GillianAustraliaAsiya Javayant UNQUALIFIED
Emily A MaletIndiaXuxue Feng NEGOTIATION
Sinclair I InouyeArgentinaAsiya Javayant QUALIFIED
Arvin S SergiAustraliaElwin Sharvill UNQUALIFIED
Smith N MacleadArgentinaOnyama Limba QUALIFIED
Francesco W FerenczArgentinaXuxue Feng UNQUALIFIED
Antonio R OldroydJapanIvan Magalhaes NEW
Leon Q SaylorsSpainAsiya Javayant RENEWAL
Costa H DarakjyRussiaElwin Sharvill NEGOTIATION
Johnson T MacleadCanadaOnyama Limba RENEWAL
Sinclair F PerinCanadaAsiya Javayant RENEWAL
Mujtaba C NickaAustraliaIoni Bowcher UNQUALIFIED
Leon X SergiArgentinaIvan Magalhaes PROPOSAL
Costa X AmigonGermanyAsiya Javayant QUALIFIED
Mujtaba U NickaSpainXuxue Feng QUALIFIED
Deepesh N SlusarskiBrazilStephen Shaw QUALIFIED
Wickens G BowleySpainAsiya Javayant QUALIFIED
Leon Q GauchoBrazilBernardo Dominic RENEWAL
Leja J InouyeIndiaAnna Fali RENEWAL
Leon U SaylorsAustraliaAsiya Javayant QUALIFIED
Jennifer S AmigonFranceAnna Fali QUALIFIED
Smith B FerenczBrazilBernardo Dominic PROPOSAL
Sinclair Q StockhamUnited KingdomOnyama Limba QUALIFIED
Nicolas V CampainArgentinaElwin Sharvill QUALIFIED
Kadeem S MarrierCanadaXuxue Feng QUALIFIED
Nicolas T StensethGermanyElwin Sharvill QUALIFIED
Claire U RulapaughJapanOnyama Limba PROPOSAL
Antonio S GauchoGermanyAnna Fali NEGOTIATION
Faith I StockhamUnited KingdomBernardo Dominic NEGOTIATION
Arvin Q StensethUnited KingdomBernardo Dominic NEGOTIATION
Izzy P OldroydRussiaAsiya Javayant QUALIFIED
Tony X ShinkoSpainAnna Fali NEW
Wickens W SlusarskiCanadaBernardo Dominic QUALIFIED
Silvio V ButtGermanyBernardo Dominic RENEWAL
Jennifer W MorascaCanadaOnyama Limba PROPOSAL
Maria I StensethArgentinaElwin Sharvill RENEWAL
Johnson S DilliardBrazilStephen Shaw NEGOTIATION
Jefferson I MacleadIndiaOnyama Limba RENEWAL
Salvatore W FigeroaItalyIoni Bowcher NEW
Jones R CaldareraUnited KingdomAsiya Javayant NEW
Stacey Z NickaCanadaXuxue Feng RENEWAL
Leon G WieserSpainOnyama Limba UNQUALIFIED
Leon L RoysterFranceElwin Sharvill RENEWAL
Faith I MarrierFranceAmy Elsner NEGOTIATION
Stacey T MaletBrazilAsiya Javayant NEGOTIATION
Alejandro Q BriddickArgentinaElwin Sharvill NEGOTIATION
Juan O CampainUnited KingdomStephen Shaw RENEWAL
Juan I FlosiIndiaOnyama Limba NEW
Maria V PoquetteArgentinaAsiya Javayant UNQUALIFIED
Aruna Q ChuiSpainBernardo Dominic UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
James U CampainBrazilOnyama Limba RENEWAL
Murillo O StockhamCanadaOnyama Limba RENEWAL
Faith K FlosiGermanyOnyama Limba QUALIFIED
Aika B WaycottIndiaBernardo Dominic QUALIFIED
Isabel S FlosiAustraliaStephen Shaw UNQUALIFIED
Johnson S FerenczGermanyAnna Fali NEGOTIATION
Isabel B SchemmerIndiaAmy Elsner PROPOSAL
Faith N GauchoBrazilStephen Shaw PROPOSAL
Chavez R CaudyUnited KingdomXuxue Feng NEGOTIATION
Antonio N DarakjyCanadaOnyama Limba PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Adams U PoquetteCanada2024-06-02Truhlar And Truhlar Attys UNQUALIFIED86Elwin Sharvill
1001Antonio F BowleyItaly2024-06-20Rousseaux, Michael Esq RENEWAL69Onyama Limba
1002Emily Q FigeroaIndia2024-06-11Printing Dimensions NEGOTIATION80Anna Fali
1003Julie K GlickSpain2024-06-21Chanay, Jeffrey A Esq QUALIFIED79Onyama Limba
1004Kaitlin J MacleadSpain2024-06-21Benton, John B Jr NEGOTIATION22Anna Fali
1005Chavez X TollnerFrance2024-06-05Feltz Printing Service UNQUALIFIED45Asiya Javayant
1006Antonio J PoquetteItaly2024-06-03Chanay, Jeffrey A Esq PROPOSAL27Elwin Sharvill
1007Aruna D RutaIndia2024-06-10Chemel, James L Cpa NEGOTIATION12Anna Fali
1008Julie B RimIndia2024-06-03Chemel, James L Cpa UNQUALIFIED21Onyama Limba
1009Chavez T PoquetteCanada2024-06-17Chemel, James L Cpa NEGOTIATION9Bernardo Dominic
1010Emily X CampainFrance2024-06-13Chanay, Jeffrey A Esq PROPOSAL5Xuxue Feng
1011Juan J SaylorsBrazil2024-06-16Feiner Bros UNQUALIFIED93Bernardo Dominic
1012Smith I GlickArgentina2024-06-17Printing Dimensions NEGOTIATION76Asiya Javayant
1013Kaitlin P FlosiRussia2024-06-01Feltz Printing Service NEW5Asiya Javayant
1014David U SlusarskiUnited Kingdom2024-06-09Chanay, Jeffrey A Esq NEW65Asiya Javayant
1015Ricardo G CaldareraFrance2024-06-13Buckley Miller Wright NEGOTIATION39Asiya Javayant
1016Clifford M MarrierItaly2024-06-07Truhlar And Truhlar Attys NEW71Ivan Magalhaes
1017Morrow R BowleyBrazil2024-05-30Commercial Press NEW13Onyama Limba
1018Wickens D GlickBrazil2024-06-15Feiner Bros QUALIFIED84Asiya Javayant
1019Aruna A SchemmerJapan2024-05-26Printing Dimensions RENEWAL47Onyama Limba
1020Juan G DarakjySpain2024-06-05King, Christopher A Esq RENEWAL5Onyama Limba
1021Salvatore H MarrierIndia2024-05-28Rousseaux, Michael Esq UNQUALIFIED42Asiya Javayant
1022Munro Q BologniaSpain2024-06-04Benton, John B Jr QUALIFIED15Stephen Shaw
1023Kadeem L PoquetteRussia2024-06-06Buckley Miller Wright NEGOTIATION7Anna Fali
1024Aditya A GlickUnited Kingdom2024-06-13Chanay, Jeffrey A Esq UNQUALIFIED15Ivan Magalhaes
1025Ashley C PerinAustralia2024-06-09Truhlar And Truhlar Attys PROPOSAL19Stephen Shaw
1026Claire D BologniaRussia2024-05-25Printing Dimensions NEW52Amy Elsner
1027Jeanfrancois F SergiCanada2024-06-19Truhlar And Truhlar Attys RENEWAL55Ioni Bowcher
1028Octavia H WieserRussia2024-05-28Feltz Printing Service RENEWAL92Elwin Sharvill
1029Isabel S OldroydSpain2024-06-06Benton, John B Jr RENEWAL24Xuxue Feng
1030Nicolas X NestleArgentina2024-06-07Truhlar And Truhlar Attys NEW90Bernardo Dominic
1031Octavia V InouyeItaly2024-06-20Dorl, James J Esq NEW10Amy Elsner
1032Stacey U RimCanada2024-06-19Printing Dimensions QUALIFIED91Bernardo Dominic
1033Ashley R FollerUnited Kingdom2024-06-14Feiner Bros RENEWAL77Ivan Magalhaes
1034Ricardo O DarakjyAustralia2024-05-30Chapman, Ross E Esq NEGOTIATION54Xuxue Feng
1035Greenwood V MaletGermany2024-05-23Feltz Printing Service UNQUALIFIED53Ioni Bowcher
1036Maisha S GarufiIndia2024-06-05Dorl, James J Esq QUALIFIED22Anna Fali
1037James Y CaldareraGermany2024-06-21Printing Dimensions NEW95Stephen Shaw
1038Smith Q GauchoRussia2024-06-13King, Christopher A Esq NEGOTIATION4Bernardo Dominic
1039Silvio Q SaylorsSpain2024-06-10Benton, John B Jr UNQUALIFIED78Bernardo Dominic
1040Greenwood R NestleAustralia2024-06-03Dorl, James J Esq UNQUALIFIED55Amy Elsner
1041Sinclair H GlickJapan2024-06-12Benton, John B Jr PROPOSAL39Amy Elsner
1042Aruna J OstroskyItaly2024-06-04Morlong Associates NEW73Stephen Shaw
1043Octavia M DilliardSpain2024-06-11Printing Dimensions UNQUALIFIED78Ioni Bowcher
1044Francesco U DoeGermany2024-06-14Benton, John B Jr PROPOSAL61Xuxue Feng
1045Maisha H RimFrance2024-06-18Chapman, Ross E Esq PROPOSAL62Amy Elsner
1046Aika G RutaBrazil2024-06-15Chanay, Jeffrey A Esq RENEWAL99Elwin Sharvill
1047Jeanfrancois Z SaylorsRussia2024-06-16Feltz Printing Service QUALIFIED52Onyama Limba
1048Jennifer Y GlickBrazil2024-06-05Feltz Printing Service NEGOTIATION0Asiya Javayant
1049James Y BologniaCanada2024-05-23Truhlar And Truhlar Attys NEGOTIATION68Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Mayumi F DoeFranceAnna Fali NEW
Tony H MarrierArgentinaAnna Fali RENEWAL
Clifford K DarakjyJapanIvan Magalhaes NEW
Jeanfrancois M ShinkoAustraliaBernardo Dominic RENEWAL
Clifford E StensethUnited KingdomXuxue Feng RENEWAL
Tony M FollerJapanBernardo Dominic UNQUALIFIED
Francesco U OstroskyUnited KingdomAmy Elsner NEW
Octavia Y CaldareraJapanStephen Shaw QUALIFIED
Jeanfrancois F InouyeBrazilOnyama Limba RENEWAL
Jones L AlbaresAustraliaBernardo Dominic QUALIFIED
Costa G DilliardUnited KingdomElwin Sharvill NEW
Claire V GauchoAustraliaIvan Magalhaes RENEWAL
Chavez A RimRussiaElwin Sharvill NEW
Wickens I WaycottFranceXuxue Feng RENEWAL
Maria V RimItalyIoni Bowcher NEW
James U WaycottCanadaIvan Magalhaes NEGOTIATION
Izzy U GillianBrazilAsiya Javayant RENEWAL
Maria S VocelkaGermanyStephen Shaw NEGOTIATION
Kaitlin W FerenczUnited KingdomIoni Bowcher NEW
Misaki C OldroydAustraliaIvan Magalhaes QUALIFIED
Greenwood M MorascaUnited KingdomElwin Sharvill PROPOSAL
Maisha U SlusarskiJapanXuxue Feng RENEWAL
James Z MaletArgentinaStephen Shaw UNQUALIFIED
Rodrigues V MaletJapanIoni Bowcher UNQUALIFIED
Ricardo S GillianRussiaBernardo Dominic UNQUALIFIED
Emily F IturbideJapanElwin Sharvill PROPOSAL
Maria W GillianGermanyAsiya Javayant RENEWAL
Cody T RimItalyAsiya Javayant QUALIFIED
Wickens D WieserFranceOnyama Limba UNQUALIFIED
Munro E AmigonItalyXuxue Feng NEW
Costa W DilliardBrazilIoni Bowcher PROPOSAL
Isabel C GillianArgentinaIvan Magalhaes UNQUALIFIED
James B InouyeItalyOnyama Limba UNQUALIFIED
Maisha S FerenczArgentinaElwin Sharvill PROPOSAL
Ashley G NickaArgentinaXuxue Feng NEW
Isabel V StensethArgentinaIoni Bowcher NEW
Jennifer N WhobreyUnited KingdomAmy Elsner RENEWAL
Costa Y FollerBrazilAnna Fali NEGOTIATION
Cody O KolmetzBrazilBernardo Dominic NEGOTIATION
Darci Z TollnerBrazilAnna Fali PROPOSAL
Chavez N OstroskyRussiaAsiya Javayant RENEWAL
Adams B MarrierGermanyAsiya Javayant NEGOTIATION
Greenwood P CaudyArgentinaElwin Sharvill UNQUALIFIED
Julie P DoeRussiaAmy Elsner RENEWAL
Johnson Q StockhamUnited KingdomBernardo Dominic UNQUALIFIED
Maisha A SaylorsBrazilIvan Magalhaes RENEWAL
Faith O ShinkoGermanyIoni Bowcher UNQUALIFIED
Adams O FollerUnited KingdomElwin Sharvill QUALIFIED
Francesco F RulapaughCanadaAsiya Javayant NEW
Leon T BowleyCanadaElwin Sharvill NEGOTIATION
Frozen Columns
Name
Isabel B Chui
Isabel R Flosi
Rodrigues G Paprocki
Munro T Tollner
Stacey O Ferencz
Sinclair C Flosi
Ivar E Maclead
Rodrigues U Whobrey
Murillo M Garufi
Salvatore E Gillian
Julie S Amigon
Cody Y Caudy
Murillo T Sergi
Faith I Rim
Jefferson D Malet
Octavia G Kusko
Jefferson F Albares
Ivar Q Slusarski
Tony K Gillian
Faith P Iturbide
Alejandro C Butt
Greenwood D Glick
Juan Q Campain
Nicolas I Doe
Jones R Saylors
Ivar V Darakjy
Munro Q Garufi
Leon Z Flosi
Jennifer C Morasca
Aruna G Inouye
Aruna J Malet
Aika A Stenseth
Alejandro U Sergi
Silvio O Wieser
Salvatore I Malet
Murillo C Foller
Antonio T Wieser
Faith Q Waycott
David G Oldroyd
Smith N Albares
Leja N Ferencz
Murillo B Paprocki
Deepesh I Royster
Kaitlin D Stenseth
Smith W Gaucho
Kaitlin B Figeroa
Munro K Sergi
Greenwood P Waycott
Ricardo W Foller
Morrow Q Sergi
IdCountryDate
1000Germany2024-06-04
1001Russia2024-06-11
1002Germany2024-05-30
1003India2024-05-23
1004Spain2024-06-01
1005United Kingdom2024-06-04
1006Germany2024-06-18
1007Canada2024-06-14
1008Germany2024-06-11
1009Argentina2024-05-30
1010Italy2024-06-15
1011Brazil2024-06-18
1012Canada2024-06-10
1013Russia2024-05-31
1014Russia2024-06-06
1015Italy2024-06-15
1016Italy2024-06-10
1017Russia2024-06-09
1018Japan2024-06-17
1019Italy2024-06-06
1020United Kingdom2024-06-03
1021Japan2024-06-14
1022Brazil2024-06-17
1023United Kingdom2024-06-14
1024United Kingdom2024-05-27
1025Canada2024-05-29
1026Australia2024-06-11
1027France2024-06-19
1028Japan2024-06-18
1029Argentina2024-06-21
1030Japan2024-06-01
1031France2024-06-03
1032United Kingdom2024-05-23
1033Spain2024-06-11
1034Canada2024-06-01
1035Japan2024-06-20
1036Italy2024-06-19
1037Germany2024-05-31
1038India2024-06-21
1039Argentina2024-06-11
1040Argentina2024-06-14
1041India2024-05-26
1042Italy2024-06-18
1043India2024-06-04
1044Germany2024-06-19
1045Germany2024-06-20
1046Australia2024-05-28
1047India2024-05-25
1048Argentina2024-06-14
1049Germany2024-06-17

On-Demand Data

NameIdCountryDate
Alejandro O Gillian1000Australia2024-05-30
James J Shinko1001United Kingdom2024-06-11
Antonio J Malet1002India2024-06-07
Silvio J Sergi1003Argentina2024-06-10
Nicolas K Shinko1004Russia2024-06-07
Wickens N Darakjy1005United Kingdom2024-05-24
Izzy W Darakjy1006Argentina2024-05-26
Ashley I Chui1007Italy2024-06-20
Darci F Rim1008Canada2024-06-11
Salvatore U Perin1009Argentina2024-06-15
Johnson M Campain1010Italy2024-06-01
Jennifer Q Caldarera1011Japan2024-05-30
Leon X Nestle1012Japan2024-06-04
Izzy T Morasca1013Canada2024-05-24
Ivar X Figeroa1014Italy2024-06-03
Francesco J Ruta1015France2024-06-10
Aditya M Darakjy1016United Kingdom2024-05-30
Stacey L Bolognia1017Russia2024-05-31
Emily H Doe1018Canada2024-06-12
Aruna N Doe1019Russia2024-06-10
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Greenwood N FollerFranceAmy Elsner NEGOTIATION
Chavez F NestleSpainIvan Magalhaes NEW
Nicolas A WieserBrazilXuxue Feng NEGOTIATION
Kaitlin A FigeroaJapanAsiya Javayant PROPOSAL
Mujtaba F SergiArgentinaIoni Bowcher RENEWAL
Smith W MacleadIndiaIvan Magalhaes QUALIFIED
Greenwood R KuskoAustraliaElwin Sharvill NEGOTIATION
Octavia P GarufiIndiaAsiya Javayant QUALIFIED
Nicolas I NestleRussiaIoni Bowcher UNQUALIFIED
Kadeem P DarakjyGermanyXuxue Feng PROPOSAL
Emily J AmigonJapanAnna Fali PROPOSAL
Aditya G GarufiSpainOnyama Limba NEW
Jefferson L ShinkoGermanyOnyama Limba QUALIFIED
Tony M TollnerJapanAsiya Javayant NEGOTIATION
Arvin B NickaBrazilStephen Shaw NEGOTIATION
Leon J BowleyItalyAnna Fali QUALIFIED
Deepesh V WaycottAustraliaAsiya Javayant PROPOSAL
Antonio D CampainArgentinaIoni Bowcher PROPOSAL
Francesco P SergiItalyAmy Elsner NEW
Leon X GarufiUnited KingdomXuxue Feng RENEWAL
Cody Q FlosiSpainStephen Shaw RENEWAL
Julie H OldroydJapanXuxue Feng UNQUALIFIED
Clifford M RulapaughSpainXuxue Feng UNQUALIFIED
Mayumi O NestleAustraliaIoni Bowcher NEGOTIATION
Francesco V IturbideUnited KingdomStephen Shaw RENEWAL
Johnson Q PaprockiRussiaOnyama Limba UNQUALIFIED
Kadeem P PerinSpainIvan Magalhaes NEGOTIATION
Nicolas Y WaycottBrazilElwin Sharvill UNQUALIFIED
Leon Z ButtIndiaIoni Bowcher NEGOTIATION
Murillo S KuskoCanadaStephen Shaw UNQUALIFIED
Kaitlin P NickaGermanyXuxue Feng UNQUALIFIED
Cody H StensethUnited KingdomStephen Shaw NEGOTIATION
Ashley T DarakjyUnited KingdomOnyama Limba PROPOSAL
Jeanfrancois J DilliardItalyElwin Sharvill RENEWAL
Stacey C RutaCanadaOnyama Limba QUALIFIED
Rodrigues F MacleadUnited KingdomXuxue Feng PROPOSAL
Mayumi G DarakjyArgentinaBernardo Dominic QUALIFIED
Darci N IturbideJapanIoni Bowcher PROPOSAL
Aika C GillianAustraliaStephen Shaw NEGOTIATION
Munro J SergiJapanAnna Fali NEW

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