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
Ricardo M ShinkoIndiaOnyama Limba RENEWAL
Clifford T AmigonIndiaXuxue Feng UNQUALIFIED
Julie V FlosiFranceOnyama Limba NEGOTIATION
Jeanfrancois Q FerenczSpainAmy Elsner RENEWAL
James J MacleadUnited KingdomIoni Bowcher NEW
Chavez W WhobreySpainIoni Bowcher UNQUALIFIED
Aika I MarrierArgentinaIoni Bowcher PROPOSAL
Salvatore Z TollnerArgentinaXuxue Feng NEGOTIATION
Aika V ShinkoUnited KingdomElwin Sharvill QUALIFIED
Antonio D RimCanadaOnyama Limba QUALIFIED
Jeanfrancois N BologniaUnited KingdomAnna Fali PROPOSAL
Maria X GauchoFranceXuxue Feng RENEWAL
Sinclair S WieserUnited KingdomAmy Elsner RENEWAL
Salvatore N StensethFranceOnyama Limba UNQUALIFIED
Jones J GauchoRussiaBernardo Dominic PROPOSAL
Rodrigues H MarrierFranceAnna Fali UNQUALIFIED
Mujtaba L GillianFranceIoni Bowcher PROPOSAL
Stacey W SergiItalyBernardo Dominic UNQUALIFIED
Costa J TollnerArgentinaAnna Fali NEGOTIATION
Salvatore J MaletArgentinaAnna Fali RENEWAL
Rodrigues C AlbaresSpainAmy Elsner NEGOTIATION
Juan A FollerJapanOnyama Limba RENEWAL
Smith G CaldareraGermanyAmy Elsner RENEWAL
Tony T InouyeItalyAmy Elsner PROPOSAL
Greenwood M VenereGermanyOnyama Limba NEW
Mujtaba O FollerGermanyStephen Shaw PROPOSAL
Cody M MarrierJapanAnna Fali NEGOTIATION
Octavia M MaletCanadaOnyama Limba PROPOSAL
Kadeem M KolmetzAustraliaAsiya Javayant PROPOSAL
Smith U NickaRussiaXuxue Feng NEW
Kadeem W DarakjyIndiaAnna Fali PROPOSAL
Antonio V MorascaJapanOnyama Limba NEGOTIATION
Emily X SergiGermanyAsiya Javayant NEW
Mayumi L FlosiFranceAnna Fali RENEWAL
Nicolas B SchemmerJapanIoni Bowcher RENEWAL
James T CampainFranceIoni Bowcher RENEWAL
Jones F FlosiArgentinaAnna Fali NEW
Salvatore T GillianBrazilAmy Elsner RENEWAL
Jones H TollnerGermanyIoni Bowcher RENEWAL
Kadeem G PoquetteItalyBernardo Dominic RENEWAL
Isabel H GauchoJapanIoni Bowcher RENEWAL
Munro W FollerUnited KingdomBernardo Dominic PROPOSAL
Alejandro W BriddickJapanAmy Elsner PROPOSAL
Cody G VenereCanadaElwin Sharvill NEGOTIATION
Clifford E RulapaughFranceIvan Magalhaes NEW
Octavia O StockhamArgentinaIvan Magalhaes RENEWAL
Kaitlin S SaylorsUnited KingdomXuxue Feng UNQUALIFIED
Darci D IturbideGermanyAnna Fali NEW
Johnson I FlosiCanadaStephen Shaw QUALIFIED
Chavez I StockhamBrazilOnyama Limba QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Aruna S CampainGermanyAsiya Javayant NEW
Chavez A VocelkaRussiaAnna Fali PROPOSAL
Jefferson H WaycottAustraliaIvan Magalhaes NEGOTIATION
Juan H ChuiSpainXuxue Feng RENEWAL
Munro X SlusarskiCanadaBernardo Dominic QUALIFIED
Greenwood O ButtCanadaXuxue Feng NEW
James C MaletBrazilElwin Sharvill PROPOSAL
Francesco J MorascaBrazilIoni Bowcher PROPOSAL
Mayumi D ButtSpainStephen Shaw RENEWAL
Izzy M StockhamFranceIvan Magalhaes QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maria P MacleadCanada2024-06-13Buckley Miller Wright UNQUALIFIED92Ioni Bowcher
1001Costa F RutaSpain2024-06-17Feiner Bros QUALIFIED19Bernardo Dominic
1002James T MacleadJapan2024-06-16Chemel, James L Cpa UNQUALIFIED3Ioni Bowcher
1003Julie P KuskoAustralia2024-06-21Commercial Press UNQUALIFIED22Onyama Limba
1004Clifford B PerinCanada2024-06-03Chanay, Jeffrey A Esq NEGOTIATION35Asiya Javayant
1005Faith V MacleadSpain2024-06-17Chapman, Ross E Esq UNQUALIFIED11Xuxue Feng
1006Francesco M ShinkoIndia2024-06-10Chemel, James L Cpa QUALIFIED70Asiya Javayant
1007Clifford U MarrierIndia2024-06-18Chanay, Jeffrey A Esq RENEWAL52Amy Elsner
1008Salvatore H AlbaresUnited Kingdom2024-05-26Rangoni Of Florence NEW41Xuxue Feng
1009Francesco D StensethAustralia2024-05-26Rousseaux, Michael Esq UNQUALIFIED41Bernardo Dominic
1010Francesco R RulapaughFrance2024-06-09Rangoni Of Florence NEGOTIATION5Amy Elsner
1011Sinclair K NickaCanada2024-06-21Feiner Bros NEW99Anna Fali
1012Leja F MaletJapan2024-06-03Chanay, Jeffrey A Esq RENEWAL89Xuxue Feng
1013Ashley G StockhamBrazil2024-06-03Rousseaux, Michael Esq PROPOSAL22Elwin Sharvill
1014Ashley G SchemmerGermany2024-05-27King, Christopher A Esq RENEWAL51Asiya Javayant
1015Rodrigues T ChuiSpain2024-06-15Rangoni Of Florence QUALIFIED93Asiya Javayant
1016Greenwood Y ChuiArgentina2024-06-01Chemel, James L Cpa NEW43Ivan Magalhaes
1017Jefferson S WaycottUnited Kingdom2024-05-31Commercial Press UNQUALIFIED71Ivan Magalhaes
1018Adams V PerinBrazil2024-06-20Rousseaux, Michael Esq NEW60Asiya Javayant
1019Jennifer D OldroydRussia2024-06-07Feltz Printing Service RENEWAL17Xuxue Feng
1020Faith S BologniaJapan2024-05-28Buckley Miller Wright RENEWAL80Elwin Sharvill
1021Ricardo D SchemmerUnited Kingdom2024-05-28Feltz Printing Service RENEWAL7Bernardo Dominic
1022Leja X PerinSpain2024-05-24Commercial Press NEW25Onyama Limba
1023Costa V TollnerGermany2024-05-28Chemel, James L Cpa PROPOSAL68Bernardo Dominic
1024Alejandro W FollerIndia2024-06-17Feiner Bros PROPOSAL62Ioni Bowcher
1025Wickens T PaprockiCanada2024-06-16Benton, John B Jr NEGOTIATION43Asiya Javayant
1026Mayumi V MorascaGermany2024-06-13Rangoni Of Florence UNQUALIFIED60Ioni Bowcher
1027Juan J RutaCanada2024-06-15Rousseaux, Michael Esq PROPOSAL75Ioni Bowcher
1028Sinclair Y DilliardRussia2024-05-31King, Christopher A Esq PROPOSAL85Ioni Bowcher
1029Darci I InouyeGermany2024-06-17Truhlar And Truhlar Attys NEW99Stephen Shaw
1030Smith Q MacleadFrance2024-05-29Feltz Printing Service RENEWAL93Amy Elsner
1031Mayumi M ChuiGermany2024-06-12Rousseaux, Michael Esq RENEWAL44Ivan Magalhaes
1032Aditya C MaletBrazil2024-05-28Chanay, Jeffrey A Esq QUALIFIED38Asiya Javayant
1033Aika B PerinJapan2024-06-18King, Christopher A Esq NEW33Anna Fali
1034Aditya Z BowleySpain2024-06-04Feltz Printing Service PROPOSAL1Bernardo Dominic
1035Chavez T TollnerJapan2024-06-06Chanay, Jeffrey A Esq PROPOSAL6Asiya Javayant
1036Julie X DarakjyBrazil2024-05-27Commercial Press PROPOSAL24Ivan Magalhaes
1037Silvio D RulapaughIndia2024-05-24Feltz Printing Service RENEWAL89Ivan Magalhaes
1038Juan E MaletRussia2024-06-17Printing Dimensions NEW18Ivan Magalhaes
1039Juan Z RutaFrance2024-05-27Commercial Press UNQUALIFIED12Asiya Javayant
1040Salvatore Y GillianBrazil2024-06-21King, Christopher A Esq UNQUALIFIED6Ivan Magalhaes
1041Murillo H RulapaughCanada2024-06-03Rangoni Of Florence NEW59Onyama Limba
1042Julie L OstroskyGermany2024-06-02Rangoni Of Florence PROPOSAL47Onyama Limba
1043Mujtaba Y KuskoJapan2024-06-13Dorl, James J Esq NEW48Xuxue Feng
1044Kaitlin P BriddickItaly2024-05-27Chapman, Ross E Esq UNQUALIFIED30Asiya Javayant
1045Sinclair H RulapaughArgentina2024-06-06Rangoni Of Florence UNQUALIFIED15Amy Elsner
1046Maisha T MorascaUnited Kingdom2024-06-16Truhlar And Truhlar Attys UNQUALIFIED3Elwin Sharvill
1047Izzy M GauchoUnited Kingdom2024-05-23Chemel, James L Cpa QUALIFIED33Asiya Javayant
1048Misaki W BowleyItaly2024-06-21Chemel, James L Cpa PROPOSAL52Stephen Shaw
1049Leja X OldroydSpain2024-06-04Dorl, James J Esq QUALIFIED5Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Francesco M FigeroaRussiaIoni Bowcher QUALIFIED
Faith X CaldareraIndiaAmy Elsner UNQUALIFIED
Misaki R OldroydJapanXuxue Feng PROPOSAL
Silvio J RulapaughSpainAsiya Javayant NEW
Darci X FigeroaIndiaAmy Elsner QUALIFIED
Ricardo F BowleyArgentinaXuxue Feng QUALIFIED
Chavez T FerenczBrazilAnna Fali NEGOTIATION
James N ShinkoRussiaAsiya Javayant QUALIFIED
Rodrigues L RutaCanadaBernardo Dominic NEGOTIATION
Maisha O FerenczBrazilIoni Bowcher RENEWAL
Chavez B VocelkaIndiaIvan Magalhaes NEGOTIATION
Kadeem P FigeroaJapanAmy Elsner PROPOSAL
Emily F VocelkaIndiaOnyama Limba NEW
Leja G NestleUnited KingdomXuxue Feng NEGOTIATION
Jennifer K TollnerBrazilAnna Fali RENEWAL
Julie Z BriddickSpainIvan Magalhaes NEW
Ricardo S AlbaresJapanAsiya Javayant RENEWAL
Adams U MacleadUnited KingdomElwin Sharvill UNQUALIFIED
Misaki R ShinkoArgentinaElwin Sharvill NEGOTIATION
Mujtaba K MacleadSpainXuxue Feng NEW
Jones Q SlusarskiUnited KingdomBernardo Dominic PROPOSAL
Nicolas Q GarufiCanadaBernardo Dominic RENEWAL
Ricardo F CaldareraIndiaStephen Shaw PROPOSAL
Francesco B MorascaFranceStephen Shaw PROPOSAL
Salvatore E OstroskyIndiaXuxue Feng PROPOSAL
Nicolas V IturbideFranceIoni Bowcher QUALIFIED
Leja J KolmetzAustraliaElwin Sharvill NEW
Jefferson U GauchoBrazilXuxue Feng NEGOTIATION
Silvio U StockhamIndiaOnyama Limba UNQUALIFIED
Maisha N BriddickGermanyStephen Shaw QUALIFIED
Nicolas M SaylorsArgentinaBernardo Dominic PROPOSAL
Claire T StockhamAustraliaIvan Magalhaes QUALIFIED
Ashley F MaletSpainIoni Bowcher NEW
Mujtaba B WaycottAustraliaAsiya Javayant QUALIFIED
Octavia I FerenczItalyAmy Elsner PROPOSAL
Aditya Z StockhamIndiaAnna Fali NEGOTIATION
Ashley S PerinArgentinaAsiya Javayant QUALIFIED
Chavez T MorascaCanadaXuxue Feng NEW
Aditya Q MorascaArgentinaIoni Bowcher UNQUALIFIED
Aditya E BologniaGermanyAsiya Javayant QUALIFIED
Juan H WieserSpainOnyama Limba RENEWAL
Faith K OldroydFranceAmy Elsner QUALIFIED
Adams L SchemmerBrazilAnna Fali UNQUALIFIED
Johnson Q StockhamCanadaAmy Elsner PROPOSAL
Emily Z DoeCanadaOnyama Limba NEGOTIATION
Maria P AmigonBrazilElwin Sharvill PROPOSAL
Nicolas H WieserFranceIoni Bowcher RENEWAL
Ashley Y MaletUnited KingdomBernardo Dominic PROPOSAL
Francesco R PerinUnited KingdomStephen Shaw QUALIFIED
Jefferson N OstroskyArgentinaAnna Fali PROPOSAL
Frozen Columns
Name
Morrow P Briddick
Johnson M Malet
Faith R Sergi
Mujtaba B Glick
Stacey X Tollner
Jones K Glick
Adams P Flosi
Silvio U Doe
Stacey K Royster
Juan F Garufi
Clifford D Doe
Leon E Kusko
Silvio P Nestle
Tony Z Ferencz
Juan B Whobrey
Aditya G Perin
Stacey C Vocelka
Adams K Poquette
Julie X Stenseth
Kaitlin G Slusarski
Aruna K Darakjy
Darci A Ruta
Jones S Darakjy
Smith J Garufi
Wickens B Ruta
Izzy C Ferencz
Salvatore U Slusarski
Jefferson Y Nestle
Claire G Chui
Chavez B Oldroyd
Tony D Ostrosky
David C Waycott
Aruna B Vocelka
Octavia R Garufi
Emily D Bowley
Tony N Ferencz
James Z Venere
Munro P Gaucho
Greenwood R Sergi
Aruna N Rim
Isabel Y Waycott
Greenwood F Whobrey
Deepesh X Flosi
Octavia Z Stenseth
James V Rulapaugh
Nicolas P Slusarski
Cody T Paprocki
Tony V Whobrey
Aika M Ostrosky
Juan C Bowley
IdCountryDate
1000Germany2024-06-19
1001United Kingdom2024-06-16
1002Russia2024-06-15
1003Russia2024-05-27
1004Germany2024-06-19
1005France2024-06-12
1006Canada2024-06-12
1007Russia2024-06-05
1008United Kingdom2024-06-08
1009India2024-05-27
1010India2024-06-21
1011Brazil2024-06-15
1012Argentina2024-05-24
1013Brazil2024-06-11
1014Canada2024-06-20
1015Germany2024-06-18
1016Canada2024-06-18
1017Japan2024-06-05
1018France2024-05-30
1019Japan2024-06-12
1020Russia2024-06-18
1021Australia2024-06-18
1022France2024-06-18
1023Australia2024-06-08
1024Australia2024-05-31
1025France2024-06-01
1026Brazil2024-06-17
1027Russia2024-06-14
1028France2024-06-06
1029Argentina2024-06-21
1030Argentina2024-06-04
1031Germany2024-06-01
1032Spain2024-06-18
1033Germany2024-06-15
1034India2024-05-29
1035France2024-06-15
1036Australia2024-06-04
1037India2024-06-20
1038Japan2024-05-26
1039India2024-05-29
1040France2024-06-15
1041France2024-06-11
1042Canada2024-05-31
1043Italy2024-05-29
1044Australia2024-05-30
1045United Kingdom2024-06-21
1046India2024-06-12
1047United Kingdom2024-05-27
1048Argentina2024-06-01
1049France2024-06-18

