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
Leon V NestleArgentinaIoni Bowcher UNQUALIFIED
Maisha R TollnerGermanyElwin Sharvill UNQUALIFIED
Octavia E DoeItalyBernardo Dominic PROPOSAL
Aditya J RoysterBrazilXuxue Feng RENEWAL
Ricardo B VocelkaCanadaElwin Sharvill UNQUALIFIED
Isabel A BowleyBrazilOnyama Limba UNQUALIFIED
Kaitlin W VenereSpainIvan Magalhaes NEW
Arvin K SaylorsGermanyAmy Elsner NEW
Ricardo T KuskoAustraliaIoni Bowcher PROPOSAL
Silvio O CaldareraGermanyAsiya Javayant UNQUALIFIED
Cody K BologniaSpainIvan Magalhaes RENEWAL
Murillo Q MacleadCanadaXuxue Feng RENEWAL
Leja I AlbaresJapanAmy Elsner NEGOTIATION
Claire D MarrierItalyAnna Fali NEW
David M ChuiGermanyXuxue Feng UNQUALIFIED
Claire O RoysterUnited KingdomIoni Bowcher NEW
Alejandro E OldroydIndiaAnna Fali NEW
Arvin A KolmetzIndiaXuxue Feng NEW
Deepesh M GlickSpainAmy Elsner RENEWAL
Morrow V FigeroaArgentinaAsiya Javayant NEW
Morrow C StockhamIndiaStephen Shaw QUALIFIED
Juan D AlbaresCanadaXuxue Feng NEW
Silvio Q FollerGermanyIoni Bowcher PROPOSAL
Maisha C BowleyBrazilAmy Elsner NEGOTIATION
Jeanfrancois L SergiUnited KingdomBernardo Dominic RENEWAL
Mayumi Y MaletGermanyAnna Fali NEW
Emily O BowleyArgentinaAnna Fali NEGOTIATION
Tony H IturbideAustraliaXuxue Feng NEGOTIATION
Misaki J StockhamAustraliaElwin Sharvill NEW
Ivar D FigeroaRussiaAnna Fali NEGOTIATION
Kaitlin Y ChuiIndiaAnna Fali UNQUALIFIED
Ivar T GauchoCanadaStephen Shaw UNQUALIFIED
Arvin O ChuiUnited KingdomStephen Shaw UNQUALIFIED
Greenwood N NestleItalyBernardo Dominic NEGOTIATION
Ivar A BologniaItalyOnyama Limba PROPOSAL
Juan U BowleyRussiaOnyama Limba RENEWAL
Rodrigues Z BologniaFranceElwin Sharvill NEGOTIATION
Mayumi L FerenczJapanBernardo Dominic PROPOSAL
Alejandro O OstroskyJapanBernardo Dominic UNQUALIFIED
Deepesh O BologniaGermanyIvan Magalhaes NEGOTIATION
Maria E WieserFranceIvan Magalhaes UNQUALIFIED
Salvatore Y GarufiFranceIoni Bowcher NEGOTIATION
Smith X RimSpainElwin Sharvill NEGOTIATION
Mujtaba K SlusarskiFranceAsiya Javayant QUALIFIED
Morrow I MorascaJapanElwin Sharvill PROPOSAL
Jennifer D CaudyIndiaIoni Bowcher UNQUALIFIED
Kadeem B AmigonUnited KingdomIoni Bowcher NEGOTIATION
Mujtaba H NickaAustraliaAsiya Javayant UNQUALIFIED
Misaki B SergiIndiaBernardo Dominic QUALIFIED
Misaki K VenereGermanyAmy Elsner UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Antonio V MaletItalyIvan Magalhaes UNQUALIFIED
Morrow L TollnerFranceIvan Magalhaes UNQUALIFIED
Aika B PerinItalyStephen Shaw NEGOTIATION
Maisha H InouyeRussiaBernardo Dominic RENEWAL
Ashley H PoquetteSpainElwin Sharvill UNQUALIFIED
Ashley Z AlbaresItalyOnyama Limba NEGOTIATION
Faith X AlbaresIndiaIvan Magalhaes UNQUALIFIED
Aditya Q TollnerIndiaAsiya Javayant RENEWAL
Maria Y AmigonGermanyAmy Elsner NEGOTIATION
Darci J AmigonAustraliaIvan Magalhaes PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Costa O IturbideCanada2024-04-28Buckley Miller Wright UNQUALIFIED30Xuxue Feng
1001Deepesh G KolmetzUnited Kingdom2024-04-28Benton, John B Jr NEGOTIATION66Xuxue Feng
1002Munro L InouyeCanada2024-05-14Chanay, Jeffrey A Esq PROPOSAL31Xuxue Feng
1003Ricardo F FlosiIndia2024-05-06Chanay, Jeffrey A Esq QUALIFIED48Ivan Magalhaes
1004Leja M ChuiIndia2024-04-29Rangoni Of Florence RENEWAL84Bernardo Dominic
1005Salvatore G CampainAustralia2024-05-11Dorl, James J Esq NEW80Ioni Bowcher
1006Munro F OstroskyFrance2024-05-23Feiner Bros NEGOTIATION40Bernardo Dominic
1007Jefferson I BowleyArgentina2024-04-25Feltz Printing Service NEGOTIATION53Ioni Bowcher
1008Munro H WieserArgentina2024-05-14Chapman, Ross E Esq NEW54Stephen Shaw
1009Chavez B GauchoCanada2024-04-28Feiner Bros QUALIFIED17Asiya Javayant
1010James Z PoquetteAustralia2024-04-29Chapman, Ross E Esq NEW43Xuxue Feng
1011Wickens T StensethRussia2024-04-27Chanay, Jeffrey A Esq PROPOSAL18Onyama Limba
1012Jefferson D StockhamItaly2024-05-15Buckley Miller Wright NEW87Ivan Magalhaes
1013Aditya J ButtIndia2024-05-01Printing Dimensions PROPOSAL39Xuxue Feng
1014Antonio I CaldareraCanada2024-05-23Benton, John B Jr NEGOTIATION39Anna Fali
1015Silvio W GlickArgentina2024-05-05Buckley Miller Wright QUALIFIED10Bernardo Dominic
1016Clifford B OldroydItaly2024-05-23Morlong Associates PROPOSAL85Amy Elsner
1017Costa W SaylorsIndia2024-05-03Chanay, Jeffrey A Esq UNQUALIFIED7Ioni Bowcher
1018Rodrigues X NestleFrance2024-05-04Commercial Press UNQUALIFIED6Asiya Javayant
1019Jones Q SaylorsRussia2024-05-13Feltz Printing Service PROPOSAL17Bernardo Dominic
1020Maisha O CaldareraGermany2024-05-01Rousseaux, Michael Esq RENEWAL47Anna Fali
1021Greenwood X GlickRussia2024-04-28Commercial Press UNQUALIFIED68Asiya Javayant
1022Leon N GillianUnited Kingdom2024-05-16Dorl, James J Esq NEGOTIATION77Xuxue Feng
1023Izzy D StensethUnited Kingdom2024-05-02Chapman, Ross E Esq PROPOSAL5Xuxue Feng
1024Jefferson E VocelkaItaly2024-05-17Chapman, Ross E Esq NEGOTIATION92Stephen Shaw
1025Ricardo D MaletFrance2024-04-27Printing Dimensions QUALIFIED84Ioni Bowcher
1026Clifford F ButtArgentina2024-05-21Commercial Press NEGOTIATION66Anna Fali
1027Cody I MorascaAustralia2024-04-25King, Christopher A Esq PROPOSAL56Ioni Bowcher
1028Ricardo D MorascaFrance2024-05-22Commercial Press UNQUALIFIED79Onyama Limba
1029Sinclair B MarrierGermany2024-04-30Truhlar And Truhlar Attys PROPOSAL44Onyama Limba
1030Claire E BriddickItaly2024-05-05Chemel, James L Cpa UNQUALIFIED18Amy Elsner
1031Silvio A GlickAustralia2024-05-22Rangoni Of Florence QUALIFIED54Elwin Sharvill
1032Maisha X KuskoFrance2024-05-21Rousseaux, Michael Esq UNQUALIFIED6Ivan Magalhaes
1033Alejandro J MacleadFrance2024-05-23Benton, John B Jr NEW97Xuxue Feng
1034Costa H WieserFrance2024-04-29Feltz Printing Service PROPOSAL47Ivan Magalhaes
1035Jeanfrancois W NestleCanada2024-04-26Commercial Press QUALIFIED99Ivan Magalhaes
1036Maria T FigeroaGermany2024-05-24Rousseaux, Michael Esq NEW45Anna Fali
1037Morrow A SaylorsUnited Kingdom2024-05-03Dorl, James J Esq NEW54Amy Elsner
1038Leja P OldroydSpain2024-05-02Morlong Associates QUALIFIED76Ivan Magalhaes
1039Murillo P PoquetteAustralia2024-05-19Benton, John B Jr NEW95Onyama Limba
1040Isabel R WieserSpain2024-05-15Buckley Miller Wright QUALIFIED6Xuxue Feng
1041Nicolas L SaylorsJapan2024-05-13Feiner Bros NEW98Asiya Javayant
1042Mujtaba L TollnerSpain2024-05-19Chapman, Ross E Esq NEW84Elwin Sharvill
1043Alejandro W StensethItaly2024-05-11Chanay, Jeffrey A Esq UNQUALIFIED44Ivan Magalhaes
1044Sinclair L MaletCanada2024-04-30Truhlar And Truhlar Attys PROPOSAL91Asiya Javayant
1045Murillo T BologniaGermany2024-05-08Morlong Associates PROPOSAL93Bernardo Dominic
1046Leon O WhobreyBrazil2024-05-19Morlong Associates RENEWAL44Ivan Magalhaes
1047Faith D CaldareraRussia2024-05-02Benton, John B Jr NEW26Asiya Javayant
1048Kaitlin V ShinkoRussia2024-04-28Chemel, James L Cpa UNQUALIFIED36Xuxue Feng
1049Octavia V DoeIndia2024-05-18Feiner Bros NEW14Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Claire R GlickUnited KingdomOnyama Limba PROPOSAL
Antonio C BologniaAustraliaXuxue Feng PROPOSAL
Wickens F StockhamRussiaOnyama Limba RENEWAL
Munro O ButtSpainStephen Shaw NEGOTIATION
David X ChuiItalyXuxue Feng UNQUALIFIED
Chavez U RoysterFranceBernardo Dominic NEGOTIATION
Cody I MaletSpainXuxue Feng UNQUALIFIED
Juan Y GauchoItalyAsiya Javayant PROPOSAL
Ricardo R MacleadBrazilBernardo Dominic QUALIFIED
Wickens R RulapaughSpainAmy Elsner RENEWAL
Francesco A OldroydItalyIoni Bowcher UNQUALIFIED
Cody T GarufiAustraliaOnyama Limba UNQUALIFIED
Jeanfrancois T CampainSpainAsiya Javayant QUALIFIED
David D BriddickJapanStephen Shaw UNQUALIFIED
Stacey K NestleArgentinaIvan Magalhaes NEGOTIATION
Sinclair R RimArgentinaAsiya Javayant UNQUALIFIED
Juan V BriddickJapanAsiya Javayant NEGOTIATION
Alejandro J GillianIndiaElwin Sharvill QUALIFIED
James G VenereGermanyAnna Fali PROPOSAL
Greenwood Y SlusarskiItalyIoni Bowcher PROPOSAL
Rodrigues L CaldareraBrazilElwin Sharvill QUALIFIED
Chavez F NestleJapanAsiya Javayant NEW
Maria K SlusarskiItalyBernardo Dominic PROPOSAL
Jefferson U OldroydJapanBernardo Dominic UNQUALIFIED
Murillo T GlickIndiaBernardo Dominic PROPOSAL
Aruna K CampainRussiaXuxue Feng UNQUALIFIED
Clifford K NickaItalyElwin Sharvill NEGOTIATION
Costa N RutaSpainAmy Elsner NEW
Octavia L PaprockiFranceXuxue Feng UNQUALIFIED
Ricardo G GauchoFranceStephen Shaw NEW
Ricardo T NickaSpainOnyama Limba UNQUALIFIED
Jones N MarrierArgentinaAsiya Javayant NEW
Stacey V NestleFranceXuxue Feng NEGOTIATION
Ricardo K GlickFranceStephen Shaw UNQUALIFIED
Tony I WieserSpainIoni Bowcher RENEWAL
Rodrigues L MorascaIndiaElwin Sharvill UNQUALIFIED
Munro N PerinRussiaXuxue Feng NEW
Nicolas K SchemmerUnited KingdomElwin Sharvill NEW
James K MaletGermanyStephen Shaw QUALIFIED
Jefferson W MaletGermanyAmy Elsner UNQUALIFIED
Darci X MarrierRussiaIoni Bowcher NEW
Nicolas V KolmetzBrazilElwin Sharvill NEGOTIATION
Rodrigues G PoquetteItalyAmy Elsner NEW
Maria G StockhamUnited KingdomIvan Magalhaes UNQUALIFIED
Jones A TollnerRussiaStephen Shaw UNQUALIFIED
Julie O BriddickFranceAmy Elsner NEGOTIATION
Sinclair G GarufiUnited KingdomStephen Shaw UNQUALIFIED
Murillo S ButtArgentinaAmy Elsner NEW
Leja Y GlickSpainElwin Sharvill NEW
Ricardo A StensethSpainIoni Bowcher UNQUALIFIED
Frozen Columns
Name
Leja C Chui
Leon F Butt
Maisha H Sergi
Munro X Garufi
Morrow N Bowley
Ricardo K Sergi
Francesco W Perin
Isabel F Schemmer
Munro F Bowley
Stacey A Dilliard
Octavia X Albares
Cody C Chui
Aruna W Poquette
Jeanfrancois T Bolognia
Alejandro K Amigon
Mujtaba F Marrier
Jennifer H Saylors
Smith A Doe
Mujtaba Z Briddick
Nicolas E Bowley
Jeanfrancois O Chui
Aruna K Figeroa
Jennifer I Caldarera
Emily A Sergi
Adams I Inouye
Jennifer D Figeroa
Smith N Gillian
Antonio C Malet
Aditya W Malet
Salvatore R Schemmer
Darci C Whobrey
Rodrigues P Stenseth
Juan Z Gillian
Octavia P Ferencz
Costa F Perin
Juan J Stenseth
Leja P Venere
Kadeem V Gillian
Nicolas O Poquette
Wickens Z Ruta
Kadeem K Malet
Alejandro E Kusko
James K Poquette
Ashley S Kusko
Mujtaba F Briddick
Salvatore C Foller
Darci Z Caldarera
Darci F Flosi
Stacey N Bolognia
Ricardo X Albares
IdCountryDate
1000Australia2024-05-23
1001Brazil2024-05-17
1002Italy2024-05-01
1003Spain2024-05-15
1004Italy2024-04-28
1005Spain2024-05-01
1006Australia2024-05-18
1007Australia2024-05-20
1008Germany2024-05-14
1009France2024-05-18
1010Brazil2024-04-28
1011India2024-05-23
1012Canada2024-05-19
1013Germany2024-05-19
1014Spain2024-05-19
1015Germany2024-04-26
1016Australia2024-04-30
1017Russia2024-05-21
1018Brazil2024-04-29
1019Italy2024-05-13
1020Japan2024-05-20
1021Argentina2024-05-05
1022Spain2024-04-27
1023Australia2024-05-20
1024Argentina2024-05-14
1025France2024-05-19
1026Germany2024-05-23
1027Italy2024-05-07
1028Australia2024-05-20
1029Japan2024-04-28
1030Australia2024-05-18
1031Russia2024-05-01
1032United Kingdom2024-04-25
1033Australia2024-05-05
1034Spain2024-05-07
1035Japan2024-05-23
1036Germany2024-05-14
1037Canada2024-05-09
1038Australia2024-05-02
1039Japan2024-05-03
1040Argentina2024-05-13
1041Australia2024-05-04
1042France2024-05-06
1043United Kingdom2024-05-07
1044Canada2024-05-19
1045Spain2024-05-02
1046Germany2024-05-08
1047Spain2024-05-20
1048Australia2024-05-19
1049Argentina2024-04-25

