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
Nicolas I DilliardArgentinaElwin Sharvill PROPOSAL
Munro Y StensethRussiaStephen Shaw RENEWAL
Morrow U GauchoIndiaOnyama Limba PROPOSAL
Silvio G SaylorsBrazilOnyama Limba NEGOTIATION
Julie E SchemmerUnited KingdomBernardo Dominic UNQUALIFIED
Emily Y CampainSpainStephen Shaw PROPOSAL
Jeanfrancois O AmigonGermanyIvan Magalhaes PROPOSAL
Greenwood J RoysterRussiaElwin Sharvill UNQUALIFIED
James S IturbideFranceAmy Elsner RENEWAL
Greenwood D VocelkaUnited KingdomIvan Magalhaes UNQUALIFIED
Juan F WhobreyIndiaElwin Sharvill NEW
Stacey X StockhamCanadaElwin Sharvill UNQUALIFIED
Kadeem A GillianJapanStephen Shaw RENEWAL
Cody M FollerJapanElwin Sharvill UNQUALIFIED
Aika C RulapaughItalyStephen Shaw UNQUALIFIED
Kadeem H KolmetzSpainAsiya Javayant PROPOSAL
Stacey R PerinAustraliaIoni Bowcher QUALIFIED
Adams L RutaGermanyXuxue Feng UNQUALIFIED
Mayumi Q RoysterCanadaAmy Elsner NEW
Rodrigues I RoysterRussiaXuxue Feng NEW
Jones U CampainBrazilOnyama Limba RENEWAL
Stacey O CaudySpainAmy Elsner UNQUALIFIED
Arvin F FerenczBrazilElwin Sharvill RENEWAL
Maria X DoeFranceOnyama Limba NEGOTIATION
Isabel O SergiFranceElwin Sharvill NEGOTIATION
Octavia O NestleIndiaIoni Bowcher NEW
Stacey B MacleadGermanyOnyama Limba RENEWAL
Ricardo Q SchemmerRussiaIvan Magalhaes QUALIFIED
Kadeem A NestleIndiaAnna Fali PROPOSAL
Murillo E WaycottArgentinaIvan Magalhaes PROPOSAL
Salvatore Q StockhamIndiaStephen Shaw PROPOSAL
Arvin Y VenereRussiaXuxue Feng PROPOSAL
Greenwood E SlusarskiFranceIoni Bowcher NEGOTIATION
Isabel D NickaCanadaIvan Magalhaes QUALIFIED
Ricardo N MaletArgentinaOnyama Limba QUALIFIED
Wickens D FlosiJapanOnyama Limba QUALIFIED
Juan Z TollnerUnited KingdomIvan Magalhaes NEW
Sinclair J RulapaughCanadaXuxue Feng PROPOSAL
Aditya O WieserItalyAmy Elsner UNQUALIFIED
Costa S GauchoJapanIoni Bowcher UNQUALIFIED
Wickens C PoquetteCanadaBernardo Dominic NEW
Greenwood N FigeroaFranceIvan Magalhaes NEW
Maisha V KolmetzCanadaIoni Bowcher NEW
Sinclair M ChuiFranceStephen Shaw NEGOTIATION
Mayumi F MarrierRussiaBernardo Dominic RENEWAL
Arvin U ButtArgentinaElwin Sharvill PROPOSAL
Misaki T WhobreyGermanyIoni Bowcher UNQUALIFIED
Maisha S VenereBrazilIoni Bowcher QUALIFIED
Isabel W FerenczGermanyIoni Bowcher NEW
Darci V BowleyGermanyXuxue Feng QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Greenwood J RutaCanadaAmy Elsner QUALIFIED
Aditya S DilliardRussiaStephen Shaw NEGOTIATION
Jones V StockhamBrazilIoni Bowcher PROPOSAL
Aruna D DoeGermanyOnyama Limba RENEWAL
David S MacleadJapanIvan Magalhaes NEGOTIATION
Ricardo Q ShinkoIndiaAmy Elsner PROPOSAL
Ivar K PoquetteBrazilAsiya Javayant QUALIFIED
Leja N SergiGermanyAmy Elsner UNQUALIFIED
Emily C RoysterCanadaOnyama Limba QUALIFIED
Chavez F FigeroaSpainAmy Elsner UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Alejandro X NestleFrance2024-05-26King, Christopher A Esq PROPOSAL41Xuxue Feng
1001Salvatore Q SchemmerUnited Kingdom2024-06-16Buckley Miller Wright RENEWAL38Stephen Shaw
1002Clifford R FollerCanada2024-06-10Feltz Printing Service NEGOTIATION33Asiya Javayant
1003Ricardo C StockhamFrance2024-05-31Chemel, James L Cpa RENEWAL7Bernardo Dominic
1004Izzy L ShinkoAustralia2024-06-08Rousseaux, Michael Esq UNQUALIFIED66Ivan Magalhaes
1005Ricardo R MaletIndia2024-06-17Commercial Press RENEWAL72Ioni Bowcher
1006Johnson O KolmetzUnited Kingdom2024-06-06Chapman, Ross E Esq RENEWAL80Bernardo Dominic
1007Aika B NickaGermany2024-05-26King, Christopher A Esq RENEWAL69Ioni Bowcher
1008Emily O CampainIndia2024-05-27Commercial Press QUALIFIED43Ivan Magalhaes
1009Ivar U DoeSpain2024-06-18Rangoni Of Florence PROPOSAL92Amy Elsner
1010Arvin Z BriddickArgentina2024-05-27Feiner Bros QUALIFIED56Elwin Sharvill
1011Clifford Y NickaUnited Kingdom2024-05-31Printing Dimensions QUALIFIED14Amy Elsner
1012Maisha R RimIndia2024-06-17Chanay, Jeffrey A Esq QUALIFIED92Onyama Limba
1013Misaki V OldroydItaly2024-05-28Printing Dimensions NEGOTIATION43Anna Fali
1014Francesco N InouyeAustralia2024-05-30Benton, John B Jr QUALIFIED68Ioni Bowcher
1015Cody A PoquetteFrance2024-06-08Rousseaux, Michael Esq RENEWAL64Asiya Javayant
1016Jennifer P RulapaughUnited Kingdom2024-06-21Chapman, Ross E Esq RENEWAL62Elwin Sharvill
1017Jeanfrancois A WieserItaly2024-05-26Chemel, James L Cpa NEW49Elwin Sharvill
1018Izzy A DarakjySpain2024-06-22Chemel, James L Cpa NEW42Amy Elsner
1019Mayumi D StensethGermany2024-06-05Rangoni Of Florence NEW95Xuxue Feng
1020Maria Q NestleGermany2024-06-04Chanay, Jeffrey A Esq NEGOTIATION70Amy Elsner
1021Octavia H WhobreyFrance2024-06-16Chapman, Ross E Esq RENEWAL57Ioni Bowcher
1022Ricardo Z IturbideFrance2024-06-13Feiner Bros NEW55Bernardo Dominic
1023Claire A SergiCanada2024-06-17Feltz Printing Service PROPOSAL6Amy Elsner
1024Leon B SergiArgentina2024-06-08Morlong Associates PROPOSAL60Elwin Sharvill
1025Aruna H DarakjyBrazil2024-05-28Buckley Miller Wright NEGOTIATION99Onyama Limba
1026Leon R SaylorsArgentina2024-06-16Rangoni Of Florence RENEWAL32Amy Elsner
1027Arvin B BologniaAustralia2024-06-10Morlong Associates UNQUALIFIED62Elwin Sharvill
1028Julie P GillianJapan2024-05-31Commercial Press RENEWAL66Stephen Shaw
1029Jeanfrancois N RulapaughSpain2024-06-20Benton, John B Jr NEW72Asiya Javayant
1030Leon C FigeroaJapan2024-06-09Dorl, James J Esq NEW2Stephen Shaw
1031Jennifer A InouyeIndia2024-05-29King, Christopher A Esq NEGOTIATION65Onyama Limba
1032Wickens E CaldareraRussia2024-06-10Rousseaux, Michael Esq UNQUALIFIED91Ivan Magalhaes
1033Silvio X SaylorsUnited Kingdom2024-05-26Rangoni Of Florence QUALIFIED69Xuxue Feng
1034Leon V AlbaresFrance2024-06-21Chanay, Jeffrey A Esq PROPOSAL71Xuxue Feng
1035Salvatore Q WaycottFrance2024-06-22Rousseaux, Michael Esq PROPOSAL49Ioni Bowcher
1036Nicolas R NestleJapan2024-06-16Buckley Miller Wright NEGOTIATION64Ioni Bowcher
1037Munro Y WhobreyBrazil2024-05-28Chanay, Jeffrey A Esq RENEWAL47Bernardo Dominic
1038Octavia H InouyeIndia2024-06-05Printing Dimensions NEW81Elwin Sharvill
1039Misaki A VenereSpain2024-06-19Dorl, James J Esq NEGOTIATION52Elwin Sharvill
1040Nicolas J OldroydArgentina2024-06-16Commercial Press RENEWAL5Amy Elsner
1041Stacey Y SlusarskiGermany2024-06-18Morlong Associates RENEWAL20Bernardo Dominic
1042Emily E OstroskyIndia2024-06-05Morlong Associates PROPOSAL75Ioni Bowcher
1043Clifford M MarrierSpain2024-06-22Feltz Printing Service NEGOTIATION1Onyama Limba
1044Wickens L DoeIndia2024-06-09Benton, John B Jr NEGOTIATION59Ivan Magalhaes
1045Mujtaba Z FollerIndia2024-06-06Feiner Bros QUALIFIED35Onyama Limba
1046Silvio V KuskoBrazil2024-05-24Chapman, Ross E Esq QUALIFIED66Anna Fali
1047Izzy V SaylorsFrance2024-05-29Chanay, Jeffrey A Esq NEGOTIATION69Anna Fali
1048Faith E BowleyUnited Kingdom2024-06-14Chemel, James L Cpa QUALIFIED55Onyama Limba
1049Morrow Z BowleyCanada2024-05-31Dorl, James J Esq RENEWAL9Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Kaitlin U WaycottRussiaAnna Fali PROPOSAL
Isabel Z MacleadBrazilElwin Sharvill PROPOSAL
Morrow H SlusarskiIndiaElwin Sharvill NEW
Ricardo L NickaSpainElwin Sharvill UNQUALIFIED
Kaitlin D VenereCanadaBernardo Dominic PROPOSAL
Maisha D KuskoAustraliaStephen Shaw RENEWAL
David N MaletBrazilStephen Shaw RENEWAL
Julie Q ChuiUnited KingdomAnna Fali NEW
Mujtaba Q SchemmerUnited KingdomAsiya Javayant UNQUALIFIED
Aika U GillianRussiaAsiya Javayant UNQUALIFIED
Jefferson D NestleArgentinaXuxue Feng UNQUALIFIED
Aruna P BologniaSpainIvan Magalhaes UNQUALIFIED
Izzy B ButtJapanAmy Elsner RENEWAL
Kadeem U RulapaughRussiaIoni Bowcher NEGOTIATION
Ashley W SergiRussiaIoni Bowcher QUALIFIED
Greenwood P MorascaCanadaIvan Magalhaes RENEWAL
Jeanfrancois E GillianCanadaAmy Elsner NEGOTIATION
Nicolas P OstroskyAustraliaXuxue Feng NEGOTIATION
Jeanfrancois T GauchoArgentinaElwin Sharvill PROPOSAL
Sinclair G BowleyJapanStephen Shaw NEW
Stacey R WieserCanadaOnyama Limba RENEWAL
Aruna Y ShinkoSpainAmy Elsner PROPOSAL
Ashley R WieserUnited KingdomBernardo Dominic RENEWAL
Munro N MarrierAustraliaAsiya Javayant PROPOSAL
Faith H WhobreyGermanyAnna Fali UNQUALIFIED
Claire C BriddickArgentinaOnyama Limba NEW
Aditya H KuskoCanadaIvan Magalhaes NEGOTIATION
Jennifer H FollerRussiaAmy Elsner NEGOTIATION
Kadeem S NickaSpainAmy Elsner RENEWAL
Tony X TollnerArgentinaBernardo Dominic NEW
Smith Q FigeroaAustraliaAmy Elsner NEGOTIATION
Jones I StensethCanadaElwin Sharvill QUALIFIED
Claire N CampainAustraliaIvan Magalhaes NEGOTIATION
Leon T GarufiItalyAmy Elsner NEGOTIATION
Aditya H SergiIndiaBernardo Dominic RENEWAL
Ricardo V BriddickItalyAsiya Javayant NEW
Johnson W IturbideUnited KingdomAsiya Javayant NEGOTIATION
Nicolas C GlickIndiaElwin Sharvill UNQUALIFIED
Aditya Y WieserItalyAmy Elsner NEW
Cody X DilliardCanadaAsiya Javayant UNQUALIFIED
Arvin Z NestleJapanIoni Bowcher QUALIFIED
Faith F ShinkoFranceElwin Sharvill QUALIFIED
Misaki R BriddickCanadaElwin Sharvill UNQUALIFIED
Arvin X VenereFranceIvan Magalhaes PROPOSAL
Sinclair X BowleyItalyAsiya Javayant QUALIFIED
Maria Q FigeroaFranceIvan Magalhaes NEW
Greenwood Q StensethIndiaIoni Bowcher UNQUALIFIED
Wickens N WhobreySpainStephen Shaw NEGOTIATION
Juan F GarufiGermanyIvan Magalhaes UNQUALIFIED
Morrow F StockhamIndiaStephen Shaw QUALIFIED
Frozen Columns
Name
Julie T Kolmetz
Misaki Q Rim
David Z Briddick
Ricardo M Inouye
Johnson N Wieser
Jones T Stockham
Kadeem T Kolmetz
Wickens P Albares
Kadeem J Malet
Aditya K Royster
Costa P Campain
Ricardo F Bowley
Maria R Bowley
Jefferson R Maclead
Juan D Nicka
Deepesh K Tollner
Juan F Bowley
Morrow L Amigon
Ivar A Rulapaugh
Costa O Saylors
Jeanfrancois Z Paprocki
Faith Y Tollner
Stacey T Amigon
Claire Q Chui
Salvatore Q Foller
Jones D Stenseth
Faith X Albares
Mujtaba E Bolognia
Izzy D Iturbide
Greenwood S Stockham
Leon R Kusko
Aditya T Chui
Alejandro C Briddick
Juan G Ruta
Misaki B Ostrosky
Ashley U Ruta
Deepesh O Whobrey
Jefferson E Wieser
Ashley G Marrier
Aditya P Inouye
Aditya Y Campain
Mujtaba Z Whobrey
Claire D Poquette
Julie O Caldarera
Aruna V Gaucho
Kadeem V Tollner
Deepesh J Ostrosky
Isabel G Garufi
Rodrigues L Kusko
Darci V Figeroa
IdCountryDate
1000Germany2024-06-17
1001Russia2024-06-10
1002Japan2024-06-04
1003Spain2024-05-29
1004Australia2024-06-19
1005India2024-06-20
1006France2024-05-30
1007Russia2024-06-05
1008Germany2024-06-15
1009Japan2024-06-19
1010Canada2024-06-09
1011France2024-06-03
1012France2024-06-03
1013Germany2024-05-29
1014Argentina2024-06-22
1015Australia2024-06-19
1016Russia2024-06-04
1017Russia2024-06-19
1018Australia2024-05-26
1019Germany2024-06-09
1020Australia2024-06-19
1021United Kingdom2024-05-26
1022France2024-06-01
1023Spain2024-06-07
1024France2024-06-15
1025Canada2024-06-16
1026Canada2024-06-06
1027Germany2024-06-14
1028Canada2024-06-16
1029Brazil2024-05-25
1030Germany2024-06-15
1031Australia2024-06-01
1032Japan2024-06-15
1033Germany2024-06-20
1034Russia2024-06-22
1035France2024-06-05
1036Argentina2024-06-03
1037Brazil2024-06-04
1038Germany2024-06-09
1039India2024-05-24
1040Italy2024-05-25
1041Italy2024-06-08
1042India2024-05-27
1043Spain2024-06-02
1044Germany2024-05-28
1045Australia2024-06-21
1046Italy2024-06-22
1047Germany2024-06-05
1048France2024-06-11
1049India2024-06-16

