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
Rodrigues Y FigeroaArgentinaIvan Magalhaes NEW
James Q StockhamRussiaIoni Bowcher NEW
Ivar I TollnerArgentinaXuxue Feng PROPOSAL
Octavia C InouyeFranceAmy Elsner UNQUALIFIED
Jennifer R VocelkaUnited KingdomXuxue Feng RENEWAL
Darci R PaprockiUnited KingdomBernardo Dominic PROPOSAL
Deepesh K BriddickRussiaOnyama Limba NEW
Clifford K DoeUnited KingdomOnyama Limba UNQUALIFIED
Maria O AlbaresSpainOnyama Limba UNQUALIFIED
Stacey B GillianBrazilAnna Fali NEW
Jefferson D BriddickCanadaAmy Elsner NEGOTIATION
Salvatore S WhobreySpainBernardo Dominic PROPOSAL
Murillo I FigeroaGermanyAmy Elsner PROPOSAL
Aditya C MarrierSpainStephen Shaw PROPOSAL
David Z AmigonGermanyStephen Shaw RENEWAL
Deepesh A StockhamIndiaIoni Bowcher RENEWAL
Isabel F AmigonJapanIvan Magalhaes NEW
Francesco A IturbideIndiaAnna Fali NEW
Leon B GarufiFranceStephen Shaw NEGOTIATION
Octavia P DoeJapanIvan Magalhaes NEGOTIATION
Francesco L VenereArgentinaAmy Elsner RENEWAL
Greenwood S DarakjySpainIoni Bowcher PROPOSAL
Silvio U AmigonJapanStephen Shaw PROPOSAL
Kaitlin R MorascaBrazilXuxue Feng PROPOSAL
Costa R ChuiBrazilIoni Bowcher QUALIFIED
Munro M VenereGermanyIvan Magalhaes QUALIFIED
Ricardo B WhobreyItalyStephen Shaw UNQUALIFIED
Rodrigues B MacleadIndiaIvan Magalhaes NEW
Octavia E KuskoAustraliaOnyama Limba QUALIFIED
Johnson D GauchoArgentinaAmy Elsner RENEWAL
Stacey U BologniaSpainXuxue Feng PROPOSAL
Octavia Y GauchoIndiaAsiya Javayant NEGOTIATION
Aruna Q FerenczUnited KingdomAsiya Javayant NEW
Murillo O IturbideUnited KingdomOnyama Limba UNQUALIFIED
Octavia X ButtJapanAsiya Javayant NEGOTIATION
Aruna U CaldareraGermanyStephen Shaw PROPOSAL
Isabel E OstroskyGermanyAmy Elsner NEW
Jennifer G TollnerFranceXuxue Feng RENEWAL
Mujtaba X SlusarskiGermanyXuxue Feng PROPOSAL
Adams N MaletFranceStephen Shaw UNQUALIFIED
Leon B CaldareraItalyXuxue Feng NEW
Aika E NickaIndiaIoni Bowcher PROPOSAL
Clifford R DarakjyGermanyStephen Shaw NEGOTIATION
Chavez J WhobreyUnited KingdomAsiya Javayant PROPOSAL
David L RoysterFranceAnna Fali NEGOTIATION
Munro X SaylorsFranceStephen Shaw RENEWAL
Emily J WieserItalyElwin Sharvill UNQUALIFIED
Alejandro Y WaycottAustraliaBernardo Dominic NEW
Smith P InouyeGermanyAnna Fali PROPOSAL
Julie P RutaJapanIoni Bowcher RENEWAL
Horizontal
NameCountryRepresentativeStatus
Nicolas L TollnerFranceAsiya Javayant RENEWAL
Salvatore R GlickSpainAsiya Javayant NEW
Nicolas W CaldareraBrazilIoni Bowcher UNQUALIFIED
Maisha U PerinBrazilIvan Magalhaes QUALIFIED
Munro P BowleyFranceOnyama Limba UNQUALIFIED
Johnson L MaletRussiaElwin Sharvill RENEWAL
Chavez W PaprockiUnited KingdomAsiya Javayant UNQUALIFIED
Tony G KolmetzUnited KingdomOnyama Limba UNQUALIFIED
Stacey R VocelkaJapanIoni Bowcher UNQUALIFIED
Ricardo V KolmetzIndiaAsiya Javayant NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Chavez C MaletItaly2024-05-23Dorl, James J Esq UNQUALIFIED59Xuxue Feng
1001Mujtaba H VenereItaly2024-05-24Rousseaux, Michael Esq NEGOTIATION75Stephen Shaw
1002Alejandro T FollerFrance2024-05-18Feltz Printing Service QUALIFIED11Amy Elsner
1003Stacey D SlusarskiFrance2024-05-17Benton, John B Jr NEW20Stephen Shaw
1004David D WieserAustralia2024-05-18Truhlar And Truhlar Attys NEW43Amy Elsner
1005Aditya N MacleadSpain2024-05-15Buckley Miller Wright RENEWAL91Anna Fali
1006Cody X OldroydIndia2024-05-24Buckley Miller Wright QUALIFIED50Anna Fali
1007Faith P PaprockiAustralia2024-05-26Feiner Bros NEW87Asiya Javayant
1008Faith T FigeroaAustralia2024-05-25Benton, John B Jr PROPOSAL74Onyama Limba
1009Jennifer G PerinGermany2024-05-26King, Christopher A Esq QUALIFIED83Elwin Sharvill
1010Juan I AlbaresSpain2024-06-05Rousseaux, Michael Esq RENEWAL61Bernardo Dominic
1011Juan J DilliardGermany2024-06-10Morlong Associates PROPOSAL82Xuxue Feng
1012Darci U FlosiFrance2024-05-21Chemel, James L Cpa QUALIFIED14Xuxue Feng
1013Rodrigues O RulapaughIndia2024-05-15Feiner Bros QUALIFIED75Anna Fali
1014Wickens H StockhamAustralia2024-05-29Printing Dimensions QUALIFIED11Stephen Shaw
1015Jones W CaldareraSpain2024-05-26Benton, John B Jr NEW99Stephen Shaw
1016Johnson P FlosiSpain2024-06-04Morlong Associates NEW73Bernardo Dominic
1017Darci N BologniaGermany2024-06-05Morlong Associates NEGOTIATION73Stephen Shaw
1018Silvio Y SlusarskiUnited Kingdom2024-05-31Chapman, Ross E Esq RENEWAL48Stephen Shaw
1019Maria E WieserJapan2024-06-08Benton, John B Jr PROPOSAL7Anna Fali
1020Kadeem X MorascaUnited Kingdom2024-06-08King, Christopher A Esq RENEWAL6Amy Elsner
1021Murillo R BologniaBrazil2024-05-19Feltz Printing Service NEW10Stephen Shaw
1022Ashley V VenereSpain2024-06-13Benton, John B Jr QUALIFIED14Ivan Magalhaes
1023Ricardo C MacleadUnited Kingdom2024-05-27Feltz Printing Service UNQUALIFIED83Onyama Limba
1024Adams O NestleCanada2024-06-06Commercial Press QUALIFIED35Anna Fali
1025Juan T GarufiArgentina2024-05-26Chanay, Jeffrey A Esq RENEWAL0Onyama Limba
1026Chavez K StensethJapan2024-06-11Feltz Printing Service NEGOTIATION72Anna Fali
1027Munro L SergiGermany2024-05-29King, Christopher A Esq PROPOSAL72Ioni Bowcher
1028Stacey M GlickIndia2024-06-08Printing Dimensions UNQUALIFIED58Bernardo Dominic
1029Ricardo R CaudyRussia2024-05-27Buckley Miller Wright QUALIFIED73Xuxue Feng
1030Misaki X OstroskyArgentina2024-06-06Chanay, Jeffrey A Esq RENEWAL48Xuxue Feng
1031Jefferson M StensethCanada2024-05-21Printing Dimensions QUALIFIED73Ioni Bowcher
1032Deepesh R ButtUnited Kingdom2024-05-15Chapman, Ross E Esq NEW52Amy Elsner
1033Aruna P WhobreyCanada2024-05-25Rangoni Of Florence NEW47Xuxue Feng
1034Nicolas L BowleyAustralia2024-05-18Benton, John B Jr QUALIFIED86Amy Elsner
1035Sinclair J RutaRussia2024-06-01Truhlar And Truhlar Attys QUALIFIED4Asiya Javayant
1036Misaki I MaletBrazil2024-06-09Rangoni Of Florence NEW68Onyama Limba
1037Adams U DarakjyUnited Kingdom2024-05-27King, Christopher A Esq PROPOSAL96Ioni Bowcher
1038Ricardo H PoquetteIndia2024-05-26Truhlar And Truhlar Attys NEW15Stephen Shaw
1039Claire K PoquetteArgentina2024-06-12Printing Dimensions PROPOSAL22Anna Fali
1040Misaki A GauchoUnited Kingdom2024-05-16Feiner Bros NEGOTIATION91Bernardo Dominic
1041Munro O StensethJapan2024-06-06Morlong Associates QUALIFIED22Bernardo Dominic
1042Silvio O SaylorsJapan2024-05-27Chapman, Ross E Esq UNQUALIFIED35Stephen Shaw
1043Stacey I MaletSpain2024-05-23Chanay, Jeffrey A Esq NEW29Onyama Limba
1044Jeanfrancois Z OstroskyItaly2024-06-08Benton, John B Jr RENEWAL74Asiya Javayant
1045Greenwood J WieserRussia2024-05-18Morlong Associates RENEWAL23Xuxue Feng
1046Ivar G OldroydArgentina2024-05-18Printing Dimensions UNQUALIFIED84Stephen Shaw
1047Costa Y OldroydRussia2024-06-01Buckley Miller Wright PROPOSAL94Stephen Shaw
1048James I GauchoUnited Kingdom2024-06-13Truhlar And Truhlar Attys UNQUALIFIED30Xuxue Feng
1049Johnson S WhobreyUnited Kingdom2024-06-10Chanay, Jeffrey A Esq UNQUALIFIED24Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Chavez Y PaprockiRussiaIvan Magalhaes PROPOSAL
Aditya L RutaArgentinaBernardo Dominic UNQUALIFIED
Adams P StockhamBrazilXuxue Feng RENEWAL
Greenwood I BowleyCanadaStephen Shaw QUALIFIED
Wickens B StockhamAustraliaAsiya Javayant NEGOTIATION
Mayumi P RoysterCanadaXuxue Feng NEW
Morrow R BriddickItalyAnna Fali UNQUALIFIED
Smith S RulapaughBrazilIoni Bowcher UNQUALIFIED
Adams K GlickArgentinaXuxue Feng NEW
Darci W PerinArgentinaAsiya Javayant RENEWAL
Antonio V VenereFranceAnna Fali NEGOTIATION
Jefferson M KuskoJapanStephen Shaw UNQUALIFIED
Alejandro P MacleadJapanAsiya Javayant UNQUALIFIED
Tony N IturbideItalyAmy Elsner PROPOSAL
Clifford Y SergiCanadaIoni Bowcher RENEWAL
Aika O MaletAustraliaXuxue Feng RENEWAL
Nicolas I NickaIndiaOnyama Limba UNQUALIFIED
Misaki Y DarakjyBrazilAmy Elsner NEW
Johnson I MacleadIndiaBernardo Dominic PROPOSAL
Maisha Q GarufiFranceXuxue Feng PROPOSAL
Maisha D WaycottRussiaAnna Fali RENEWAL
Claire X StensethAustraliaBernardo Dominic RENEWAL
Aruna P WaycottGermanyXuxue Feng UNQUALIFIED
Faith U FigeroaFranceAsiya Javayant UNQUALIFIED
Claire G PaprockiFranceIoni Bowcher NEW
Misaki A MaletCanadaAmy Elsner PROPOSAL
Wickens J NestleAustraliaIoni Bowcher RENEWAL
Julie A ButtGermanyXuxue Feng NEGOTIATION
Kadeem T MaletItalyAmy Elsner RENEWAL
Aika Y MaletGermanyIoni Bowcher NEW
Nicolas P ShinkoJapanAnna Fali NEGOTIATION
Wickens R GarufiCanadaAnna Fali UNQUALIFIED
Aditya R MacleadJapanIvan Magalhaes NEGOTIATION
Jennifer A OldroydItalyAnna Fali NEGOTIATION
Silvio Y OstroskyJapanOnyama Limba QUALIFIED
Nicolas Z OldroydBrazilStephen Shaw RENEWAL
Juan F BowleyArgentinaAmy Elsner NEGOTIATION
Kaitlin R RoysterGermanyIvan Magalhaes RENEWAL
Ivar J BriddickItalyElwin Sharvill NEW
Darci P PoquetteSpainBernardo Dominic UNQUALIFIED
Johnson N StensethBrazilIvan Magalhaes RENEWAL
Mujtaba S StockhamSpainOnyama Limba NEW
Jones Y RutaIndiaElwin Sharvill PROPOSAL
Jeanfrancois M WieserUnited KingdomXuxue Feng NEW
Antonio E SergiCanadaIvan Magalhaes RENEWAL
Nicolas B KolmetzCanadaIoni Bowcher QUALIFIED
Kadeem Y FollerGermanyXuxue Feng UNQUALIFIED
Maria O RutaIndiaIoni Bowcher PROPOSAL
Costa W OldroydRussiaIoni Bowcher PROPOSAL
David D GlickBrazilElwin Sharvill UNQUALIFIED
Frozen Columns
Name
Jones O Figeroa
Emily F Malet
Maisha K Briddick
James K Malet
Isabel X Ruta
David Q Stenseth
Mayumi H Oldroyd
Antonio S Amigon
Kadeem N Tollner
Costa K Sergi
Octavia Z Chui
Munro N Poquette
Nicolas B Sergi
Silvio W Whobrey
James P Wieser
Jefferson C Iturbide
Leon Q Paprocki
Jones M Waycott
Leja K Iturbide
Clifford P Chui
Alejandro W Shinko
Leja K Darakjy
Emily R Shinko
Mayumi R Shinko
Jeanfrancois K Vocelka
David A Malet
Mujtaba K Slusarski
Emily C Shinko
Darci H Malet
Smith W Briddick
Francesco M Ferencz
Sinclair J Venere
Silvio K Inouye
Ashley Z Poquette
Nicolas T Ruta
Wickens R Gaucho
Maria C Ruta
Jefferson D Glick
Jeanfrancois I Rim
Alejandro X Caudy
Julie F Nicka
Murillo F Chui
Claire Y Albares
Silvio L Royster
Murillo Z Glick
Greenwood E Waycott
Misaki G Rulapaugh
Misaki M Tollner
Maria T Wieser
Misaki J Caudy
IdCountryDate
1000Argentina2024-05-24
1001Russia2024-05-21
1002Spain2024-05-24
1003Japan2024-06-08
1004Spain2024-06-03
1005Russia2024-06-10
1006India2024-05-20
1007Italy2024-06-11
1008Spain2024-06-07
1009Canada2024-06-03
1010Russia2024-05-28
1011Spain2024-05-29
1012Spain2024-06-03
1013Brazil2024-05-19
1014Italy2024-06-13
1015Australia2024-05-20
1016United Kingdom2024-05-18
1017Argentina2024-05-26
1018Russia2024-06-05
1019Spain2024-05-24
1020Japan2024-06-04
1021India2024-06-08
1022Brazil2024-05-15
1023Spain2024-05-17
1024India2024-05-28
1025Australia2024-06-04
1026Brazil2024-05-20
1027United Kingdom2024-06-12
1028Spain2024-05-31
1029Germany2024-05-15
1030Japan2024-05-26
1031Germany2024-05-18
1032Brazil2024-05-30
1033United Kingdom2024-06-04
1034Canada2024-06-05
1035India2024-05-18
1036India2024-06-03
1037Argentina2024-05-27
1038Japan2024-06-07
1039Canada2024-05-23
1040Argentina2024-06-13
1041United Kingdom2024-06-04
1042India2024-05-27
1043Italy2024-05-17
1044Brazil2024-06-01
1045Australia2024-05-18
1046Spain2024-05-30
1047Germany2024-06-12
1048Spain2024-05-24
1049Canada2024-06-08

