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
Maisha L FigeroaCanadaIoni Bowcher NEW
Jeanfrancois X OldroydUnited KingdomElwin Sharvill PROPOSAL
Costa O RulapaughSpainIoni Bowcher QUALIFIED
Izzy C GillianArgentinaBernardo Dominic PROPOSAL
Munro A FollerSpainIvan Magalhaes PROPOSAL
Greenwood E FollerBrazilAmy Elsner RENEWAL
Leon I VocelkaJapanStephen Shaw NEGOTIATION
Misaki W SchemmerAustraliaAmy Elsner NEGOTIATION
Arvin C IturbideFranceXuxue Feng RENEWAL
Sinclair V RulapaughCanadaIvan Magalhaes NEW
Morrow Q InouyeCanadaOnyama Limba RENEWAL
Claire Z MorascaGermanyAnna Fali PROPOSAL
Johnson U MorascaBrazilXuxue Feng NEW
Julie M CaudyIndiaOnyama Limba PROPOSAL
Jones Y GauchoUnited KingdomIoni Bowcher RENEWAL
Rodrigues P RimArgentinaOnyama Limba QUALIFIED
Kadeem X SergiSpainElwin Sharvill NEGOTIATION
Claire L BowleyCanadaAsiya Javayant NEW
Silvio M NestleAustraliaAnna Fali RENEWAL
Aditya K CaldareraSpainStephen Shaw UNQUALIFIED
Kaitlin M FollerFranceAmy Elsner QUALIFIED
Octavia M OstroskyRussiaElwin Sharvill QUALIFIED
Mayumi W PerinUnited KingdomIoni Bowcher UNQUALIFIED
Ashley C InouyeCanadaOnyama Limba QUALIFIED
Faith H GillianUnited KingdomBernardo Dominic NEGOTIATION
Arvin N FigeroaSpainIoni Bowcher NEGOTIATION
Salvatore X ButtSpainIoni Bowcher QUALIFIED
Jeanfrancois A MaletUnited KingdomBernardo Dominic NEGOTIATION
Aika L FerenczBrazilIvan Magalhaes PROPOSAL
Morrow N NickaIndiaIoni Bowcher RENEWAL
Julie U RoysterFranceElwin Sharvill PROPOSAL
Leja R KuskoBrazilBernardo Dominic PROPOSAL
Ricardo D ButtArgentinaIoni Bowcher NEGOTIATION
Nicolas P GauchoCanadaOnyama Limba PROPOSAL
Mujtaba Z SaylorsBrazilStephen Shaw UNQUALIFIED
Mayumi Q KolmetzGermanyOnyama Limba NEW
Nicolas T BowleyFranceAsiya Javayant RENEWAL
Murillo B SaylorsAustraliaIoni Bowcher QUALIFIED
Antonio G OstroskyFranceElwin Sharvill RENEWAL
Kaitlin F RoysterItalyIvan Magalhaes UNQUALIFIED
James D SchemmerJapanElwin Sharvill PROPOSAL
Emily B ChuiItalyIvan Magalhaes PROPOSAL
Isabel R FollerFranceIvan Magalhaes PROPOSAL
Maria P MaletFranceBernardo Dominic RENEWAL
Tony L AmigonAustraliaAmy Elsner QUALIFIED
Mayumi Z BowleySpainXuxue Feng PROPOSAL
Mujtaba S NestleBrazilAnna Fali NEGOTIATION
Octavia M StockhamFranceStephen Shaw QUALIFIED
Nicolas N ButtGermanyXuxue Feng QUALIFIED
Silvio B WaycottCanadaXuxue Feng QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Ivar W MorascaGermanyStephen Shaw NEW
Claire L SchemmerSpainAsiya Javayant QUALIFIED
Izzy J ChuiAustraliaAmy Elsner RENEWAL
Munro B SergiGermanyElwin Sharvill QUALIFIED
Jefferson I AlbaresSpainAsiya Javayant QUALIFIED
Aika R CampainBrazilIoni Bowcher RENEWAL
Ivar X OstroskyAustraliaAsiya Javayant NEGOTIATION
Greenwood G MorascaAustraliaAnna Fali NEW
Emily Q FerenczFranceBernardo Dominic UNQUALIFIED
Arvin I ChuiRussiaXuxue Feng NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maisha S RimSpain2024-05-25Feiner Bros PROPOSAL35Stephen Shaw
1001Chavez F PoquetteGermany2024-05-21Truhlar And Truhlar Attys UNQUALIFIED83Bernardo Dominic
1002Maria E FerenczCanada2024-05-23Printing Dimensions RENEWAL42Asiya Javayant
1003Juan H PerinAustralia2024-05-03King, Christopher A Esq QUALIFIED50Ioni Bowcher
1004Johnson A DilliardFrance2024-05-26Commercial Press NEW81Anna Fali
1005David V NickaBrazil2024-05-10Dorl, James J Esq RENEWAL38Ivan Magalhaes
1006Jefferson E SergiJapan2024-05-04Benton, John B Jr QUALIFIED87Anna Fali
1007Emily C AmigonItaly2024-04-29Rousseaux, Michael Esq NEW82Anna Fali
1008Julie M TollnerUnited Kingdom2024-05-10Rangoni Of Florence PROPOSAL96Amy Elsner
1009Nicolas A RulapaughCanada2024-05-19Rangoni Of Florence RENEWAL73Asiya Javayant
1010Leja R VocelkaItaly2024-05-04Morlong Associates RENEWAL17Ioni Bowcher
1011Isabel F SchemmerGermany2024-05-18Commercial Press PROPOSAL40Elwin Sharvill
1012Mujtaba I RutaFrance2024-05-17Benton, John B Jr PROPOSAL20Amy Elsner
1013Stacey Q ChuiSpain2024-05-02Feltz Printing Service PROPOSAL59Ioni Bowcher
1014Izzy G WaycottUnited Kingdom2024-05-04Truhlar And Truhlar Attys NEW14Ivan Magalhaes
1015Rodrigues U FollerCanada2024-05-03King, Christopher A Esq PROPOSAL63Xuxue Feng
1016Sinclair U WhobreyAustralia2024-05-18Rangoni Of Florence RENEWAL95Ivan Magalhaes
1017James P RutaAustralia2024-05-20Rangoni Of Florence NEGOTIATION51Amy Elsner
1018Silvio K StockhamJapan2024-05-23Benton, John B Jr QUALIFIED31Ioni Bowcher
1019Tony R MacleadFrance2024-05-06Printing Dimensions UNQUALIFIED85Anna Fali
1020Aika T MarrierArgentina2024-05-15Chapman, Ross E Esq RENEWAL23Stephen Shaw
1021Ricardo S WaycottItaly2024-05-03Chemel, James L Cpa NEW51Ioni Bowcher
1022Costa D RoysterRussia2024-05-08Chemel, James L Cpa QUALIFIED91Ioni Bowcher
1023Mayumi C StensethAustralia2024-05-24King, Christopher A Esq NEGOTIATION83Ivan Magalhaes
1024Clifford S ChuiUnited Kingdom2024-05-18Printing Dimensions NEGOTIATION3Bernardo Dominic
1025Leon K MacleadUnited Kingdom2024-05-07Printing Dimensions RENEWAL99Amy Elsner
1026Isabel T MaletAustralia2024-05-20Feltz Printing Service NEGOTIATION17Xuxue Feng
1027Silvio D MarrierSpain2024-04-28Chanay, Jeffrey A Esq UNQUALIFIED11Amy Elsner
1028Clifford X FollerJapan2024-05-17King, Christopher A Esq NEW1Bernardo Dominic
1029Leja I RulapaughIndia2024-05-13Rangoni Of Florence PROPOSAL80Stephen Shaw
1030Silvio B CampainFrance2024-05-05Chapman, Ross E Esq RENEWAL70Stephen Shaw
1031Nicolas V MaletArgentina2024-05-15Chanay, Jeffrey A Esq PROPOSAL81Xuxue Feng
1032Deepesh V VenereRussia2024-05-09Feltz Printing Service NEGOTIATION51Elwin Sharvill
1033Alejandro C KuskoArgentina2024-05-18Buckley Miller Wright QUALIFIED0Stephen Shaw
1034Johnson K BologniaUnited Kingdom2024-05-07Chemel, James L Cpa QUALIFIED71Ivan Magalhaes
1035Salvatore P SlusarskiAustralia2024-05-08King, Christopher A Esq RENEWAL83Stephen Shaw
1036Leja R MaletFrance2024-05-04Chemel, James L Cpa RENEWAL96Xuxue Feng
1037Octavia N PoquetteGermany2024-05-11Morlong Associates QUALIFIED19Stephen Shaw
1038Murillo M WieserSpain2024-05-15Morlong Associates RENEWAL6Elwin Sharvill
1039Jeanfrancois W CampainSpain2024-05-13Benton, John B Jr NEW37Asiya Javayant
1040Kadeem W CaudyUnited Kingdom2024-05-01Feltz Printing Service NEGOTIATION67Ioni Bowcher
1041Aika Y MaletJapan2024-05-10Chemel, James L Cpa RENEWAL98Elwin Sharvill
1042Smith R KolmetzArgentina2024-05-05Rangoni Of Florence PROPOSAL30Anna Fali
1043Cody Z BowleyArgentina2024-05-09Feltz Printing Service NEGOTIATION8Onyama Limba
1044Julie V NickaAustralia2024-05-15Rousseaux, Michael Esq NEGOTIATION16Asiya Javayant
1045Chavez K SergiSpain2024-04-30Rousseaux, Michael Esq QUALIFIED88Xuxue Feng
1046Darci Y OldroydItaly2024-05-23Morlong Associates QUALIFIED99Anna Fali
1047Costa Q WieserIndia2024-05-03Dorl, James J Esq NEW22Ivan Magalhaes
1048Johnson T OldroydAustralia2024-05-10Dorl, James J Esq NEW37Onyama Limba
1049Silvio S OldroydSpain2024-05-07Feltz Printing Service PROPOSAL33Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Chavez P GillianAustraliaIvan Magalhaes PROPOSAL
Greenwood J DarakjySpainAmy Elsner PROPOSAL
Morrow B FigeroaBrazilXuxue Feng NEGOTIATION
Izzy G BowleyRussiaXuxue Feng RENEWAL
Smith K IturbideRussiaXuxue Feng RENEWAL
Rodrigues Q SaylorsArgentinaIvan Magalhaes RENEWAL
Mayumi M GlickArgentinaIvan Magalhaes NEGOTIATION
Faith B OstroskyFranceOnyama Limba QUALIFIED
Jones E CampainGermanyIvan Magalhaes RENEWAL
Kaitlin I KuskoIndiaIvan Magalhaes RENEWAL
James M SlusarskiSpainAnna Fali QUALIFIED
Claire U VenereFranceIoni Bowcher NEGOTIATION
Faith C CaudyBrazilElwin Sharvill UNQUALIFIED
Mujtaba J GillianJapanOnyama Limba RENEWAL
Mujtaba W AmigonFranceAsiya Javayant PROPOSAL
Ivar H BowleyIndiaIoni Bowcher RENEWAL
Julie Q SchemmerFranceAsiya Javayant RENEWAL
Johnson P GlickUnited KingdomOnyama Limba RENEWAL
Jefferson E PerinFranceIoni Bowcher UNQUALIFIED
Izzy F FerenczJapanXuxue Feng NEGOTIATION
Darci V GarufiUnited KingdomOnyama Limba NEGOTIATION
Mujtaba E GarufiUnited KingdomAnna Fali UNQUALIFIED
Adams Z CaudyRussiaAsiya Javayant QUALIFIED
Johnson S MorascaGermanyOnyama Limba NEGOTIATION
Nicolas R RimSpainBernardo Dominic UNQUALIFIED
David U MacleadAustraliaAnna Fali RENEWAL
Mayumi H PaprockiUnited KingdomAnna Fali NEW
Silvio C DilliardItalyOnyama Limba NEGOTIATION
Alejandro E StensethRussiaElwin Sharvill RENEWAL
Juan R ChuiSpainAmy Elsner PROPOSAL
Emily J VocelkaGermanyBernardo Dominic NEW
Adams D GillianItalyIvan Magalhaes NEGOTIATION
Cody Q CaldareraAustraliaAsiya Javayant NEGOTIATION
Leon S MacleadUnited KingdomStephen Shaw PROPOSAL
Aruna U ButtGermanyOnyama Limba RENEWAL
Munro O ShinkoCanadaElwin Sharvill NEGOTIATION
Octavia U RoysterCanadaBernardo Dominic UNQUALIFIED
Adams B BriddickFranceBernardo Dominic NEW
Maria C RoysterItalyIoni Bowcher QUALIFIED
Julie C CampainJapanBernardo Dominic PROPOSAL
Mayumi C RoysterIndiaElwin Sharvill QUALIFIED
Claire J MaletIndiaIoni Bowcher NEW
Sinclair G SaylorsArgentinaBernardo Dominic RENEWAL
Aika T BriddickItalyOnyama Limba NEGOTIATION
Kaitlin K MarrierArgentinaAnna Fali RENEWAL
Arvin V AmigonItalyXuxue Feng PROPOSAL
Octavia B KuskoIndiaXuxue Feng NEGOTIATION
Claire L DilliardArgentinaAnna Fali UNQUALIFIED
Isabel R VocelkaSpainElwin Sharvill UNQUALIFIED
David S DoeFranceBernardo Dominic QUALIFIED
Frozen Columns
Name
Kadeem C Darakjy
Maisha D Poquette
Jones L Nestle
Leja E Rulapaugh
Salvatore H Ruta
Greenwood L Stenseth
Rodrigues F Rim
Octavia C Maclead
Nicolas M Ferencz
Munro Y Ruta
Leja E Chui
Francesco B Inouye
Jennifer E Campain
Izzy S Dilliard
Octavia J Saylors
Smith W Saylors
Jeanfrancois O Nicka
Julie U Foller
Mujtaba C Kusko
Tony W Chui
Alejandro S Schemmer
Tony H Whobrey
Ashley I Chui
David T Campain
Sinclair M Kolmetz
Adams F Garufi
David H Amigon
Cody Q Sergi
Darci V Ruta
Juan R Darakjy
James E Foller
Johnson K Sergi
Claire Z Vocelka
Emily W Darakjy
Ivar H Kolmetz
Salvatore X Stenseth
Antonio T Malet
Francesco K Stenseth
Greenwood I Venere
Kaitlin S Stenseth
Julie T Venere
Cody H Slusarski
Stacey J Venere
Kadeem J Stockham
Francesco F Bolognia
Johnson P Schemmer
Adams G Caudy
Murillo Y Iturbide
Salvatore K Paprocki
Greenwood G Maclead
IdCountryDate
1000Canada2024-05-24
1001Brazil2024-05-12
1002Argentina2024-05-18
1003Spain2024-05-07
1004Italy2024-05-27
1005India2024-05-26
1006Japan2024-05-06
1007Australia2024-05-06
1008Canada2024-05-03
1009Russia2024-05-08
1010Canada2024-05-16
1011Italy2024-05-15
1012Germany2024-05-15
1013Canada2024-04-29
1014Spain2024-05-21
1015Brazil2024-05-26
1016Japan2024-05-19
1017Spain2024-05-03
1018India2024-05-02
1019Italy2024-05-22
1020Japan2024-05-21
1021Russia2024-05-09
1022Japan2024-05-04
1023United Kingdom2024-05-08
1024Italy2024-05-12
1025Spain2024-05-25
1026France2024-05-25
1027Japan2024-05-21
1028Germany2024-04-29
1029India2024-04-29
1030Russia2024-05-09
1031France2024-05-16
1032Italy2024-05-18
1033India2024-05-25
1034India2024-05-02
1035Japan2024-05-18
1036Canada2024-05-10
1037Brazil2024-05-09
1038Australia2024-05-02
1039France2024-05-05
1040India2024-05-20
1041Spain2024-05-11
1042Russia2024-05-13
1043India2024-05-25
1044Italy2024-05-25
1045India2024-04-29
1046Brazil2024-05-12
1047Italy2024-05-15
1048Argentina2024-05-04
1049Russia2024-05-17

