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 I BriddickArgentinaStephen Shaw UNQUALIFIED
Jennifer P ShinkoGermanyAnna Fali UNQUALIFIED
Aditya K GlickJapanBernardo Dominic NEW
James T GillianArgentinaAnna Fali RENEWAL
Wickens Z RoysterJapanAsiya Javayant NEGOTIATION
Misaki R MarrierItalyAsiya Javayant NEGOTIATION
Chavez D BowleyFranceStephen Shaw UNQUALIFIED
Sinclair C IturbideCanadaIoni Bowcher QUALIFIED
Leja D AmigonIndiaOnyama Limba UNQUALIFIED
Salvatore Z MarrierRussiaXuxue Feng NEW
Ashley Q AlbaresRussiaAmy Elsner QUALIFIED
Ivar S GauchoArgentinaAnna Fali QUALIFIED
Cody M AmigonItalyIoni Bowcher QUALIFIED
Chavez X SaylorsGermanyAmy Elsner QUALIFIED
Leja R GlickCanadaBernardo Dominic PROPOSAL
Jeanfrancois A SchemmerSpainElwin Sharvill NEGOTIATION
Costa F SaylorsArgentinaAnna Fali NEGOTIATION
Emily A NickaUnited KingdomElwin Sharvill NEW
Jones U DoeSpainOnyama Limba RENEWAL
Costa G BologniaGermanyAnna Fali NEW
Kadeem T KuskoIndiaIoni Bowcher RENEWAL
Leja Z FollerJapanStephen Shaw NEGOTIATION
Izzy N WieserSpainXuxue Feng PROPOSAL
Maisha K MarrierSpainAnna Fali UNQUALIFIED
Kaitlin A SaylorsRussiaElwin Sharvill PROPOSAL
James H ShinkoJapanBernardo Dominic QUALIFIED
Julie O SergiArgentinaElwin Sharvill PROPOSAL
Costa C MorascaAustraliaOnyama Limba PROPOSAL
Smith G StockhamBrazilOnyama Limba RENEWAL
Greenwood W MaletItalyElwin Sharvill NEW
Leja S ShinkoSpainBernardo Dominic RENEWAL
Ricardo I PaprockiIndiaAsiya Javayant PROPOSAL
Mujtaba Z PerinAustraliaAmy Elsner NEW
Nicolas M BriddickUnited KingdomStephen Shaw PROPOSAL
Aditya X NickaRussiaElwin Sharvill NEW
Alejandro T TollnerUnited KingdomAsiya Javayant UNQUALIFIED
Chavez F DilliardIndiaXuxue Feng UNQUALIFIED
Jones I ChuiItalyBernardo Dominic NEW
Deepesh X AlbaresJapanOnyama Limba UNQUALIFIED
Mujtaba H FlosiRussiaBernardo Dominic RENEWAL
James D NestleAustraliaAmy Elsner NEGOTIATION
Juan O SergiCanadaBernardo Dominic RENEWAL
Octavia U AlbaresArgentinaIoni Bowcher QUALIFIED
Rodrigues S InouyeSpainElwin Sharvill NEW
Isabel O MaletCanadaXuxue Feng PROPOSAL
Arvin M ChuiSpainAnna Fali PROPOSAL
Deepesh C RulapaughRussiaAsiya Javayant RENEWAL
Julie N RimCanadaBernardo Dominic UNQUALIFIED
Leja K ChuiArgentinaBernardo Dominic RENEWAL
Sinclair Q BologniaRussiaBernardo Dominic UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Adams Y WieserAustraliaAnna Fali PROPOSAL
Jones I KolmetzFranceBernardo Dominic NEGOTIATION
Sinclair A PaprockiItalyBernardo Dominic UNQUALIFIED
Maisha K GillianUnited KingdomXuxue Feng RENEWAL
Greenwood J WaycottRussiaOnyama Limba PROPOSAL
Cody H SlusarskiBrazilBernardo Dominic NEGOTIATION
Chavez K RoysterRussiaElwin Sharvill UNQUALIFIED
Aika R KuskoItalyOnyama Limba QUALIFIED
Jefferson X CampainJapanBernardo Dominic UNQUALIFIED
Adams D PaprockiIndiaOnyama Limba NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Octavia F StockhamCanada2024-06-12Printing Dimensions PROPOSAL27Ivan Magalhaes
1001Faith X DarakjyBrazil2024-06-15Rousseaux, Michael Esq PROPOSAL85Onyama Limba
1002Leja J MaletArgentina2024-06-02Feiner Bros PROPOSAL59Onyama Limba
1003Isabel G RutaItaly2024-06-03Morlong Associates UNQUALIFIED1Xuxue Feng
1004Greenwood U RimIndia2024-06-19Feiner Bros PROPOSAL44Elwin Sharvill
1005Maria D RutaJapan2024-06-21Morlong Associates NEGOTIATION67Elwin Sharvill
1006Maria X RoysterSpain2024-06-24Commercial Press PROPOSAL77Onyama Limba
1007Smith V ButtCanada2024-05-26Commercial Press QUALIFIED87Onyama Limba
1008Chavez V ChuiJapan2024-06-08Benton, John B Jr QUALIFIED48Bernardo Dominic
1009Morrow D GlickSpain2024-05-30Feltz Printing Service NEW56Elwin Sharvill
1010Chavez V StockhamUnited Kingdom2024-06-06Chanay, Jeffrey A Esq QUALIFIED56Stephen Shaw
1011Morrow R SchemmerGermany2024-06-20Rousseaux, Michael Esq UNQUALIFIED96Asiya Javayant
1012Murillo S SlusarskiItaly2024-06-08Printing Dimensions RENEWAL97Anna Fali
1013Munro B RimItaly2024-06-06Dorl, James J Esq PROPOSAL36Stephen Shaw
1014Aruna H DarakjyCanada2024-06-12Rangoni Of Florence QUALIFIED26Ioni Bowcher
1015Misaki Z DoeIndia2024-06-04Feltz Printing Service QUALIFIED26Amy Elsner
1016Alejandro L StockhamSpain2024-06-23Chemel, James L Cpa QUALIFIED3Elwin Sharvill
1017Izzy N MarrierFrance2024-06-12Rousseaux, Michael Esq UNQUALIFIED82Anna Fali
1018Leja V AmigonAustralia2024-06-03Commercial Press PROPOSAL53Ivan Magalhaes
1019Izzy L SchemmerIndia2024-06-17Rangoni Of Florence NEGOTIATION9Anna Fali
1020Jefferson R PerinAustralia2024-05-28Feltz Printing Service RENEWAL47Ivan Magalhaes
1021Emily U CaudyItaly2024-06-20Chapman, Ross E Esq RENEWAL68Elwin Sharvill
1022Chavez F TollnerRussia2024-06-17Feiner Bros NEGOTIATION23Anna Fali
1023Ashley G AlbaresBrazil2024-06-08Commercial Press QUALIFIED60Elwin Sharvill
1024Johnson N BowleySpain2024-06-07Commercial Press NEGOTIATION15Ivan Magalhaes
1025Leja E SlusarskiJapan2024-05-26Chapman, Ross E Esq NEW50Bernardo Dominic
1026Aika J ButtCanada2024-06-07Rangoni Of Florence RENEWAL35Elwin Sharvill
1027Ivar J BriddickUnited Kingdom2024-06-11Chemel, James L Cpa PROPOSAL97Xuxue Feng
1028Claire A IturbideUnited Kingdom2024-06-14King, Christopher A Esq UNQUALIFIED80Stephen Shaw
1029Leja J KuskoAustralia2024-05-27Benton, John B Jr QUALIFIED86Ioni Bowcher
1030Leja R CaldareraGermany2024-06-10Commercial Press NEGOTIATION59Anna Fali
1031Claire W RutaSpain2024-06-23King, Christopher A Esq PROPOSAL58Xuxue Feng
1032James H PerinGermany2024-06-22Printing Dimensions UNQUALIFIED44Onyama Limba
1033Stacey B CaldareraFrance2024-06-16Feiner Bros NEW50Bernardo Dominic
1034Rodrigues D MarrierArgentina2024-06-13Commercial Press PROPOSAL36Asiya Javayant
1035Munro Q VocelkaJapan2024-05-27Morlong Associates NEW8Xuxue Feng
1036Darci R AlbaresRussia2024-06-07Buckley Miller Wright RENEWAL90Stephen Shaw
1037Ricardo L DoeItaly2024-05-31Morlong Associates QUALIFIED87Ivan Magalhaes
1038Johnson K InouyeItaly2024-05-27Chemel, James L Cpa RENEWAL77Anna Fali
1039Jefferson G CaudyCanada2024-05-28Rangoni Of Florence UNQUALIFIED66Bernardo Dominic
1040Costa P MaletUnited Kingdom2024-06-08Rangoni Of Florence NEW66Stephen Shaw
1041Izzy W GauchoRussia2024-06-01Chapman, Ross E Esq UNQUALIFIED28Ivan Magalhaes
1042Arvin U WhobreyFrance2024-06-16Rangoni Of Florence NEW98Xuxue Feng
1043Ashley U FerenczItaly2024-05-31Chanay, Jeffrey A Esq RENEWAL42Onyama Limba
1044Maria O SchemmerFrance2024-05-29Chemel, James L Cpa QUALIFIED86Onyama Limba
1045Sinclair D CampainRussia2024-06-17Chapman, Ross E Esq UNQUALIFIED15Onyama Limba
1046Cody C CampainCanada2024-06-22Truhlar And Truhlar Attys RENEWAL89Bernardo Dominic
1047Stacey G MaletAustralia2024-06-19Feiner Bros PROPOSAL1Xuxue Feng
1048Rodrigues F DoeFrance2024-06-03Truhlar And Truhlar Attys RENEWAL7Amy Elsner
1049Kadeem F GlickJapan2024-06-23Morlong Associates NEGOTIATION14Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Aruna J BologniaGermanyAnna Fali QUALIFIED
Nicolas D MorascaIndiaOnyama Limba NEW
Smith V MacleadFranceElwin Sharvill RENEWAL
Izzy C CaudyAustraliaXuxue Feng QUALIFIED
Julie M MacleadBrazilIoni Bowcher QUALIFIED
Rodrigues U CaldareraRussiaOnyama Limba UNQUALIFIED
Cody U SaylorsJapanBernardo Dominic NEGOTIATION
Isabel T RulapaughFranceIoni Bowcher UNQUALIFIED
Smith Y RimRussiaIoni Bowcher NEW
Julie I FigeroaJapanXuxue Feng NEW
Jefferson H AlbaresIndiaIoni Bowcher PROPOSAL
Alejandro M RulapaughSpainOnyama Limba NEGOTIATION
Nicolas H GillianItalyIvan Magalhaes NEGOTIATION
Kaitlin C GlickFranceBernardo Dominic NEGOTIATION
Costa H GillianCanadaIvan Magalhaes RENEWAL
Mayumi F GlickSpainStephen Shaw NEW
Aika W MacleadSpainAsiya Javayant UNQUALIFIED
Mujtaba S ShinkoIndiaXuxue Feng NEW
Greenwood C FigeroaUnited KingdomOnyama Limba NEW
Morrow M MacleadGermanyXuxue Feng QUALIFIED
Francesco Y PoquetteAustraliaElwin Sharvill QUALIFIED
Chavez D PerinSpainIoni Bowcher RENEWAL
Maria K InouyeSpainOnyama Limba RENEWAL
Jeanfrancois W BowleySpainBernardo Dominic PROPOSAL
Greenwood X CampainFranceElwin Sharvill QUALIFIED
Ivar V GillianCanadaIoni Bowcher RENEWAL
Juan T BologniaJapanStephen Shaw QUALIFIED
Julie T GillianIndiaIoni Bowcher RENEWAL
Silvio J WaycottAustraliaAsiya Javayant NEW
Jones Q SchemmerSpainAmy Elsner QUALIFIED
Alejandro O RulapaughRussiaAmy Elsner RENEWAL
Costa R GlickItalyIvan Magalhaes QUALIFIED
Murillo Q VocelkaArgentinaElwin Sharvill QUALIFIED
Faith N SlusarskiCanadaAmy Elsner NEW
Kaitlin J CampainCanadaAmy Elsner NEW
Greenwood N ShinkoRussiaStephen Shaw QUALIFIED
Ivar Z AlbaresCanadaBernardo Dominic RENEWAL
Nicolas B SergiGermanyAmy Elsner UNQUALIFIED
Aditya N NestleCanadaBernardo Dominic PROPOSAL
Costa H KuskoUnited KingdomAnna Fali UNQUALIFIED
Isabel B WieserRussiaIvan Magalhaes UNQUALIFIED
Maria T PerinItalyIoni Bowcher PROPOSAL
Maria X PerinArgentinaIoni Bowcher QUALIFIED
Greenwood N ShinkoAustraliaElwin Sharvill PROPOSAL
Stacey R BriddickArgentinaAmy Elsner NEW
Octavia C MarrierArgentinaIvan Magalhaes NEW
Aruna D NestleRussiaBernardo Dominic NEW
Julie P MacleadAustraliaIoni Bowcher PROPOSAL
Jefferson S SergiBrazilIvan Magalhaes PROPOSAL
Jones I RulapaughSpainIvan Magalhaes QUALIFIED
Frozen Columns
Name
Mayumi L Slusarski
Wickens R Amigon
Claire K Tollner
Leon P Oldroyd
Mujtaba X Stenseth
Aika Z Bolognia
Jeanfrancois J Gaucho
Clifford P Flosi
Emily U Perin
Jefferson O Doe
Munro J Tollner
Tony T Poquette
Ashley A Slusarski
David S Iturbide
Silvio U Vocelka
Ivar A Sergi
Ricardo V Saylors
Salvatore D Garufi
Leja O Gaucho
Adams G Morasca
Octavia Z Ruta
Julie N Gillian
Morrow H Stenseth
Morrow V Oldroyd
Arvin Y Chui
Ivar Q Figeroa
Tony R Briddick
Ricardo H Marrier
Jennifer T Inouye
Mujtaba S Figeroa
Arvin F Foller
Wickens L Foller
Silvio F Waycott
Clifford E Gillian
Emily R Tollner
Octavia B Nicka
Leon Y Stockham
Salvatore J Royster
Faith T Caldarera
Izzy V Schemmer
Wickens T Inouye
Costa D Ruta
Francesco A Ruta
Jones Z Foller
Adams S Nestle
Maisha M Nicka
Aika E Inouye
Izzy Y Venere
Emily D Darakjy
Ashley K Malet
IdCountryDate
1000Canada2024-06-13
1001Canada2024-06-20
1002Argentina2024-05-27
1003Russia2024-06-02
1004Brazil2024-06-10
1005Germany2024-06-23
1006France2024-06-14
1007India2024-06-22
1008Germany2024-06-19
1009Spain2024-06-06
1010Japan2024-06-19
1011Russia2024-06-01
1012United Kingdom2024-05-28
1013Brazil2024-06-11
1014Japan2024-06-21
1015Germany2024-06-21
1016Brazil2024-05-26
1017India2024-06-07
1018India2024-06-02
1019Russia2024-06-06
1020Japan2024-06-07
1021United Kingdom2024-06-15
1022Spain2024-06-04
1023Japan2024-06-15
1024Germany2024-05-30
1025Germany2024-06-02
1026Brazil2024-06-13
1027Canada2024-06-09
1028India2024-06-07
1029Argentina2024-05-27
1030Italy2024-06-20
1031India2024-06-23
1032France2024-06-16
1033Brazil2024-06-07
1034United Kingdom2024-06-04
1035Japan2024-06-02
1036Argentina2024-06-18
1037India2024-06-13
1038France2024-06-06
1039Germany2024-06-04
1040Italy2024-06-12
1041India2024-05-27
1042Italy2024-05-29
1043Argentina2024-06-04
1044France2024-06-16
1045Italy2024-06-07
1046India2024-06-24
1047Russia2024-06-14
1048Canada2024-06-08
1049Australia2024-06-01