On-Demand Data

NameIdCountryDate
Smith L Poquette1000United Kingdom2024-05-16
Deepesh Y Albares1001United Kingdom2024-06-05
Ricardo S Stenseth1002Australia2024-05-18
Ricardo V Briddick1003Brazil2024-06-12
Rodrigues A Chui1004Australia2024-05-24
Alejandro L Slusarski1005Brazil2024-05-21
Francesco Y Ostrosky1006Brazil2024-05-29
Mayumi N Rulapaugh1007Brazil2024-06-11
Mujtaba J Inouye1008France2024-05-30
Mayumi N Bolognia1009France2024-05-22
Rodrigues G Iturbide1010United Kingdom2024-05-21
Clifford T Ruta1011Japan2024-05-30
Smith O Doe1012India2024-06-01
Izzy S Caudy1013France2024-05-25
Munro L Marrier1014Italy2024-05-16
Kadeem N Saylors1015Germany2024-06-06
Maisha R Paprocki1016Japan2024-06-11
Aruna T Ostrosky1017Japan2024-06-05
Aika O Flosi1018Russia2024-05-21
Mayumi U Caldarera1019Argentina2024-05-23
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Darci D SchemmerGermanyElwin Sharvill RENEWAL
Silvio B ShinkoRussiaElwin Sharvill RENEWAL
Silvio B StensethAustraliaOnyama Limba NEW
Clifford R KolmetzArgentinaAnna Fali QUALIFIED
Ivar O RutaIndiaStephen Shaw RENEWAL
Misaki J SergiJapanIoni Bowcher NEGOTIATION
Maisha V OldroydBrazilAnna Fali NEGOTIATION
Mujtaba E FollerUnited KingdomStephen Shaw PROPOSAL
Jones B NickaJapanIoni Bowcher NEW
Jones S GarufiUnited KingdomIoni Bowcher UNQUALIFIED
Antonio F TollnerIndiaStephen Shaw RENEWAL
Claire J SaylorsItalyBernardo Dominic PROPOSAL
Adams X MacleadItalyStephen Shaw NEW
Izzy U GarufiIndiaStephen Shaw NEW
Octavia J MaletIndiaXuxue Feng RENEWAL
Maria F RoysterFranceElwin Sharvill QUALIFIED
Jennifer J DoeAustraliaXuxue Feng PROPOSAL
Aditya K PaprockiRussiaAnna Fali NEGOTIATION
Antonio P GauchoItalyIvan Magalhaes UNQUALIFIED
Octavia B ShinkoItalyElwin Sharvill NEW
Maria C SaylorsSpainAsiya Javayant QUALIFIED
Nicolas I VenereIndiaIoni Bowcher UNQUALIFIED
Clifford F ShinkoBrazilStephen Shaw PROPOSAL
Johnson Q IturbideCanadaStephen Shaw UNQUALIFIED
Alejandro L NestleUnited KingdomElwin Sharvill NEW
Mayumi G AlbaresIndiaBernardo Dominic UNQUALIFIED
Arvin K BowleyRussiaOnyama Limba NEW
Jefferson Z GauchoBrazilOnyama Limba QUALIFIED
Alejandro I GauchoIndiaAnna Fali QUALIFIED
Claire J OstroskyArgentinaStephen Shaw PROPOSAL
Wickens P ChuiIndiaStephen Shaw UNQUALIFIED
Murillo A FollerSpainXuxue Feng RENEWAL
Leon O DilliardArgentinaStephen Shaw UNQUALIFIED
Jefferson W BologniaUnited KingdomAmy Elsner UNQUALIFIED
Jefferson K RulapaughBrazilBernardo Dominic NEGOTIATION
Antonio T TollnerItalyStephen Shaw NEGOTIATION
Salvatore C SchemmerBrazilXuxue Feng QUALIFIED
Kaitlin B ButtGermanyElwin Sharvill UNQUALIFIED
Julie R InouyeItalyStephen Shaw QUALIFIED
Rodrigues M AmigonSpainAnna Fali RENEWAL

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