On-Demand Data

NameIdCountryDate
Misaki O Ruta1000Canada2024-04-29
Aditya N Nestle1001Japan2024-05-04
Juan Z Sergi1002Brazil2024-05-01
David E Shinko1003Spain2024-05-23
Aruna J Oldroyd1004Brazil2024-05-04
Jefferson B Tollner1005Italy2024-05-21
Arvin E Marrier1006France2024-05-25
Jones S Stenseth1007United Kingdom2024-05-24
Leja J Nestle1008Canada2024-05-05
Smith D Flosi1009Germany2024-05-26
Silvio C Figeroa1010Spain2024-05-01
Leon G Royster1011Canada2024-05-22
Costa X Oldroyd1012Japan2024-05-23
Leon C Marrier1013Canada2024-05-26
Clifford D Perin1014United Kingdom2024-05-01
Sinclair O Ostrosky1015Russia2024-05-04
Wickens V Nicka1016Argentina2024-05-19
Clifford Z Gillian1017Argentina2024-04-30
Mayumi F Foller1018Japan2024-04-28
Silvio S Flosi1019Germany2024-05-07
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Maria R SchemmerSpainIoni Bowcher RENEWAL
Isabel W ChuiSpainAmy Elsner UNQUALIFIED
Alejandro Q NestleBrazilOnyama Limba PROPOSAL
Johnson W MaletJapanIoni Bowcher PROPOSAL
Johnson D SaylorsItalyXuxue Feng NEGOTIATION
Sinclair Y DilliardGermanyAsiya Javayant PROPOSAL
Chavez X RoysterAustraliaAnna Fali NEW
James G WieserFranceAnna Fali PROPOSAL
Kaitlin F CaldareraArgentinaIvan Magalhaes NEW
Emily V SergiItalyAmy Elsner PROPOSAL
Isabel R ShinkoAustraliaElwin Sharvill PROPOSAL
Leja V GarufiArgentinaAsiya Javayant RENEWAL
Morrow C CampainArgentinaStephen Shaw NEGOTIATION
Antonio O FerenczRussiaStephen Shaw NEGOTIATION
Jeanfrancois K KolmetzRussiaAmy Elsner NEGOTIATION
Antonio N MaletRussiaAsiya Javayant PROPOSAL
Mujtaba W ChuiIndiaIoni Bowcher PROPOSAL
Aditya Q StensethSpainIvan Magalhaes UNQUALIFIED
Octavia S OldroydFranceXuxue Feng NEGOTIATION
Rodrigues U ShinkoJapanXuxue Feng RENEWAL
Julie I DarakjyItalyStephen Shaw PROPOSAL
Deepesh D GarufiAustraliaXuxue Feng PROPOSAL
Rodrigues D CampainItalyAnna Fali PROPOSAL
Francesco C SlusarskiFranceAmy Elsner NEW
Emily H StockhamUnited KingdomIvan Magalhaes NEGOTIATION
Octavia X KuskoFranceAmy Elsner UNQUALIFIED
Aruna Z NickaSpainAsiya Javayant UNQUALIFIED
Smith G GarufiArgentinaAmy Elsner NEW
Aditya B StockhamGermanyAsiya Javayant NEW
Smith D RimAustraliaIvan Magalhaes PROPOSAL
Leon O DoeRussiaIoni Bowcher RENEWAL
Claire O BowleyUnited KingdomBernardo Dominic UNQUALIFIED
Emily L DoeArgentinaAsiya Javayant QUALIFIED
Kadeem M PaprockiSpainOnyama Limba RENEWAL
Greenwood B KuskoIndiaAsiya Javayant NEW
Francesco J BriddickFranceOnyama Limba QUALIFIED
Emily N FlosiJapanXuxue Feng QUALIFIED
Johnson W SergiCanadaAmy Elsner UNQUALIFIED
Faith M InouyeFranceAsiya Javayant UNQUALIFIED
Murillo G MaletGermanyXuxue Feng RENEWAL

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