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
Aika K GarufiJapanAsiya Javayant QUALIFIED
Kaitlin E DoeJapanXuxue Feng PROPOSAL
Leon Z CaudyRussiaAnna Fali UNQUALIFIED
Nicolas Y SlusarskiGermanyElwin Sharvill NEW
James H DoeRussiaElwin Sharvill UNQUALIFIED
Clifford W MaletUnited KingdomXuxue Feng PROPOSAL
Murillo Z DarakjyIndiaOnyama Limba NEGOTIATION
Johnson M SchemmerIndiaAnna Fali UNQUALIFIED
Johnson N ButtJapanStephen Shaw UNQUALIFIED
Aditya C CaldareraUnited KingdomXuxue Feng NEW
Wickens H NickaSpainXuxue Feng NEGOTIATION
Stacey G StensethArgentinaXuxue Feng RENEWAL
David B BriddickRussiaAmy Elsner UNQUALIFIED
Izzy W MaletArgentinaXuxue Feng NEW
Mayumi W AmigonUnited KingdomXuxue Feng UNQUALIFIED
Costa M ShinkoCanadaAmy Elsner NEGOTIATION
Isabel I TollnerUnited KingdomAsiya Javayant UNQUALIFIED
Aika C SaylorsBrazilAsiya Javayant QUALIFIED
Octavia J OstroskyFranceXuxue Feng PROPOSAL
Chavez M OldroydIndiaIvan Magalhaes UNQUALIFIED
Misaki Q WhobreyItalyAsiya Javayant QUALIFIED
Adams V PaprockiIndiaAmy Elsner PROPOSAL
Francesco V MarrierItalyAnna Fali PROPOSAL
Johnson V VocelkaSpainIvan Magalhaes PROPOSAL
Salvatore E BologniaSpainXuxue Feng RENEWAL
Salvatore M BowleyIndiaAsiya Javayant NEGOTIATION
James O InouyeSpainAmy Elsner PROPOSAL
Murillo N VocelkaSpainIvan Magalhaes PROPOSAL
Izzy X StensethAustraliaIoni Bowcher QUALIFIED
Murillo W RutaIndiaAmy Elsner RENEWAL
Aika I BologniaItalyIoni Bowcher QUALIFIED
Clifford T ShinkoItalyAmy Elsner NEW
Mujtaba F CaudyBrazilIvan Magalhaes PROPOSAL
Maisha W KolmetzArgentinaIoni Bowcher QUALIFIED
Aditya N VenereBrazilElwin Sharvill PROPOSAL
Kaitlin S WaycottJapanBernardo Dominic NEGOTIATION
Juan J OstroskyUnited KingdomXuxue Feng PROPOSAL
James V OldroydBrazilOnyama Limba NEW
Smith H SergiFranceIoni Bowcher RENEWAL
Jones H VenereBrazilXuxue Feng NEGOTIATION
Tony U BologniaIndiaIvan Magalhaes UNQUALIFIED
Emily Q FlosiBrazilAsiya Javayant PROPOSAL
Sinclair V PoquetteAustraliaAmy Elsner UNQUALIFIED
Antonio N NestleItalyXuxue Feng NEGOTIATION
Ivar D ChuiIndiaAmy Elsner QUALIFIED
Isabel S NestleGermanyStephen Shaw NEW
Mujtaba Q RoysterCanadaAsiya Javayant RENEWAL
Leon V OstroskyArgentinaAmy Elsner UNQUALIFIED
Greenwood U MaletRussiaXuxue Feng RENEWAL
Salvatore Z NickaIndiaStephen Shaw NEW
Horizontal
NameCountryRepresentativeStatus
Aruna H BologniaArgentinaAnna Fali NEW
Kadeem Y GarufiCanadaStephen Shaw NEW
Tony K RutaAustraliaAmy Elsner NEW
Salvatore V FollerUnited KingdomBernardo Dominic NEW
Antonio N WhobreyBrazilElwin Sharvill PROPOSAL
Sinclair V MorascaCanadaOnyama Limba RENEWAL
Ricardo C DilliardBrazilIoni Bowcher NEGOTIATION
Claire R CampainUnited KingdomAnna Fali NEGOTIATION
Greenwood M StockhamJapanBernardo Dominic NEW
Rodrigues U AlbaresCanadaElwin Sharvill RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ashley S WhobreyBrazil2024-06-23Morlong Associates NEW23Stephen Shaw
1001Maisha A BologniaItaly2024-06-18Rousseaux, Michael Esq RENEWAL8Asiya Javayant
1002Jones W MaletAustralia2024-05-26Truhlar And Truhlar Attys QUALIFIED56Bernardo Dominic
1003Antonio N BriddickCanada2024-06-04Printing Dimensions RENEWAL11Bernardo Dominic
1004Izzy V SchemmerRussia2024-06-23Printing Dimensions PROPOSAL64Anna Fali
1005Jennifer P RutaArgentina2024-06-16Truhlar And Truhlar Attys RENEWAL65Ivan Magalhaes
1006Aika P InouyeFrance2024-06-15Truhlar And Truhlar Attys PROPOSAL22Bernardo Dominic
1007Stacey I FigeroaGermany2024-06-02Printing Dimensions NEGOTIATION25Asiya Javayant
1008Mayumi J RimFrance2024-05-26Printing Dimensions PROPOSAL5Bernardo Dominic
1009Tony W OstroskySpain2024-06-14Truhlar And Truhlar Attys PROPOSAL85Bernardo Dominic
1010Maria X FlosiItaly2024-06-15Morlong Associates PROPOSAL21Bernardo Dominic
1011Izzy X DoeRussia2024-06-16Rousseaux, Michael Esq NEGOTIATION45Elwin Sharvill
1012Julie M MorascaCanada2024-06-03Chemel, James L Cpa UNQUALIFIED73Stephen Shaw
1013Mujtaba N MorascaSpain2024-05-31Benton, John B Jr RENEWAL93Onyama Limba
1014Sinclair N MacleadIndia2024-06-17Commercial Press PROPOSAL10Xuxue Feng
1015Clifford L CaudyGermany2024-05-31Buckley Miller Wright NEGOTIATION34Bernardo Dominic
1016Arvin N FlosiUnited Kingdom2024-06-01Chanay, Jeffrey A Esq UNQUALIFIED8Asiya Javayant
1017Aditya E StockhamCanada2024-06-18Rangoni Of Florence QUALIFIED56Ivan Magalhaes
1018Wickens U DilliardBrazil2024-06-07Morlong Associates PROPOSAL90Ivan Magalhaes
1019Isabel O FollerItaly2024-06-20Feiner Bros UNQUALIFIED71Onyama Limba
1020Ricardo Z NickaCanada2024-05-30Chanay, Jeffrey A Esq RENEWAL39Anna Fali
1021Darci T CampainJapan2024-05-26Feltz Printing Service NEGOTIATION97Amy Elsner
1022Adams A KolmetzUnited Kingdom2024-06-17Commercial Press NEW67Asiya Javayant
1023Costa Y WaycottIndia2024-06-22Commercial Press RENEWAL67Elwin Sharvill
1024Mujtaba A KuskoUnited Kingdom2024-06-05Chemel, James L Cpa NEGOTIATION17Amy Elsner
1025Deepesh D DarakjyUnited Kingdom2024-06-14Buckley Miller Wright NEW63Elwin Sharvill
1026Ricardo O RoysterCanada2024-06-15Dorl, James J Esq UNQUALIFIED9Xuxue Feng
1027Leon K MarrierJapan2024-06-13Dorl, James J Esq UNQUALIFIED54Amy Elsner
1028Aruna L MacleadFrance2024-06-16Chapman, Ross E Esq NEGOTIATION10Stephen Shaw
1029Jeanfrancois U SchemmerAustralia2024-06-18Benton, John B Jr RENEWAL92Onyama Limba
1030Misaki H GlickRussia2024-06-10Buckley Miller Wright QUALIFIED47Anna Fali
1031Jones W SchemmerRussia2024-06-02Benton, John B Jr UNQUALIFIED33Anna Fali
1032Clifford Y WhobreySpain2024-06-05Dorl, James J Esq NEGOTIATION51Bernardo Dominic
1033Ashley J SchemmerArgentina2024-06-18Buckley Miller Wright UNQUALIFIED70Ioni Bowcher
1034Leon L RutaAustralia2024-06-05Benton, John B Jr UNQUALIFIED37Bernardo Dominic
1035Julie W PoquetteCanada2024-06-05Commercial Press NEGOTIATION19Bernardo Dominic
1036Leja D AmigonArgentina2024-06-01Buckley Miller Wright RENEWAL75Ioni Bowcher
1037Tony R StockhamFrance2024-06-08Rousseaux, Michael Esq NEW30Onyama Limba
1038Silvio B DarakjyGermany2024-06-15Dorl, James J Esq NEW77Onyama Limba
1039Julie U StensethAustralia2024-06-14Rousseaux, Michael Esq PROPOSAL87Anna Fali
1040Murillo O WaycottRussia2024-06-16Rangoni Of Florence PROPOSAL22Xuxue Feng
1041David T DoeCanada2024-06-12Chanay, Jeffrey A Esq NEGOTIATION80Elwin Sharvill
1042Mayumi N RutaArgentina2024-06-12Chapman, Ross E Esq QUALIFIED88Anna Fali
1043Julie L InouyeAustralia2024-06-01Dorl, James J Esq QUALIFIED86Onyama Limba
1044Chavez T RutaFrance2024-05-28Feiner Bros NEGOTIATION35Amy Elsner
1045Stacey C OldroydJapan2024-06-24King, Christopher A Esq PROPOSAL31Amy Elsner
1046Ricardo M DilliardFrance2024-06-13Rousseaux, Michael Esq NEGOTIATION62Onyama Limba
1047Misaki X FerenczGermany2024-05-26Chanay, Jeffrey A Esq PROPOSAL14Onyama Limba
1048Isabel R CaudyCanada2024-06-02Dorl, James J Esq UNQUALIFIED22Anna Fali
1049Greenwood N DilliardGermany2024-06-12Truhlar And Truhlar Attys NEW71Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Ashley N NickaSpainAsiya Javayant RENEWAL
Jones N FlosiFranceIvan Magalhaes NEW
Misaki O AmigonBrazilXuxue Feng QUALIFIED
Darci T AmigonBrazilAmy Elsner UNQUALIFIED
Faith Q AlbaresIndiaIoni Bowcher UNQUALIFIED
Francesco G SergiRussiaAsiya Javayant UNQUALIFIED
David U WieserUnited KingdomXuxue Feng NEGOTIATION
Costa C GlickBrazilAsiya Javayant UNQUALIFIED
Kadeem W FlosiAustraliaAsiya Javayant RENEWAL
Silvio C MorascaIndiaAmy Elsner PROPOSAL
Darci F PerinGermanyBernardo Dominic UNQUALIFIED
Salvatore L CampainItalyBernardo Dominic PROPOSAL
Octavia K InouyeCanadaIoni Bowcher NEGOTIATION
Ivar P CampainUnited KingdomStephen Shaw RENEWAL
Francesco C GauchoSpainIvan Magalhaes UNQUALIFIED
Maria G SlusarskiIndiaBernardo Dominic PROPOSAL
Leja F WhobreyBrazilXuxue Feng PROPOSAL
Arvin Y GillianFranceIoni Bowcher QUALIFIED
Silvio O AlbaresArgentinaOnyama Limba QUALIFIED
Jeanfrancois A OstroskyGermanyAnna Fali PROPOSAL
Claire Z NestleCanadaElwin Sharvill PROPOSAL
Ricardo A PoquetteRussiaBernardo Dominic NEGOTIATION
Wickens W BowleyJapanXuxue Feng NEW
Emily T IturbideItalyAsiya Javayant UNQUALIFIED
Leja Z GillianSpainAsiya Javayant UNQUALIFIED
Mayumi V RulapaughSpainAmy Elsner QUALIFIED
Jeanfrancois H BriddickFranceIoni Bowcher UNQUALIFIED
Ashley F AlbaresCanadaIoni Bowcher RENEWAL
Wickens W ButtIndiaAsiya Javayant QUALIFIED
Alejandro W StensethJapanIoni Bowcher RENEWAL
Aditya B NickaSpainXuxue Feng PROPOSAL
Juan F OstroskySpainIvan Magalhaes UNQUALIFIED
Aika H PerinArgentinaAsiya Javayant RENEWAL
Costa D SlusarskiSpainOnyama Limba NEW
Aditya C PoquetteJapanAmy Elsner PROPOSAL
Sinclair L TollnerIndiaBernardo Dominic QUALIFIED
Kaitlin A KolmetzSpainIvan Magalhaes RENEWAL
Morrow O WhobreySpainIoni Bowcher NEGOTIATION
Emily L MacleadJapanAnna Fali PROPOSAL
Antonio U StensethUnited KingdomStephen Shaw NEGOTIATION
Kaitlin M SchemmerUnited KingdomIvan Magalhaes RENEWAL
Jeanfrancois V BowleyBrazilIoni Bowcher QUALIFIED
Julie X FlosiArgentinaStephen Shaw PROPOSAL
Greenwood X RoysterAustraliaAmy Elsner UNQUALIFIED
Alejandro D KuskoSpainAnna Fali QUALIFIED
Maria E SchemmerJapanAnna Fali NEGOTIATION
Kaitlin L KolmetzUnited KingdomIvan Magalhaes UNQUALIFIED
Munro W RulapaughJapanAsiya Javayant NEGOTIATION
Nicolas B GillianRussiaBernardo Dominic RENEWAL
Costa Z DoeRussiaBernardo Dominic PROPOSAL
Frozen Columns
Name
Kadeem H Malet
Jeanfrancois E Paprocki
Jefferson E Kolmetz
Faith Q Gaucho
Izzy Y Rulapaugh
Faith Q Amigon
Murillo J Caudy
Leja O Figeroa
Silvio N Figeroa
Aika H Figeroa
Arvin I Sergi
Ricardo H Slusarski
Emily K Shinko
Mujtaba P Stockham
Jones Q Flosi
Murillo P Tollner
Greenwood L Ruta
Morrow K Stockham
Octavia G Bolognia
Jefferson F Gaucho
Maria N Stenseth
Juan P Shinko
Mayumi I Doe
Nicolas U Doe
Silvio Y Slusarski
Smith O Marrier
Aruna D Inouye
Aditya I Maclead
Johnson A Albares
Morrow V Amigon
Nicolas I Campain
Nicolas H Garufi
Morrow B Bolognia
Jefferson D Schemmer
Costa D Gillian
Leon M Saylors
Costa Y Bolognia
Faith P Paprocki
Salvatore A Caldarera
Leja L Morasca
Darci V Flosi
Deepesh Y Nicka
Jefferson R Marrier
Nicolas Z Gillian
Wickens A Inouye
Greenwood N Flosi
Claire J Tollner
David T Campain
Murillo S Campain
Octavia W Waycott
IdCountryDate
1000France2024-06-16
1001Argentina2024-06-24
1002France2024-06-09
1003United Kingdom2024-06-22
1004Canada2024-05-31
1005Canada2024-06-12
1006Japan2024-05-26
1007Russia2024-06-04
1008Japan2024-06-10
1009Australia2024-05-30
1010Australia2024-06-12
1011Japan2024-05-31
1012Japan2024-06-10
1013Japan2024-06-22
1014Germany2024-06-01
1015Australia2024-06-20
1016Japan2024-06-01
1017Italy2024-06-24
1018Australia2024-06-21
1019Argentina2024-06-06
1020Brazil2024-05-30
1021Argentina2024-06-21
1022Canada2024-06-16
1023Japan2024-06-01
1024Brazil2024-06-18
1025Italy2024-06-07
1026Argentina2024-06-08
1027Canada2024-05-26
1028India2024-06-14
1029Germany2024-06-10
1030Australia2024-06-08
1031France2024-06-22
1032France2024-06-06
1033India2024-06-01
1034Brazil2024-06-15
1035Argentina2024-06-04
1036United Kingdom2024-06-20
1037France2024-06-16
1038Russia2024-06-15
1039India2024-06-08
1040France2024-06-12
1041India2024-06-24
1042Russia2024-05-26
1043Germany2024-06-06
1044France2024-06-21
1045United Kingdom2024-05-31
1046Germany2024-06-17
1047Brazil2024-06-02
1048France2024-06-12
1049United Kingdom2024-06-02

