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
Aruna U ButtCanadaStephen Shaw NEW
Salvatore E AlbaresArgentinaIvan Magalhaes NEGOTIATION
David V AlbaresGermanyElwin Sharvill RENEWAL
James Y KuskoSpainIoni Bowcher QUALIFIED
Adams W MaletRussiaIvan Magalhaes NEGOTIATION
Maisha R MarrierArgentinaStephen Shaw NEW
Arvin A VenereRussiaIoni Bowcher NEGOTIATION
Mujtaba W MorascaFranceIoni Bowcher NEW
Isabel I CampainIndiaXuxue Feng PROPOSAL
Misaki Q RutaCanadaXuxue Feng RENEWAL
Salvatore R CaudyItalyElwin Sharvill PROPOSAL
Kaitlin F MacleadAustraliaOnyama Limba PROPOSAL
Alejandro N KuskoAustraliaAmy Elsner NEGOTIATION
Maria W StensethArgentinaAnna Fali RENEWAL
Munro Z RutaFranceIvan Magalhaes UNQUALIFIED
Leon B OldroydGermanyIoni Bowcher QUALIFIED
Munro G RoysterIndiaAmy Elsner RENEWAL
Jefferson A RulapaughFranceElwin Sharvill NEW
Izzy F PerinBrazilElwin Sharvill RENEWAL
Sinclair R GlickIndiaAsiya Javayant PROPOSAL
Jones Q WhobreyAustraliaIoni Bowcher NEW
Izzy N VocelkaUnited KingdomIvan Magalhaes QUALIFIED
Isabel W IturbideGermanyAsiya Javayant PROPOSAL
Costa U RutaAustraliaOnyama Limba PROPOSAL
Ricardo N RoysterBrazilAsiya Javayant PROPOSAL
Jones R DilliardSpainAmy Elsner RENEWAL
Silvio C FigeroaBrazilBernardo Dominic NEGOTIATION
Costa O RimIndiaIvan Magalhaes PROPOSAL
Octavia E FlosiCanadaElwin Sharvill RENEWAL
Johnson N SchemmerGermanyOnyama Limba RENEWAL
Kaitlin U MaletFranceStephen Shaw RENEWAL
Kaitlin F IturbideRussiaElwin Sharvill PROPOSAL
Jennifer O PerinUnited KingdomAnna Fali NEW
Octavia C MarrierArgentinaIvan Magalhaes NEW
Mayumi R GauchoSpainElwin Sharvill PROPOSAL
Maria O MorascaUnited KingdomIvan Magalhaes NEW
Murillo V GillianArgentinaStephen Shaw PROPOSAL
Costa E WaycottAustraliaXuxue Feng RENEWAL
Silvio S MaletFranceAnna Fali QUALIFIED
Jones Z BriddickFranceIvan Magalhaes QUALIFIED
Isabel O OldroydItalyElwin Sharvill QUALIFIED
Aditya B StensethBrazilAsiya Javayant PROPOSAL
Maria U AlbaresSpainAnna Fali NEGOTIATION
Jennifer K SchemmerIndiaXuxue Feng NEGOTIATION
Clifford Q SchemmerRussiaStephen Shaw NEW
David R GarufiFranceIoni Bowcher NEW
Ashley D NickaFranceStephen Shaw NEGOTIATION
Rodrigues P DilliardBrazilIoni Bowcher QUALIFIED
Costa I IturbideJapanXuxue Feng UNQUALIFIED
Kaitlin A ButtUnited KingdomIoni Bowcher RENEWAL
Horizontal
NameCountryRepresentativeStatus
Claire L CampainGermanyXuxue Feng QUALIFIED
Rodrigues T OldroydAustraliaElwin Sharvill NEGOTIATION
Jeanfrancois L WhobreyCanadaBernardo Dominic NEGOTIATION
Claire M FlosiJapanElwin Sharvill QUALIFIED
Kadeem O KolmetzArgentinaOnyama Limba QUALIFIED
Jefferson Q BriddickUnited KingdomIoni Bowcher NEGOTIATION
Misaki C NickaItalyAmy Elsner PROPOSAL
Claire Y BriddickSpainAsiya Javayant NEW
Ashley S DilliardCanadaOnyama Limba RENEWAL
Morrow C FigeroaArgentinaOnyama Limba QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Kadeem T GauchoItaly2024-05-24Truhlar And Truhlar Attys PROPOSAL83Onyama Limba
1001Deepesh C OldroydRussia2024-06-20Chemel, James L Cpa UNQUALIFIED92Bernardo Dominic
1002Rodrigues M IturbideCanada2024-06-07Chapman, Ross E Esq UNQUALIFIED83Stephen Shaw
1003Morrow W RutaUnited Kingdom2024-05-23Truhlar And Truhlar Attys UNQUALIFIED51Amy Elsner
1004Ivar Z WaycottArgentina2024-05-30Dorl, James J Esq PROPOSAL45Bernardo Dominic
1005Nicolas A OldroydItaly2024-06-04Feltz Printing Service PROPOSAL30Xuxue Feng
1006Ricardo C OldroydFrance2024-06-20Feltz Printing Service QUALIFIED62Ioni Bowcher
1007Jeanfrancois Z OldroydUnited Kingdom2024-06-12Morlong Associates PROPOSAL10Xuxue Feng
1008Jones L DilliardRussia2024-06-11King, Christopher A Esq UNQUALIFIED52Ioni Bowcher
1009Antonio O WaycottUnited Kingdom2024-06-11Chanay, Jeffrey A Esq QUALIFIED90Ivan Magalhaes
1010Francesco C PaprockiSpain2024-06-20King, Christopher A Esq QUALIFIED56Amy Elsner
1011Octavia B VocelkaCanada2024-05-25Rangoni Of Florence PROPOSAL5Ivan Magalhaes
1012Wickens I RutaJapan2024-06-06Rousseaux, Michael Esq RENEWAL7Ioni Bowcher
1013Morrow J FlosiCanada2024-05-26Commercial Press NEGOTIATION60Ivan Magalhaes
1014Emily U MaletSpain2024-06-08Chemel, James L Cpa PROPOSAL3Asiya Javayant
1015Maisha G InouyeRussia2024-06-05Feiner Bros QUALIFIED60Stephen Shaw
1016Juan B PerinIndia2024-05-23Chemel, James L Cpa UNQUALIFIED85Amy Elsner
1017Sinclair J PoquetteIndia2024-06-16Rangoni Of Florence RENEWAL89Elwin Sharvill
1018Darci X TollnerGermany2024-06-19Feiner Bros PROPOSAL91Ioni Bowcher
1019Nicolas G BowleySpain2024-06-12Morlong Associates PROPOSAL23Stephen Shaw
1020Izzy E PoquetteGermany2024-06-05Chemel, James L Cpa QUALIFIED25Elwin Sharvill
1021Mujtaba D OstroskyGermany2024-06-09Commercial Press NEGOTIATION6Stephen Shaw
1022James Q MacleadAustralia2024-06-18Rousseaux, Michael Esq RENEWAL55Asiya Javayant
1023Faith Y AlbaresItaly2024-06-10Benton, John B Jr PROPOSAL33Stephen Shaw
1024Morrow B MorascaAustralia2024-05-24Truhlar And Truhlar Attys NEGOTIATION36Onyama Limba
1025Juan P DoeIndia2024-06-12Truhlar And Truhlar Attys NEW2Stephen Shaw
1026Mayumi Q InouyeCanada2024-05-28Chanay, Jeffrey A Esq UNQUALIFIED88Bernardo Dominic
1027Deepesh U BowleySpain2024-05-26Truhlar And Truhlar Attys QUALIFIED80Amy Elsner
1028Costa V KuskoAustralia2024-06-08Truhlar And Truhlar Attys QUALIFIED60Onyama Limba
1029Izzy E MarrierAustralia2024-06-05Morlong Associates NEW98Onyama Limba
1030Stacey M OstroskyJapan2024-06-19Rousseaux, Michael Esq RENEWAL45Bernardo Dominic
1031Johnson H NestleArgentina2024-06-10King, Christopher A Esq NEGOTIATION56Ioni Bowcher
1032Jones B VenereCanada2024-06-21Chemel, James L Cpa NEW60Bernardo Dominic
1033Murillo N RutaBrazil2024-05-24Feltz Printing Service NEW52Bernardo Dominic
1034Salvatore N RoysterJapan2024-06-08Chanay, Jeffrey A Esq UNQUALIFIED78Ioni Bowcher
1035Maria E TollnerCanada2024-06-18Rousseaux, Michael Esq NEW76Ioni Bowcher
1036Morrow Z GillianBrazil2024-06-09Printing Dimensions NEW55Ioni Bowcher
1037Kaitlin T WieserAustralia2024-06-13Feltz Printing Service PROPOSAL21Ivan Magalhaes
1038Ivar X PerinFrance2024-06-11Dorl, James J Esq UNQUALIFIED52Xuxue Feng
1039Ricardo L OldroydRussia2024-06-08Rousseaux, Michael Esq NEGOTIATION33Ioni Bowcher
1040Cody X FollerRussia2024-06-03King, Christopher A Esq PROPOSAL16Anna Fali
1041Sinclair K DilliardCanada2024-05-27Dorl, James J Esq QUALIFIED44Stephen Shaw
1042Jefferson B GlickBrazil2024-06-04Rangoni Of Florence NEW19Amy Elsner
1043Smith A StockhamBrazil2024-06-14Rousseaux, Michael Esq PROPOSAL47Xuxue Feng
1044Leja U MacleadAustralia2024-05-26Morlong Associates RENEWAL2Ivan Magalhaes
1045Jones V SlusarskiCanada2024-06-11Commercial Press PROPOSAL75Stephen Shaw
1046Sinclair Q MacleadIndia2024-05-31Rousseaux, Michael Esq NEW19Amy Elsner
1047Izzy M GlickGermany2024-06-07Dorl, James J Esq NEGOTIATION35Ivan Magalhaes
1048Francesco V MacleadUnited Kingdom2024-06-07Feltz Printing Service QUALIFIED29Onyama Limba
1049Sinclair W GillianArgentina2024-05-27Truhlar And Truhlar Attys QUALIFIED29Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
David B PaprockiSpainAsiya Javayant UNQUALIFIED
Costa F ChuiGermanyElwin Sharvill QUALIFIED
Clifford M CampainJapanElwin Sharvill RENEWAL
Leon J DoeCanadaStephen Shaw NEGOTIATION
Tony R GauchoArgentinaAnna Fali QUALIFIED
Clifford D RoysterArgentinaIvan Magalhaes RENEWAL
Ivar N OldroydUnited KingdomOnyama Limba NEGOTIATION
Alejandro C MarrierBrazilBernardo Dominic NEGOTIATION
Rodrigues V RimJapanAnna Fali RENEWAL
Jennifer T RulapaughBrazilIoni Bowcher RENEWAL
Stacey C StensethUnited KingdomIoni Bowcher NEGOTIATION
Tony Y GarufiIndiaAsiya Javayant RENEWAL
Murillo I InouyeRussiaAnna Fali NEGOTIATION
Greenwood H FigeroaFranceOnyama Limba NEGOTIATION
James N CaldareraSpainIoni Bowcher RENEWAL
Aditya W TollnerSpainElwin Sharvill RENEWAL
Morrow O GarufiUnited KingdomElwin Sharvill QUALIFIED
Mayumi T WhobreyRussiaIvan Magalhaes UNQUALIFIED
Jeanfrancois I KuskoAustraliaIvan Magalhaes NEW
Aditya T DilliardJapanAsiya Javayant RENEWAL
Leja N SaylorsBrazilIoni Bowcher PROPOSAL
Darci A OldroydArgentinaIvan Magalhaes RENEWAL
Sinclair I MorascaUnited KingdomAsiya Javayant RENEWAL
Izzy P PaprockiCanadaElwin Sharvill NEGOTIATION
Octavia Z BowleyAustraliaStephen Shaw PROPOSAL
Clifford Y ButtBrazilElwin Sharvill QUALIFIED
Costa D OldroydFranceIoni Bowcher NEW
Rodrigues L RutaArgentinaStephen Shaw RENEWAL
Wickens O PerinIndiaIvan Magalhaes QUALIFIED
Mayumi C SchemmerSpainBernardo Dominic NEGOTIATION
Greenwood S VenereItalyIvan Magalhaes QUALIFIED
Ivar Z SchemmerIndiaAmy Elsner NEGOTIATION
Octavia V SergiArgentinaBernardo Dominic RENEWAL
Ivar H BowleyRussiaOnyama Limba RENEWAL
Silvio R StockhamUnited KingdomXuxue Feng PROPOSAL
Clifford C GauchoBrazilBernardo Dominic QUALIFIED
Jennifer A IturbideRussiaIvan Magalhaes PROPOSAL
Jones X AmigonAustraliaIvan Magalhaes NEGOTIATION
Ivar Z SchemmerIndiaIoni Bowcher NEW
Mayumi Y ButtItalyIoni Bowcher QUALIFIED
Misaki I WhobreyRussiaStephen Shaw NEW
Jefferson Q WieserJapanElwin Sharvill NEW
Claire V MaletJapanAnna Fali RENEWAL
Murillo V VocelkaCanadaAsiya Javayant NEW
Aika W AlbaresUnited KingdomStephen Shaw NEGOTIATION
Arvin X WhobreyIndiaIvan Magalhaes RENEWAL
Morrow F MarrierAustraliaAnna Fali RENEWAL
Darci O PerinRussiaAnna Fali QUALIFIED
Johnson Z CaudyBrazilElwin Sharvill PROPOSAL
Rodrigues L BowleyAustraliaXuxue Feng NEGOTIATION
Frozen Columns
Name
Wickens G Tollner
Nicolas I Malet
Leon I Tollner
Ivar G Perin
David O Caudy
Julie T Iturbide
Kaitlin M Ferencz
Jefferson W Schemmer
Jones L Perin
Misaki E Bowley
Smith G Inouye
Stacey G Stenseth
Ivar N Foller
Clifford Y Chui
Aika H Paprocki
Jennifer M Schemmer
Claire T Gaucho
Tony B Doe
Maisha I Stockham
Kaitlin F Iturbide
Ivar A Waycott
Mayumi Q Bolognia
Aruna T Morasca
Greenwood F Poquette
Mayumi Z Foller
Maisha K Ruta
Wickens W Doe
Smith K Butt
Clifford E Tollner
Leon A Marrier
Jennifer K Caudy
Claire S Bowley
Leon M Stockham
Costa P Albares
Tony E Schemmer
Stacey A Saylors
Leja F Shinko
Nicolas K Royster
Deepesh Y Stenseth
James F Poquette
Arvin B Ostrosky
Julie J Figeroa
Maria J Kusko
Leon A Paprocki
Munro F Ruta
Isabel O Nestle
Tony A Bowley
Maria W Briddick
Tony U Inouye
Alejandro Z Marrier
IdCountryDate
1000Germany2024-06-12
1001Italy2024-06-17
1002Spain2024-06-04
1003France2024-05-28
1004Argentina2024-06-06
1005Germany2024-06-07
1006Canada2024-06-07
1007Brazil2024-06-12
1008Brazil2024-06-14
1009Australia2024-06-05
1010Italy2024-06-19
1011Spain2024-05-25
1012India2024-05-30
1013Australia2024-06-03
1014Russia2024-06-04
1015Spain2024-06-09
1016Brazil2024-05-30
1017France2024-05-31
1018Australia2024-06-18
1019Argentina2024-06-04
1020India2024-06-20
1021Italy2024-06-15
1022United Kingdom2024-06-06
1023Japan2024-06-02
1024Japan2024-06-21
1025Australia2024-05-29
1026Russia2024-06-17
1027Italy2024-05-25
1028Italy2024-05-27
1029Brazil2024-06-19
1030Italy2024-06-09
1031Brazil2024-06-16
1032Brazil2024-06-03
1033Australia2024-05-31
1034Japan2024-06-18
1035India2024-06-21
1036United Kingdom2024-06-10
1037Russia2024-06-18
1038Australia2024-06-04
1039India2024-06-01
1040Spain2024-05-31
1041Argentina2024-06-11
1042Italy2024-06-04
1043Germany2024-06-11
1044France2024-05-30
1045Japan2024-05-28
1046Argentina2024-06-03
1047France2024-06-02
1048Russia2024-06-12
1049Spain2024-06-08

