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
Silvio S DoeUnited KingdomOnyama Limba QUALIFIED
James Q WaycottFranceIvan Magalhaes RENEWAL
Morrow S NickaRussiaXuxue Feng RENEWAL
Clifford M StockhamCanadaBernardo Dominic RENEWAL
Leon I OldroydJapanOnyama Limba RENEWAL
Jeanfrancois R BriddickSpainStephen Shaw NEGOTIATION
Nicolas O CaudySpainAmy Elsner QUALIFIED
Nicolas C PaprockiRussiaAmy Elsner QUALIFIED
Leon Z StensethIndiaAnna Fali PROPOSAL
Greenwood D CaudyIndiaIvan Magalhaes UNQUALIFIED
Smith R FerenczArgentinaIvan Magalhaes UNQUALIFIED
Antonio Y MaletAustraliaAmy Elsner QUALIFIED
Izzy U WieserIndiaBernardo Dominic QUALIFIED
Sinclair Y WaycottItalyAnna Fali UNQUALIFIED
Octavia N CampainSpainStephen Shaw UNQUALIFIED
Greenwood E BologniaArgentinaIoni Bowcher RENEWAL
Costa H IturbideUnited KingdomElwin Sharvill QUALIFIED
Silvio R SchemmerCanadaBernardo Dominic QUALIFIED
Ashley S MaletUnited KingdomAmy Elsner QUALIFIED
Aika F DoeGermanyStephen Shaw NEW
Munro F ShinkoArgentinaXuxue Feng RENEWAL
Emily K GlickRussiaAmy Elsner RENEWAL
Munro K WhobreyItalyAnna Fali NEGOTIATION
Antonio P RulapaughIndiaAnna Fali RENEWAL
Jones N DarakjyGermanyAnna Fali NEW
Aruna M DoeUnited KingdomXuxue Feng QUALIFIED
Kadeem U DilliardIndiaBernardo Dominic RENEWAL
Kaitlin W MorascaFranceAmy Elsner UNQUALIFIED
Aruna S WieserIndiaStephen Shaw RENEWAL
Antonio R PoquetteIndiaIoni Bowcher RENEWAL
Mujtaba R SergiRussiaIvan Magalhaes RENEWAL
Smith F CaudyRussiaAsiya Javayant UNQUALIFIED
Arvin E NickaCanadaAmy Elsner NEGOTIATION
Octavia C DarakjyAustraliaIoni Bowcher RENEWAL
Jennifer W BriddickAustraliaAmy Elsner NEGOTIATION
Aika N OstroskyCanadaAmy Elsner UNQUALIFIED
Costa Q FigeroaCanadaXuxue Feng NEGOTIATION
Julie L FigeroaBrazilAsiya Javayant NEGOTIATION
Jefferson V WhobreyRussiaOnyama Limba UNQUALIFIED
Emily K OldroydItalyAsiya Javayant NEGOTIATION
Adams J IturbideCanadaAnna Fali NEGOTIATION
Aditya T GarufiUnited KingdomBernardo Dominic PROPOSAL
Isabel F BologniaBrazilOnyama Limba RENEWAL
Costa F VenereBrazilAnna Fali UNQUALIFIED
Jones Z RimRussiaIoni Bowcher RENEWAL
Nicolas M NickaRussiaAmy Elsner UNQUALIFIED
Francesco G ButtBrazilAmy Elsner QUALIFIED
Mayumi N GarufiCanadaIvan Magalhaes NEGOTIATION
Jefferson M CaldareraRussiaAnna Fali QUALIFIED
Aruna F GarufiFranceElwin Sharvill RENEWAL
Horizontal
NameCountryRepresentativeStatus
Ashley Y CampainGermanyIoni Bowcher NEW
Jennifer Z StockhamSpainAsiya Javayant PROPOSAL
Munro D MarrierGermanyIoni Bowcher QUALIFIED
Smith N MaletItalyOnyama Limba QUALIFIED
Mujtaba C MacleadCanadaBernardo Dominic NEGOTIATION
Morrow Z FerenczIndiaAnna Fali UNQUALIFIED
Clifford P AlbaresUnited KingdomElwin Sharvill RENEWAL
Greenwood S OldroydCanadaOnyama Limba PROPOSAL
Salvatore M StockhamArgentinaOnyama Limba UNQUALIFIED
Adams R WieserJapanOnyama Limba UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Johnson E AmigonGermany2024-06-15Chapman, Ross E Esq UNQUALIFIED9Ioni Bowcher
1001David K OstroskyFrance2024-06-14Dorl, James J Esq PROPOSAL67Stephen Shaw
1002Sinclair O SaylorsRussia2024-06-19Morlong Associates PROPOSAL22Amy Elsner
1003Mujtaba T PoquetteCanada2024-05-27Chanay, Jeffrey A Esq QUALIFIED20Anna Fali
1004Wickens S MaletJapan2024-05-27Feiner Bros RENEWAL30Amy Elsner
1005Leja K MarrierCanada2024-06-17Dorl, James J Esq PROPOSAL12Anna Fali
1006Jennifer M SchemmerUnited Kingdom2024-06-01Rangoni Of Florence NEGOTIATION32Elwin Sharvill
1007Johnson E GauchoFrance2024-05-23Printing Dimensions QUALIFIED99Ioni Bowcher
1008Maisha W WaycottGermany2024-06-17Morlong Associates QUALIFIED25Ioni Bowcher
1009Salvatore X SchemmerAustralia2024-06-11Rousseaux, Michael Esq PROPOSAL87Asiya Javayant
1010Jones O IturbideCanada2024-06-01Rangoni Of Florence NEGOTIATION64Anna Fali
1011Chavez E ChuiArgentina2024-05-30Feiner Bros RENEWAL12Elwin Sharvill
1012Jefferson S AlbaresRussia2024-06-09Rangoni Of Florence RENEWAL72Ivan Magalhaes
1013Morrow X StensethArgentina2024-06-06Printing Dimensions NEGOTIATION93Stephen Shaw
1014Murillo K TollnerAustralia2024-05-23Chanay, Jeffrey A Esq PROPOSAL2Stephen Shaw
1015James T ShinkoSpain2024-06-12Feiner Bros QUALIFIED53Ivan Magalhaes
1016Izzy N DoeJapan2024-05-24King, Christopher A Esq PROPOSAL16Xuxue Feng
1017Silvio V WhobreyRussia2024-06-18Commercial Press NEGOTIATION28Ivan Magalhaes
1018Darci G GarufiIndia2024-06-14Benton, John B Jr NEW18Xuxue Feng
1019Faith A BriddickGermany2024-05-29Benton, John B Jr UNQUALIFIED63Ioni Bowcher
1020Misaki S RimBrazil2024-06-06Benton, John B Jr UNQUALIFIED44Anna Fali
1021Cody B MaletAustralia2024-06-12Benton, John B Jr RENEWAL29Ivan Magalhaes
1022Maria U BowleyCanada2024-05-23Morlong Associates NEW46Xuxue Feng
1023Rodrigues D PaprockiAustralia2024-05-26Truhlar And Truhlar Attys NEW19Elwin Sharvill
1024Greenwood Q FerenczFrance2024-05-29King, Christopher A Esq NEW90Stephen Shaw
1025Cody A DilliardJapan2024-06-09Truhlar And Truhlar Attys NEW48Stephen Shaw
1026Misaki V KuskoSpain2024-05-30Truhlar And Truhlar Attys UNQUALIFIED17Xuxue Feng
1027Wickens V GlickRussia2024-06-19Feltz Printing Service QUALIFIED99Elwin Sharvill
1028Salvatore X MaletRussia2024-06-15Truhlar And Truhlar Attys NEW96Bernardo Dominic
1029Aditya Q IturbideItaly2024-06-06Printing Dimensions RENEWAL39Ivan Magalhaes
1030Julie Q SlusarskiRussia2024-06-20Feiner Bros NEW41Bernardo Dominic
1031Costa Q RulapaughUnited Kingdom2024-05-27Dorl, James J Esq NEW98Ioni Bowcher
1032Tony Q GarufiUnited Kingdom2024-06-21Feiner Bros RENEWAL55Onyama Limba
1033James C OldroydBrazil2024-06-19Rangoni Of Florence UNQUALIFIED87Xuxue Feng
1034Claire J InouyeArgentina2024-06-05King, Christopher A Esq NEGOTIATION41Elwin Sharvill
1035Chavez F KolmetzSpain2024-06-04Rangoni Of Florence RENEWAL88Amy Elsner
1036Kadeem U ChuiSpain2024-06-11Chapman, Ross E Esq NEGOTIATION36Amy Elsner
1037Misaki S PaprockiAustralia2024-06-15Chapman, Ross E Esq NEW62Anna Fali
1038Maria Q VocelkaArgentina2024-05-28Feltz Printing Service NEW77Anna Fali
1039Octavia U RimUnited Kingdom2024-06-09Morlong Associates QUALIFIED37Xuxue Feng
1040Deepesh O GarufiBrazil2024-05-23Dorl, James J Esq PROPOSAL48Elwin Sharvill
1041Faith N ShinkoArgentina2024-06-10Rangoni Of Florence NEGOTIATION51Stephen Shaw
1042Morrow U NestleCanada2024-06-17Buckley Miller Wright PROPOSAL50Ivan Magalhaes
1043Aruna W IturbideJapan2024-06-16Chemel, James L Cpa PROPOSAL51Amy Elsner
1044Tony C SergiBrazil2024-05-25Feiner Bros NEW30Ivan Magalhaes
1045Juan W PoquetteUnited Kingdom2024-05-26Benton, John B Jr UNQUALIFIED19Asiya Javayant
1046Faith M RutaJapan2024-06-05Chemel, James L Cpa RENEWAL4Ivan Magalhaes
1047Jennifer N VocelkaArgentina2024-06-21Rangoni Of Florence NEGOTIATION39Ioni Bowcher
1048Mayumi B MaletJapan2024-05-23King, Christopher A Esq UNQUALIFIED55Xuxue Feng
1049Maisha O KolmetzGermany2024-05-31Printing Dimensions QUALIFIED92Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Jefferson L KolmetzIndiaElwin Sharvill NEW
Nicolas H CaudyBrazilElwin Sharvill UNQUALIFIED
Ivar E WhobreyBrazilIvan Magalhaes NEW
Jefferson L OstroskyItalyAsiya Javayant QUALIFIED
Nicolas S IturbideSpainStephen Shaw NEW
Jeanfrancois W GarufiRussiaIoni Bowcher NEGOTIATION
Mayumi D ShinkoUnited KingdomXuxue Feng UNQUALIFIED
Johnson E BologniaIndiaXuxue Feng QUALIFIED
Jennifer W FigeroaGermanyElwin Sharvill UNQUALIFIED
Izzy U PerinGermanyAsiya Javayant QUALIFIED
Murillo I RoysterItalyAsiya Javayant NEGOTIATION
Wickens O KolmetzRussiaXuxue Feng RENEWAL
Julie C NickaAustraliaIvan Magalhaes NEGOTIATION
Jeanfrancois O MaletGermanyAmy Elsner PROPOSAL
Stacey X SergiFranceIoni Bowcher PROPOSAL
Smith B SchemmerAustraliaAsiya Javayant NEW
Leon B SlusarskiArgentinaAsiya Javayant QUALIFIED
Clifford C BowleyArgentinaStephen Shaw UNQUALIFIED
Nicolas F KuskoIndiaOnyama Limba RENEWAL
Munro A MorascaGermanyOnyama Limba NEW
Mayumi I MacleadJapanXuxue Feng NEGOTIATION
Deepesh H RulapaughGermanyIoni Bowcher QUALIFIED
Claire A SergiFranceElwin Sharvill NEW
Stacey A IturbideSpainOnyama Limba RENEWAL
Tony D RoysterCanadaIvan Magalhaes NEW
Ashley D ShinkoGermanyOnyama Limba QUALIFIED
Adams U MorascaCanadaIoni Bowcher UNQUALIFIED
Cody G CaudySpainOnyama Limba NEGOTIATION
Aditya S MorascaUnited KingdomIvan Magalhaes QUALIFIED
Mujtaba A BriddickFranceAmy Elsner QUALIFIED
Alejandro H CampainUnited KingdomBernardo Dominic PROPOSAL
Adams J NickaIndiaAnna Fali RENEWAL
Francesco V VenereUnited KingdomAnna Fali PROPOSAL
Jefferson H TollnerIndiaElwin Sharvill QUALIFIED
Jefferson N NickaFranceAmy Elsner NEGOTIATION
Cody D MacleadBrazilIoni Bowcher UNQUALIFIED
Jefferson M SchemmerItalyIvan Magalhaes NEGOTIATION
Izzy O SaylorsGermanyBernardo Dominic UNQUALIFIED
Jones V RimArgentinaElwin Sharvill RENEWAL
Emily Z RutaCanadaOnyama Limba QUALIFIED
Costa E WhobreyUnited KingdomStephen Shaw NEW
Morrow V MacleadAustraliaStephen Shaw NEGOTIATION
Mayumi A ButtIndiaAmy Elsner NEW
Morrow Y InouyeCanadaBernardo Dominic PROPOSAL
Chavez T StockhamBrazilIoni Bowcher RENEWAL
Jones Z StockhamCanadaIoni Bowcher NEGOTIATION
Silvio N GauchoSpainIvan Magalhaes UNQUALIFIED
Kadeem D GauchoGermanyElwin Sharvill NEW
Chavez Q DilliardCanadaElwin Sharvill RENEWAL
Antonio J DarakjyFranceElwin Sharvill NEGOTIATION
Frozen Columns
Name
Aruna Y Wieser
Mayumi B Ostrosky
Chavez T Caldarera
Costa O Vocelka
Leja Q Bolognia
Jennifer N Nicka
Emily H Venere
Munro R Doe
Juan A Perin
Salvatore B Kusko
Smith U Garufi
Nicolas D Nestle
Ivar Y Ferencz
Jennifer R Sergi
Silvio P Stockham
Sinclair I Ferencz
Juan C Ferencz
Johnson I Saylors
Greenwood G Inouye
Aruna M Glick
Aika C Garufi
Nicolas X Nicka
Claire K Gaucho
Kadeem O Inouye
Smith I Figeroa
Antonio X Gaucho
David W Kusko
Faith M Caudy
Ivar W Doe
Emily F Poquette
Emily B Flosi
Aika G Venere
Clifford Z Maclead
Aika X Dilliard
Juan D Wieser
Mujtaba I Flosi
Francesco F Sergi
Adams Y Ferencz
Munro Z Flosi
Morrow N Oldroyd
Clifford V Whobrey
Sinclair N Tollner
David O Tollner
Leja Z Chui
Jennifer T Caldarera
Kaitlin I Glick
Deepesh L Bolognia
Salvatore U Ostrosky
Ricardo D Saylors
Maria R Stockham
IdCountryDate
1000Argentina2024-05-26
1001India2024-06-02
1002France2024-05-29
1003Italy2024-06-10
1004India2024-06-05
1005Japan2024-06-10
1006Australia2024-06-16
1007Spain2024-06-18
1008Australia2024-05-29
1009Russia2024-06-02
1010Canada2024-06-21
1011United Kingdom2024-05-28
1012Spain2024-05-29
1013Brazil2024-05-31
1014Brazil2024-06-02
1015Spain2024-06-20
1016France2024-06-10
1017Spain2024-05-29
1018Brazil2024-06-21
1019Russia2024-06-10
1020Brazil2024-05-23
1021Spain2024-06-13
1022Russia2024-05-31
1023Argentina2024-05-24
1024United Kingdom2024-06-21
1025Italy2024-06-04
1026Brazil2024-06-05
1027Brazil2024-06-03
1028Canada2024-05-24
1029Brazil2024-06-11
1030Italy2024-06-20
1031Australia2024-06-12
1032Spain2024-05-24
1033Brazil2024-06-02
1034Spain2024-05-30
1035Australia2024-06-20
1036Japan2024-06-11
1037Spain2024-06-12
1038Argentina2024-06-13
1039United Kingdom2024-05-23
1040Germany2024-06-19
1041Italy2024-06-04
1042Argentina2024-06-16
1043India2024-05-29
1044Canada2024-06-10
1045Germany2024-06-02
1046Canada2024-05-28
1047Argentina2024-05-25
1048Spain2024-06-04
1049India2024-05-25

