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
Deepesh N FigeroaJapanIvan Magalhaes QUALIFIED
Jones V TollnerGermanyIoni Bowcher NEGOTIATION
Tony A KuskoSpainXuxue Feng PROPOSAL
Ivar M RimGermanyIoni Bowcher PROPOSAL
Murillo U DoeSpainAsiya Javayant QUALIFIED
Faith R ButtAustraliaAnna Fali PROPOSAL
David A FigeroaIndiaAnna Fali NEGOTIATION
Kaitlin N ChuiSpainBernardo Dominic NEW
Julie L InouyeArgentinaAnna Fali RENEWAL
Faith E BologniaArgentinaIvan Magalhaes UNQUALIFIED
David O SlusarskiBrazilAnna Fali NEGOTIATION
Morrow Y GlickCanadaIvan Magalhaes PROPOSAL
Emily X VenereRussiaIvan Magalhaes RENEWAL
Mayumi W PerinItalyElwin Sharvill UNQUALIFIED
Jennifer O WaycottIndiaOnyama Limba RENEWAL
Aruna U GillianArgentinaElwin Sharvill RENEWAL
Francesco C SlusarskiArgentinaXuxue Feng UNQUALIFIED
David U OldroydAustraliaOnyama Limba NEGOTIATION
Leon R FlosiCanadaBernardo Dominic RENEWAL
Juan H PoquetteUnited KingdomXuxue Feng UNQUALIFIED
Murillo J DarakjyArgentinaAsiya Javayant QUALIFIED
Aditya D NestleGermanyIvan Magalhaes PROPOSAL
Francesco R StensethRussiaBernardo Dominic QUALIFIED
Stacey R SergiIndiaAsiya Javayant RENEWAL
Murillo F FollerArgentinaIvan Magalhaes UNQUALIFIED
Chavez X RoysterIndiaOnyama Limba UNQUALIFIED
Wickens B AmigonFranceOnyama Limba QUALIFIED
Leja B RulapaughItalyStephen Shaw NEGOTIATION
Mayumi C SergiJapanXuxue Feng RENEWAL
Morrow T CaudyCanadaBernardo Dominic NEW
Deepesh T SchemmerIndiaXuxue Feng UNQUALIFIED
Antonio N GauchoItalyElwin Sharvill UNQUALIFIED
Alejandro T ButtGermanyAmy Elsner QUALIFIED
Murillo K DilliardGermanyAsiya Javayant UNQUALIFIED
Tony B CampainSpainXuxue Feng QUALIFIED
Chavez I KolmetzGermanyOnyama Limba QUALIFIED
Darci O DoeItalyAnna Fali NEW
Deepesh I KuskoFranceOnyama Limba UNQUALIFIED
Cody C TollnerItalyAmy Elsner PROPOSAL
Ashley S StensethFranceIoni Bowcher RENEWAL
Salvatore X MaletSpainAsiya Javayant NEW
Jennifer Y MaletRussiaElwin Sharvill NEW
Greenwood J CaudySpainStephen Shaw UNQUALIFIED
Clifford J VocelkaIndiaOnyama Limba QUALIFIED
Greenwood P AlbaresBrazilAsiya Javayant UNQUALIFIED
James P ShinkoSpainIoni Bowcher NEGOTIATION
Morrow L BowleyBrazilIoni Bowcher PROPOSAL
David I NickaAustraliaAnna Fali NEW
Maria B GauchoArgentinaAnna Fali PROPOSAL
Deepesh I MorascaJapanAsiya Javayant NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
James X KolmetzCanadaAnna Fali NEGOTIATION
Octavia I FerenczIndiaIoni Bowcher PROPOSAL
Smith U MacleadFranceOnyama Limba UNQUALIFIED
Greenwood S FerenczSpainAnna Fali PROPOSAL
Mayumi N WaycottArgentinaOnyama Limba NEW
Julie I RoysterAustraliaIoni Bowcher NEGOTIATION
Leja Y SchemmerGermanyAmy Elsner RENEWAL
Munro M DoeAustraliaOnyama Limba NEGOTIATION
Arvin J WieserGermanyElwin Sharvill RENEWAL
Ivar G RimFranceIoni Bowcher PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Smith T StensethJapan2024-06-22Chemel, James L Cpa NEGOTIATION47Onyama Limba
1001Ricardo S DarakjyBrazil2024-06-09Feiner Bros RENEWAL45Stephen Shaw
1002Arvin R NestleCanada2024-06-02Feltz Printing Service QUALIFIED55Xuxue Feng
1003Aditya X VenereRussia2024-06-20King, Christopher A Esq NEW96Elwin Sharvill
1004Octavia D OldroydJapan2024-06-07Chemel, James L Cpa NEW55Ivan Magalhaes
1005Antonio E ShinkoUnited Kingdom2024-05-27Rousseaux, Michael Esq QUALIFIED9Ivan Magalhaes
1006Jeanfrancois O BowleyArgentina2024-06-02King, Christopher A Esq PROPOSAL39Bernardo Dominic
1007Smith I AlbaresJapan2024-05-31Benton, John B Jr NEGOTIATION71Amy Elsner
1008Antonio Q GarufiIndia2024-06-23Dorl, James J Esq UNQUALIFIED67Onyama Limba
1009Kadeem D RimGermany2024-06-12Buckley Miller Wright UNQUALIFIED71Xuxue Feng
1010Francesco H PaprockiJapan2024-05-31Chemel, James L Cpa NEGOTIATION41Asiya Javayant
1011Claire Z AlbaresItaly2024-06-18Feltz Printing Service RENEWAL37Anna Fali
1012Wickens D RutaIndia2024-05-27Feiner Bros NEGOTIATION94Anna Fali
1013Rodrigues I CampainArgentina2024-06-20Feltz Printing Service NEW9Xuxue Feng
1014Clifford E ShinkoIndia2024-06-08Feiner Bros QUALIFIED98Onyama Limba
1015Faith G OldroydArgentina2024-06-23Rousseaux, Michael Esq NEGOTIATION21Amy Elsner
1016Alejandro N GillianRussia2024-06-23King, Christopher A Esq RENEWAL6Anna Fali
1017Cody P PoquetteIndia2024-06-22Commercial Press QUALIFIED23Elwin Sharvill
1018Kadeem N GillianBrazil2024-06-14Rousseaux, Michael Esq NEW69Stephen Shaw
1019Kaitlin M CampainFrance2024-06-05Rousseaux, Michael Esq NEW12Ioni Bowcher
1020Deepesh Y CaldareraArgentina2024-05-29Rangoni Of Florence PROPOSAL25Ivan Magalhaes
1021Costa I SchemmerArgentina2024-06-12Rousseaux, Michael Esq PROPOSAL32Ioni Bowcher
1022Murillo S StockhamBrazil2024-06-15Feiner Bros NEGOTIATION35Onyama Limba
1023Leja L RoysterFrance2024-06-15Buckley Miller Wright PROPOSAL25Ivan Magalhaes
1024Alejandro G MaletArgentina2024-06-08Chapman, Ross E Esq NEGOTIATION13Stephen Shaw
1025Faith R FollerIndia2024-05-26King, Christopher A Esq NEGOTIATION3Ivan Magalhaes
1026Salvatore L BologniaFrance2024-06-12Rousseaux, Michael Esq RENEWAL58Bernardo Dominic
1027Misaki N BologniaIndia2024-06-16Chanay, Jeffrey A Esq RENEWAL27Stephen Shaw
1028Stacey K PoquetteUnited Kingdom2024-05-29Chapman, Ross E Esq QUALIFIED90Bernardo Dominic
1029Juan S DarakjyJapan2024-06-10Dorl, James J Esq NEGOTIATION6Asiya Javayant
1030Aruna O StockhamIndia2024-06-13Rangoni Of Florence QUALIFIED18Elwin Sharvill
1031Ricardo T FerenczUnited Kingdom2024-05-29Buckley Miller Wright PROPOSAL96Xuxue Feng
1032Greenwood N PoquetteCanada2024-06-02Rangoni Of Florence UNQUALIFIED31Bernardo Dominic
1033Jeanfrancois Q ShinkoFrance2024-06-18Chemel, James L Cpa UNQUALIFIED74Asiya Javayant
1034Arvin Q BowleyItaly2024-05-29Printing Dimensions NEGOTIATION4Ivan Magalhaes
1035Izzy Y KolmetzRussia2024-06-20Chemel, James L Cpa NEW34Ivan Magalhaes
1036Deepesh F FlosiSpain2024-06-15Rangoni Of Florence NEGOTIATION35Ioni Bowcher
1037Ashley Y MarrierJapan2024-06-18Rangoni Of Florence NEW57Xuxue Feng
1038Johnson W CampainSpain2024-06-21Morlong Associates PROPOSAL76Elwin Sharvill
1039Julie S RulapaughGermany2024-06-19Chanay, Jeffrey A Esq UNQUALIFIED51Amy Elsner
1040Greenwood Z KolmetzArgentina2024-06-19Morlong Associates QUALIFIED56Ivan Magalhaes
1041Munro D NestleRussia2024-06-09Rousseaux, Michael Esq RENEWAL98Asiya Javayant
1042Tony X GlickSpain2024-06-19Benton, John B Jr NEGOTIATION5Asiya Javayant
1043Leon I FerenczIndia2024-06-10Printing Dimensions NEGOTIATION33Bernardo Dominic
1044Antonio K TollnerArgentina2024-05-29Chanay, Jeffrey A Esq NEGOTIATION76Ivan Magalhaes
1045Leja E GlickRussia2024-06-20Chapman, Ross E Esq PROPOSAL54Asiya Javayant
1046Cody P GauchoIndia2024-06-17Rousseaux, Michael Esq NEW43Asiya Javayant
1047Ivar O KolmetzGermany2024-06-07Feltz Printing Service NEGOTIATION84Stephen Shaw
1048Cody I PaprockiAustralia2024-06-12Morlong Associates UNQUALIFIED84Xuxue Feng
1049Ivar D DilliardArgentina2024-06-10Benton, John B Jr RENEWAL12Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
James K NestleJapanElwin Sharvill RENEWAL
Tony A GlickAustraliaAnna Fali PROPOSAL
Aruna F CaudyItalyElwin Sharvill QUALIFIED
Costa G WhobreyAustraliaAsiya Javayant UNQUALIFIED
Juan X VocelkaItalyBernardo Dominic UNQUALIFIED
Maria A VocelkaFranceElwin Sharvill UNQUALIFIED
James N FlosiItalyStephen Shaw PROPOSAL
Morrow E WaycottItalyOnyama Limba UNQUALIFIED
Chavez Z MorascaCanadaXuxue Feng PROPOSAL
Misaki R NestleAustraliaAnna Fali QUALIFIED
Francesco L ChuiAustraliaOnyama Limba NEGOTIATION
Kaitlin L GarufiArgentinaIoni Bowcher RENEWAL
Alejandro A WaycottItalyBernardo Dominic RENEWAL
Clifford I MaletItalyIoni Bowcher NEGOTIATION
Francesco W WieserIndiaIoni Bowcher QUALIFIED
James L MacleadItalyBernardo Dominic PROPOSAL
Wickens Y OstroskySpainElwin Sharvill NEW
Julie N CaldareraSpainBernardo Dominic PROPOSAL
Mayumi E ChuiBrazilBernardo Dominic NEGOTIATION
Mayumi H GillianItalyStephen Shaw PROPOSAL
Silvio T BriddickGermanyIvan Magalhaes QUALIFIED
Antonio Y GarufiJapanBernardo Dominic PROPOSAL
Leon Y MarrierItalyIvan Magalhaes NEW
Jeanfrancois D ChuiSpainOnyama Limba RENEWAL
Jones J FerenczCanadaAmy Elsner RENEWAL
Kadeem E NestleCanadaElwin Sharvill QUALIFIED
David O VocelkaAustraliaXuxue Feng PROPOSAL
Greenwood F GarufiFranceOnyama Limba RENEWAL
David D OstroskyArgentinaXuxue Feng UNQUALIFIED
Julie Q AlbaresItalyXuxue Feng QUALIFIED
Izzy D StensethUnited KingdomXuxue Feng RENEWAL
Salvatore Q MacleadGermanyStephen Shaw UNQUALIFIED
Aika K SergiBrazilElwin Sharvill NEW
Costa Z CaldareraItalyElwin Sharvill QUALIFIED
Wickens M PerinRussiaOnyama Limba QUALIFIED
Adams J DilliardArgentinaIoni Bowcher NEGOTIATION
Aruna G FerenczCanadaAsiya Javayant UNQUALIFIED
Mujtaba A ShinkoUnited KingdomOnyama Limba NEGOTIATION
Salvatore A DoeSpainOnyama Limba RENEWAL
Kaitlin Q DoeItalyAmy Elsner NEW
Adams P CaldareraUnited KingdomXuxue Feng PROPOSAL
Emily O OldroydGermanyElwin Sharvill NEW
Jennifer X RimAustraliaIoni Bowcher NEW
Jones F GillianGermanyOnyama Limba UNQUALIFIED
Murillo G SchemmerArgentinaIoni Bowcher NEGOTIATION
Octavia S AlbaresUnited KingdomXuxue Feng QUALIFIED
Nicolas R WieserFranceAnna Fali NEW
Jennifer I OstroskyJapanAnna Fali PROPOSAL
Izzy H WieserCanadaElwin Sharvill NEGOTIATION
David Y KolmetzSpainIvan Magalhaes PROPOSAL
Frozen Columns
Name
Tony H Campain
Jones H Caudy
Arvin C Maclead
Ivar B Malet
Adams X Caudy
Munro N Chui
Darci Y Slusarski
Clifford U Gillian
Jennifer Q Bolognia
Adams T Amigon
Mayumi V Inouye
Darci L Glick
Chavez Y Albares
Murillo E Perin
Leon O Whobrey
Stacey J Butt
Deepesh I Darakjy
Kaitlin D Royster
Adams V Albares
Alejandro I Whobrey
Rodrigues L Whobrey
Emily Z Vocelka
Deepesh N Malet
Claire Q Rulapaugh
Morrow N Tollner
Kaitlin F Bowley
Murillo D Whobrey
Faith W Saylors
David B Ruta
Silvio J Kusko
Aika J Stenseth
Clifford R Whobrey
Nicolas B Ruta
Ashley V Foller
Antonio T Paprocki
Johnson L Saylors
Kadeem K Butt
Darci B Ferencz
Juan B Ruta
Maria X Darakjy
Kaitlin Y Nestle
Mujtaba B Gillian
Faith G Morasca
James Z Ruta
Chavez Y Stockham
James Q Amigon
Stacey V Ostrosky
Octavia J Amigon
Aruna J Nestle
Isabel R Figeroa
IdCountryDate
1000India2024-06-18
1001Argentina2024-05-26
1002Italy2024-06-07
1003Spain2024-06-03
1004Russia2024-06-23
1005Brazil2024-06-16
1006Germany2024-06-12
1007Germany2024-05-31
1008France2024-05-28
1009Brazil2024-06-18
1010Russia2024-06-08
1011Brazil2024-05-26
1012Canada2024-05-30
1013Argentina2024-06-18
1014United Kingdom2024-06-12
1015United Kingdom2024-06-06
1016Russia2024-06-12
1017France2024-06-13
1018Argentina2024-06-18
1019Spain2024-06-14
1020Russia2024-06-18
1021Russia2024-05-30
1022Argentina2024-06-12
1023Italy2024-06-13
1024Argentina2024-05-26
1025Brazil2024-06-06
1026Australia2024-06-01
1027Italy2024-06-03
1028Russia2024-06-06
1029France2024-06-06
1030India2024-06-13
1031France2024-06-17
1032India2024-05-30
1033Spain2024-06-06
1034France2024-06-17
1035Australia2024-06-12
1036India2024-06-08
1037Argentina2024-05-28
1038Spain2024-06-06
1039Argentina2024-06-05
1040Australia2024-06-21
1041Japan2024-06-05
1042France2024-06-10
1043Canada2024-06-11
1044United Kingdom2024-05-26
1045India2024-06-10
1046France2024-06-23
1047Brazil2024-05-26
1048Australia2024-06-09
1049Argentina2024-06-14

