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
Murillo A BologniaCanadaElwin Sharvill NEW
Nicolas V CampainArgentinaAnna Fali RENEWAL
Adams G MaletRussiaXuxue Feng UNQUALIFIED
David P FerenczBrazilElwin Sharvill NEW
Aruna O SergiArgentinaIoni Bowcher RENEWAL
Aika W AmigonItalyStephen Shaw PROPOSAL
Claire Q VocelkaCanadaStephen Shaw RENEWAL
Francesco O CaldareraFranceElwin Sharvill UNQUALIFIED
Jennifer O WaycottItalyStephen Shaw PROPOSAL
Ivar A AmigonCanadaElwin Sharvill RENEWAL
Ricardo L FerenczJapanAmy Elsner UNQUALIFIED
Morrow Q MarrierRussiaIvan Magalhaes RENEWAL
Tony Z GlickUnited KingdomIoni Bowcher UNQUALIFIED
Faith W ChuiSpainXuxue Feng PROPOSAL
Jennifer F RoysterAustraliaElwin Sharvill NEW
Maisha O VocelkaUnited KingdomAnna Fali QUALIFIED
Morrow X GlickBrazilBernardo Dominic QUALIFIED
Costa I AlbaresCanadaStephen Shaw UNQUALIFIED
Aika D KuskoGermanyAsiya Javayant RENEWAL
James U PerinBrazilIvan Magalhaes QUALIFIED
Johnson K CampainCanadaIoni Bowcher NEW
Arvin H CaldareraUnited KingdomAnna Fali NEW
Arvin A InouyeArgentinaBernardo Dominic PROPOSAL
Rodrigues B GauchoItalyOnyama Limba NEGOTIATION
Wickens P RoysterItalyAnna Fali PROPOSAL
Tony T ShinkoIndiaAmy Elsner PROPOSAL
Nicolas A MaletJapanAsiya Javayant NEGOTIATION
Jeanfrancois H MacleadIndiaElwin Sharvill NEW
Stacey L FigeroaAustraliaElwin Sharvill PROPOSAL
Wickens I FerenczUnited KingdomStephen Shaw QUALIFIED
Aruna E OstroskyIndiaBernardo Dominic NEGOTIATION
Morrow E MorascaIndiaElwin Sharvill RENEWAL
Jefferson Y ShinkoBrazilIvan Magalhaes RENEWAL
Tony P OstroskyRussiaAnna Fali RENEWAL
Salvatore W FerenczRussiaElwin Sharvill NEGOTIATION
David T NickaArgentinaElwin Sharvill UNQUALIFIED
Rodrigues V IturbideFranceStephen Shaw NEW
Julie T DarakjyArgentinaIvan Magalhaes PROPOSAL
Munro Z RoysterJapanStephen Shaw RENEWAL
Ashley C DoeGermanyBernardo Dominic NEGOTIATION
Jeanfrancois F GillianFranceElwin Sharvill RENEWAL
Johnson I BologniaRussiaAnna Fali QUALIFIED
Ricardo Z DarakjySpainAmy Elsner NEW
Mujtaba J GillianCanadaAnna Fali QUALIFIED
Ashley I GlickUnited KingdomStephen Shaw NEW
Izzy Y KuskoBrazilElwin Sharvill RENEWAL
Aika T FigeroaAustraliaXuxue Feng QUALIFIED
Maria N NickaGermanyAnna Fali NEW
Alejandro W AlbaresCanadaIvan Magalhaes QUALIFIED
James P GillianIndiaStephen Shaw RENEWAL
Horizontal
NameCountryRepresentativeStatus
Greenwood B OstroskyArgentinaStephen Shaw UNQUALIFIED
Ricardo C StensethBrazilAmy Elsner QUALIFIED
Arvin E VocelkaFranceIoni Bowcher UNQUALIFIED
Wickens R MorascaGermanyOnyama Limba PROPOSAL
Jeanfrancois M ButtSpainBernardo Dominic NEGOTIATION
David A GauchoSpainXuxue Feng RENEWAL
Mayumi P DoeSpainIvan Magalhaes NEGOTIATION
Aruna D ShinkoJapanElwin Sharvill NEGOTIATION
Isabel B MarrierGermanyIoni Bowcher NEW
Wickens O MaletBrazilElwin Sharvill NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jeanfrancois W SaylorsArgentina2024-06-11Chapman, Ross E Esq NEGOTIATION65Bernardo Dominic
1001Silvio W GauchoAustralia2024-06-08Chemel, James L Cpa UNQUALIFIED92Asiya Javayant
1002Smith F MorascaCanada2024-06-03Buckley Miller Wright QUALIFIED0Ivan Magalhaes
1003Ashley C RutaFrance2024-06-21Chapman, Ross E Esq NEW81Stephen Shaw
1004Jennifer L DoeIndia2024-05-24Rousseaux, Michael Esq NEGOTIATION93Ivan Magalhaes
1005David Q SlusarskiArgentina2024-06-01Dorl, James J Esq NEW88Onyama Limba
1006Salvatore Z MaletBrazil2024-05-26Commercial Press PROPOSAL96Amy Elsner
1007Aruna V ShinkoArgentina2024-06-06Commercial Press NEW93Elwin Sharvill
1008Mayumi X CampainCanada2024-06-11Truhlar And Truhlar Attys UNQUALIFIED96Anna Fali
1009Antonio V MarrierIndia2024-05-25Morlong Associates QUALIFIED23Xuxue Feng
1010Darci Z NickaJapan2024-05-29Chemel, James L Cpa UNQUALIFIED70Onyama Limba
1011Octavia N VenereSpain2024-06-08Chemel, James L Cpa QUALIFIED27Ivan Magalhaes
1012Jefferson Y RimCanada2024-06-09Chemel, James L Cpa UNQUALIFIED60Elwin Sharvill
1013Maria T PoquetteCanada2024-05-26King, Christopher A Esq NEW93Ivan Magalhaes
1014Rodrigues D SchemmerSpain2024-06-17Chemel, James L Cpa NEW57Ivan Magalhaes
1015Jefferson A FollerBrazil2024-06-12Chemel, James L Cpa UNQUALIFIED0Asiya Javayant
1016Leon Z DoeRussia2024-06-05Rousseaux, Michael Esq UNQUALIFIED13Ivan Magalhaes
1017Izzy M FigeroaItaly2024-06-14Feltz Printing Service RENEWAL63Onyama Limba
1018Costa C StockhamSpain2024-06-08Chanay, Jeffrey A Esq RENEWAL46Xuxue Feng
1019Clifford Z WhobreyRussia2024-06-13Morlong Associates QUALIFIED27Amy Elsner
1020James D RimItaly2024-06-06Dorl, James J Esq QUALIFIED69Bernardo Dominic
1021Jones F ChuiItaly2024-06-07Truhlar And Truhlar Attys RENEWAL60Ivan Magalhaes
1022Leon P GlickJapan2024-06-06Buckley Miller Wright QUALIFIED48Asiya Javayant
1023Maisha D GarufiSpain2024-06-07Commercial Press QUALIFIED85Stephen Shaw
1024David J SaylorsIndia2024-05-25Feiner Bros UNQUALIFIED10Bernardo Dominic
1025Jones U FerenczGermany2024-06-16Buckley Miller Wright RENEWAL31Asiya Javayant
1026Cody R BowleyBrazil2024-06-06Feiner Bros RENEWAL25Ioni Bowcher
1027Maria S IturbideArgentina2024-05-26Buckley Miller Wright NEW5Bernardo Dominic
1028Sinclair Y StensethAustralia2024-06-18Buckley Miller Wright NEGOTIATION7Bernardo Dominic
1029Ivar H StockhamFrance2024-06-13Chemel, James L Cpa NEGOTIATION2Ivan Magalhaes
1030Alejandro S FlosiJapan2024-06-18Morlong Associates PROPOSAL32Ioni Bowcher
1031David I SchemmerRussia2024-06-01Feltz Printing Service NEW57Xuxue Feng
1032Salvatore E NestleJapan2024-06-09Commercial Press RENEWAL77Asiya Javayant
1033Jennifer Y MorascaJapan2024-05-27Rangoni Of Florence NEW71Asiya Javayant
1034Ricardo V OstroskyRussia2024-05-28Benton, John B Jr NEGOTIATION93Ivan Magalhaes
1035Salvatore O NickaJapan2024-06-11King, Christopher A Esq QUALIFIED71Asiya Javayant
1036Claire R VocelkaRussia2024-05-31Morlong Associates NEGOTIATION31Anna Fali
1037Isabel E ChuiGermany2024-06-22Commercial Press NEGOTIATION23Bernardo Dominic
1038Arvin H AlbaresRussia2024-06-15Feltz Printing Service NEW40Asiya Javayant
1039Faith C FigeroaFrance2024-06-13Chemel, James L Cpa NEW57Amy Elsner
1040Sinclair D DilliardIndia2024-05-24Buckley Miller Wright UNQUALIFIED10Onyama Limba
1041Juan C BowleyGermany2024-06-22Truhlar And Truhlar Attys NEGOTIATION92Elwin Sharvill
1042Arvin G MorascaRussia2024-06-14Chapman, Ross E Esq NEGOTIATION24Onyama Limba
1043Arvin Y WaycottGermany2024-05-28Morlong Associates NEW2Ioni Bowcher
1044Antonio I FigeroaItaly2024-05-25Feltz Printing Service PROPOSAL54Amy Elsner
1045Johnson K MacleadSpain2024-06-12Feltz Printing Service PROPOSAL26Anna Fali
1046Alejandro Q CaudyCanada2024-06-21Chapman, Ross E Esq UNQUALIFIED10Amy Elsner
1047Ricardo G DilliardSpain2024-06-09Chapman, Ross E Esq UNQUALIFIED81Ivan Magalhaes
1048Greenwood Q InouyeRussia2024-06-01Benton, John B Jr RENEWAL0Elwin Sharvill
1049Smith Q VenereFrance2024-06-05Commercial Press NEW93Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Adams P KuskoUnited KingdomIoni Bowcher RENEWAL
Leon C WaycottUnited KingdomAmy Elsner RENEWAL
Smith R MorascaArgentinaIoni Bowcher PROPOSAL
Jefferson N AlbaresItalyStephen Shaw QUALIFIED
Wickens V ShinkoSpainIoni Bowcher NEGOTIATION
Salvatore J CampainUnited KingdomAsiya Javayant NEGOTIATION
Wickens T WieserArgentinaIvan Magalhaes QUALIFIED
Juan U RutaCanadaIoni Bowcher RENEWAL
Arvin T FigeroaGermanyIvan Magalhaes PROPOSAL
Emily R NestleUnited KingdomElwin Sharvill RENEWAL
Ricardo W BologniaSpainIvan Magalhaes QUALIFIED
Ricardo V ChuiJapanAnna Fali RENEWAL
Aika T CampainAustraliaOnyama Limba QUALIFIED
Emily N KuskoSpainAmy Elsner RENEWAL
Johnson N GlickFranceElwin Sharvill NEGOTIATION
Ricardo I SergiBrazilOnyama Limba UNQUALIFIED
Alejandro Y CaudyIndiaIoni Bowcher UNQUALIFIED
Leja I StockhamBrazilOnyama Limba QUALIFIED
Misaki C RoysterJapanBernardo Dominic PROPOSAL
Rodrigues D CaudyFranceAmy Elsner QUALIFIED
James A DilliardUnited KingdomElwin Sharvill NEW
Greenwood N FerenczAustraliaStephen Shaw UNQUALIFIED
Faith S WaycottAustraliaOnyama Limba RENEWAL
Johnson N PerinUnited KingdomOnyama Limba RENEWAL
Juan H WieserRussiaIoni Bowcher NEW
Octavia Q PerinFranceAmy Elsner QUALIFIED
Darci X WhobreyAustraliaAmy Elsner UNQUALIFIED
Ashley N SergiFranceOnyama Limba RENEWAL
Costa W DilliardItalyAnna Fali UNQUALIFIED
Antonio P FlosiGermanyAsiya Javayant RENEWAL
Antonio R RutaItalyAnna Fali NEGOTIATION
Salvatore R FigeroaArgentinaBernardo Dominic UNQUALIFIED
Aruna E GauchoBrazilStephen Shaw PROPOSAL
Kaitlin E GlickSpainXuxue Feng NEW
Maria T BologniaItalyOnyama Limba QUALIFIED
Emily E VenereSpainElwin Sharvill NEGOTIATION
Maria J DoeArgentinaIoni Bowcher PROPOSAL
Jennifer V CaldareraCanadaAmy Elsner NEGOTIATION
Izzy Z CaldareraAustraliaOnyama Limba RENEWAL
Sinclair Z BologniaArgentinaElwin Sharvill QUALIFIED
Juan K ChuiRussiaOnyama Limba QUALIFIED
Maria M FerenczRussiaIoni Bowcher NEW
Johnson Y AmigonFranceElwin Sharvill RENEWAL
Clifford Q WieserBrazilIoni Bowcher NEW
David P RulapaughRussiaIvan Magalhaes UNQUALIFIED
Antonio R SergiArgentinaXuxue Feng QUALIFIED
Maria K ChuiItalyXuxue Feng RENEWAL
Murillo P DoeAustraliaIoni Bowcher NEGOTIATION
Emily E WhobreyAustraliaAmy Elsner QUALIFIED
Wickens B GillianAustraliaStephen Shaw NEW
Frozen Columns
Name
Jeanfrancois D Schemmer
Tony O Waycott
Aruna A Garufi
Aruna T Venere
Emily T Schemmer
Ashley M Royster
Kaitlin M Ruta
Aruna D Schemmer
Deepesh L Inouye
Maisha W Nestle
Kaitlin J Kolmetz
Munro J Paprocki
Munro B Perin
Kadeem M Campain
Izzy U Ferencz
Nicolas V Tollner
Costa U Perin
Stacey Z Vocelka
Alejandro S Nestle
Ivar Z Poquette
Kaitlin C Nestle
Faith U Campain
Ricardo B Saylors
Wickens K Rulapaugh
Adams P Oldroyd
Emily I Morasca
Costa Q Wieser
Maisha C Malet
Julie P Caldarera
Arvin J Venere
Antonio T Figeroa
Izzy A Gillian
Chavez T Campain
Jones J Slusarski
Ricardo F Darakjy
Adams G Shinko
Izzy I Figeroa
Leon F Briddick
Leja A Ostrosky
Kadeem I Darakjy
Ricardo B Shinko
Darci D Caudy
Darci W Wieser
Nicolas S Rim
Faith F Perin
Maria R Bolognia
Cody T Nestle
Adams R Bolognia
Nicolas K Sergi
Munro A Paprocki
IdCountryDate
1000India2024-05-26
1001Japan2024-06-05
1002Japan2024-06-12
1003Argentina2024-06-03
1004Brazil2024-05-25
1005India2024-06-02
1006Brazil2024-06-20
1007Australia2024-06-18
1008Russia2024-05-31
1009Argentina2024-06-20
1010India2024-06-12
1011Brazil2024-06-05
1012France2024-05-30
1013Germany2024-06-16
1014Brazil2024-06-08
1015Russia2024-06-22
1016Germany2024-06-22
1017Argentina2024-06-06
1018United Kingdom2024-06-05
1019Australia2024-06-10
1020Brazil2024-06-05
1021Australia2024-06-21
1022Brazil2024-05-27
1023Germany2024-06-07
1024Russia2024-06-19
1025Brazil2024-06-14
1026Canada2024-06-21
1027Japan2024-06-07
1028Canada2024-06-16
1029Spain2024-06-14
1030Canada2024-06-01
1031Spain2024-05-30
1032Canada2024-06-17
1033France2024-06-22
1034Italy2024-06-02
1035Russia2024-06-05
1036Brazil2024-06-05
1037Germany2024-05-28
1038Italy2024-06-15
1039Canada2024-06-13
1040Spain2024-06-09
1041Argentina2024-06-12
1042Australia2024-06-16
1043Argentina2024-06-07
1044Japan2024-06-12
1045Japan2024-06-09
1046Germany2024-05-27
1047Brazil2024-06-06
1048Canada2024-06-15
1049Canada2024-05-27

