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
Rodrigues C AmigonJapanOnyama Limba PROPOSAL
Faith G AlbaresUnited KingdomOnyama Limba QUALIFIED
Salvatore O MarrierRussiaAsiya Javayant NEW
Julie L DilliardBrazilIoni Bowcher UNQUALIFIED
Claire W StockhamCanadaBernardo Dominic UNQUALIFIED
Aika B AmigonRussiaAsiya Javayant NEGOTIATION
Claire B SchemmerBrazilAmy Elsner QUALIFIED
Cody F RoysterUnited KingdomIoni Bowcher NEW
Claire S PerinIndiaAnna Fali PROPOSAL
David O StensethArgentinaAsiya Javayant NEW
Juan K TollnerGermanyBernardo Dominic QUALIFIED
Faith V WhobreyAustraliaBernardo Dominic UNQUALIFIED
Isabel J RimFranceIoni Bowcher RENEWAL
Aruna K GillianSpainAmy Elsner UNQUALIFIED
Darci Z SlusarskiAustraliaOnyama Limba NEW
Claire M ShinkoCanadaOnyama Limba UNQUALIFIED
Cody Q RutaJapanBernardo Dominic QUALIFIED
Antonio C OldroydItalyXuxue Feng PROPOSAL
Greenwood M NickaSpainStephen Shaw NEGOTIATION
Arvin A WaycottJapanXuxue Feng NEGOTIATION
David O IturbideBrazilXuxue Feng QUALIFIED
Clifford V CampainItalyStephen Shaw QUALIFIED
Isabel K NestleArgentinaOnyama Limba RENEWAL
Greenwood V TollnerArgentinaAnna Fali RENEWAL
Isabel A InouyeGermanyAnna Fali RENEWAL
Jones G FigeroaAustraliaAsiya Javayant RENEWAL
Sinclair Y FlosiUnited KingdomIoni Bowcher QUALIFIED
Claire A FollerRussiaBernardo Dominic QUALIFIED
Juan X NestleCanadaBernardo Dominic NEGOTIATION
Aruna F RutaIndiaIoni Bowcher NEGOTIATION
Jefferson W OstroskyRussiaIoni Bowcher NEGOTIATION
Kaitlin Z PoquetteItalyAsiya Javayant RENEWAL
Munro G AmigonSpainAmy Elsner UNQUALIFIED
Leja A SaylorsAustraliaOnyama Limba NEW
Costa F SaylorsIndiaIoni Bowcher NEGOTIATION
Maisha G BologniaSpainStephen Shaw NEW
Smith N NickaJapanAsiya Javayant PROPOSAL
Ashley U MaletRussiaElwin Sharvill UNQUALIFIED
Izzy A SergiBrazilAsiya Javayant NEW
Aditya N CaldareraItalyIoni Bowcher NEGOTIATION
Chavez R PerinUnited KingdomElwin Sharvill NEW
Arvin C SchemmerBrazilIvan Magalhaes RENEWAL
Jones K MorascaFranceIoni Bowcher NEGOTIATION
Silvio S TollnerArgentinaIoni Bowcher RENEWAL
Morrow O GlickUnited KingdomXuxue Feng NEGOTIATION
Aruna P FlosiIndiaAnna Fali QUALIFIED
Murillo E WaycottItalyIvan Magalhaes UNQUALIFIED
Johnson N SaylorsIndiaAnna Fali UNQUALIFIED
Chavez E FerenczAustraliaXuxue Feng QUALIFIED
Maisha G IturbideAustraliaAmy Elsner QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Jennifer S GarufiIndiaXuxue Feng PROPOSAL
Maria R PerinFranceAsiya Javayant NEGOTIATION
Aruna S MorascaIndiaOnyama Limba PROPOSAL
Emily Z InouyeArgentinaAnna Fali RENEWAL
Nicolas E BowleyGermanyElwin Sharvill RENEWAL
Julie D VocelkaUnited KingdomOnyama Limba NEGOTIATION
Misaki G NickaRussiaAsiya Javayant NEW
Rodrigues H FollerAustraliaAmy Elsner PROPOSAL
Adams C RimIndiaAmy Elsner UNQUALIFIED
Cody T BowleyCanadaAsiya Javayant NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Nicolas D OstroskyAustralia2024-05-13Rangoni Of Florence QUALIFIED79Asiya Javayant
1001Aditya E RutaArgentina2024-05-09Rangoni Of Florence PROPOSAL70Xuxue Feng
1002Kaitlin W OldroydSpain2024-05-05Feltz Printing Service PROPOSAL72Elwin Sharvill
1003Aika W FlosiFrance2024-05-23Printing Dimensions NEW33Stephen Shaw
1004Aditya F FlosiUnited Kingdom2024-05-01Chanay, Jeffrey A Esq RENEWAL43Anna Fali
1005Rodrigues C CaldareraItaly2024-05-01Morlong Associates PROPOSAL64Asiya Javayant
1006Munro W CaldareraRussia2024-05-07Commercial Press NEW24Amy Elsner
1007Salvatore U CampainBrazil2024-05-24Commercial Press QUALIFIED94Elwin Sharvill
1008Silvio Z GillianBrazil2024-05-14Buckley Miller Wright PROPOSAL47Xuxue Feng
1009Mujtaba V VocelkaSpain2024-05-19Rangoni Of Florence PROPOSAL34Asiya Javayant
1010Francesco Q RimJapan2024-05-16King, Christopher A Esq NEGOTIATION71Ivan Magalhaes
1011Emily D ButtFrance2024-05-01Morlong Associates RENEWAL24Anna Fali
1012Munro R DoeBrazil2024-05-02Chemel, James L Cpa NEW39Anna Fali
1013Munro K NestleUnited Kingdom2024-05-26Printing Dimensions NEGOTIATION72Asiya Javayant
1014Faith X GlickItaly2024-05-20Buckley Miller Wright NEGOTIATION58Elwin Sharvill
1015Kadeem D InouyeArgentina2024-04-28Truhlar And Truhlar Attys QUALIFIED6Elwin Sharvill
1016Clifford Y StockhamAustralia2024-05-11Buckley Miller Wright UNQUALIFIED40Ivan Magalhaes
1017Stacey M VenereIndia2024-05-12Printing Dimensions PROPOSAL85Bernardo Dominic
1018Faith D BriddickRussia2024-04-29Printing Dimensions UNQUALIFIED30Onyama Limba
1019David T SaylorsUnited Kingdom2024-05-13Dorl, James J Esq NEGOTIATION15Asiya Javayant
1020Morrow Z DoeArgentina2024-05-06Chanay, Jeffrey A Esq NEGOTIATION11Ioni Bowcher
1021James N IturbideCanada2024-05-16Chapman, Ross E Esq QUALIFIED62Onyama Limba
1022Leja B SaylorsUnited Kingdom2024-05-19Buckley Miller Wright NEGOTIATION41Bernardo Dominic
1023Jeanfrancois T BologniaArgentina2024-05-11Chapman, Ross E Esq RENEWAL44Ioni Bowcher
1024Wickens P KuskoCanada2024-05-14Morlong Associates UNQUALIFIED96Ivan Magalhaes
1025Jeanfrancois E WieserBrazil2024-05-01Chanay, Jeffrey A Esq NEGOTIATION27Onyama Limba
1026Jones Q TollnerAustralia2024-05-22Buckley Miller Wright PROPOSAL92Ivan Magalhaes
1027Darci J SlusarskiItaly2024-05-26Morlong Associates PROPOSAL90Asiya Javayant
1028Johnson P MorascaUnited Kingdom2024-05-07King, Christopher A Esq NEGOTIATION45Stephen Shaw
1029Wickens Y RoysterBrazil2024-05-02Commercial Press QUALIFIED38Elwin Sharvill
1030Wickens J RulapaughItaly2024-05-18Truhlar And Truhlar Attys NEW85Asiya Javayant
1031Morrow F SaylorsAustralia2024-05-01Benton, John B Jr NEW90Onyama Limba
1032Ivar A FollerCanada2024-05-09Chanay, Jeffrey A Esq NEGOTIATION27Xuxue Feng
1033Mujtaba J FigeroaCanada2024-05-12Benton, John B Jr PROPOSAL55Elwin Sharvill
1034Salvatore A InouyeJapan2024-05-07Morlong Associates UNQUALIFIED50Xuxue Feng
1035Leon W GlickJapan2024-05-11Commercial Press NEW84Asiya Javayant
1036Kadeem W NestleItaly2024-05-02Benton, John B Jr RENEWAL48Onyama Limba
1037Juan G FerenczGermany2024-05-02Chapman, Ross E Esq QUALIFIED31Onyama Limba
1038Darci N ButtArgentina2024-05-01Feiner Bros UNQUALIFIED81Xuxue Feng
1039Emily W KolmetzItaly2024-05-18Chemel, James L Cpa NEGOTIATION15Bernardo Dominic
1040Nicolas M ChuiAustralia2024-05-20Dorl, James J Esq PROPOSAL68Stephen Shaw
1041Aruna E NestleJapan2024-05-10Rangoni Of Florence RENEWAL19Amy Elsner
1042Kaitlin O NestleItaly2024-05-22Feiner Bros UNQUALIFIED30Ivan Magalhaes
1043Johnson W SchemmerGermany2024-05-23Buckley Miller Wright NEW75Bernardo Dominic
1044Darci N FigeroaAustralia2024-05-08Rangoni Of Florence NEW12Onyama Limba
1045Alejandro U BriddickFrance2024-05-25Buckley Miller Wright PROPOSAL17Ioni Bowcher
1046Jeanfrancois M TollnerItaly2024-05-03Rangoni Of Florence NEW89Bernardo Dominic
1047Ivar K DarakjyBrazil2024-05-06Morlong Associates NEW14Stephen Shaw
1048Octavia B ButtAustralia2024-05-22Rangoni Of Florence QUALIFIED59Xuxue Feng
1049Antonio G ChuiRussia2024-05-25Feiner Bros RENEWAL23Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Jeanfrancois C IturbideCanadaAmy Elsner UNQUALIFIED
Misaki U FigeroaBrazilOnyama Limba UNQUALIFIED
Isabel L PaprockiCanadaIvan Magalhaes RENEWAL
Maria R GlickUnited KingdomXuxue Feng NEW
Nicolas U DarakjyArgentinaXuxue Feng QUALIFIED
Emily W GillianBrazilIoni Bowcher NEGOTIATION
Leja E FigeroaAustraliaIoni Bowcher PROPOSAL
Jennifer W InouyeArgentinaAnna Fali QUALIFIED
Greenwood Q BologniaBrazilAmy Elsner UNQUALIFIED
Kaitlin P CampainFranceIvan Magalhaes QUALIFIED
Leon P CaudyCanadaIoni Bowcher PROPOSAL
Antonio T KuskoFranceAsiya Javayant QUALIFIED
Costa W BologniaGermanyElwin Sharvill NEGOTIATION
Maisha J PoquetteRussiaBernardo Dominic RENEWAL
Octavia G GillianAustraliaAsiya Javayant NEW
Ricardo R InouyeIndiaAnna Fali NEW
Octavia G MorascaAustraliaStephen Shaw NEW
Kadeem G NestleAustraliaAnna Fali NEGOTIATION
Mujtaba O MarrierUnited KingdomBernardo Dominic PROPOSAL
Jeanfrancois J WhobreyIndiaOnyama Limba UNQUALIFIED
Isabel J FerenczCanadaIoni Bowcher UNQUALIFIED
Greenwood W GarufiUnited KingdomIvan Magalhaes RENEWAL
Jefferson D AmigonIndiaBernardo Dominic UNQUALIFIED
Morrow Z GarufiBrazilIvan Magalhaes NEW
Juan V VenereRussiaBernardo Dominic QUALIFIED
Alejandro T VocelkaIndiaElwin Sharvill RENEWAL
Chavez D SergiCanadaElwin Sharvill UNQUALIFIED
Alejandro O CaldareraCanadaIoni Bowcher UNQUALIFIED
Misaki V KuskoGermanyIvan Magalhaes QUALIFIED
Smith Z OstroskyRussiaStephen Shaw PROPOSAL
Aditya D PoquetteItalyIoni Bowcher NEW
Maria R AmigonCanadaXuxue Feng NEGOTIATION
Stacey R RimAustraliaAsiya Javayant RENEWAL
Aruna K FlosiArgentinaIvan Magalhaes RENEWAL
Adams E BowleySpainStephen Shaw NEW
Aditya I KolmetzArgentinaAsiya Javayant NEW
Faith N VenereAustraliaIoni Bowcher NEW
Isabel P AlbaresSpainAnna Fali PROPOSAL
Aika I WhobreyUnited KingdomAsiya Javayant PROPOSAL
Leja Q FollerSpainAsiya Javayant NEGOTIATION
Salvatore B FlosiJapanIoni Bowcher QUALIFIED
Arvin I WhobreyItalyOnyama Limba NEW
Deepesh B WaycottArgentinaXuxue Feng NEGOTIATION
Maria O KuskoItalyElwin Sharvill UNQUALIFIED
Maria V WieserIndiaStephen Shaw QUALIFIED
Juan J KuskoItalyXuxue Feng RENEWAL
Aditya M MarrierAustraliaIoni Bowcher NEGOTIATION
Clifford O ShinkoGermanyAsiya Javayant NEGOTIATION
Ricardo R MaletItalyOnyama Limba NEW
Silvio K GillianJapanElwin Sharvill PROPOSAL
Frozen Columns
Name
Murillo D Kusko
Jeanfrancois F Paprocki
Arvin I Wieser
Leon T Venere
Silvio P Gaucho
Munro B Foller
Leon D Darakjy
David A Ostrosky
Morrow I Stockham
Maisha S Saylors
Nicolas G Gillian
Aditya V Morasca
Clifford D Morasca
Jefferson F Caldarera
Sinclair N Poquette
Morrow T Morasca
Kaitlin Y Amigon
Jennifer X Malet
Mujtaba X Garufi
Wickens T Caudy
David F Ruta
Kaitlin V Foller
Jeanfrancois W Kolmetz
Rodrigues D Dilliard
Jones J Bowley
Tony R Rim
Ashley G Glick
Ricardo G Ruta
Jennifer W Stockham
Greenwood B Waycott
Leja V Morasca
Greenwood D Schemmer
Clifford D Kolmetz
Greenwood V Bolognia
Jones D Garufi
Rodrigues H Dilliard
Leja V Perin
Maria N Ostrosky
Antonio C Ostrosky
James E Briddick
Aika D Maclead
Claire Y Amigon
Stacey T Vocelka
Cody W Nestle
Octavia E Marrier
Sinclair R Gillian
Mujtaba J Briddick
Tony H Caudy
Salvatore Q Bolognia
David Q Vocelka
IdCountryDate
1000Australia2024-05-01
1001Japan2024-05-17
1002Russia2024-05-20
1003Germany2024-05-08
1004Spain2024-05-04
1005Brazil2024-05-21
1006Canada2024-05-06
1007Spain2024-05-14
1008Argentina2024-05-10
1009Australia2024-05-15
1010Russia2024-05-26
1011Spain2024-04-28
1012Germany2024-05-25
1013India2024-05-04
1014Russia2024-05-21
1015India2024-05-26
1016Germany2024-05-03
1017Argentina2024-05-15
1018Russia2024-04-29
1019France2024-05-12
1020Argentina2024-05-03
1021Japan2024-05-09
1022Australia2024-04-28
1023India2024-05-11
1024United Kingdom2024-05-24
1025Japan2024-05-12
1026India2024-04-29
1027Brazil2024-05-06
1028Canada2024-05-14
1029United Kingdom2024-05-09
1030Italy2024-05-26
1031France2024-05-01
1032Canada2024-05-09
1033Spain2024-05-10
1034Canada2024-05-21
1035Brazil2024-05-13
1036Russia2024-05-08
1037Australia2024-04-28
1038United Kingdom2024-05-02
1039Spain2024-05-08
1040Italy2024-05-22
1041United Kingdom2024-05-16
1042India2024-05-17
1043India2024-05-13
1044United Kingdom2024-05-14
1045Canada2024-05-03
1046Japan2024-05-13
1047France2024-05-14
1048Brazil2024-05-15
1049India2024-05-06