On-Demand Data

NameIdCountryDate
Aruna D Malet1000United Kingdom2024-06-09
Morrow V Stenseth1001Australia2024-06-15
Cody J Caldarera1002Spain2024-06-16
Sinclair U Malet1003Russia2024-05-27
Murillo A Schemmer1004France2024-05-23
Mujtaba K Ostrosky1005Canada2024-05-28
Jennifer F Slusarski1006Russia2024-06-15
Salvatore R Caudy1007Germany2024-06-15
Aruna C Butt1008Japan2024-06-17
Stacey X Perin1009Argentina2024-06-13
Johnson K Tollner1010Germany2024-06-03
Jones F Nicka1011Argentina2024-06-12
Ricardo D Ostrosky1012Spain2024-05-29
Jones C Slusarski1013Russia2024-06-12
Faith C Bowley1014Russia2024-06-19
Maisha Q Kusko1015United Kingdom2024-06-06
Francesco N Gaucho1016Russia2024-06-19
Wickens U Morasca1017Australia2024-05-29
Arvin G Ferencz1018Australia2024-06-04
Antonio E Briddick1019India2024-06-07
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Smith Q WieserGermanyAsiya Javayant PROPOSAL
Nicolas R OstroskyUnited KingdomIoni Bowcher UNQUALIFIED
Maria T MorascaCanadaOnyama Limba NEW
Kaitlin Z OstroskyUnited KingdomAnna Fali QUALIFIED
Ashley E AlbaresBrazilAnna Fali QUALIFIED
Arvin S MaletSpainAnna Fali RENEWAL
Wickens X MacleadSpainAnna Fali RENEWAL
Maria T KuskoGermanyIvan Magalhaes NEW
Clifford M AmigonAustraliaXuxue Feng RENEWAL
Murillo X OldroydIndiaOnyama Limba UNQUALIFIED
Ricardo C NickaCanadaBernardo Dominic QUALIFIED
Octavia N RimSpainAnna Fali RENEWAL
Johnson Z RimUnited KingdomBernardo Dominic PROPOSAL
Kadeem A IturbideBrazilStephen Shaw NEGOTIATION
Leon F ButtRussiaAsiya Javayant UNQUALIFIED
Aditya G InouyeSpainElwin Sharvill QUALIFIED
David G MorascaIndiaAmy Elsner PROPOSAL
Morrow G NickaRussiaOnyama Limba QUALIFIED
Tony N ChuiUnited KingdomAmy Elsner UNQUALIFIED
Costa U RutaRussiaElwin Sharvill RENEWAL
Ivar U WhobreySpainStephen Shaw RENEWAL
Costa J MarrierCanadaIvan Magalhaes QUALIFIED
Stacey X MaletCanadaIvan Magalhaes PROPOSAL
Francesco S SlusarskiBrazilOnyama Limba NEW
Chavez I WieserCanadaXuxue Feng QUALIFIED
Mayumi S AmigonArgentinaIoni Bowcher RENEWAL
Mujtaba B GauchoRussiaAmy Elsner NEW
Izzy V RutaAustraliaXuxue Feng NEGOTIATION
Costa J SaylorsCanadaElwin Sharvill RENEWAL
Costa A MarrierSpainBernardo Dominic QUALIFIED
Aditya W GauchoArgentinaAmy Elsner PROPOSAL
Costa R KolmetzFranceXuxue Feng PROPOSAL
Greenwood K GarufiSpainXuxue Feng RENEWAL
Emily G SlusarskiItalyIvan Magalhaes UNQUALIFIED
Wickens Y OldroydCanadaAnna Fali NEW
Salvatore W ChuiIndiaAmy Elsner UNQUALIFIED
Isabel P RoysterArgentinaOnyama Limba NEW
Leja Z WieserBrazilOnyama Limba RENEWAL
Kaitlin J SergiIndiaIoni Bowcher UNQUALIFIED
Cody C ButtItalyAsiya Javayant QUALIFIED

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