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
Smith G ChuiSpainAmy Elsner RENEWAL
Rodrigues T RulapaughArgentinaOnyama Limba UNQUALIFIED
Adams J SlusarskiIndiaStephen Shaw UNQUALIFIED
Darci H MarrierRussiaXuxue Feng QUALIFIED
Jennifer U DilliardAustraliaAnna Fali UNQUALIFIED
Misaki W TollnerBrazilIvan Magalhaes QUALIFIED
Octavia L RutaUnited KingdomAsiya Javayant QUALIFIED
Deepesh T RulapaughFranceOnyama Limba UNQUALIFIED
Chavez M FigeroaJapanIoni Bowcher UNQUALIFIED
Wickens I DoeFranceAsiya Javayant QUALIFIED
David Q NickaJapanAmy Elsner NEW
Alejandro Z RulapaughCanadaIoni Bowcher PROPOSAL
Misaki L KolmetzAustraliaBernardo Dominic UNQUALIFIED
Maisha L RulapaughIndiaElwin Sharvill UNQUALIFIED
Emily H TollnerUnited KingdomBernardo Dominic NEGOTIATION
Stacey P FigeroaBrazilIoni Bowcher NEGOTIATION
Sinclair Y MaletRussiaElwin Sharvill PROPOSAL
Aruna H FlosiArgentinaAsiya Javayant QUALIFIED
Aditya V GarufiUnited KingdomAmy Elsner PROPOSAL
Chavez B MacleadArgentinaOnyama Limba NEW
Misaki B MorascaBrazilOnyama Limba RENEWAL
Isabel H RoysterGermanyElwin Sharvill QUALIFIED
Jones D SchemmerItalyIvan Magalhaes NEGOTIATION
Mujtaba M AlbaresBrazilAsiya Javayant QUALIFIED
Aruna Z AlbaresArgentinaStephen Shaw NEW
Jeanfrancois I RutaSpainStephen Shaw NEW
Emily M AmigonItalyOnyama Limba PROPOSAL
David S FlosiIndiaAmy Elsner QUALIFIED
Jeanfrancois G MacleadIndiaXuxue Feng UNQUALIFIED
Silvio C VenereIndiaXuxue Feng NEW
Cody V FerenczArgentinaXuxue Feng UNQUALIFIED
Salvatore S GillianUnited KingdomStephen Shaw PROPOSAL
Deepesh F DilliardCanadaOnyama Limba NEW
Adams X RulapaughCanadaBernardo Dominic RENEWAL
Chavez Y MorascaJapanXuxue Feng UNQUALIFIED
Isabel W VocelkaJapanOnyama Limba UNQUALIFIED
Francesco X KolmetzAustraliaAnna Fali RENEWAL
Wickens O StensethArgentinaIoni Bowcher NEGOTIATION
Salvatore P WieserArgentinaBernardo Dominic PROPOSAL
Nicolas U TollnerGermanyStephen Shaw QUALIFIED
Jefferson B OstroskyBrazilAsiya Javayant RENEWAL
Adams V RutaGermanyIoni Bowcher NEW
Nicolas U MorascaRussiaXuxue Feng PROPOSAL
Kaitlin F KolmetzIndiaOnyama Limba RENEWAL
Nicolas K PaprockiCanadaElwin Sharvill RENEWAL
Octavia G SaylorsUnited KingdomIvan Magalhaes QUALIFIED
Ricardo B RutaIndiaAmy Elsner NEW
Tony P DoeRussiaElwin Sharvill NEGOTIATION
Arvin O NestleFranceElwin Sharvill RENEWAL
Johnson Q WieserBrazilStephen Shaw UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Maria W RoysterRussiaIvan Magalhaes NEGOTIATION
Leja B SergiBrazilXuxue Feng UNQUALIFIED
Francesco L BriddickBrazilIvan Magalhaes PROPOSAL
Munro T ChuiAustraliaBernardo Dominic NEW
Darci T VocelkaGermanyAsiya Javayant NEW
Adams L SchemmerRussiaStephen Shaw NEW
Maisha C NickaArgentinaIoni Bowcher RENEWAL
Sinclair J SergiBrazilIvan Magalhaes NEW
Kadeem K TollnerAustraliaAnna Fali PROPOSAL
David C TollnerRussiaOnyama Limba NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Mayumi N MacleadAustralia2024-05-27Morlong Associates NEW41Anna Fali
1001Smith P WieserJapan2024-05-31Printing Dimensions NEGOTIATION91Amy Elsner
1002Wickens K RulapaughArgentina2024-06-11Printing Dimensions PROPOSAL58Amy Elsner
1003Leon J DilliardSpain2024-05-29Buckley Miller Wright RENEWAL61Onyama Limba
1004Ashley O AlbaresArgentina2024-05-26Dorl, James J Esq QUALIFIED49Anna Fali
1005Octavia H FollerIndia2024-05-30Benton, John B Jr UNQUALIFIED34Ioni Bowcher
1006Jones C OldroydFrance2024-05-26Rangoni Of Florence NEW78Elwin Sharvill
1007Silvio N ChuiItaly2024-06-10Chemel, James L Cpa NEW0Ivan Magalhaes
1008Tony X OstroskyBrazil2024-06-02Commercial Press RENEWAL87Anna Fali
1009Faith V PoquetteCanada2024-06-07King, Christopher A Esq UNQUALIFIED76Asiya Javayant
1010Jones A CaldareraArgentina2024-06-06Feltz Printing Service PROPOSAL33Stephen Shaw
1011Ashley W BriddickFrance2024-05-19Benton, John B Jr NEGOTIATION62Elwin Sharvill
1012Adams D GlickItaly2024-05-24Chapman, Ross E Esq RENEWAL40Ivan Magalhaes
1013Jennifer D StockhamSpain2024-06-12Chapman, Ross E Esq NEW88Onyama Limba
1014Rodrigues L BowleyCanada2024-05-25Dorl, James J Esq RENEWAL95Anna Fali
1015Izzy V DoeBrazil2024-05-28Buckley Miller Wright NEW26Onyama Limba
1016Wickens G NickaArgentina2024-05-22Rangoni Of Florence PROPOSAL52Stephen Shaw
1017Aika O PerinUnited Kingdom2024-05-26Benton, John B Jr PROPOSAL15Amy Elsner
1018Leja B GillianBrazil2024-06-08Printing Dimensions NEW90Amy Elsner
1019Octavia E WieserIndia2024-05-23Feltz Printing Service PROPOSAL89Elwin Sharvill
1020Silvio C RutaBrazil2024-06-12Feiner Bros RENEWAL44Stephen Shaw
1021Chavez V VocelkaUnited Kingdom2024-05-17Buckley Miller Wright UNQUALIFIED89Xuxue Feng
1022Arvin R AmigonIndia2024-05-25Commercial Press NEGOTIATION57Bernardo Dominic
1023Julie E WaycottItaly2024-05-22Chapman, Ross E Esq PROPOSAL60Amy Elsner
1024Morrow X BowleyIndia2024-05-23Printing Dimensions PROPOSAL41Bernardo Dominic
1025Ricardo C CampainGermany2024-05-25Chemel, James L Cpa RENEWAL94Ioni Bowcher
1026Aditya D SlusarskiSpain2024-06-13King, Christopher A Esq UNQUALIFIED72Bernardo Dominic
1027Emily Y RutaBrazil2024-05-18Truhlar And Truhlar Attys RENEWAL92Xuxue Feng
1028Munro W FollerCanada2024-06-09Printing Dimensions RENEWAL70Onyama Limba
1029Tony J BriddickCanada2024-05-30Chemel, James L Cpa NEW62Ioni Bowcher
1030Faith D FlosiUnited Kingdom2024-05-17Buckley Miller Wright RENEWAL92Onyama Limba
1031Mujtaba J FigeroaBrazil2024-05-30Chemel, James L Cpa PROPOSAL79Elwin Sharvill
1032Cody H MacleadAustralia2024-06-07Chapman, Ross E Esq UNQUALIFIED93Asiya Javayant
1033Jennifer W WieserUnited Kingdom2024-05-30Feiner Bros PROPOSAL59Ioni Bowcher
1034Cody P SlusarskiSpain2024-05-25Dorl, James J Esq QUALIFIED75Elwin Sharvill
1035Smith F DarakjyIndia2024-05-17Benton, John B Jr NEGOTIATION43Ivan Magalhaes
1036Adams E ChuiGermany2024-05-26King, Christopher A Esq QUALIFIED31Anna Fali
1037Munro I AlbaresSpain2024-05-30Feiner Bros RENEWAL86Anna Fali
1038Jeanfrancois Z SchemmerAustralia2024-05-17Truhlar And Truhlar Attys PROPOSAL98Xuxue Feng
1039Julie N AmigonBrazil2024-06-12Chemel, James L Cpa QUALIFIED81Ivan Magalhaes
1040Leon N FerenczItaly2024-05-27Printing Dimensions PROPOSAL57Stephen Shaw
1041David Q MacleadIndia2024-06-14Commercial Press PROPOSAL94Bernardo Dominic
1042Mujtaba C FigeroaCanada2024-05-24Feltz Printing Service NEW86Xuxue Feng
1043Mujtaba E GlickUnited Kingdom2024-05-17Rousseaux, Michael Esq QUALIFIED93Elwin Sharvill
1044Aika M NestleBrazil2024-05-28Morlong Associates RENEWAL18Stephen Shaw
1045Francesco D SchemmerIndia2024-05-22Benton, John B Jr RENEWAL57Bernardo Dominic
1046Juan P CaldareraUnited Kingdom2024-06-09Feiner Bros NEGOTIATION35Xuxue Feng
1047Nicolas N MorascaCanada2024-06-01Rangoni Of Florence QUALIFIED76Xuxue Feng
1048Ricardo D GauchoJapan2024-06-10Feiner Bros RENEWAL45Xuxue Feng
1049Antonio H MarrierUnited Kingdom2024-05-26King, Christopher A Esq NEGOTIATION45Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Mayumi X PerinFranceAnna Fali NEW
Antonio Y RimSpainElwin Sharvill UNQUALIFIED
Misaki F ButtUnited KingdomAmy Elsner PROPOSAL
Francesco Q MaletAustraliaAnna Fali QUALIFIED
Costa X FigeroaCanadaXuxue Feng QUALIFIED
Murillo T GauchoItalyAnna Fali QUALIFIED
Julie F MacleadIndiaOnyama Limba PROPOSAL
Jones A FollerUnited KingdomAmy Elsner NEW
Greenwood Y InouyeItalyBernardo Dominic PROPOSAL
Ricardo W CampainBrazilIvan Magalhaes UNQUALIFIED
Deepesh I InouyeCanadaAsiya Javayant UNQUALIFIED
Smith R StensethIndiaIvan Magalhaes UNQUALIFIED
Munro Q MaletFranceElwin Sharvill UNQUALIFIED
Costa U OldroydSpainIvan Magalhaes PROPOSAL
Deepesh N PoquetteJapanAnna Fali NEGOTIATION
Antonio X SaylorsSpainBernardo Dominic NEGOTIATION
Sinclair G GlickGermanyXuxue Feng UNQUALIFIED
Kadeem B AlbaresAustraliaAnna Fali UNQUALIFIED
Munro P KuskoUnited KingdomXuxue Feng NEW
Aruna L MacleadUnited KingdomOnyama Limba QUALIFIED
Ricardo X DilliardRussiaXuxue Feng QUALIFIED
Ashley U WieserSpainAmy Elsner NEW
Antonio X InouyeCanadaIoni Bowcher RENEWAL
Jefferson X WaycottItalyBernardo Dominic NEW
Nicolas Q SaylorsGermanyIoni Bowcher UNQUALIFIED
Maisha R SchemmerUnited KingdomBernardo Dominic NEGOTIATION
Julie L SaylorsItalyAsiya Javayant UNQUALIFIED
Emily Y DoeItalyIoni Bowcher PROPOSAL
Clifford D FigeroaIndiaXuxue Feng QUALIFIED
Deepesh I ButtSpainXuxue Feng UNQUALIFIED
Faith G DarakjyAustraliaXuxue Feng NEW
Sinclair U MaletItalyAnna Fali QUALIFIED
Leja T FlosiArgentinaBernardo Dominic RENEWAL
Julie A SaylorsFranceXuxue Feng NEW
Deepesh G StensethJapanAnna Fali NEW
Jennifer A FollerSpainAmy Elsner PROPOSAL
Kaitlin G MarrierRussiaIvan Magalhaes NEGOTIATION
Julie A SergiAustraliaIoni Bowcher NEGOTIATION
Ivar Q FerenczArgentinaStephen Shaw NEW
Aditya N GauchoGermanyAsiya Javayant NEW
Murillo Z KolmetzJapanAsiya Javayant UNQUALIFIED
Antonio R BologniaJapanOnyama Limba PROPOSAL
Jones C DoeRussiaStephen Shaw QUALIFIED
Emily F SchemmerUnited KingdomIvan Magalhaes PROPOSAL
Smith B FigeroaItalyStephen Shaw UNQUALIFIED
Morrow J GillianBrazilXuxue Feng NEGOTIATION
Adams G TollnerGermanyOnyama Limba NEGOTIATION
Cody E GlickItalyXuxue Feng QUALIFIED
Leja N DilliardFranceOnyama Limba PROPOSAL
Darci V WieserSpainOnyama Limba UNQUALIFIED
Frozen Columns
Name
Kadeem I Venere
Smith R Nestle
Mayumi I Sergi
Jefferson L Iturbide
Munro T Rim
Munro R Briddick
Wickens S Marrier
James B Vocelka
Rodrigues V Maclead
Morrow X Briddick
Francesco A Kolmetz
Maria B Garufi
Cody E Bowley
Jeanfrancois R Kolmetz
Jones Z Venere
Adams W Vocelka
Rodrigues G Oldroyd
Francesco W Waycott
Izzy Z Ferencz
Aruna Y Albares
Murillo R Maclead
Isabel J Maclead
Jennifer I Doe
Clifford R Darakjy
Kadeem S Sergi
Ricardo C Doe
Murillo M Ferencz
Mayumi D Amigon
Jeanfrancois I Vocelka
Munro E Perin
Jones B Iturbide
Maisha N Saylors
Mayumi E Dilliard
Octavia N Bolognia
David J Maclead
Stacey T Slusarski
Munro U Ostrosky
Leja U Briddick
David L Maclead
Mayumi R Bowley
Nicolas C Rulapaugh
Kaitlin C Ruta
Juan Z Glick
Rodrigues I Marrier
Silvio N Bowley
Jefferson I Dilliard
Leon Q Oldroyd
Murillo S Perin
Stacey G Perin
Kaitlin Z Foller
IdCountryDate
1000Italy2024-06-09
1001Australia2024-05-22
1002Spain2024-06-03
1003India2024-06-03
1004Argentina2024-05-19
1005Australia2024-06-10
1006Germany2024-05-23
1007Spain2024-06-06
1008United Kingdom2024-05-27
1009India2024-06-03
1010Japan2024-05-27
1011France2024-06-02
1012Argentina2024-06-03
1013Brazil2024-06-11
1014Australia2024-06-09
1015United Kingdom2024-06-13
1016Australia2024-06-06
1017Canada2024-05-30
1018Argentina2024-06-11
1019Canada2024-05-19
1020Brazil2024-06-05
1021India2024-06-07
1022United Kingdom2024-05-20
1023Brazil2024-06-02
1024Spain2024-06-07
1025Germany2024-05-19
1026Italy2024-05-30
1027Italy2024-06-02
1028Spain2024-05-21
1029Italy2024-06-06
1030United Kingdom2024-05-29
1031Italy2024-05-28
1032United Kingdom2024-06-10
1033Japan2024-05-17
1034United Kingdom2024-06-02
1035Argentina2024-06-06
1036Italy2024-06-03
1037Argentina2024-05-26
1038Argentina2024-05-28
1039Germany2024-06-02
1040Brazil2024-05-29
1041Argentina2024-05-31
1042India2024-05-25
1043Argentina2024-05-19
1044Italy2024-05-24
1045Argentina2024-05-31
1046Canada2024-06-08
1047Japan2024-06-07
1048Germany2024-06-03
1049Italy2024-06-13