On-Demand Data

NameIdCountryDate
Nicolas S Paprocki1000Italy2024-06-13
Sinclair W Ferencz1001United Kingdom2024-06-11
Aditya K Kolmetz1002Brazil2024-06-04
Antonio T Perin1003Italy2024-06-18
Tony T Foller1004Japan2024-05-31
Salvatore C Bowley1005Spain2024-06-20
Johnson F Sergi1006Canada2024-05-30
Faith R Schemmer1007United Kingdom2024-05-26
Octavia Y Amigon1008Spain2024-05-29
Emily W Butt1009Spain2024-05-31
Jennifer B Slusarski1010Brazil2024-06-22
Mayumi R Albares1011Japan2024-06-16
Arvin U Paprocki1012Germany2024-06-24
Wickens A Iturbide1013Japan2024-06-07
Juan B Schemmer1014Russia2024-06-01
Tony G Butt1015Russia2024-06-14
Arvin S Figeroa1016France2024-06-15
Claire I Morasca1017Argentina2024-06-06
Maisha X Ruta1018Canada2024-06-02
Mujtaba B Briddick1019Argentina2024-06-07
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Alejandro M MacleadUnited KingdomBernardo Dominic NEGOTIATION
Emily F WaycottBrazilOnyama Limba NEW
Claire K VocelkaArgentinaIvan Magalhaes RENEWAL
Rodrigues N FerenczArgentinaAsiya Javayant RENEWAL
Clifford E NickaCanadaIoni Bowcher UNQUALIFIED
Aditya S FollerArgentinaIoni Bowcher PROPOSAL
Wickens P PoquetteItalyOnyama Limba RENEWAL
Faith S TollnerAustraliaOnyama Limba QUALIFIED
Juan N KolmetzIndiaAsiya Javayant NEW
Tony J NickaJapanAmy Elsner QUALIFIED
Ashley T GarufiUnited KingdomBernardo Dominic PROPOSAL
Mujtaba Y WieserFranceIoni Bowcher NEGOTIATION
Alejandro R MarrierAustraliaXuxue Feng QUALIFIED
Juan N RoysterRussiaIoni Bowcher UNQUALIFIED
Greenwood S PaprockiFranceIoni Bowcher UNQUALIFIED
Greenwood R SlusarskiFranceBernardo Dominic PROPOSAL
Aika Q AmigonSpainElwin Sharvill RENEWAL
Aditya T WaycottBrazilOnyama Limba RENEWAL
Francesco L AlbaresRussiaAmy Elsner NEGOTIATION
Isabel K MacleadBrazilElwin Sharvill UNQUALIFIED
Claire G VocelkaBrazilIvan Magalhaes PROPOSAL
Julie Q PaprockiRussiaBernardo Dominic PROPOSAL
Leon E MaletFranceAnna Fali PROPOSAL
Greenwood N AlbaresRussiaAmy Elsner QUALIFIED
Mujtaba X FlosiRussiaElwin Sharvill QUALIFIED
Kaitlin B GillianGermanyStephen Shaw UNQUALIFIED
Morrow U InouyeBrazilAsiya Javayant RENEWAL
Chavez Y DarakjyArgentinaOnyama Limba RENEWAL
Alejandro X PaprockiCanadaOnyama Limba NEGOTIATION
Smith V GillianUnited KingdomElwin Sharvill NEGOTIATION
Aika N GlickGermanyAmy Elsner NEGOTIATION
Mayumi R AlbaresFranceOnyama Limba PROPOSAL
Ricardo Q RutaGermanyXuxue Feng UNQUALIFIED
Rodrigues P RimUnited KingdomAmy Elsner QUALIFIED
Nicolas V DarakjyIndiaElwin Sharvill PROPOSAL
Cody V OstroskyFranceBernardo Dominic PROPOSAL
Claire H StockhamItalyAnna Fali RENEWAL
Sinclair E MarrierUnited KingdomAsiya Javayant NEW
Greenwood B MarrierAustraliaAmy Elsner RENEWAL
Wickens J FollerBrazilBernardo Dominic 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>