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
Greenwood Q MarrierSpainIvan Magalhaes NEGOTIATION
Salvatore Z IturbideIndiaBernardo Dominic NEW
Nicolas G KolmetzJapanAnna Fali UNQUALIFIED
Claire F TollnerItalyElwin Sharvill RENEWAL
Julie L NickaCanadaOnyama Limba QUALIFIED
Murillo S AmigonUnited KingdomStephen Shaw NEW
Emily A RutaCanadaStephen Shaw RENEWAL
Chavez J TollnerArgentinaAnna Fali PROPOSAL
Claire T SlusarskiBrazilAmy Elsner RENEWAL
Silvio F BriddickFranceElwin Sharvill UNQUALIFIED
Johnson J NickaFranceOnyama Limba UNQUALIFIED
Wickens G FerenczFranceAmy Elsner NEW
Jones E PerinUnited KingdomAnna Fali UNQUALIFIED
Mayumi I RulapaughUnited KingdomIoni Bowcher NEGOTIATION
Alejandro Z SaylorsItalyOnyama Limba UNQUALIFIED
Nicolas V KuskoAustraliaAsiya Javayant QUALIFIED
Ivar W WhobreyUnited KingdomAmy Elsner QUALIFIED
Kaitlin L MorascaBrazilBernardo Dominic UNQUALIFIED
Izzy P StockhamRussiaIoni Bowcher QUALIFIED
Darci H SchemmerItalyAmy Elsner RENEWAL
Silvio V GarufiAustraliaIoni Bowcher PROPOSAL
Claire L WieserCanadaAnna Fali UNQUALIFIED
Julie X MorascaUnited KingdomAsiya Javayant PROPOSAL
Jeanfrancois X CampainSpainIoni Bowcher QUALIFIED
Francesco X GauchoArgentinaIoni Bowcher NEGOTIATION
Octavia R RoysterGermanyAmy Elsner PROPOSAL
Cody C FlosiSpainAsiya Javayant NEGOTIATION
Sinclair E PaprockiAustraliaAsiya Javayant NEW
Maisha O SaylorsJapanAnna Fali QUALIFIED
Johnson P SergiCanadaAsiya Javayant NEW
Chavez B InouyeCanadaElwin Sharvill QUALIFIED
Arvin K MaletUnited KingdomOnyama Limba PROPOSAL
Francesco B VocelkaFranceElwin Sharvill RENEWAL
Faith S OldroydFranceAmy Elsner NEW
Antonio A WhobreyArgentinaElwin Sharvill PROPOSAL
Jennifer H BowleyUnited KingdomBernardo Dominic QUALIFIED
Ashley C AmigonJapanAsiya Javayant PROPOSAL
Murillo O AmigonItalyElwin Sharvill QUALIFIED
Faith Z AmigonRussiaOnyama Limba UNQUALIFIED
Deepesh X BologniaCanadaIoni Bowcher UNQUALIFIED
Tony C FerenczIndiaAmy Elsner NEW
Jennifer C NestleItalyAsiya Javayant PROPOSAL
Darci D MarrierCanadaBernardo Dominic PROPOSAL
Tony C PaprockiAustraliaXuxue Feng NEGOTIATION
Morrow Q PerinAustraliaAmy Elsner RENEWAL
Nicolas E BriddickFranceIoni Bowcher QUALIFIED
Wickens O GlickItalyAsiya Javayant PROPOSAL
Tony Z StensethBrazilElwin Sharvill UNQUALIFIED
Misaki D OldroydFranceAmy Elsner QUALIFIED
Smith I IturbideJapanIoni Bowcher NEW
Horizontal
NameCountryRepresentativeStatus
Misaki X MacleadAustraliaElwin Sharvill PROPOSAL
Costa N MaletIndiaOnyama Limba PROPOSAL
Aditya L OldroydArgentinaIvan Magalhaes UNQUALIFIED
Kaitlin F SaylorsJapanAnna Fali QUALIFIED
Smith L StensethRussiaStephen Shaw UNQUALIFIED
Costa C GlickIndiaAsiya Javayant QUALIFIED
Clifford U PaprockiArgentinaBernardo Dominic RENEWAL
Wickens N ShinkoUnited KingdomIoni Bowcher NEGOTIATION
Smith O SlusarskiUnited KingdomXuxue Feng UNQUALIFIED
Johnson T BologniaJapanElwin Sharvill NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ivar K PerinRussia2024-05-19Morlong Associates QUALIFIED8Onyama Limba
1001Antonio I AmigonArgentina2024-06-13Dorl, James J Esq UNQUALIFIED41Ioni Bowcher
1002Ivar T AlbaresUnited Kingdom2024-06-05Morlong Associates PROPOSAL11Onyama Limba
1003Leja E KolmetzBrazil2024-06-04Truhlar And Truhlar Attys NEW24Anna Fali
1004Cody B AmigonBrazil2024-05-29Dorl, James J Esq QUALIFIED65Asiya Javayant
1005Faith Z RimFrance2024-06-07Rousseaux, Michael Esq NEGOTIATION87Asiya Javayant
1006Mujtaba Y OstroskyArgentina2024-05-31Printing Dimensions UNQUALIFIED22Ioni Bowcher
1007Jennifer N VocelkaCanada2024-05-31Chanay, Jeffrey A Esq QUALIFIED46Ivan Magalhaes
1008Leja V MaletSpain2024-05-17Chemel, James L Cpa NEGOTIATION62Ivan Magalhaes
1009David M DoeJapan2024-06-07Buckley Miller Wright NEGOTIATION53Xuxue Feng
1010Murillo K AlbaresGermany2024-06-09Benton, John B Jr PROPOSAL52Elwin Sharvill
1011Ricardo U AlbaresSpain2024-05-21Chemel, James L Cpa UNQUALIFIED2Bernardo Dominic
1012Costa L VocelkaItaly2024-05-23Feiner Bros RENEWAL98Onyama Limba
1013Octavia G NickaFrance2024-05-30Dorl, James J Esq UNQUALIFIED26Xuxue Feng
1014Jones D BriddickJapan2024-05-27Feltz Printing Service RENEWAL25Stephen Shaw
1015Leon S SaylorsBrazil2024-05-21Chanay, Jeffrey A Esq NEGOTIATION70Stephen Shaw
1016Jennifer P NestleIndia2024-05-21Benton, John B Jr PROPOSAL8Ivan Magalhaes
1017Claire B MarrierGermany2024-05-28Chemel, James L Cpa RENEWAL18Amy Elsner
1018Aruna F SlusarskiArgentina2024-06-12Printing Dimensions RENEWAL62Onyama Limba
1019Rodrigues B GarufiGermany2024-05-25Feiner Bros RENEWAL39Onyama Limba
1020Arvin Z SergiArgentina2024-05-30Rangoni Of Florence RENEWAL28Xuxue Feng
1021Ricardo T MacleadFrance2024-06-02Chanay, Jeffrey A Esq QUALIFIED35Anna Fali
1022Costa N SchemmerCanada2024-06-01Printing Dimensions NEGOTIATION64Amy Elsner
1023Rodrigues D NestleSpain2024-05-19Rousseaux, Michael Esq NEW94Anna Fali
1024Jennifer H FlosiJapan2024-05-30Chemel, James L Cpa NEGOTIATION10Anna Fali
1025Costa Y RoysterItaly2024-05-18Feltz Printing Service RENEWAL26Anna Fali
1026Misaki L FollerIndia2024-05-19Rousseaux, Michael Esq NEGOTIATION15Onyama Limba
1027Aditya M CaldareraBrazil2024-05-30Rangoni Of Florence QUALIFIED32Ivan Magalhaes
1028Octavia D ShinkoItaly2024-06-04Buckley Miller Wright UNQUALIFIED66Xuxue Feng
1029Johnson S FollerItaly2024-06-07Feltz Printing Service NEW82Bernardo Dominic
1030David Y GillianJapan2024-06-11Benton, John B Jr RENEWAL26Stephen Shaw
1031Murillo H CaudyArgentina2024-05-25Feiner Bros UNQUALIFIED47Asiya Javayant
1032Murillo B GarufiRussia2024-06-08Dorl, James J Esq PROPOSAL6Asiya Javayant
1033Leja O OldroydFrance2024-05-25Truhlar And Truhlar Attys NEW62Ioni Bowcher
1034Greenwood F AlbaresUnited Kingdom2024-05-29Truhlar And Truhlar Attys PROPOSAL46Asiya Javayant
1035Nicolas Q GarufiArgentina2024-06-03Chanay, Jeffrey A Esq UNQUALIFIED64Xuxue Feng
1036Sinclair L FigeroaAustralia2024-05-29Morlong Associates QUALIFIED11Asiya Javayant
1037Maisha E BriddickCanada2024-05-24Dorl, James J Esq NEW98Asiya Javayant
1038Maria K KuskoCanada2024-05-16Chemel, James L Cpa PROPOSAL86Amy Elsner
1039Francesco L MarrierGermany2024-06-01Commercial Press UNQUALIFIED88Xuxue Feng
1040James Y SlusarskiRussia2024-05-22Truhlar And Truhlar Attys PROPOSAL22Elwin Sharvill
1041Mujtaba D ButtUnited Kingdom2024-06-04Rangoni Of Florence PROPOSAL37Asiya Javayant
1042Cody Q KuskoSpain2024-06-12Morlong Associates UNQUALIFIED42Stephen Shaw
1043Leja L MarrierArgentina2024-05-30Rousseaux, Michael Esq RENEWAL87Asiya Javayant
1044Cody C FigeroaRussia2024-05-24Chapman, Ross E Esq NEW71Bernardo Dominic
1045Sinclair H MacleadBrazil2024-05-21Chemel, James L Cpa QUALIFIED17Amy Elsner
1046Adams U RulapaughIndia2024-05-17Commercial Press UNQUALIFIED7Ioni Bowcher
1047Claire F BologniaRussia2024-05-19Benton, John B Jr NEGOTIATION69Stephen Shaw
1048Izzy S FerenczCanada2024-05-21Dorl, James J Esq UNQUALIFIED83Ioni Bowcher
1049Aruna U CaldareraUnited Kingdom2024-05-28Rousseaux, Michael Esq NEW65Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Leja B CaldareraBrazilAsiya Javayant NEGOTIATION
Sinclair Z RulapaughFranceOnyama Limba NEW
Sinclair L SlusarskiFranceAnna Fali RENEWAL
Aika A CaudyGermanyStephen Shaw RENEWAL
Juan E KuskoAustraliaAmy Elsner PROPOSAL
Jefferson R MorascaCanadaStephen Shaw NEGOTIATION
Ashley M GillianIndiaIvan Magalhaes NEW
Chavez H FigeroaAustraliaIoni Bowcher NEW
Leon O StockhamArgentinaXuxue Feng QUALIFIED
Leon Z ButtGermanyIoni Bowcher QUALIFIED
Misaki Y OldroydItalyStephen Shaw QUALIFIED
Kaitlin A VocelkaItalyAnna Fali PROPOSAL
Morrow X MaletCanadaBernardo Dominic QUALIFIED
Tony B RimBrazilStephen Shaw NEGOTIATION
Costa D RimUnited KingdomIoni Bowcher NEGOTIATION
Jones U FigeroaBrazilOnyama Limba PROPOSAL
Munro Z KuskoJapanOnyama Limba UNQUALIFIED
Francesco U DarakjySpainStephen Shaw RENEWAL
Ivar Z FerenczGermanyBernardo Dominic PROPOSAL
Chavez G MaletJapanElwin Sharvill RENEWAL
Kaitlin O VenereGermanyOnyama Limba NEW
Mujtaba G RutaCanadaIvan Magalhaes NEGOTIATION
James C MacleadItalyXuxue Feng NEW
Morrow B WhobreyRussiaIvan Magalhaes PROPOSAL
Smith L RimBrazilBernardo Dominic NEGOTIATION
Leja H OstroskyGermanyElwin Sharvill RENEWAL
Isabel H WieserFranceBernardo Dominic NEGOTIATION
Aruna N MacleadCanadaIvan Magalhaes PROPOSAL
Maria I FigeroaArgentinaAsiya Javayant UNQUALIFIED
Smith D StensethBrazilOnyama Limba RENEWAL
Ricardo M KolmetzRussiaAsiya Javayant NEGOTIATION
Salvatore F SaylorsCanadaIoni Bowcher RENEWAL
Murillo W WieserSpainOnyama Limba RENEWAL
Sinclair C PaprockiBrazilIoni Bowcher NEW
Munro Y OldroydFranceIvan Magalhaes NEGOTIATION
Jeanfrancois M StockhamIndiaIoni Bowcher NEW
David Z WhobreyCanadaElwin Sharvill UNQUALIFIED
Jefferson L CampainArgentinaIoni Bowcher QUALIFIED
Chavez N NickaJapanAnna Fali QUALIFIED
Leja U GarufiFranceStephen Shaw NEW
Jefferson C WieserSpainElwin Sharvill UNQUALIFIED
Misaki L PoquetteGermanyElwin Sharvill PROPOSAL
Johnson Y MarrierBrazilBernardo Dominic QUALIFIED
Faith E SlusarskiRussiaAmy Elsner QUALIFIED
Stacey T NickaSpainAmy Elsner NEW
Mujtaba G PerinIndiaElwin Sharvill NEGOTIATION
Juan W MarrierUnited KingdomIoni Bowcher QUALIFIED
Claire T BologniaRussiaAsiya Javayant NEW
Aditya D PoquetteArgentinaBernardo Dominic NEW
Francesco F WieserItalyAnna Fali RENEWAL
Frozen Columns
Name
Deepesh W Maclead
Jefferson N Doe
Munro J Kolmetz
Julie F Oldroyd
Kaitlin D Bowley
Tony G Briddick
Arvin X Amigon
Mayumi H Albares
Octavia L Malet
Francesco F Briddick
Johnson I Inouye
Salvatore I Caudy
Chavez G Whobrey
Misaki B Schemmer
Wickens M Royster
Maisha V Saylors
James U Marrier
Aika O Stockham
Misaki O Vocelka
Ivar E Slusarski
Kaitlin Y Kolmetz
Leon J Kusko
Munro V Morasca
Juan N Caudy
Antonio G Rulapaugh
Leon O Rulapaugh
Izzy G Caudy
Rodrigues Y Wieser
Ivar F Whobrey
Juan Q Paprocki
Costa Q Paprocki
Aruna W Ruta
Jennifer F Rim
Smith I Rulapaugh
Darci Z Caudy
Jennifer W Marrier
David Y Caldarera
David V Slusarski
Jeanfrancois G Waycott
Costa Q Kolmetz
Smith P Ostrosky
James F Ferencz
Stacey W Waycott
Munro L Slusarski
Leja C Perin
Aruna S Morasca
Francesco I Morasca
Kadeem E Inouye
James U Gillian
Juan T Darakjy
IdCountryDate
1000Japan2024-05-19
1001Japan2024-06-04
1002Germany2024-05-20
1003Japan2024-05-28
1004Japan2024-06-06
1005Canada2024-05-28
1006United Kingdom2024-06-07
1007Russia2024-05-17
1008France2024-06-07
1009Italy2024-05-22
1010Australia2024-05-30
1011Australia2024-06-04
1012Argentina2024-05-29
1013Japan2024-06-11
1014Australia2024-05-18
1015Australia2024-06-01
1016Italy2024-06-10
1017Canada2024-05-20
1018Brazil2024-05-25
1019Argentina2024-05-18
1020United Kingdom2024-05-23
1021Russia2024-06-01
1022Argentina2024-05-27
1023Brazil2024-06-11
1024India2024-06-09
1025Italy2024-05-17
1026Brazil2024-06-04
1027Canada2024-05-27
1028Australia2024-05-26
1029Brazil2024-05-22
1030Brazil2024-06-11
1031Brazil2024-05-24
1032Spain2024-05-26
1033Germany2024-05-23
1034United Kingdom2024-06-08
1035France2024-05-25
1036Germany2024-06-13
1037Argentina2024-06-08
1038India2024-05-28
1039Spain2024-05-30
1040Italy2024-05-18
1041Canada2024-06-10
1042United Kingdom2024-06-07
1043Canada2024-06-06
1044Italy2024-05-31
1045Argentina2024-06-13
1046Argentina2024-05-26
1047Argentina2024-05-16
1048Italy2024-05-18
1049United Kingdom2024-06-07