On-Demand Data

NameIdCountryDate
Francesco C Royster1000Japan2024-05-07
Jeanfrancois U Slusarski1001France2024-05-14
Jennifer K Darakjy1002Argentina2024-05-07
Aditya I Doe1003Argentina2024-05-03
Jefferson J Tollner1004Japan2024-05-01
Morrow A Glick1005Spain2024-05-14
Maisha F Rim1006India2024-04-30
Aruna U Paprocki1007Canada2024-05-17
Antonio G Nicka1008Canada2024-04-30
Leja N Paprocki1009Japan2024-04-30
Stacey A Kolmetz1010Argentina2024-05-10
Aruna X Doe1011Australia2024-05-22
Munro B Malet1012Germany2024-05-15
Nicolas E Campain1013France2024-05-14
Murillo P Briddick1014France2024-04-28
Cody N Rim1015Canada2024-05-10
Juan K Wieser1016Argentina2024-05-10
Misaki A Royster1017Argentina2024-05-12
Johnson O Malet1018Italy2024-05-12
Johnson F Chui1019France2024-04-26
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Faith M StockhamCanadaAmy Elsner NEGOTIATION
Sinclair D KuskoUnited KingdomAnna Fali RENEWAL
Salvatore C FlosiJapanAmy Elsner UNQUALIFIED
Maria Q VenereJapanAmy Elsner NEGOTIATION
Aditya W ChuiAustraliaAsiya Javayant NEGOTIATION
Claire L NickaFranceOnyama Limba RENEWAL
Tony I CaudySpainAnna Fali RENEWAL
Smith U GauchoAustraliaElwin Sharvill UNQUALIFIED
Francesco Y SlusarskiUnited KingdomOnyama Limba RENEWAL
Misaki V StensethCanadaElwin Sharvill QUALIFIED
Kadeem A BologniaSpainAsiya Javayant RENEWAL
Aruna N FlosiArgentinaAsiya Javayant NEGOTIATION
Deepesh O RoysterUnited KingdomAmy Elsner RENEWAL
Johnson X AlbaresAustraliaAnna Fali RENEWAL
Morrow A IturbideArgentinaBernardo Dominic NEW
Wickens P InouyeArgentinaAnna Fali NEW
Jennifer X SchemmerFranceAmy Elsner NEW
Silvio D CaudyIndiaElwin Sharvill PROPOSAL
Salvatore S FerenczUnited KingdomIoni Bowcher NEW
Isabel B WhobreyBrazilXuxue Feng NEGOTIATION
Alejandro M MacleadRussiaIvan Magalhaes NEW
Kadeem R VocelkaGermanyXuxue Feng UNQUALIFIED
Jeanfrancois I StockhamIndiaElwin Sharvill RENEWAL
Maisha N RimSpainAsiya Javayant UNQUALIFIED
Sinclair T GarufiCanadaAsiya Javayant PROPOSAL
Mujtaba X WhobreyUnited KingdomIvan Magalhaes UNQUALIFIED
Juan D RoysterAustraliaBernardo Dominic PROPOSAL
David D StockhamBrazilOnyama Limba NEGOTIATION
Izzy G SaylorsUnited KingdomAmy Elsner PROPOSAL
Jones N WhobreyItalyBernardo Dominic NEW
Juan B FlosiIndiaAmy Elsner QUALIFIED
Ivar L FollerFranceIvan Magalhaes UNQUALIFIED
Stacey M ShinkoSpainStephen Shaw RENEWAL
Sinclair B MorascaJapanIvan Magalhaes QUALIFIED
Kadeem J AmigonSpainXuxue Feng NEW
Leja M KuskoUnited KingdomXuxue Feng NEGOTIATION
Munro Q CaudyRussiaXuxue Feng PROPOSAL
Misaki X RulapaughSpainAsiya Javayant UNQUALIFIED
Misaki B WaycottItalyIoni Bowcher NEGOTIATION
David H DilliardIndiaAmy Elsner 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>