On-Demand Data

NameIdCountryDate
Aditya H Albares1000Spain2024-05-29
Jones R Ostrosky1001Argentina2024-05-25
Juan Z Briddick1002Brazil2024-05-28
Silvio C Chui1003Spain2024-06-01
Rodrigues J Marrier1004Japan2024-06-11
Greenwood P Kolmetz1005Spain2024-05-30
Wickens A Kusko1006Australia2024-06-01
Ricardo X Oldroyd1007Spain2024-06-02
Maria S Briddick1008Germany2024-06-12
Ivar J Ostrosky1009France2024-06-04
Nicolas D Inouye1010Italy2024-06-10
Antonio N Venere1011France2024-06-01
Murillo W Whobrey1012France2024-06-05
Wickens T Bowley1013Russia2024-05-24
Sinclair G Rulapaugh1014France2024-06-19
Francesco Y Ferencz1015Argentina2024-06-08
Isabel B Royster1016Russia2024-06-07
Izzy C Bolognia1017Japan2024-06-09
Aruna H Rulapaugh1018Russia2024-06-18
Costa A Ostrosky1019Russia2024-06-20
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Alejandro L FigeroaRussiaXuxue Feng RENEWAL
Jeanfrancois O DilliardIndiaAmy Elsner NEGOTIATION
Arvin Y GlickIndiaIoni Bowcher QUALIFIED
Faith X RutaSpainBernardo Dominic UNQUALIFIED
Isabel P FollerUnited KingdomStephen Shaw NEW
Munro H NickaRussiaAsiya Javayant QUALIFIED
Jones G TollnerCanadaAnna Fali QUALIFIED
Maria Q BriddickArgentinaOnyama Limba UNQUALIFIED
Cody W ChuiFranceAnna Fali UNQUALIFIED
Octavia R ChuiRussiaAsiya Javayant RENEWAL
Nicolas L SergiJapanIoni Bowcher NEGOTIATION
Jefferson I FerenczAustraliaStephen Shaw RENEWAL
Salvatore B StensethSpainAnna Fali PROPOSAL
Leon V IturbideFranceStephen Shaw PROPOSAL
Mayumi I SlusarskiIndiaStephen Shaw NEGOTIATION
Kadeem Z TollnerFranceOnyama Limba RENEWAL
Tony U StockhamFranceAsiya Javayant NEW
Salvatore U BriddickUnited KingdomElwin Sharvill NEW
Nicolas H SaylorsRussiaIvan Magalhaes QUALIFIED
Darci G DoeArgentinaXuxue Feng QUALIFIED
Sinclair H CampainFranceIoni Bowcher RENEWAL
Mujtaba W RutaIndiaStephen Shaw NEW
Clifford G PoquetteCanadaOnyama Limba UNQUALIFIED
Kadeem P GarufiCanadaOnyama Limba UNQUALIFIED
Murillo G BowleyCanadaElwin Sharvill NEW
Stacey D PerinBrazilStephen Shaw RENEWAL
Alejandro A StockhamIndiaIoni Bowcher UNQUALIFIED
David T MarrierRussiaOnyama Limba UNQUALIFIED
Misaki M IturbideItalyIvan Magalhaes RENEWAL
Salvatore J SchemmerItalyIoni Bowcher NEGOTIATION
Emily N FigeroaGermanyElwin Sharvill RENEWAL
Munro G InouyeAustraliaAmy Elsner QUALIFIED
Clifford A TollnerFranceOnyama Limba NEW
Mujtaba B GauchoSpainBernardo Dominic UNQUALIFIED
James E DarakjyFranceElwin Sharvill PROPOSAL
Murillo J NickaFranceElwin Sharvill NEW
Wickens S MacleadGermanyStephen Shaw PROPOSAL
David I BriddickJapanBernardo Dominic NEGOTIATION
Mayumi X VocelkaIndiaIoni Bowcher RENEWAL
Smith Q SchemmerItalyAnna Fali 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>