On-Demand Data

NameIdCountryDate
Silvio U Campain1000Japan2024-05-30
Darci E Slusarski1001Russia2024-06-01
Ashley S Slusarski1002Germany2024-05-29
Adams H Amigon1003France2024-06-12
Aruna E Wieser1004United Kingdom2024-06-08
Greenwood M Glick1005Spain2024-05-31
Wickens V Rulapaugh1006Brazil2024-05-27
Arvin Y Saylors1007Germany2024-06-12
Julie I Malet1008Germany2024-06-13
Leja T Albares1009Argentina2024-06-18
Ashley X Briddick1010Canada2024-06-20
Adams A Nestle1011Japan2024-06-14
Rodrigues J Wieser1012India2024-05-29
Chavez H Morasca1013Japan2024-06-04
Leon D Wieser1014Germany2024-05-31
Leon V Stenseth1015Brazil2024-06-21
Ashley O Campain1016India2024-06-23
Wickens I Malet1017Brazil2024-05-29
Deepesh H Rulapaugh1018India2024-06-09
Tony C Malet1019India2024-06-08
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Kadeem H RoysterArgentinaIoni Bowcher NEW
Greenwood U WaycottFranceAmy Elsner QUALIFIED
Aruna W FerenczUnited KingdomXuxue Feng UNQUALIFIED
Juan Q GlickFranceAsiya Javayant PROPOSAL
Aruna O InouyeItalyOnyama Limba RENEWAL
Aika R WieserItalyIoni Bowcher QUALIFIED
Sinclair D ShinkoAustraliaAsiya Javayant NEW
Misaki V GlickFranceOnyama Limba PROPOSAL
Octavia D BologniaJapanBernardo Dominic UNQUALIFIED
Ashley D FollerBrazilElwin Sharvill NEGOTIATION
Jones L WaycottIndiaXuxue Feng QUALIFIED
Arvin I OstroskyGermanyIvan Magalhaes QUALIFIED
Aditya N MacleadGermanyAnna Fali UNQUALIFIED
Julie U OstroskyFranceElwin Sharvill UNQUALIFIED
Clifford G AlbaresBrazilAnna Fali NEW
Jones X VocelkaFranceAsiya Javayant PROPOSAL
Sinclair G CaudyItalyXuxue Feng QUALIFIED
Jennifer D DoeUnited KingdomAsiya Javayant NEGOTIATION
Tony L MaletGermanyAsiya Javayant QUALIFIED
Stacey U SaylorsAustraliaXuxue Feng UNQUALIFIED
Murillo G StockhamUnited KingdomBernardo Dominic RENEWAL
Salvatore X AlbaresSpainIoni Bowcher PROPOSAL
Cody H FerenczArgentinaStephen Shaw NEGOTIATION
Antonio P GauchoAustraliaOnyama Limba NEGOTIATION
Jones Z PerinArgentinaStephen Shaw NEW
James J FerenczCanadaIoni Bowcher NEW
Mayumi I SaylorsSpainXuxue Feng RENEWAL
Sinclair T KolmetzCanadaStephen Shaw PROPOSAL
Aika I GillianGermanyBernardo Dominic RENEWAL
Rodrigues I AmigonAustraliaBernardo Dominic QUALIFIED
Emily O DarakjySpainElwin Sharvill PROPOSAL
Ivar Q TollnerRussiaIvan Magalhaes NEW
Arvin F WieserBrazilStephen Shaw QUALIFIED
Alejandro D NickaCanadaAnna Fali NEGOTIATION
Sinclair J GillianBrazilAmy Elsner UNQUALIFIED
Claire A IturbideUnited KingdomAnna Fali UNQUALIFIED
Munro Y ButtUnited KingdomBernardo Dominic UNQUALIFIED
Jeanfrancois S KolmetzFranceBernardo Dominic NEW
Tony U GauchoFranceXuxue Feng NEGOTIATION
Alejandro L WieserJapanXuxue Feng NEGOTIATION

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