On-Demand Data

NameIdCountryDate
Arvin J Venere1000Russia2024-06-02
Isabel V Amigon1001India2024-06-12
Nicolas Y Garufi1002India2024-06-09
Octavia S Stockham1003Italy2024-06-11
Silvio U Shinko1004United Kingdom2024-06-05
Smith N Kusko1005Argentina2024-06-03
Antonio L Iturbide1006Brazil2024-05-23
Kadeem S Caudy1007Japan2024-05-29
Adams G Butt1008Canada2024-06-17
Octavia Q Nestle1009Germany2024-05-30
Salvatore T Albares1010Canada2024-05-30
Greenwood H Doe1011India2024-06-20
Cody T Sergi1012Australia2024-06-02
Kadeem D Tollner1013Italy2024-06-19
James X Nestle1014Brazil2024-06-12
Faith M Oldroyd1015United Kingdom2024-06-14
Arvin T Nicka1016Russia2024-05-24
Jennifer K Stenseth1017United Kingdom2024-06-02
Jones N Darakjy1018Russia2024-06-18
Leon O Nicka1019Canada2024-06-13
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Mujtaba N KolmetzSpainIoni Bowcher QUALIFIED
Octavia M RoysterGermanyAsiya Javayant NEGOTIATION
Mujtaba F GauchoIndiaBernardo Dominic UNQUALIFIED
Mujtaba J SchemmerSpainBernardo Dominic UNQUALIFIED
Octavia S DarakjySpainIvan Magalhaes QUALIFIED
Silvio V DoeCanadaBernardo Dominic NEW
Greenwood I WaycottIndiaAmy Elsner UNQUALIFIED
Greenwood X OstroskySpainAmy Elsner UNQUALIFIED
Chavez U GarufiFranceXuxue Feng NEW
Costa S OldroydUnited KingdomAnna Fali QUALIFIED
Silvio N FerenczRussiaBernardo Dominic QUALIFIED
Munro M CaldareraGermanyAnna Fali QUALIFIED
Chavez J DilliardSpainAnna Fali UNQUALIFIED
Jeanfrancois U CaudyRussiaAmy Elsner UNQUALIFIED
Leja F BowleyUnited KingdomAnna Fali NEGOTIATION
Maisha V MarrierCanadaElwin Sharvill RENEWAL
Emily K WieserRussiaBernardo Dominic PROPOSAL
Smith V MarrierGermanyXuxue Feng RENEWAL
Isabel B BologniaFranceBernardo Dominic PROPOSAL
Leon A AmigonItalyIoni Bowcher UNQUALIFIED
Francesco S KuskoArgentinaAsiya Javayant NEGOTIATION
Aruna L KolmetzUnited KingdomIvan Magalhaes PROPOSAL
Leja Z RutaRussiaBernardo Dominic PROPOSAL
David C WaycottRussiaOnyama Limba NEW
Adams D CaldareraFranceBernardo Dominic UNQUALIFIED
Leja D RutaBrazilStephen Shaw UNQUALIFIED
Deepesh U RoysterItalyXuxue Feng PROPOSAL
Silvio J StockhamJapanStephen Shaw PROPOSAL
Mayumi Y ShinkoGermanyAnna Fali RENEWAL
Jennifer Y RutaIndiaAmy Elsner UNQUALIFIED
Misaki Q GarufiGermanyAmy Elsner NEGOTIATION
Tony Y KuskoCanadaElwin Sharvill NEGOTIATION
Deepesh C ChuiSpainStephen Shaw NEW
Silvio Y AmigonCanadaOnyama Limba PROPOSAL
Salvatore X BologniaFranceBernardo Dominic RENEWAL
Francesco W RulapaughUnited KingdomAsiya Javayant QUALIFIED
Smith H BriddickUnited KingdomElwin Sharvill UNQUALIFIED
Mayumi C GillianSpainAmy Elsner NEGOTIATION
Deepesh C WieserFranceIoni Bowcher NEGOTIATION
Francesco K KuskoBrazilXuxue Feng 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>