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
Tony P MaletIndiaXuxue Feng RENEWAL
Deepesh J IturbideArgentinaBernardo Dominic UNQUALIFIED
Ivar G GlickBrazilAsiya Javayant NEGOTIATION
Wickens Z ButtItalyElwin Sharvill QUALIFIED
Izzy X OstroskyGermanyAsiya Javayant RENEWAL
Claire E RulapaughAustraliaStephen Shaw UNQUALIFIED
Ivar A GlickUnited KingdomAsiya Javayant QUALIFIED
Munro J WaycottIndiaXuxue Feng NEW
Adams E ChuiFranceXuxue Feng NEW
Claire S KolmetzFranceIoni Bowcher PROPOSAL
Rodrigues N SergiUnited KingdomStephen Shaw NEW
Adams L AmigonBrazilIoni Bowcher NEW
Ivar L GlickAustraliaIoni Bowcher QUALIFIED
Juan B TollnerAustraliaAmy Elsner QUALIFIED
Mayumi L KuskoJapanAmy Elsner UNQUALIFIED
Kaitlin X SergiFranceAsiya Javayant QUALIFIED
Izzy G SchemmerRussiaAsiya Javayant RENEWAL
Jennifer Y RutaIndiaStephen Shaw NEW
Aika C AlbaresArgentinaAnna Fali PROPOSAL
Isabel M DarakjyFranceOnyama Limba NEGOTIATION
Adams A MacleadIndiaIvan Magalhaes RENEWAL
Ashley Y BologniaAustraliaIoni Bowcher QUALIFIED
Misaki W PerinUnited KingdomStephen Shaw NEGOTIATION
Jefferson Y FollerItalyAmy Elsner NEW
Greenwood C WaycottItalyXuxue Feng NEW
Costa X StensethIndiaIoni Bowcher RENEWAL
Jeanfrancois S SaylorsFranceAsiya Javayant UNQUALIFIED
Antonio F KolmetzUnited KingdomAsiya Javayant RENEWAL
Izzy L AlbaresJapanStephen Shaw NEW
Leon F BriddickFranceAsiya Javayant QUALIFIED
Maisha N VenereRussiaBernardo Dominic NEW
Octavia Z StockhamItalyIvan Magalhaes PROPOSAL
Ricardo L ChuiBrazilElwin Sharvill UNQUALIFIED
Munro H WieserAustraliaOnyama Limba UNQUALIFIED
Maisha C KolmetzItalyAmy Elsner NEW
Jeanfrancois X InouyeArgentinaAmy Elsner NEW
Jennifer O GillianBrazilBernardo Dominic PROPOSAL
Johnson N AlbaresBrazilXuxue Feng NEW
Izzy C DilliardArgentinaBernardo Dominic PROPOSAL
Smith N NestleCanadaOnyama Limba QUALIFIED
Mujtaba V CaldareraItalyBernardo Dominic RENEWAL
Juan T MarrierFranceOnyama Limba RENEWAL
Julie L ButtUnited KingdomIoni Bowcher PROPOSAL
Aika Z FigeroaIndiaOnyama Limba PROPOSAL
Jeanfrancois Z AlbaresItalyBernardo Dominic UNQUALIFIED
Arvin Y BowleySpainAsiya Javayant UNQUALIFIED
Cody D CaudyIndiaXuxue Feng NEW
Rodrigues D MaletGermanyOnyama Limba NEW
Sinclair U MorascaArgentinaAmy Elsner PROPOSAL
Stacey P SlusarskiJapanAnna Fali RENEWAL
Horizontal
NameCountryRepresentativeStatus
Octavia T GauchoBrazilOnyama Limba PROPOSAL
Salvatore P MorascaArgentinaAnna Fali PROPOSAL
Tony W ChuiCanadaIvan Magalhaes UNQUALIFIED
Wickens O WaycottUnited KingdomAnna Fali QUALIFIED
Leja N SchemmerFranceElwin Sharvill UNQUALIFIED
Stacey A NickaIndiaAnna Fali NEGOTIATION
Clifford N DarakjyItalyAsiya Javayant UNQUALIFIED
Tony Y VocelkaArgentinaBernardo Dominic RENEWAL
Claire T InouyeRussiaIoni Bowcher PROPOSAL
Misaki N StockhamIndiaXuxue Feng PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000David T DoeUnited Kingdom2024-06-11Rousseaux, Michael Esq NEW22Elwin Sharvill
1001Nicolas L DilliardBrazil2024-05-26Feltz Printing Service NEW35Bernardo Dominic
1002Emily X BriddickJapan2024-06-21Rangoni Of Florence PROPOSAL38Ioni Bowcher
1003Faith S InouyeItaly2024-05-29Dorl, James J Esq PROPOSAL86Elwin Sharvill
1004Johnson C WaycottArgentina2024-06-11Feiner Bros RENEWAL73Ioni Bowcher
1005Wickens E PerinSpain2024-05-25Commercial Press QUALIFIED44Ivan Magalhaes
1006David U InouyeRussia2024-06-09Commercial Press NEW65Bernardo Dominic
1007Izzy W FerenczGermany2024-06-07Feltz Printing Service NEGOTIATION22Amy Elsner
1008Jennifer Y InouyeItaly2024-06-13Chapman, Ross E Esq QUALIFIED26Onyama Limba
1009Clifford F FerenczArgentina2024-05-26Feiner Bros PROPOSAL52Ivan Magalhaes
1010Emily J WieserJapan2024-06-11Chanay, Jeffrey A Esq UNQUALIFIED19Elwin Sharvill
1011Maisha E SlusarskiItaly2024-06-08Feltz Printing Service QUALIFIED19Stephen Shaw
1012Misaki Z VocelkaRussia2024-05-24Commercial Press RENEWAL16Ioni Bowcher
1013Ricardo N AmigonSpain2024-05-24Feltz Printing Service QUALIFIED35Ivan Magalhaes
1014David D VocelkaCanada2024-06-05Chemel, James L Cpa QUALIFIED22Onyama Limba
1015Clifford K ButtBrazil2024-05-31Chemel, James L Cpa PROPOSAL78Ioni Bowcher
1016Wickens K NickaUnited Kingdom2024-05-29King, Christopher A Esq RENEWAL11Amy Elsner
1017James M PaprockiFrance2024-06-13Morlong Associates NEW80Bernardo Dominic
1018Arvin V FerenczIndia2024-06-09Chanay, Jeffrey A Esq NEW55Onyama Limba
1019Misaki N NestleJapan2024-06-02Buckley Miller Wright UNQUALIFIED71Elwin Sharvill
1020Faith C RoysterItaly2024-06-01Rousseaux, Michael Esq UNQUALIFIED7Asiya Javayant
1021Leon E DilliardGermany2024-06-06Benton, John B Jr RENEWAL70Bernardo Dominic
1022Izzy P PerinAustralia2024-06-21Rousseaux, Michael Esq QUALIFIED40Stephen Shaw
1023Aditya J CaudyJapan2024-06-19Truhlar And Truhlar Attys NEGOTIATION2Anna Fali
1024Stacey T GlickFrance2024-06-03Feltz Printing Service NEGOTIATION60Elwin Sharvill
1025David M PoquetteGermany2024-06-10King, Christopher A Esq NEGOTIATION60Bernardo Dominic
1026Ashley A DilliardRussia2024-05-25Buckley Miller Wright PROPOSAL29Asiya Javayant
1027Adams J SchemmerArgentina2024-06-02Printing Dimensions NEW86Onyama Limba
1028Francesco Y BriddickUnited Kingdom2024-06-08Feltz Printing Service PROPOSAL54Onyama Limba
1029Silvio Z CaudyJapan2024-06-09Benton, John B Jr NEGOTIATION99Amy Elsner
1030Jeanfrancois B DarakjySpain2024-06-14Commercial Press NEW16Ioni Bowcher
1031Clifford V GarufiRussia2024-06-09Feiner Bros RENEWAL40Anna Fali
1032Cody R AlbaresUnited Kingdom2024-06-17Rangoni Of Florence NEGOTIATION90Anna Fali
1033Deepesh B OldroydAustralia2024-06-20Truhlar And Truhlar Attys NEW89Ivan Magalhaes
1034Ricardo B NestleFrance2024-05-30Chapman, Ross E Esq RENEWAL72Asiya Javayant
1035Johnson P GarufiRussia2024-06-18Feltz Printing Service NEW87Onyama Limba
1036Emily Z InouyeItaly2024-06-11Rousseaux, Michael Esq RENEWAL46Amy Elsner
1037David T SchemmerSpain2024-06-01King, Christopher A Esq QUALIFIED10Xuxue Feng
1038Smith C IturbideJapan2024-06-20Feiner Bros RENEWAL28Anna Fali
1039Jones M WieserBrazil2024-06-18Dorl, James J Esq UNQUALIFIED35Xuxue Feng
1040Julie A RulapaughAustralia2024-06-19Morlong Associates NEGOTIATION34Stephen Shaw
1041Maisha M FigeroaCanada2024-05-28Truhlar And Truhlar Attys QUALIFIED50Bernardo Dominic
1042Jefferson J GlickRussia2024-06-13Chanay, Jeffrey A Esq NEGOTIATION23Asiya Javayant
1043Claire I PerinArgentina2024-06-21King, Christopher A Esq PROPOSAL76Ivan Magalhaes
1044Kadeem N TollnerCanada2024-06-06Commercial Press PROPOSAL77Anna Fali
1045Emily V WaycottAustralia2024-05-29Commercial Press QUALIFIED97Stephen Shaw
1046Ricardo Z GauchoFrance2024-06-10Morlong Associates PROPOSAL46Amy Elsner
1047Rodrigues X WieserArgentina2024-06-20Dorl, James J Esq PROPOSAL3Anna Fali
1048Munro D PerinAustralia2024-06-08Truhlar And Truhlar Attys PROPOSAL9Xuxue Feng
1049Aditya R SergiAustralia2024-06-15Rangoni Of Florence RENEWAL54Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Juan A FlosiCanadaBernardo Dominic NEW
David B WhobreyCanadaIvan Magalhaes UNQUALIFIED
James Z WaycottItalyAsiya Javayant PROPOSAL
Cody G DilliardItalyIoni Bowcher NEW
James H SergiArgentinaElwin Sharvill NEW
Ricardo C FollerSpainElwin Sharvill NEW
Leja O BriddickFranceOnyama Limba RENEWAL
Darci W SlusarskiArgentinaStephen Shaw NEGOTIATION
Stacey R PoquetteJapanIvan Magalhaes QUALIFIED
Arvin Z FollerRussiaAsiya Javayant QUALIFIED
Adams U ButtJapanIoni Bowcher NEGOTIATION
Francesco D CaudyFranceStephen Shaw PROPOSAL
Wickens I SergiRussiaXuxue Feng RENEWAL
Kadeem A ButtSpainIvan Magalhaes QUALIFIED
Johnson R MaletGermanyOnyama Limba UNQUALIFIED
Juan E RimCanadaIvan Magalhaes NEW
Ashley S SergiArgentinaStephen Shaw PROPOSAL
Smith J NestleItalyAsiya Javayant RENEWAL
Izzy A AlbaresGermanyIoni Bowcher RENEWAL
Ivar M NestleRussiaAnna Fali QUALIFIED
Jefferson J PerinUnited KingdomOnyama Limba PROPOSAL
Leja E SlusarskiSpainStephen Shaw PROPOSAL
Smith B WhobreyCanadaAmy Elsner UNQUALIFIED
Ricardo V NestleUnited KingdomBernardo Dominic UNQUALIFIED
Wickens V FigeroaRussiaAnna Fali QUALIFIED
Aika J CaudyCanadaXuxue Feng NEGOTIATION
Mayumi G ButtAustraliaStephen Shaw UNQUALIFIED
Arvin X CampainGermanyAsiya Javayant RENEWAL
Jeanfrancois G PoquetteAustraliaIoni Bowcher QUALIFIED
Emily P ButtRussiaAmy Elsner NEGOTIATION
Faith H NickaBrazilIvan Magalhaes PROPOSAL
Juan N BowleyIndiaAnna Fali NEW
Tony N KolmetzArgentinaXuxue Feng NEW
Johnson G BriddickIndiaBernardo Dominic RENEWAL
Aika D GarufiArgentinaAmy Elsner RENEWAL
Mujtaba N MorascaCanadaXuxue Feng RENEWAL
Arvin Z KuskoUnited KingdomIoni Bowcher NEW
Alejandro V MaletFranceXuxue Feng QUALIFIED
Jefferson J PerinItalyAmy Elsner PROPOSAL
Mayumi S MacleadUnited KingdomIvan Magalhaes NEGOTIATION
Chavez N SergiBrazilElwin Sharvill PROPOSAL
Julie R PaprockiAustraliaAsiya Javayant QUALIFIED
Tony A PaprockiBrazilStephen Shaw UNQUALIFIED
Tony M SaylorsAustraliaBernardo Dominic UNQUALIFIED
Munro U ChuiItalyElwin Sharvill PROPOSAL
Misaki C SergiUnited KingdomIvan Magalhaes NEW
Maisha Q FerenczGermanyAmy Elsner UNQUALIFIED
Costa V FlosiBrazilStephen Shaw RENEWAL
Maisha W BologniaJapanBernardo Dominic UNQUALIFIED
Sinclair J PoquetteIndiaStephen Shaw UNQUALIFIED
Frozen Columns
Name
Chavez Y Gaucho
Aruna U Stenseth
Kadeem X Flosi
Jeanfrancois E Sergi
Octavia E Wieser
Maisha G Gaucho
Jones Y Caldarera
Sinclair D Wieser
Ashley K Stenseth
Jefferson T Schemmer
Ivar Z Stockham
Juan C Butt
Silvio Q Malet
Juan F Nestle
Isabel M Maclead
Chavez F Amigon
Rodrigues P Royster
Alejandro Z Shinko
Wickens T Inouye
Mayumi T Flosi
Morrow M Albares
Misaki Q Royster
Jennifer H Schemmer
Julie Q Dilliard
Claire S Whobrey
James D Morasca
Mujtaba X Albares
Mujtaba D Bowley
Alejandro V Dilliard
Maisha A Ferencz
Wickens G Nestle
Leja N Caudy
Jeanfrancois J Ostrosky
Aditya U Gillian
Misaki A Oldroyd
Jennifer B Maclead
Aika M Ruta
Morrow J Rim
Alejandro O Poquette
Salvatore X Gillian
Johnson E Perin
Johnson J Rulapaugh
Jennifer E Chui
Aika N Dilliard
Clifford H Maclead
Claire P Rim
Salvatore S Kusko
Claire Q Malet
Jefferson I Slusarski
Murillo U Nestle
IdCountryDate
1000Spain2024-05-24
1001Argentina2024-06-01
1002Argentina2024-06-06
1003Italy2024-05-31
1004India2024-06-20
1005Germany2024-05-25
1006Australia2024-06-17
1007Spain2024-06-13
1008France2024-06-12
1009Russia2024-06-21
1010Russia2024-06-21
1011Japan2024-06-04
1012United Kingdom2024-06-13
1013Germany2024-06-16
1014Japan2024-05-31
1015Italy2024-05-29
1016Spain2024-06-16
1017Germany2024-06-12
1018India2024-06-11
1019Japan2024-06-21
1020United Kingdom2024-06-16
1021Japan2024-06-06
1022United Kingdom2024-06-13
1023United Kingdom2024-05-30
1024Australia2024-06-03
1025Australia2024-06-12
1026France2024-05-25
1027Australia2024-06-08
1028United Kingdom2024-06-03
1029France2024-06-19
1030Australia2024-06-15
1031Spain2024-05-24
1032Argentina2024-05-26
1033Australia2024-05-29
1034Canada2024-06-09
1035France2024-05-29
1036Germany2024-06-13
1037India2024-06-20
1038Russia2024-05-24
1039Brazil2024-06-20
1040United Kingdom2024-06-21
1041Australia2024-05-25
1042Argentina2024-05-23
1043Brazil2024-06-17
1044Argentina2024-06-19
1045Argentina2024-06-09
1046Spain2024-05-29
1047India2024-06-21
1048Brazil2024-06-19
1049Australia2024-06-21