On-Demand Data

NameIdCountryDate
Ivar H Darakjy1000Australia2024-05-21
Arvin S Butt1001Italy2024-06-05
David V Saylors1002Canada2024-06-09
Julie G Slusarski1003Japan2024-05-25
James K Glick1004Japan2024-06-04
Aditya G Vocelka1005United Kingdom2024-05-19
Munro O Wieser1006Italy2024-05-28
Jefferson V Malet1007Germany2024-05-21
Isabel F Slusarski1008Italy2024-05-24
Munro E Marrier1009Brazil2024-05-21
Isabel W Foller1010Spain2024-06-07
James T Figeroa1011Brazil2024-06-12
Isabel B Foller1012Brazil2024-06-14
Munro S Caudy1013Italy2024-06-14
David V Stockham1014United Kingdom2024-05-18
Silvio L Rulapaugh1015Japan2024-06-10
Emily W Bolognia1016Spain2024-05-27
Jones F Slusarski1017Germany2024-05-22
Jefferson M Iturbide1018Canada2024-05-26
Maria Z Paprocki1019Argentina2024-06-01
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Maria C MaletCanadaElwin Sharvill NEGOTIATION
Munro X ChuiAustraliaStephen Shaw QUALIFIED
David H TollnerBrazilElwin Sharvill NEGOTIATION
Aditya D GlickGermanyElwin Sharvill UNQUALIFIED
Kaitlin Z AlbaresItalyIoni Bowcher NEGOTIATION
Smith Z CaudyUnited KingdomAsiya Javayant UNQUALIFIED
Francesco W CampainBrazilAmy Elsner NEGOTIATION
Octavia Q MorascaIndiaAnna Fali NEW
Aruna L StockhamIndiaXuxue Feng RENEWAL
Sinclair S RimFranceOnyama Limba PROPOSAL
Juan F MaletJapanElwin Sharvill UNQUALIFIED
Claire L BriddickUnited KingdomAnna Fali NEGOTIATION
Cody A MarrierCanadaIoni Bowcher NEW
Smith K DilliardCanadaBernardo Dominic NEW
Ricardo X BologniaGermanyAnna Fali QUALIFIED
James I MaletAustraliaAmy Elsner NEGOTIATION
Julie V DoeItalyStephen Shaw QUALIFIED
Arvin X WieserRussiaIvan Magalhaes NEGOTIATION
Izzy N KolmetzJapanStephen Shaw NEGOTIATION
Greenwood Z WaycottCanadaXuxue Feng PROPOSAL
Clifford A DilliardCanadaBernardo Dominic RENEWAL
Costa S SergiIndiaElwin Sharvill QUALIFIED
Silvio R FerenczUnited KingdomElwin Sharvill QUALIFIED
Jones L RimAustraliaAmy Elsner NEW
Greenwood U AmigonJapanAmy Elsner NEW
Francesco N RutaSpainBernardo Dominic RENEWAL
Cody W DilliardAustraliaAnna Fali QUALIFIED
David W StockhamBrazilStephen Shaw RENEWAL
Jeanfrancois N SchemmerGermanyElwin Sharvill PROPOSAL
Jennifer S PerinCanadaElwin Sharvill RENEWAL
Jefferson B ShinkoBrazilAmy Elsner QUALIFIED
Clifford J AlbaresUnited KingdomBernardo Dominic RENEWAL
Mayumi S OldroydIndiaAsiya Javayant QUALIFIED
Octavia Z StockhamGermanyAsiya Javayant PROPOSAL
Nicolas H FollerSpainAsiya Javayant UNQUALIFIED
Jeanfrancois N MaletRussiaAsiya Javayant NEGOTIATION
David R GarufiIndiaAnna Fali UNQUALIFIED
Juan B GillianIndiaIoni Bowcher NEGOTIATION
Faith V AmigonJapanAsiya Javayant UNQUALIFIED
Misaki Z FollerSpainBernardo Dominic 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>