On-Demand Data

NameIdCountryDate
Sinclair H Nestle1000Spain2024-05-29
Munro F Garufi1001Canada2024-06-05
Salvatore D Maclead1002Russia2024-05-28
Leon D Albares1003Italy2024-05-28
Munro K Butt1004Italy2024-05-29
Clifford J Royster1005Spain2024-06-15
Octavia H Flosi1006Russia2024-06-19
Isabel P Iturbide1007Germany2024-06-23
Maisha C Waycott1008United Kingdom2024-06-24
Aika O Rim1009India2024-06-04
Johnson N Saylors1010United Kingdom2024-06-21
Salvatore M Doe1011United Kingdom2024-06-13
Aika W Paprocki1012Japan2024-06-17
Tony I Kusko1013Russia2024-06-06
Murillo T Nicka1014Italy2024-06-01
Ivar G Wieser1015Brazil2024-06-19
Jones G Rulapaugh1016Argentina2024-05-27
Munro L Darakjy1017Italy2024-06-11
Faith O Butt1018Germany2024-06-02
Greenwood Y Inouye1019Canada2024-06-13
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jeanfrancois S InouyeJapanIoni Bowcher RENEWAL
David Z RutaSpainAsiya Javayant NEW
Isabel E BowleyRussiaAsiya Javayant RENEWAL
Clifford N TollnerItalyXuxue Feng QUALIFIED
Maria K WieserRussiaElwin Sharvill UNQUALIFIED
Antonio Z RimBrazilElwin Sharvill NEW
Aditya Q DoeFranceXuxue Feng NEW
Tony W NickaFranceAmy Elsner QUALIFIED
Ivar F PerinIndiaIvan Magalhaes NEGOTIATION
Ricardo O FollerAustraliaIvan Magalhaes UNQUALIFIED
Salvatore M BriddickArgentinaXuxue Feng NEW
Francesco J GillianJapanXuxue Feng UNQUALIFIED
Mujtaba M KuskoCanadaIvan Magalhaes QUALIFIED
Faith D ButtCanadaAnna Fali NEGOTIATION
Munro F DilliardSpainBernardo Dominic QUALIFIED
Emily T FerenczFranceElwin Sharvill UNQUALIFIED
Rodrigues M WieserAustraliaIoni Bowcher UNQUALIFIED
Ivar N RoysterJapanElwin Sharvill QUALIFIED
Juan K IturbideGermanyElwin Sharvill RENEWAL
Ricardo E CaudyRussiaXuxue Feng QUALIFIED
Francesco F RutaJapanIoni Bowcher UNQUALIFIED
Salvatore C PoquetteArgentinaBernardo Dominic RENEWAL
Tony Q FlosiGermanyAsiya Javayant PROPOSAL
Mujtaba Z FigeroaSpainAnna Fali NEGOTIATION
Julie X StockhamJapanAnna Fali QUALIFIED
Maisha Q BriddickRussiaStephen Shaw RENEWAL
Jennifer R GlickGermanyAsiya Javayant RENEWAL
Faith I KuskoItalyStephen Shaw RENEWAL
Stacey F RoysterItalyIvan Magalhaes QUALIFIED
Jennifer F MaletBrazilIvan Magalhaes NEGOTIATION
Octavia K WieserSpainIvan Magalhaes NEGOTIATION
Smith H GlickJapanAmy Elsner UNQUALIFIED
Maria T AlbaresUnited KingdomIoni Bowcher RENEWAL
David G FlosiAustraliaIvan Magalhaes NEW
Tony C MarrierUnited KingdomAmy Elsner NEGOTIATION
Emily J RulapaughItalyAnna Fali NEGOTIATION
Arvin J PerinFranceBernardo Dominic NEW
Maria P PoquetteBrazilAmy Elsner RENEWAL
Izzy C PaprockiGermanyAsiya Javayant QUALIFIED
Aika B BowleyIndiaAsiya Javayant 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>