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
Jones O OstroskyArgentinaOnyama Limba RENEWAL
Arvin T WhobreyJapanAnna Fali NEW
Chavez E CaudyItalyAmy Elsner QUALIFIED
Jennifer N TollnerUnited KingdomElwin Sharvill NEGOTIATION
Misaki W BologniaItalyStephen Shaw PROPOSAL
Clifford K VocelkaUnited KingdomXuxue Feng QUALIFIED
James P CaudySpainIvan Magalhaes NEW
Jefferson H WaycottUnited KingdomElwin Sharvill UNQUALIFIED
Jones N StensethJapanBernardo Dominic QUALIFIED
Julie B IturbideArgentinaBernardo Dominic NEGOTIATION
Jeanfrancois B PerinFranceBernardo Dominic NEW
Greenwood J DarakjySpainElwin Sharvill NEGOTIATION
Jones C GlickBrazilIoni Bowcher QUALIFIED
Rodrigues X DoeBrazilXuxue Feng PROPOSAL
Arvin W DoeGermanyAnna Fali QUALIFIED
Mayumi K DoeGermanyAnna Fali NEW
Morrow D DilliardArgentinaElwin Sharvill NEW
Kadeem K CampainJapanIoni Bowcher NEW
Morrow M CaldareraAustraliaStephen Shaw QUALIFIED
Maisha Z FerenczUnited KingdomStephen Shaw QUALIFIED
Munro K OstroskyCanadaAnna Fali QUALIFIED
Stacey D CampainArgentinaOnyama Limba QUALIFIED
Misaki E AlbaresAustraliaIvan Magalhaes QUALIFIED
Murillo Z ButtCanadaAsiya Javayant NEW
Izzy I CampainBrazilXuxue Feng RENEWAL
Darci E MarrierCanadaAnna Fali RENEWAL
Greenwood Q StockhamArgentinaAmy Elsner RENEWAL
Maisha H KolmetzArgentinaStephen Shaw NEW
Ivar B VenereIndiaIoni Bowcher QUALIFIED
Johnson X RulapaughCanadaAmy Elsner NEGOTIATION
Jennifer A WhobreyAustraliaOnyama Limba PROPOSAL
Chavez Q OldroydUnited KingdomOnyama Limba NEGOTIATION
Izzy V CaudyRussiaAnna Fali UNQUALIFIED
Aditya V KuskoFranceAmy Elsner RENEWAL
Clifford Z MaletItalyIoni Bowcher QUALIFIED
Stacey I BriddickCanadaAnna Fali PROPOSAL
Wickens W DoeSpainAsiya Javayant UNQUALIFIED
Wickens N StensethJapanBernardo Dominic NEW
Alejandro W SchemmerGermanyBernardo Dominic RENEWAL
Jefferson O BriddickFranceAnna Fali NEW
Wickens S DarakjyRussiaAsiya Javayant NEW
Isabel L ChuiRussiaElwin Sharvill QUALIFIED
Octavia E SchemmerUnited KingdomIoni Bowcher UNQUALIFIED
Stacey E DoeRussiaIvan Magalhaes PROPOSAL
Francesco E StockhamItalyStephen Shaw RENEWAL
Francesco O KolmetzUnited KingdomStephen Shaw NEGOTIATION
Arvin P BowleyCanadaAmy Elsner NEW
Murillo X RulapaughBrazilXuxue Feng NEGOTIATION
Ashley D MorascaJapanElwin Sharvill RENEWAL
Faith J FollerSpainBernardo Dominic NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Rodrigues Q AlbaresSpainStephen Shaw UNQUALIFIED
Izzy O BowleyBrazilIvan Magalhaes NEGOTIATION
Maria H RutaArgentinaAsiya Javayant NEW
Clifford V WhobreyItalyStephen Shaw QUALIFIED
Morrow K WieserJapanOnyama Limba PROPOSAL
Tony R MaletSpainStephen Shaw QUALIFIED
Stacey Z StockhamSpainXuxue Feng RENEWAL
Murillo C WieserAustraliaOnyama Limba NEW
Octavia S DarakjyRussiaAnna Fali PROPOSAL
Juan L BologniaArgentinaOnyama Limba NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jones M ShinkoFrance2025-04-25Printing Dimensions RENEWAL95Amy Elsner
1001Darci O RoysterRussia2025-04-06Feiner Bros QUALIFIED71Onyama Limba
1002Johnson R SchemmerBrazil2025-04-12Buckley Miller Wright NEW67Elwin Sharvill
1003Costa B ButtRussia2025-04-22Feiner Bros NEGOTIATION13Bernardo Dominic
1004Sinclair C AlbaresUnited Kingdom2025-04-13Chanay, Jeffrey A Esq NEGOTIATION69Asiya Javayant
1005Stacey H TollnerFrance2025-04-19Morlong Associates NEW20Onyama Limba
1006Salvatore H FerenczItaly2025-04-19Truhlar And Truhlar Attys NEGOTIATION86Xuxue Feng
1007Wickens T FigeroaCanada2025-04-30Commercial Press QUALIFIED52Amy Elsner
1008Salvatore A WieserItaly2025-04-16Benton, John B Jr NEW53Ivan Magalhaes
1009Aika V GlickGermany2025-04-09Chapman, Ross E Esq NEGOTIATION25Bernardo Dominic
1010Jones H AlbaresItaly2025-04-20King, Christopher A Esq QUALIFIED40Amy Elsner
1011Ricardo F WaycottBrazil2025-04-08Commercial Press RENEWAL16Elwin Sharvill
1012David B FlosiGermany2025-04-26Feiner Bros QUALIFIED38Onyama Limba
1013Juan J StensethSpain2025-04-26Printing Dimensions QUALIFIED51Amy Elsner
1014Silvio X SergiIndia2025-04-17King, Christopher A Esq PROPOSAL0Anna Fali
1015Alejandro L CaldareraItaly2025-04-25King, Christopher A Esq RENEWAL83Onyama Limba
1016Leon S MaletItaly2025-04-25Rousseaux, Michael Esq RENEWAL49Ivan Magalhaes
1017Octavia S ChuiIndia2025-04-08Truhlar And Truhlar Attys PROPOSAL81Bernardo Dominic
1018Jennifer R CaldareraUnited Kingdom2025-04-11Feiner Bros RENEWAL54Ivan Magalhaes
1019Julie L GauchoJapan2025-04-24Buckley Miller Wright RENEWAL38Stephen Shaw
1020Octavia N PaprockiRussia2025-04-18Chanay, Jeffrey A Esq RENEWAL64Ivan Magalhaes
1021Sinclair S SlusarskiRussia2025-04-25Commercial Press PROPOSAL81Amy Elsner
1022Salvatore F GarufiArgentina2025-04-16Commercial Press NEW65Ioni Bowcher
1023Kaitlin J PerinSpain2025-04-06Feltz Printing Service NEGOTIATION93Elwin Sharvill
1024Maria R SaylorsGermany2025-04-23Benton, John B Jr UNQUALIFIED34Elwin Sharvill
1025James G WhobreySpain2025-04-15Rangoni Of Florence NEW72Ivan Magalhaes
1026Sinclair Q SergiArgentina2025-04-05Dorl, James J Esq QUALIFIED76Amy Elsner
1027Stacey M WieserJapan2025-04-10Feiner Bros PROPOSAL54Xuxue Feng
1028Francesco B DoeAustralia2025-04-25Morlong Associates UNQUALIFIED30Asiya Javayant
1029Kadeem I StockhamRussia2025-04-21Chanay, Jeffrey A Esq NEGOTIATION57Ivan Magalhaes
1030Leon P InouyeGermany2025-04-19Morlong Associates NEW47Ivan Magalhaes
1031Johnson N ShinkoSpain2025-04-21Chemel, James L Cpa UNQUALIFIED82Bernardo Dominic
1032Maisha K GillianCanada2025-04-30Benton, John B Jr RENEWAL64Anna Fali
1033Murillo E SchemmerSpain2025-04-26Morlong Associates QUALIFIED69Ivan Magalhaes
1034Silvio H CaudyIndia2025-04-20Chanay, Jeffrey A Esq PROPOSAL47Ivan Magalhaes
1035Wickens C WaycottJapan2025-04-29Printing Dimensions PROPOSAL56Elwin Sharvill
1036Ricardo Y GauchoJapan2025-04-07Truhlar And Truhlar Attys RENEWAL58Onyama Limba
1037Octavia T VenereItaly2025-04-10Rousseaux, Michael Esq UNQUALIFIED51Elwin Sharvill
1038Emily C VenereItaly2025-04-23Buckley Miller Wright PROPOSAL35Anna Fali
1039Leon V OstroskyFrance2025-04-25Chanay, Jeffrey A Esq PROPOSAL31Bernardo Dominic
1040Octavia X MaletBrazil2025-04-01Dorl, James J Esq UNQUALIFIED46Xuxue Feng
1041Alejandro A RimSpain2025-04-21Benton, John B Jr RENEWAL4Bernardo Dominic
1042Cody U FlosiRussia2025-04-08Rangoni Of Florence RENEWAL73Anna Fali
1043Arvin J MaletItaly2025-04-01Buckley Miller Wright NEW40Ivan Magalhaes
1044Nicolas A VocelkaUnited Kingdom2025-04-14King, Christopher A Esq NEW52Xuxue Feng
1045Arvin K SaylorsJapan2025-04-07Rangoni Of Florence RENEWAL7Elwin Sharvill
1046Rodrigues A TollnerAustralia2025-04-04Rangoni Of Florence PROPOSAL55Amy Elsner
1047Jeanfrancois X CaldareraCanada2025-04-10Dorl, James J Esq NEW64Ioni Bowcher
1048Smith I StockhamGermany2025-04-21Rousseaux, Michael Esq QUALIFIED44Anna Fali
1049Julie E CampainSpain2025-04-07Chemel, James L Cpa NEGOTIATION41Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Aika U TollnerUnited KingdomStephen Shaw QUALIFIED
Munro N NestleAustraliaIvan Magalhaes NEGOTIATION
Deepesh Q GillianSpainXuxue Feng QUALIFIED
Kaitlin V NestleSpainElwin Sharvill RENEWAL
Claire R GillianGermanyAmy Elsner PROPOSAL
Tony P StockhamUnited KingdomAmy Elsner NEGOTIATION
Arvin B GarufiSpainOnyama Limba QUALIFIED
Julie N RutaItalyIvan Magalhaes NEGOTIATION
Aika G TollnerRussiaAsiya Javayant UNQUALIFIED
Mayumi D PoquetteRussiaBernardo Dominic NEGOTIATION
Chavez M ShinkoSpainIoni Bowcher NEGOTIATION
James N OstroskyIndiaXuxue Feng PROPOSAL
Juan P GarufiUnited KingdomAsiya Javayant NEGOTIATION
Ricardo L SergiFranceBernardo Dominic RENEWAL
Rodrigues L InouyeJapanElwin Sharvill NEW
Stacey Y TollnerSpainIvan Magalhaes UNQUALIFIED
Greenwood F PaprockiRussiaBernardo Dominic NEW
Ashley F BologniaSpainAmy Elsner QUALIFIED
Adams Q MaletAustraliaAnna Fali RENEWAL
Ivar I RimCanadaBernardo Dominic NEGOTIATION
Leon K RimSpainAsiya Javayant RENEWAL
Claire H PaprockiCanadaAnna Fali NEW
Smith W ChuiItalyAnna Fali NEW
Cody N NestleUnited KingdomElwin Sharvill QUALIFIED
Silvio U NestleGermanyElwin Sharvill NEW
Leja L WhobreyRussiaAmy Elsner PROPOSAL
Misaki E MorascaGermanyStephen Shaw RENEWAL
Antonio Q PaprockiCanadaXuxue Feng QUALIFIED
Kaitlin T SlusarskiItalyIvan Magalhaes NEGOTIATION
Octavia E RulapaughGermanyBernardo Dominic NEW
Darci D StockhamArgentinaIvan Magalhaes NEW
Mayumi L BologniaArgentinaXuxue Feng PROPOSAL
Claire C BriddickUnited KingdomStephen Shaw UNQUALIFIED
Juan G PaprockiSpainBernardo Dominic NEGOTIATION
Aditya H InouyeBrazilIvan Magalhaes RENEWAL
Francesco M FerenczJapanAsiya Javayant RENEWAL
Costa R OstroskyIndiaAmy Elsner QUALIFIED
Isabel T MaletFranceOnyama Limba RENEWAL
Juan X BowleySpainXuxue Feng NEW
Antonio B WaycottRussiaIoni Bowcher PROPOSAL
Jones Y StockhamCanadaAmy Elsner NEW
Darci B MaletFranceBernardo Dominic UNQUALIFIED
Wickens L BologniaArgentinaAmy Elsner NEW
Greenwood O WaycottItalyElwin Sharvill RENEWAL
Leja A OldroydIndiaXuxue Feng PROPOSAL
Costa R DarakjySpainXuxue Feng QUALIFIED
Smith Q FlosiBrazilIvan Magalhaes NEW
Emily K WaycottUnited KingdomElwin Sharvill RENEWAL
Maisha J WaycottUnited KingdomAsiya Javayant NEGOTIATION
Salvatore V CaudySpainAmy Elsner QUALIFIED
Frozen Columns
Name
Antonio X Ruta
Morrow R Morasca
Greenwood D Dilliard
Aditya W Bolognia
David G Stenseth
Leon C Nestle
Salvatore M Vocelka
Aditya B Ruta
Jones I Stockham
Ivar M Slusarski
Silvio V Caudy
Ivar G Royster
Adams V Kolmetz
Cody F Gillian
Aruna A Paprocki
Deepesh Q Marrier
Rodrigues H Kusko
Mujtaba D Gaucho
Wickens O Kolmetz
Ivar V Doe
Antonio H Caudy
Jeanfrancois G Nicka
Arvin H Foller
Aruna E Rim
Kaitlin W Perin
Kadeem N Slusarski
Aruna T Morasca
Sinclair L Maclead
Munro S Amigon
Morrow P Maclead
Jones H Poquette
David K Campain
Claire L Ostrosky
Arvin M Schemmer
Deepesh L Kusko
Aruna K Amigon
Tony E Campain
Maisha V Morasca
Jennifer L Vocelka
Maisha I Saylors
Clifford L Albares
Clifford L Oldroyd
Maisha H Slusarski
Sinclair Y Gaucho
Izzy W Bowley
Stacey K Albares
Misaki G Poquette
James E Kolmetz
David F Royster
Juan D Albares
IdCountryDate
1000Canada2025-04-14
1001United Kingdom2025-04-16
1002Russia2025-04-17
1003France2025-04-18
1004India2025-04-20
1005Canada2025-04-25
1006Japan2025-04-12
1007Germany2025-04-10
1008Japan2025-04-06
1009Germany2025-04-08
1010India2025-04-01
1011Argentina2025-04-02
1012Japan2025-04-27
1013Spain2025-04-23
1014Italy2025-04-02
1015Brazil2025-04-25
1016Italy2025-04-29
1017India2025-04-08
1018United Kingdom2025-04-10
1019Australia2025-04-16
1020France2025-04-21
1021United Kingdom2025-04-05
1022Russia2025-04-23
1023Russia2025-04-03
1024Japan2025-04-17
1025Germany2025-04-02
1026Japan2025-04-25
1027Russia2025-04-11
1028Germany2025-04-04
1029Brazil2025-04-23
1030France2025-04-02
1031France2025-04-08
1032Japan2025-04-13
1033Russia2025-04-20
1034Australia2025-04-25
1035France2025-04-21
1036Spain2025-04-10
1037Italy2025-04-07
1038Russia2025-04-03
1039Italy2025-04-02
1040Australia2025-04-28
1041Australia2025-04-20
1042Italy2025-04-01
1043Argentina2025-04-27
1044Argentina2025-04-06
1045Australia2025-04-08
1046Argentina2025-04-29
1047India2025-04-24
1048Spain2025-04-06
1049Japan2025-04-25