On-Demand Data

NameIdCountryDate
Ivar D Kolmetz1000Russia2024-06-12
Francesco F Nicka1001India2024-06-08
Isabel E Wieser1002Japan2024-06-06
Deepesh G Shinko1003Germany2024-06-18
Leja K Stockham1004Spain2024-06-07
Sinclair U Dilliard1005Spain2024-06-10
Johnson Y Amigon1006Spain2024-06-04
Leon D Paprocki1007Japan2024-06-09
Chavez Z Tollner1008Australia2024-06-14
Jones O Chui1009France2024-05-24
Greenwood J Paprocki1010Brazil2024-06-11
Ashley C Oldroyd1011Brazil2024-06-21
Isabel L Morasca1012Brazil2024-06-20
Silvio T Ferencz1013Italy2024-05-24
Isabel Z Figeroa1014Canada2024-06-14
Wickens L Iturbide1015Japan2024-06-16
Greenwood P Gillian1016Canada2024-05-28
Misaki M Ruta1017Spain2024-06-20
Juan Z Flosi1018Italy2024-06-12
Arvin Q Dilliard1019Spain2024-05-24
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Kadeem H ButtFranceAsiya Javayant RENEWAL
Kadeem M DilliardGermanyStephen Shaw RENEWAL
Maria P CaldareraCanadaAsiya Javayant NEW
Ashley L SchemmerItalyIvan Magalhaes PROPOSAL
Misaki V MaletArgentinaXuxue Feng NEGOTIATION
Misaki U WaycottSpainAsiya Javayant RENEWAL
Arvin L PaprockiAustraliaXuxue Feng RENEWAL
Wickens S DoeSpainBernardo Dominic NEGOTIATION
Emily I WaycottBrazilAmy Elsner NEGOTIATION
Isabel K AlbaresBrazilIoni Bowcher UNQUALIFIED
Morrow D IturbideJapanAnna Fali UNQUALIFIED
Deepesh T NickaArgentinaIvan Magalhaes PROPOSAL
Aruna E GillianArgentinaIvan Magalhaes QUALIFIED
Rodrigues J RimUnited KingdomIvan Magalhaes PROPOSAL
Johnson A RulapaughIndiaBernardo Dominic PROPOSAL
Kadeem X ChuiJapanXuxue Feng NEGOTIATION
Alejandro C OstroskyRussiaStephen Shaw RENEWAL
Claire G PaprockiSpainAnna Fali RENEWAL
Deepesh Q MaletSpainStephen Shaw UNQUALIFIED
Octavia M MorascaJapanOnyama Limba NEGOTIATION
Ivar U WhobreyJapanXuxue Feng NEGOTIATION
Arvin F CaldareraItalyIvan Magalhaes PROPOSAL
Deepesh V StockhamJapanIvan Magalhaes QUALIFIED
Aditya X KuskoUnited KingdomIvan Magalhaes PROPOSAL
Aruna Y DilliardSpainAnna Fali RENEWAL
Mujtaba P BologniaCanadaBernardo Dominic QUALIFIED
Morrow X FigeroaBrazilElwin Sharvill PROPOSAL
Octavia V AlbaresUnited KingdomOnyama Limba RENEWAL
Ashley G CampainArgentinaStephen Shaw NEGOTIATION
Rodrigues D MaletCanadaAsiya Javayant QUALIFIED
Mayumi T MarrierSpainElwin Sharvill UNQUALIFIED
Isabel W InouyeGermanyBernardo Dominic NEW
James F ShinkoCanadaXuxue Feng QUALIFIED
Stacey S FlosiCanadaXuxue Feng NEGOTIATION
Salvatore M NickaRussiaStephen Shaw UNQUALIFIED
Alejandro W BowleyFranceBernardo Dominic UNQUALIFIED
Mujtaba A GillianUnited KingdomIvan Magalhaes UNQUALIFIED
Munro J MacleadBrazilIoni Bowcher NEGOTIATION
Deepesh L RoysterIndiaIvan Magalhaes NEW
Stacey H FerenczSpainIvan Magalhaes 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>