On-Demand Data

NameIdCountryDate
Darci E Stockham1000Germany2024-05-17
Emily K Amigon1001Germany2024-05-08
Clifford N Caudy1002Brazil2024-05-04
James Y Rulapaugh1003France2024-05-24
Leon K Caldarera1004Australia2024-05-17
Deepesh N Wieser1005Germany2024-05-07
Isabel P Foller1006Argentina2024-05-01
Aruna A Saylors1007Australia2024-05-02
Rodrigues W Morasca1008Japan2024-04-28
Smith Y Ostrosky1009Brazil2024-05-12
Emily O Marrier1010Australia2024-05-15
Aika C Flosi1011India2024-05-15
Jeanfrancois S Chui1012France2024-04-27
Adams Q Marrier1013United Kingdom2024-05-06
Julie C Tollner1014Australia2024-04-30
Johnson M Campain1015Italy2024-05-08
Isabel U Campain1016Canada2024-05-07
Juan T Nicka1017France2024-05-26
Aika O Gaucho1018France2024-04-29
James E Nicka1019Australia2024-05-26
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Kaitlin Z RimArgentinaAnna Fali RENEWAL
Wickens Y MorascaArgentinaIoni Bowcher QUALIFIED
Munro N ChuiItalyAsiya Javayant NEW
Silvio G BriddickArgentinaAsiya Javayant PROPOSAL
David O MaletItalyXuxue Feng PROPOSAL
Johnson I FlosiAustraliaIvan Magalhaes PROPOSAL
Mujtaba W RoysterGermanyBernardo Dominic NEW
Emily X OstroskyFranceIvan Magalhaes QUALIFIED
Leon H IturbideSpainAnna Fali UNQUALIFIED
Cody G FigeroaAustraliaAsiya Javayant QUALIFIED
Claire C GarufiSpainBernardo Dominic QUALIFIED
Wickens H GarufiRussiaStephen Shaw PROPOSAL
Ricardo F GlickArgentinaIoni Bowcher QUALIFIED
Francesco C RutaJapanAsiya Javayant NEW
Greenwood C ChuiItalyAmy Elsner NEW
Julie D BriddickItalyIvan Magalhaes UNQUALIFIED
Mayumi N GarufiRussiaAnna Fali PROPOSAL
Deepesh X FollerUnited KingdomAmy Elsner NEGOTIATION
Maisha F KolmetzCanadaAnna Fali QUALIFIED
Sinclair W GarufiCanadaIoni Bowcher NEW
Aditya H GauchoBrazilBernardo Dominic RENEWAL
Darci U PerinFranceXuxue Feng RENEWAL
Costa L SaylorsJapanAmy Elsner NEW
Claire R TollnerJapanIvan Magalhaes QUALIFIED
Emily B PoquetteArgentinaIvan Magalhaes PROPOSAL
Smith C MarrierIndiaOnyama Limba QUALIFIED
Aruna V RoysterIndiaElwin Sharvill NEGOTIATION
Johnson T NickaRussiaElwin Sharvill UNQUALIFIED
Francesco U KolmetzBrazilOnyama Limba QUALIFIED
Cody A BowleyCanadaIoni Bowcher UNQUALIFIED
Darci B StensethSpainIvan Magalhaes UNQUALIFIED
Rodrigues S SchemmerIndiaAnna Fali RENEWAL
Clifford D ButtBrazilXuxue Feng UNQUALIFIED
Alejandro A FigeroaArgentinaBernardo Dominic RENEWAL
Ivar N NestleArgentinaAnna Fali UNQUALIFIED
Jeanfrancois S RulapaughIndiaAmy Elsner NEGOTIATION
Cody F SergiIndiaAnna Fali UNQUALIFIED
Smith P MaletBrazilStephen Shaw RENEWAL
Octavia X MorascaArgentinaIoni Bowcher NEW
Aruna D KolmetzRussiaXuxue Feng UNQUALIFIED

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