On-Demand Data

NameIdCountryDate
Silvio L Flosi1000Italy2025-04-19
Munro A Schemmer1001United Kingdom2025-04-29
Darci X Albares1002Japan2025-04-29
Smith Z Whobrey1003Spain2025-04-02
Isabel L Wieser1004Argentina2025-04-16
Darci J Ferencz1005Italy2025-04-19
Alejandro T Oldroyd1006Argentina2025-04-28
Morrow D Ostrosky1007Brazil2025-04-24
Morrow A Waycott1008France2025-04-02
Francesco N Garufi1009Japan2025-04-17
Mujtaba T Amigon1010Australia2025-04-29
Juan V Amigon1011Russia2025-04-29
Chavez Z Slusarski1012Argentina2025-04-11
Kadeem X Morasca1013Canada2025-04-04
Jeanfrancois L Amigon1014Germany2025-04-16
Leon R Shinko1015Australia2025-04-28
Kadeem Z Nicka1016Russia2025-04-18
Jeanfrancois C Flosi1017Italy2025-04-10
Ricardo W Caldarera1018Russia2025-04-28
Antonio E Sergi1019Germany2025-04-03
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Claire I InouyeUnited KingdomStephen Shaw UNQUALIFIED
Murillo V DilliardArgentinaOnyama Limba QUALIFIED
Mujtaba O SlusarskiItalyAmy Elsner RENEWAL
Jefferson F GlickUnited KingdomStephen Shaw RENEWAL
Julie N TollnerCanadaOnyama Limba NEW
Antonio A MaletAustraliaAnna Fali QUALIFIED
Ivar K StensethBrazilIvan Magalhaes NEW
Smith T SaylorsAustraliaIvan Magalhaes PROPOSAL
Francesco V NestleCanadaOnyama Limba QUALIFIED
Emily P SergiFranceBernardo Dominic UNQUALIFIED
Silvio I CaldareraUnited KingdomElwin Sharvill UNQUALIFIED
James V DilliardJapanAsiya Javayant QUALIFIED
Jones Q FigeroaUnited KingdomOnyama Limba UNQUALIFIED
Morrow K IturbideUnited KingdomAnna Fali RENEWAL
Jennifer R VenereItalyBernardo Dominic NEW
Jefferson U WieserItalyIvan Magalhaes NEW
Smith P WieserAustraliaElwin Sharvill RENEWAL
Clifford S RutaIndiaElwin Sharvill PROPOSAL
Emily O AmigonRussiaAnna Fali NEW
Costa V RoysterJapanIvan Magalhaes NEGOTIATION
Adams A MaletGermanyAnna Fali NEW
Aruna C DoeSpainAmy Elsner NEW
Cody C WhobreyUnited KingdomElwin Sharvill RENEWAL
Nicolas T IturbideGermanyAmy Elsner PROPOSAL
Jeanfrancois R IturbideGermanyOnyama Limba RENEWAL
Aruna J GauchoRussiaIvan Magalhaes NEW
Ivar O InouyeBrazilElwin Sharvill PROPOSAL
Mayumi G PaprockiRussiaOnyama Limba UNQUALIFIED
Jennifer U GauchoCanadaIvan Magalhaes QUALIFIED
Leon B ButtItalyIoni Bowcher QUALIFIED
Chavez Q SaylorsFranceAmy Elsner UNQUALIFIED
Jennifer K RimGermanyAnna Fali NEW
Kaitlin D SchemmerJapanElwin Sharvill QUALIFIED
Rodrigues V PerinCanadaXuxue Feng QUALIFIED
Jefferson U FlosiIndiaIvan Magalhaes UNQUALIFIED
Kadeem E BologniaBrazilElwin Sharvill RENEWAL
Sinclair H NickaCanadaElwin Sharvill QUALIFIED
Maisha C StensethBrazilOnyama Limba NEW
Chavez D FlosiFranceBernardo Dominic PROPOSAL
Rodrigues H VocelkaGermanyAsiya Javayant NEW

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