On-Demand Data

NameIdCountryDate
Greenwood U Albares1000Japan2024-05-17
Salvatore K Wieser1001Australia2024-05-20
David M Garufi1002France2024-06-04
Ashley D Wieser1003France2024-05-27
James G Kolmetz1004Spain2024-06-01
Silvio X Darakjy1005Japan2024-06-10
Cody V Butt1006Spain2024-05-22
Claire Q Sergi1007Germany2024-06-10
Claire W Vocelka1008Brazil2024-05-16
Kaitlin W Bolognia1009Brazil2024-05-26
Maisha U Morasca1010United Kingdom2024-06-06
Maria G Dilliard1011Italy2024-05-18
Adams W Caldarera1012Brazil2024-06-02
Francesco R Ruta1013Japan2024-05-17
Clifford N Ferencz1014United Kingdom2024-06-02
David R Bolognia1015Spain2024-06-11
Ricardo C Glick1016France2024-06-10
Mayumi F Stenseth1017Argentina2024-05-25
Emily I Caldarera1018Spain2024-05-17
Morrow N Ferencz1019Argentina2024-05-18
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Munro Q AlbaresItalyAsiya Javayant UNQUALIFIED
Johnson Y SlusarskiUnited KingdomAsiya Javayant PROPOSAL
Silvio H GlickBrazilStephen Shaw NEW
Jeanfrancois T NestleSpainIoni Bowcher PROPOSAL
Maisha S SlusarskiArgentinaAmy Elsner UNQUALIFIED
Chavez N CampainUnited KingdomAsiya Javayant QUALIFIED
Mujtaba S PaprockiSpainAnna Fali UNQUALIFIED
Ricardo D OstroskyIndiaIvan Magalhaes UNQUALIFIED
Silvio L MaletCanadaAmy Elsner NEGOTIATION
Adams N StockhamItalyIoni Bowcher PROPOSAL
Aditya V PoquetteSpainOnyama Limba NEGOTIATION
Murillo U CaudyArgentinaIoni Bowcher UNQUALIFIED
Stacey B NestleRussiaAnna Fali NEGOTIATION
Alejandro X SergiArgentinaXuxue Feng QUALIFIED
Aruna L BriddickJapanAsiya Javayant UNQUALIFIED
Deepesh G BologniaJapanIvan Magalhaes NEGOTIATION
James W NickaJapanIoni Bowcher UNQUALIFIED
Rodrigues L RimArgentinaStephen Shaw RENEWAL
Sinclair B GarufiFranceAmy Elsner NEW
Costa D CaudyUnited KingdomIvan Magalhaes RENEWAL
Emily V GauchoUnited KingdomXuxue Feng NEW
Julie M MacleadUnited KingdomIvan Magalhaes PROPOSAL
Jones T RutaIndiaElwin Sharvill UNQUALIFIED
Aruna K WieserGermanyOnyama Limba QUALIFIED
Ricardo Y BriddickAustraliaElwin Sharvill UNQUALIFIED
Maisha V ButtCanadaBernardo Dominic PROPOSAL
Rodrigues V FlosiGermanyElwin Sharvill RENEWAL
Johnson U CampainAustraliaElwin Sharvill NEW
Jefferson V NickaGermanyOnyama Limba NEW
Ashley Z PoquetteUnited KingdomAsiya Javayant NEW
Morrow A ChuiAustraliaIoni Bowcher NEGOTIATION
Emily Q GillianGermanyBernardo Dominic PROPOSAL
Greenwood F CaldareraIndiaElwin Sharvill RENEWAL
Alejandro W InouyeGermanyStephen Shaw RENEWAL
Tony L DoeSpainStephen Shaw QUALIFIED
Juan U SergiCanadaAsiya Javayant QUALIFIED
Leon V MorascaGermanyAsiya Javayant RENEWAL
Octavia Y FigeroaRussiaXuxue Feng NEW
Clifford L BowleyItalyAsiya Javayant NEGOTIATION
James W PaprockiCanadaXuxue 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>