On-Demand Data

NameIdCountryDate
Leon J Caudy1000United Kingdom2024-06-02
Chavez K Figeroa1001Canada2024-05-31
Jennifer V Garufi1002Germany2024-06-01
Francesco Y Inouye1003Germany2024-06-13
Juan C Butt1004Italy2024-05-23
Misaki C Garufi1005Argentina2024-05-27
Clifford O Malet1006Australia2024-06-20
Arvin W Darakjy1007Australia2024-06-03
Johnson B Slusarski1008Japan2024-05-23
Leja S Darakjy1009Brazil2024-06-14
Francesco J Ferencz1010India2024-06-09
Jeanfrancois C Nestle1011Japan2024-06-03
Ashley Y Whobrey1012Spain2024-06-16
Jefferson F Saylors1013Italy2024-06-12
Ricardo K Nestle1014India2024-06-07
Deepesh Z Marrier1015Germany2024-05-26
Emily B Stenseth1016Canada2024-06-19
Maria F Waycott1017United Kingdom2024-06-16
Misaki K Iturbide1018Canada2024-06-15
Ricardo I Stenseth1019Argentina2024-06-09
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Munro Q ShinkoCanadaAsiya Javayant QUALIFIED
Leja Q DarakjyGermanyIoni Bowcher QUALIFIED
Leja F MacleadIndiaAnna Fali RENEWAL
Smith F KuskoCanadaOnyama Limba NEW
Stacey Q BologniaSpainAnna Fali UNQUALIFIED
Aruna O StensethItalyElwin Sharvill PROPOSAL
Silvio P ButtBrazilAsiya Javayant UNQUALIFIED
Faith E CaudySpainElwin Sharvill NEGOTIATION
Kaitlin C InouyeSpainIoni Bowcher QUALIFIED
Jennifer W WhobreyJapanXuxue Feng RENEWAL
Isabel A GarufiBrazilAmy Elsner NEW
Sinclair J BowleyGermanyElwin Sharvill NEGOTIATION
Izzy Q KuskoGermanyOnyama Limba UNQUALIFIED
Misaki K InouyeJapanBernardo Dominic NEW
Jeanfrancois N ShinkoJapanAmy Elsner PROPOSAL
Nicolas V VocelkaAustraliaAsiya Javayant UNQUALIFIED
Maria A SlusarskiCanadaAnna Fali RENEWAL
Sinclair L SchemmerAustraliaOnyama Limba QUALIFIED
Jones W OstroskyUnited KingdomElwin Sharvill NEGOTIATION
Sinclair Q RimItalyElwin Sharvill RENEWAL
Aditya J ButtUnited KingdomElwin Sharvill NEW
Darci I ButtAustraliaXuxue Feng QUALIFIED
Salvatore F SlusarskiAustraliaAsiya Javayant UNQUALIFIED
Jennifer V VenereArgentinaIoni Bowcher QUALIFIED
Misaki X SaylorsSpainElwin Sharvill NEGOTIATION
Clifford B CaudyBrazilElwin Sharvill UNQUALIFIED
Adams J GillianBrazilIvan Magalhaes NEW
Darci A StensethBrazilStephen Shaw RENEWAL
Jefferson A AmigonRussiaAnna Fali PROPOSAL
Ricardo T BologniaUnited KingdomElwin Sharvill QUALIFIED
Antonio Z ButtJapanAnna Fali UNQUALIFIED
Adams D GauchoRussiaAmy Elsner RENEWAL
Costa S FollerIndiaStephen Shaw RENEWAL
Rodrigues L RoysterFranceAsiya Javayant QUALIFIED
Salvatore P SlusarskiGermanyAsiya Javayant NEW
Jeanfrancois P MaletCanadaAsiya Javayant RENEWAL
Clifford V RulapaughUnited KingdomIvan Magalhaes NEW
Deepesh N WhobreyFranceAsiya Javayant NEGOTIATION
Isabel D NickaRussiaIvan Magalhaes PROPOSAL
Salvatore R ButtAustraliaIoni 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>