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
Maria X SchemmerArgentinaXuxue Feng NEW
Clifford I MarrierCanadaOnyama Limba NEW
Arvin E IturbideJapanBernardo Dominic NEW
Arvin M BowleyAustraliaAsiya Javayant NEGOTIATION
Jefferson T ShinkoItalyIvan Magalhaes QUALIFIED
Ivar V SaylorsGermanyAmy Elsner PROPOSAL
Johnson T WaycottBrazilAnna Fali NEW
Sinclair I OldroydJapanXuxue Feng NEGOTIATION
Murillo Z SergiCanadaIoni Bowcher RENEWAL
Misaki N MarrierUnited KingdomOnyama Limba QUALIFIED
Johnson G AlbaresAustraliaOnyama Limba QUALIFIED
Adams J WhobreyItalyAnna Fali PROPOSAL
Mujtaba X CaldareraUnited KingdomXuxue Feng PROPOSAL
Emily G RoysterIndiaIoni Bowcher PROPOSAL
Leja R DoeAustraliaIvan Magalhaes UNQUALIFIED
Johnson N RutaArgentinaOnyama Limba PROPOSAL
Adams V GarufiItalyElwin Sharvill NEW
Ashley T PaprockiSpainAsiya Javayant NEGOTIATION
Rodrigues G TollnerBrazilStephen Shaw NEW
Mujtaba X RoysterBrazilAmy Elsner QUALIFIED
Faith I MaletAustraliaAmy Elsner RENEWAL
Jefferson F PoquetteIndiaAnna Fali UNQUALIFIED
Aditya Q KolmetzFranceOnyama Limba RENEWAL
Aruna O SchemmerUnited KingdomIvan Magalhaes QUALIFIED
Clifford V FerenczBrazilOnyama Limba PROPOSAL
Munro H OldroydSpainStephen Shaw UNQUALIFIED
Smith O RoysterAustraliaElwin Sharvill UNQUALIFIED
Clifford A OstroskyRussiaXuxue Feng UNQUALIFIED
Silvio J NestleBrazilOnyama Limba QUALIFIED
Antonio W ChuiRussiaAsiya Javayant PROPOSAL
Kadeem N ShinkoUnited KingdomAmy Elsner NEGOTIATION
Clifford F StensethGermanyIoni Bowcher NEW
Maisha W SchemmerArgentinaBernardo Dominic RENEWAL
Juan P AlbaresGermanyStephen Shaw NEW
Costa Z AlbaresItalyAnna Fali NEGOTIATION
Murillo M FigeroaIndiaIvan Magalhaes NEW
Morrow C VenereGermanyIoni Bowcher UNQUALIFIED
Faith V CaudyIndiaXuxue Feng NEW
Mujtaba B RimIndiaStephen Shaw PROPOSAL
Juan Z MaletItalyIvan Magalhaes NEGOTIATION
Murillo E OldroydJapanBernardo Dominic UNQUALIFIED
Isabel H StensethRussiaXuxue Feng RENEWAL
Leon J FlosiAustraliaElwin Sharvill NEGOTIATION
Jeanfrancois X StensethUnited KingdomIvan Magalhaes QUALIFIED
Jefferson K DoeIndiaOnyama Limba UNQUALIFIED
Morrow U WieserFranceOnyama Limba NEW
Arvin A WaycottGermanyStephen Shaw QUALIFIED
Octavia J MorascaUnited KingdomElwin Sharvill UNQUALIFIED
Clifford P DilliardJapanElwin Sharvill NEW
Sinclair N SergiSpainAnna Fali UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Antonio A AmigonAustraliaAsiya Javayant QUALIFIED
Salvatore N WhobreyUnited KingdomStephen Shaw QUALIFIED
Murillo H WaycottAustraliaIvan Magalhaes NEGOTIATION
Isabel K VocelkaRussiaIvan Magalhaes RENEWAL
Nicolas P RutaGermanyAsiya Javayant NEW
Salvatore X RutaArgentinaStephen Shaw NEW
Claire L RoysterBrazilStephen Shaw NEW
Smith X MarrierRussiaOnyama Limba PROPOSAL
Antonio M MorascaRussiaAsiya Javayant RENEWAL
Faith B ShinkoBrazilIvan Magalhaes RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Murillo E WaycottJapan2024-06-06Commercial Press PROPOSAL4Anna Fali
1001Leja Q CaudyCanada2024-06-06Printing Dimensions RENEWAL11Onyama Limba
1002Leja Y FerenczFrance2024-05-27Buckley Miller Wright RENEWAL7Elwin Sharvill
1003Emily S ButtGermany2024-05-28Printing Dimensions NEGOTIATION21Onyama Limba
1004Francesco W RimAustralia2024-05-29Truhlar And Truhlar Attys PROPOSAL25Amy Elsner
1005Murillo N GillianFrance2024-06-13Dorl, James J Esq UNQUALIFIED9Stephen Shaw
1006Kaitlin A TollnerGermany2024-06-11Printing Dimensions QUALIFIED60Anna Fali
1007Leja F CaldareraFrance2024-05-30Feiner Bros NEGOTIATION70Xuxue Feng
1008Isabel C MaletIndia2024-05-28Dorl, James J Esq NEW63Amy Elsner
1009Clifford Z SaylorsGermany2024-06-22Buckley Miller Wright NEGOTIATION68Ivan Magalhaes
1010Mujtaba E OldroydAustralia2024-06-06Rousseaux, Michael Esq QUALIFIED5Anna Fali
1011Stacey S IturbideSpain2024-06-09Rangoni Of Florence UNQUALIFIED45Amy Elsner
1012Chavez P RimArgentina2024-06-11Rousseaux, Michael Esq QUALIFIED97Onyama Limba
1013Jones I GauchoBrazil2024-06-12Chemel, James L Cpa NEGOTIATION44Ioni Bowcher
1014Chavez Q ButtJapan2024-06-23Feiner Bros UNQUALIFIED39Anna Fali
1015Costa X FollerIndia2024-06-17Chemel, James L Cpa QUALIFIED66Xuxue Feng
1016Aruna P SlusarskiRussia2024-05-30Chanay, Jeffrey A Esq RENEWAL81Stephen Shaw
1017Misaki Q StockhamArgentina2024-06-10Buckley Miller Wright PROPOSAL92Elwin Sharvill
1018Mayumi U PerinCanada2024-06-19Rousseaux, Michael Esq RENEWAL70Stephen Shaw
1019Antonio Z ChuiIndia2024-06-07Rousseaux, Michael Esq PROPOSAL99Anna Fali
1020Leon Q FollerBrazil2024-05-31Truhlar And Truhlar Attys UNQUALIFIED40Bernardo Dominic
1021Aditya Q PerinSpain2024-06-21Benton, John B Jr QUALIFIED58Stephen Shaw
1022Aditya Y SergiItaly2024-06-01Feltz Printing Service NEW67Ivan Magalhaes
1023Deepesh E KolmetzAustralia2024-06-13Feltz Printing Service RENEWAL53Ivan Magalhaes
1024Arvin W FlosiCanada2024-06-12Chemel, James L Cpa UNQUALIFIED74Asiya Javayant
1025Aruna P RulapaughRussia2024-05-29Feltz Printing Service UNQUALIFIED35Elwin Sharvill
1026Misaki B DarakjyItaly2024-06-04Feiner Bros UNQUALIFIED10Elwin Sharvill
1027Mujtaba U PerinAustralia2024-06-09Chanay, Jeffrey A Esq QUALIFIED88Anna Fali
1028Morrow E WieserCanada2024-06-22Dorl, James J Esq QUALIFIED36Xuxue Feng
1029Aruna B RoysterArgentina2024-06-13Morlong Associates PROPOSAL78Amy Elsner
1030Antonio P SlusarskiFrance2024-06-22Truhlar And Truhlar Attys QUALIFIED9Anna Fali
1031Arvin J PaprockiJapan2024-06-18Feltz Printing Service UNQUALIFIED13Ioni Bowcher
1032Ivar X StockhamCanada2024-05-28Rangoni Of Florence NEGOTIATION94Amy Elsner
1033Ashley Y OstroskyCanada2024-06-23Chemel, James L Cpa QUALIFIED83Onyama Limba
1034Arvin M SchemmerAustralia2024-06-24Buckley Miller Wright PROPOSAL66Xuxue Feng
1035Julie N CampainSpain2024-06-19Dorl, James J Esq PROPOSAL91Ioni Bowcher
1036David U FigeroaUnited Kingdom2024-06-19Chapman, Ross E Esq QUALIFIED74Anna Fali
1037Costa W FollerItaly2024-06-15Rangoni Of Florence QUALIFIED20Stephen Shaw
1038Leon F GarufiIndia2024-05-29Morlong Associates RENEWAL35Asiya Javayant
1039Ivar Y OldroydFrance2024-06-07Dorl, James J Esq QUALIFIED41Elwin Sharvill
1040Faith H KolmetzAustralia2024-06-02Morlong Associates RENEWAL21Amy Elsner
1041Tony I RimRussia2024-06-21Buckley Miller Wright NEW47Ioni Bowcher
1042Ivar M GauchoUnited Kingdom2024-06-06Dorl, James J Esq UNQUALIFIED55Stephen Shaw
1043Juan J VenereArgentina2024-05-30Benton, John B Jr NEW85Xuxue Feng
1044Faith R FerenczItaly2024-06-11Feltz Printing Service PROPOSAL97Asiya Javayant
1045Rodrigues U AmigonIndia2024-06-09Feltz Printing Service RENEWAL10Anna Fali
1046Sinclair V GarufiCanada2024-06-10Chanay, Jeffrey A Esq QUALIFIED54Elwin Sharvill
1047Izzy M BowleySpain2024-06-07Printing Dimensions RENEWAL40Ioni Bowcher
1048Costa P StensethIndia2024-06-09Feltz Printing Service QUALIFIED29Bernardo Dominic
1049Ashley N KolmetzRussia2024-05-27Printing Dimensions PROPOSAL8Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Clifford X DarakjyItalyXuxue Feng NEGOTIATION
Maisha Q KuskoFranceElwin Sharvill PROPOSAL
Octavia N OstroskyArgentinaBernardo Dominic NEGOTIATION
Isabel I NestleSpainBernardo Dominic PROPOSAL
Salvatore O AmigonArgentinaAnna Fali NEW
Antonio N MarrierFranceAmy Elsner PROPOSAL
Juan Z BriddickIndiaOnyama Limba UNQUALIFIED
Salvatore V FerenczIndiaAnna Fali NEGOTIATION
Alejandro A ButtIndiaBernardo Dominic RENEWAL
Stacey Y OstroskyBrazilAsiya Javayant QUALIFIED
Emily W RutaRussiaIvan Magalhaes QUALIFIED
Jones Y MacleadSpainXuxue Feng RENEWAL
Greenwood I FerenczFranceBernardo Dominic NEW
Jones E SergiCanadaStephen Shaw NEGOTIATION
Jennifer Q NestleRussiaIvan Magalhaes RENEWAL
Juan U MarrierCanadaBernardo Dominic NEGOTIATION
Murillo B CaldareraFranceElwin Sharvill UNQUALIFIED
Maisha X BologniaIndiaOnyama Limba RENEWAL
Juan Y MacleadItalyIoni Bowcher PROPOSAL
Clifford N GillianArgentinaAsiya Javayant PROPOSAL
Ricardo N DarakjyGermanyIoni Bowcher RENEWAL
Stacey Y InouyeUnited KingdomIoni Bowcher PROPOSAL
Emily I GlickIndiaAnna Fali UNQUALIFIED
Mujtaba S StensethRussiaIoni Bowcher NEGOTIATION
Leja T BowleyIndiaXuxue Feng NEW
Stacey Y PoquetteCanadaAmy Elsner NEW
Clifford J FerenczJapanElwin Sharvill NEGOTIATION
Jefferson M RutaGermanyStephen Shaw UNQUALIFIED
Johnson D FigeroaSpainOnyama Limba PROPOSAL
Rodrigues M PoquetteGermanyXuxue Feng RENEWAL
Misaki Z NickaIndiaStephen Shaw NEGOTIATION
Morrow F KolmetzBrazilXuxue Feng QUALIFIED
Mayumi Z MarrierGermanyStephen Shaw NEW
Mayumi P WaycottCanadaBernardo Dominic UNQUALIFIED
Jennifer K VocelkaSpainAmy Elsner QUALIFIED
Claire W AmigonArgentinaOnyama Limba PROPOSAL
Jennifer X CaudyIndiaOnyama Limba NEGOTIATION
Izzy U TollnerRussiaAnna Fali RENEWAL
Wickens N FollerJapanOnyama Limba NEW
Morrow F GlickJapanIvan Magalhaes NEGOTIATION
Francesco E StockhamJapanIvan Magalhaes NEGOTIATION
Aruna S OstroskyItalyAnna Fali NEGOTIATION
Jefferson T GillianGermanyXuxue Feng RENEWAL
Mujtaba B VenereRussiaAnna Fali QUALIFIED
Octavia E CaldareraBrazilBernardo Dominic NEGOTIATION
Ricardo P StensethAustraliaBernardo Dominic QUALIFIED
Kadeem G KolmetzArgentinaElwin Sharvill NEW
Maisha A GauchoBrazilBernardo Dominic NEW
Darci W RimBrazilAmy Elsner PROPOSAL
Octavia F CaldareraIndiaAmy Elsner NEGOTIATION
Frozen Columns
Name
Jeanfrancois D Iturbide
Misaki C Caldarera
Izzy R Rim
Murillo B Wieser
Misaki Q Whobrey
Deepesh W Doe
Maisha B Garufi
James F Schemmer
Francesco H Slusarski
Darci I Rulapaugh
Greenwood C Wieser
Maisha Q Caudy
Deepesh Y Rim
Greenwood D Gaucho
Nicolas N Maclead
Munro Y Saylors
Claire T Perin
Ivar N Wieser
Smith H Briddick
Leja W Whobrey
Mayumi Y Morasca
Leja Q Wieser
Stacey Q Bolognia
Octavia Z Dilliard
Izzy M Paprocki
Deepesh Q Oldroyd
Greenwood P Nestle
Sinclair N Sergi
Emily E Caudy
Faith A Shinko
James Q Darakjy
Maria I Stockham
Aika V Gaucho
Jones H Glick
Aditya P Kolmetz
Juan R Flosi
Aruna X Sergi
Isabel Y Rim
Jones H Perin
Mujtaba O Caldarera
Tony T Butt
Ricardo O Vocelka
Kaitlin W Briddick
Leon I Bolognia
Tony B Ruta
Octavia B Flosi
Sinclair C Whobrey
Alejandro R Marrier
Claire E Chui
Clifford X Amigon
IdCountryDate
1000France2024-06-18
1001United Kingdom2024-05-30
1002Spain2024-06-01
1003United Kingdom2024-06-01
1004Italy2024-06-24
1005Italy2024-06-19
1006Japan2024-06-08
1007Brazil2024-06-24
1008Brazil2024-05-30
1009Brazil2024-06-02
1010Russia2024-05-31
1011United Kingdom2024-06-06
1012India2024-05-31
1013India2024-06-14
1014Italy2024-05-26
1015Australia2024-06-01
1016Germany2024-06-19
1017Canada2024-06-20
1018Japan2024-06-23
1019Japan2024-05-26
1020Germany2024-06-21
1021Canada2024-06-23
1022United Kingdom2024-05-26
1023Russia2024-06-14
1024Italy2024-06-09
1025Argentina2024-06-23
1026Japan2024-06-14
1027United Kingdom2024-06-18
1028Brazil2024-05-27
1029Italy2024-06-08
1030Canada2024-06-06
1031United Kingdom2024-05-31
1032Japan2024-06-22
1033Argentina2024-06-15
1034Italy2024-05-29
1035Italy2024-06-01
1036Spain2024-06-10
1037Germany2024-06-07
1038India2024-06-24
1039United Kingdom2024-06-06
1040Australia2024-05-28
1041Spain2024-06-05
1042Spain2024-06-22
1043Spain2024-06-08
1044France2024-06-15
1045Japan2024-06-04
1046Italy2024-05-29
1047Spain2024-05-31
1048Canada2024-06-08
1049Spain2024-05-28