On-Demand Data

NameIdCountryDate
Claire M Iturbide1000Japan2024-06-17
Cody U Gillian1001Argentina2024-05-26
Smith G Briddick1002Brazil2024-06-12
Aditya O Royster1003Italy2024-06-07
Ashley M Tollner1004Australia2024-06-12
Sinclair Q Bolognia1005India2024-05-30
Tony N Oldroyd1006Australia2024-06-16
Sinclair E Glick1007India2024-06-18
Ricardo K Inouye1008Spain2024-06-15
David L Kolmetz1009Germany2024-06-09
Maisha N Shinko1010Italy2024-06-16
Kaitlin M Oldroyd1011Japan2024-05-26
Claire O Nestle1012Japan2024-05-26
Leon V Nicka1013Italy2024-06-06
Claire J Vocelka1014France2024-05-30
Misaki C Malet1015Australia2024-06-07
Sinclair N Glick1016Italy2024-06-10
Leja N Caldarera1017Japan2024-06-04
Wickens Z Dilliard1018India2024-06-05
Wickens V Poquette1019Germany2024-06-04
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jennifer J ButtIndiaOnyama Limba PROPOSAL
Antonio H MaletSpainElwin Sharvill NEGOTIATION
Morrow K MacleadCanadaXuxue Feng QUALIFIED
Julie X KuskoRussiaOnyama Limba RENEWAL
Sinclair C FigeroaAustraliaElwin Sharvill NEW
Morrow M VocelkaSpainIoni Bowcher UNQUALIFIED
Ivar D BowleyJapanAsiya Javayant PROPOSAL
Kadeem K StockhamUnited KingdomIoni Bowcher NEGOTIATION
Adams V DoeRussiaStephen Shaw NEGOTIATION
Kadeem A WaycottUnited KingdomIvan Magalhaes UNQUALIFIED
Johnson J FerenczBrazilOnyama Limba NEW
Aika N DarakjyRussiaAsiya Javayant NEW
Salvatore Z ShinkoIndiaIoni Bowcher NEGOTIATION
Kaitlin R GillianCanadaIoni Bowcher QUALIFIED
Aruna T FerenczItalyIoni Bowcher QUALIFIED
Faith B StockhamJapanBernardo Dominic PROPOSAL
Rodrigues Z VocelkaUnited KingdomBernardo Dominic PROPOSAL
Jefferson Y MorascaGermanyBernardo Dominic QUALIFIED
Aditya W SergiRussiaAsiya Javayant UNQUALIFIED
Maisha N WaycottJapanOnyama Limba UNQUALIFIED
Cody O MarrierBrazilIoni Bowcher QUALIFIED
Deepesh K StensethUnited KingdomBernardo Dominic UNQUALIFIED
Julie I ButtUnited KingdomOnyama Limba UNQUALIFIED
Darci H OldroydFranceAnna Fali PROPOSAL
Tony H NickaSpainAsiya Javayant NEGOTIATION
Munro T BologniaUnited KingdomAmy Elsner UNQUALIFIED
Darci X OstroskyAustraliaElwin Sharvill NEW
Cody V FollerFranceIoni Bowcher RENEWAL
Stacey C ButtCanadaElwin Sharvill RENEWAL
Antonio T StockhamJapanXuxue Feng NEGOTIATION
Jeanfrancois A GillianArgentinaAmy Elsner UNQUALIFIED
Wickens H SlusarskiItalyAmy Elsner QUALIFIED
James W NestleJapanXuxue Feng QUALIFIED
Deepesh U OldroydIndiaIvan Magalhaes NEGOTIATION
Maisha X CaudyRussiaStephen Shaw RENEWAL
Maria A WaycottBrazilStephen Shaw NEW
Octavia P RulapaughBrazilIvan Magalhaes RENEWAL
Silvio H OldroydBrazilIoni Bowcher NEW
Greenwood U MaletIndiaIoni Bowcher PROPOSAL
Chavez C MaletFranceElwin Sharvill PROPOSAL

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