On-Demand Data

NameIdCountryDate
Maria X Venere1000Canada2024-05-30
Costa N Chui1001France2024-06-08
Emily Q Rulapaugh1002Argentina2024-06-05
Jefferson G Nestle1003Spain2024-06-17
Darci F Albares1004Canada2024-05-27
Izzy L Briddick1005Australia2024-06-19
Misaki X Nicka1006United Kingdom2024-05-31
Mayumi R Venere1007Japan2024-06-14
Leon H Whobrey1008United Kingdom2024-06-10
Aditya G Kusko1009Russia2024-05-29
Kadeem R Rulapaugh1010Brazil2024-05-28
Munro T Perin1011Italy2024-06-19
Arvin S Schemmer1012Brazil2024-05-31
Jones C Royster1013France2024-06-15
Clifford L Vocelka1014Canada2024-06-21
Maria H Dilliard1015Brazil2024-06-19
Octavia J Paprocki1016France2024-06-07
Cody H Oldroyd1017France2024-06-09
Aruna I Poquette1018India2024-06-12
Aruna X Malet1019Japan2024-06-06
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Octavia Z SergiGermanyOnyama Limba PROPOSAL
Faith L FerenczSpainXuxue Feng NEW
Maisha T GarufiGermanyStephen Shaw PROPOSAL
James L CampainIndiaStephen Shaw PROPOSAL
Clifford K RutaItalyXuxue Feng RENEWAL
Leon N CaudySpainAnna Fali NEGOTIATION
Kadeem B InouyeItalyAsiya Javayant QUALIFIED
Clifford U CampainIndiaXuxue Feng NEGOTIATION
Adams G GauchoAustraliaIoni Bowcher RENEWAL
Johnson P MaletFranceBernardo Dominic QUALIFIED
Nicolas W StockhamItalyAsiya Javayant UNQUALIFIED
Costa T SergiRussiaXuxue Feng NEW
Darci M FlosiIndiaIoni Bowcher NEW
Stacey G VenereCanadaAnna Fali QUALIFIED
Isabel E FlosiArgentinaAnna Fali NEW
Maria V SaylorsArgentinaElwin Sharvill QUALIFIED
Kadeem X OstroskyIndiaIvan Magalhaes NEW
Arvin S MorascaRussiaAmy Elsner PROPOSAL
James D AlbaresCanadaAsiya Javayant QUALIFIED
Aditya S SergiUnited KingdomBernardo Dominic NEW
Ashley L BowleyBrazilAmy Elsner QUALIFIED
Octavia L MaletItalyBernardo Dominic QUALIFIED
Claire H PerinArgentinaAmy Elsner NEW
Jones T NestleRussiaIvan Magalhaes NEGOTIATION
Kaitlin L PaprockiIndiaIvan Magalhaes RENEWAL
Faith U MarrierIndiaOnyama Limba RENEWAL
David O NestleUnited KingdomAsiya Javayant RENEWAL
Izzy V FerenczUnited KingdomXuxue Feng QUALIFIED
Darci O SlusarskiAustraliaAnna Fali NEGOTIATION
Leja H StockhamGermanyAsiya Javayant RENEWAL
Jones G GauchoIndiaOnyama Limba QUALIFIED
Morrow T WieserUnited KingdomXuxue Feng QUALIFIED
Adams W MorascaItalyBernardo Dominic UNQUALIFIED
Francesco C DarakjyGermanyAnna Fali PROPOSAL
Morrow U BriddickItalyAmy Elsner QUALIFIED
Darci Q InouyeRussiaAsiya Javayant RENEWAL
Smith K SergiGermanyBernardo Dominic QUALIFIED
Greenwood Z WhobreyItalyStephen Shaw QUALIFIED
Ricardo W AlbaresAustraliaOnyama Limba NEW
Misaki K StockhamBrazilXuxue Feng NEGOTIATION

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