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
Rodrigues X ShinkoFranceOnyama Limba UNQUALIFIED
Rodrigues F OstroskySpainXuxue Feng RENEWAL
Mayumi N NestleSpainXuxue Feng PROPOSAL
Munro T OstroskyUnited KingdomIoni Bowcher UNQUALIFIED
Mayumi Y FlosiBrazilIvan Magalhaes UNQUALIFIED
David P BriddickItalyAnna Fali QUALIFIED
Ashley U MorascaJapanXuxue Feng NEW
Rodrigues R IturbideAustraliaBernardo Dominic RENEWAL
Jones V MaletRussiaStephen Shaw NEW
Morrow O SergiBrazilElwin Sharvill PROPOSAL
Octavia O FollerSpainIoni Bowcher PROPOSAL
Mujtaba N AmigonArgentinaOnyama Limba NEW
Greenwood U RutaRussiaBernardo Dominic QUALIFIED
Jefferson B SlusarskiFranceIoni Bowcher NEW
James P RutaRussiaAsiya Javayant NEW
Antonio D ButtAustraliaIoni Bowcher RENEWAL
Maisha E MacleadArgentinaIoni Bowcher UNQUALIFIED
Adams Q CaldareraBrazilXuxue Feng NEGOTIATION
Aditya Y MaletFranceOnyama Limba NEGOTIATION
Deepesh O VenereAustraliaIvan Magalhaes QUALIFIED
Stacey L DarakjyJapanBernardo Dominic NEGOTIATION
Adams I NestleAustraliaXuxue Feng PROPOSAL
Ivar D ChuiRussiaAsiya Javayant NEW
Jones R RulapaughArgentinaAsiya Javayant NEW
Jones Q AmigonCanadaAsiya Javayant NEW
Izzy H ChuiRussiaBernardo Dominic NEW
Darci S MorascaRussiaElwin Sharvill RENEWAL
Morrow T NestleSpainIoni Bowcher UNQUALIFIED
Jeanfrancois C CampainFranceElwin Sharvill UNQUALIFIED
Nicolas Z RoysterAustraliaAsiya Javayant PROPOSAL
Aruna M StensethFranceAmy Elsner NEGOTIATION
Ashley F ChuiJapanIvan Magalhaes UNQUALIFIED
Julie S AlbaresFranceXuxue Feng RENEWAL
Clifford V KuskoIndiaStephen Shaw UNQUALIFIED
Clifford H NickaCanadaAmy Elsner QUALIFIED
Izzy D PoquetteCanadaBernardo Dominic RENEWAL
Ricardo Y ButtRussiaBernardo Dominic NEW
James H CaldareraIndiaIvan Magalhaes QUALIFIED
Mujtaba J SergiArgentinaAsiya Javayant PROPOSAL
Ivar R MaletAustraliaOnyama Limba UNQUALIFIED
Jefferson O RoysterAustraliaIvan Magalhaes UNQUALIFIED
Leon O VenereItalyOnyama Limba RENEWAL
Rodrigues E AlbaresIndiaAsiya Javayant RENEWAL
Antonio O KuskoJapanXuxue Feng QUALIFIED
Alejandro X VocelkaJapanXuxue Feng PROPOSAL
Leon L GauchoBrazilIvan Magalhaes UNQUALIFIED
Juan X FerenczUnited KingdomIoni Bowcher RENEWAL
Leja L MaletFranceOnyama Limba PROPOSAL
Faith Y ButtArgentinaStephen Shaw UNQUALIFIED
Ivar W AlbaresRussiaElwin Sharvill NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Salvatore P GauchoBrazilOnyama Limba NEW
Kaitlin A ShinkoUnited KingdomIoni Bowcher NEGOTIATION
Leon C OldroydAustraliaStephen Shaw RENEWAL
Aditya N RutaSpainOnyama Limba RENEWAL
Aditya U CampainArgentinaIoni Bowcher NEW
Adams X CampainArgentinaElwin Sharvill NEW
Misaki V WaycottArgentinaStephen Shaw RENEWAL
Smith Y ShinkoIndiaAnna Fali RENEWAL
Julie J MarrierJapanStephen Shaw RENEWAL
Mayumi Q RutaIndiaAsiya Javayant QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Juan D FerenczBrazil2024-06-01Dorl, James J Esq NEGOTIATION94Amy Elsner
1001Greenwood X InouyeUnited Kingdom2024-05-27Commercial Press UNQUALIFIED94Amy Elsner
1002Jennifer J TollnerArgentina2024-06-09Truhlar And Truhlar Attys PROPOSAL14Asiya Javayant
1003Julie T SergiArgentina2024-06-04Chemel, James L Cpa PROPOSAL81Ioni Bowcher
1004Silvio V TollnerCanada2024-06-17Printing Dimensions UNQUALIFIED49Ioni Bowcher
1005Johnson Y FigeroaSpain2024-05-23Chapman, Ross E Esq UNQUALIFIED83Ivan Magalhaes
1006Salvatore B SergiCanada2024-05-28Dorl, James J Esq UNQUALIFIED63Anna Fali
1007Kaitlin I KuskoJapan2024-05-31Printing Dimensions QUALIFIED8Stephen Shaw
1008Kadeem W BologniaBrazil2024-05-28Feiner Bros NEGOTIATION42Xuxue Feng
1009Adams C VenereRussia2024-06-04Truhlar And Truhlar Attys PROPOSAL96Xuxue Feng
1010Julie M WieserUnited Kingdom2024-06-11Truhlar And Truhlar Attys NEGOTIATION86Onyama Limba
1011Morrow N GillianCanada2024-06-02Benton, John B Jr NEW43Onyama Limba
1012Maisha F CampainArgentina2024-05-27Benton, John B Jr QUALIFIED13Elwin Sharvill
1013Isabel K ShinkoUnited Kingdom2024-06-10Buckley Miller Wright QUALIFIED90Bernardo Dominic
1014Aditya I StockhamGermany2024-06-12Morlong Associates NEGOTIATION84Bernardo Dominic
1015Ricardo Q PerinFrance2024-05-25Feiner Bros NEW72Ivan Magalhaes
1016Stacey D OstroskyRussia2024-06-14Truhlar And Truhlar Attys RENEWAL90Bernardo Dominic
1017Arvin H OldroydSpain2024-05-25Printing Dimensions UNQUALIFIED88Onyama Limba
1018Chavez J PoquetteJapan2024-05-23Feiner Bros NEW69Stephen Shaw
1019Arvin V VenereSpain2024-05-28Buckley Miller Wright NEW63Xuxue Feng
1020Salvatore W RoysterItaly2024-06-03Morlong Associates NEGOTIATION71Amy Elsner
1021Aditya L PaprockiCanada2024-06-08Feltz Printing Service UNQUALIFIED99Onyama Limba
1022Emily R NestleRussia2024-06-20Feltz Printing Service UNQUALIFIED96Amy Elsner
1023Leon L KuskoCanada2024-06-16Buckley Miller Wright NEW34Anna Fali
1024Leja X InouyeUnited Kingdom2024-06-07Chanay, Jeffrey A Esq QUALIFIED12Stephen Shaw
1025Mayumi A RulapaughRussia2024-06-13Feltz Printing Service PROPOSAL41Xuxue Feng
1026Cody H GillianSpain2024-06-21Rousseaux, Michael Esq RENEWAL67Bernardo Dominic
1027Aika N MarrierFrance2024-06-21Chapman, Ross E Esq UNQUALIFIED91Elwin Sharvill
1028Izzy L RimGermany2024-06-14Printing Dimensions QUALIFIED76Asiya Javayant
1029Ivar Z RoysterJapan2024-06-07Feltz Printing Service PROPOSAL27Xuxue Feng
1030Tony T InouyeAustralia2024-05-23Rangoni Of Florence PROPOSAL37Asiya Javayant
1031Johnson H DilliardRussia2024-06-08Feltz Printing Service PROPOSAL84Asiya Javayant
1032Alejandro N BowleySpain2024-06-14Printing Dimensions NEGOTIATION55Xuxue Feng
1033Mujtaba Z RutaUnited Kingdom2024-06-03Printing Dimensions UNQUALIFIED71Anna Fali
1034Maria M PerinUnited Kingdom2024-06-10King, Christopher A Esq RENEWAL14Ivan Magalhaes
1035Smith O OstroskyFrance2024-06-07Rangoni Of Florence QUALIFIED48Xuxue Feng
1036Maisha Z VocelkaRussia2024-05-27Feiner Bros QUALIFIED73Asiya Javayant
1037Clifford V WaycottItaly2024-06-17Feiner Bros UNQUALIFIED7Bernardo Dominic
1038Clifford F FigeroaItaly2024-05-28Commercial Press QUALIFIED16Asiya Javayant
1039Maisha S AmigonArgentina2024-06-01Rangoni Of Florence NEW14Stephen Shaw
1040Rodrigues H DarakjyUnited Kingdom2024-06-03King, Christopher A Esq RENEWAL25Ivan Magalhaes
1041Octavia K FigeroaRussia2024-06-13Feiner Bros NEGOTIATION11Ivan Magalhaes
1042Rodrigues U GlickUnited Kingdom2024-06-04Morlong Associates NEW83Onyama Limba
1043Smith J WhobreyAustralia2024-06-09Morlong Associates QUALIFIED48Anna Fali
1044Jeanfrancois B GillianRussia2024-06-19Rangoni Of Florence NEGOTIATION98Bernardo Dominic
1045James T VocelkaBrazil2024-06-09Morlong Associates NEW41Stephen Shaw
1046Jones Z RulapaughItaly2024-05-25Benton, John B Jr QUALIFIED37Asiya Javayant
1047Faith B RoysterSpain2024-06-17Buckley Miller Wright NEGOTIATION98Ioni Bowcher
1048Greenwood U SlusarskiRussia2024-06-16Feiner Bros PROPOSAL50Anna Fali
1049Kadeem H CaldareraIndia2024-05-28Buckley Miller Wright QUALIFIED79Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Clifford C TollnerAustraliaStephen Shaw RENEWAL
Deepesh P RulapaughUnited KingdomBernardo Dominic PROPOSAL
Murillo C ShinkoJapanXuxue Feng UNQUALIFIED
Isabel V GillianGermanyBernardo Dominic QUALIFIED
Greenwood U SaylorsIndiaBernardo Dominic NEGOTIATION
Smith E SergiCanadaBernardo Dominic PROPOSAL
Isabel I BologniaArgentinaXuxue Feng QUALIFIED
Mayumi W GillianIndiaAsiya Javayant PROPOSAL
Claire V MaletBrazilAnna Fali QUALIFIED
Juan V KolmetzCanadaAmy Elsner QUALIFIED
Ashley P PoquetteSpainStephen Shaw NEW
Ashley B AmigonIndiaBernardo Dominic RENEWAL
Sinclair S OstroskyIndiaStephen Shaw NEGOTIATION
Ivar R OstroskyItalyIoni Bowcher RENEWAL
Leja P VocelkaIndiaXuxue Feng PROPOSAL
Johnson B BologniaArgentinaAsiya Javayant UNQUALIFIED
Kaitlin Y SlusarskiAustraliaIvan Magalhaes PROPOSAL
Misaki Q SergiIndiaElwin Sharvill RENEWAL
Adams V PoquetteFranceIvan Magalhaes NEGOTIATION
Jefferson B VocelkaGermanyStephen Shaw NEGOTIATION
Munro P MaletGermanyAnna Fali PROPOSAL
Costa Y WhobreyCanadaAnna Fali NEW
Adams Z SaylorsSpainAnna Fali NEGOTIATION
Wickens U GillianUnited KingdomStephen Shaw RENEWAL
Silvio V DoeBrazilBernardo Dominic NEW
Izzy X GillianBrazilElwin Sharvill RENEWAL
Cody S AlbaresArgentinaElwin Sharvill QUALIFIED
James T AmigonFranceStephen Shaw UNQUALIFIED
Ivar V SchemmerFranceAsiya Javayant NEGOTIATION
Sinclair M ShinkoBrazilAsiya Javayant NEGOTIATION
Misaki U FollerArgentinaIoni Bowcher UNQUALIFIED
Mayumi C WieserArgentinaIoni Bowcher UNQUALIFIED
Octavia B ButtBrazilIvan Magalhaes NEGOTIATION
David D GarufiArgentinaXuxue Feng UNQUALIFIED
Misaki C ButtAustraliaXuxue Feng NEW
Rodrigues K SergiUnited KingdomAmy Elsner QUALIFIED
Jones X VenereArgentinaStephen Shaw NEW
Rodrigues X DilliardFranceIvan Magalhaes RENEWAL
Antonio X TollnerUnited KingdomXuxue Feng PROPOSAL
Maisha J GillianGermanyXuxue Feng NEW
Nicolas D KolmetzJapanIoni Bowcher QUALIFIED
Isabel W AmigonCanadaAsiya Javayant NEGOTIATION
Arvin P ButtSpainAnna Fali NEGOTIATION
Maisha X WieserSpainElwin Sharvill NEW
Salvatore T FigeroaFranceStephen Shaw NEW
Mujtaba S CaudyCanadaIoni Bowcher RENEWAL
Leon A VocelkaSpainXuxue Feng RENEWAL
Kaitlin R MaletFranceAsiya Javayant PROPOSAL
Munro E IturbideAustraliaElwin Sharvill NEW
Juan J MarrierArgentinaOnyama Limba NEGOTIATION
Frozen Columns
Name
Isabel F Iturbide
Leja L Poquette
Julie E Vocelka
Mayumi V Tollner
Rodrigues Q Iturbide
Sinclair F Iturbide
Deepesh B Caudy
Octavia E Tollner
Wickens N Schemmer
Darci G Briddick
Ivar G Wieser
David R Figeroa
Aruna N Maclead
Rodrigues U Garufi
Julie D Darakjy
Clifford Y Stockham
Greenwood R Slusarski
Chavez O Venere
Octavia F Rulapaugh
Silvio I Shinko
Izzy F Paprocki
Deepesh L Ostrosky
Sinclair I Ferencz
Alejandro B Kolmetz
Leja O Caudy
Maisha P Tollner
Leja H Campain
Munro B Kolmetz
Izzy D Amigon
Stacey J Perin
Julie Q Rim
Munro G Tollner
Julie I Wieser
Tony U Vocelka
James W Inouye
Munro V Oldroyd
Juan J Waycott
Greenwood S Kusko
Julie R Shinko
Ivar A Paprocki
Ashley A Kolmetz
Morrow E Bowley
Salvatore N Venere
Munro F Inouye
Murillo W Ferencz
Nicolas J Amigon
Stacey Q Doe
Murillo V Amigon
Leon W Dilliard
Aruna J Bolognia
IdCountryDate
1000Germany2024-05-31
1001India2024-06-17
1002Spain2024-05-27
1003Russia2024-06-10
1004Canada2024-06-11
1005Italy2024-06-16
1006Russia2024-06-19
1007Australia2024-06-10
1008Canada2024-05-29
1009Brazil2024-06-18
1010Brazil2024-06-06
1011Japan2024-06-13
1012France2024-05-30
1013Argentina2024-06-12
1014Brazil2024-05-24
1015Brazil2024-05-28
1016France2024-06-04
1017Argentina2024-05-26
1018Australia2024-06-16
1019Germany2024-06-07
1020Spain2024-06-03
1021India2024-06-07
1022India2024-06-12
1023Russia2024-06-09
1024Argentina2024-06-08
1025Canada2024-05-24
1026Spain2024-06-07
1027Canada2024-06-20
1028Japan2024-05-26
1029Japan2024-05-25
1030Italy2024-06-13
1031Japan2024-05-23
1032Brazil2024-06-12
1033United Kingdom2024-06-12
1034Australia2024-05-29
1035India2024-05-23
1036Australia2024-05-26
1037Brazil2024-06-21
1038Italy2024-06-13
1039United Kingdom2024-06-11
1040Brazil2024-06-20
1041France2024-06-04
1042Australia2024-05-27
1043Argentina2024-06-09
1044Spain2024-05-25
1045Italy2024-05-31
1046Russia2024-06-20
1047Argentina2024-06-17
1048France2024-06-14
1049Canada2024-06-14

On-Demand Data

NameIdCountryDate
Jones B Perin1000Italy2024-05-29
Salvatore Z Gaucho1001Argentina2024-06-06
Silvio P Maclead1002Argentina2024-06-17
Aruna R Figeroa1003France2024-05-27
Smith C Malet1004Brazil2024-06-10
Antonio F Iturbide1005Russia2024-06-19
Silvio R Stenseth1006Brazil2024-06-11
Jeanfrancois B Ferencz1007Brazil2024-06-07
Jennifer H Iturbide1008Australia2024-06-11
Smith A Nicka1009France2024-05-31
Juan P Ruta1010Argentina2024-05-29
Ricardo L Sergi1011Germany2024-06-20
Salvatore Q Malet1012Italy2024-05-27
Kadeem A Perin1013Italy2024-05-29
Smith W Figeroa1014Germany2024-06-12
Cody R Nestle1015Italy2024-06-11
Murillo E Darakjy1016Brazil2024-05-30
Munro S Dilliard1017Australia2024-06-18
Salvatore H Bowley1018Argentina2024-06-08
Deepesh O Poquette1019United Kingdom2024-05-23
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jeanfrancois X MorascaGermanyAnna Fali RENEWAL
Antonio V FerenczArgentinaAnna Fali QUALIFIED
Leja T RulapaughJapanIoni Bowcher NEGOTIATION
Salvatore L OstroskySpainAmy Elsner PROPOSAL
Clifford X DilliardItalyAnna Fali RENEWAL
Morrow N CaldareraJapanIoni Bowcher PROPOSAL
Stacey Z WaycottUnited KingdomElwin Sharvill RENEWAL
Aika H FigeroaJapanStephen Shaw QUALIFIED
Misaki W PaprockiRussiaAsiya Javayant PROPOSAL
Kadeem D MaletCanadaAnna Fali RENEWAL
Faith C StensethBrazilBernardo Dominic PROPOSAL
Antonio W BologniaItalyAsiya Javayant NEW
Emily Q PerinFranceIoni Bowcher PROPOSAL
Juan Q PaprockiCanadaBernardo Dominic PROPOSAL
Ricardo E AmigonItalyXuxue Feng NEGOTIATION
Arvin H MaletBrazilAsiya Javayant NEGOTIATION
Kadeem J PerinFranceOnyama Limba UNQUALIFIED
Adams V CaudyIndiaOnyama Limba QUALIFIED
Faith W CaldareraSpainIvan Magalhaes RENEWAL
Deepesh C SchemmerJapanElwin Sharvill RENEWAL
Jones R SaylorsIndiaIoni Bowcher RENEWAL
Smith J RulapaughSpainAmy Elsner QUALIFIED
Aditya M DoeCanadaAmy Elsner UNQUALIFIED
Aditya U PoquetteUnited KingdomXuxue Feng NEGOTIATION
Tony I MarrierUnited KingdomAmy Elsner QUALIFIED
Morrow Q VocelkaItalyAsiya Javayant RENEWAL
James Y BowleyFranceStephen Shaw NEW
James K RoysterGermanyBernardo Dominic UNQUALIFIED
Aditya S OldroydJapanAsiya Javayant RENEWAL
Deepesh W SergiBrazilStephen Shaw RENEWAL
Alejandro C FerenczJapanIvan Magalhaes UNQUALIFIED
Maisha P GlickArgentinaAsiya Javayant QUALIFIED
Arvin N GarufiBrazilBernardo Dominic PROPOSAL
Stacey C MaletIndiaAmy Elsner UNQUALIFIED
Isabel H ShinkoSpainIoni Bowcher NEGOTIATION
Ricardo A PerinAustraliaStephen Shaw RENEWAL
Rodrigues K SlusarskiRussiaIvan Magalhaes NEGOTIATION
Greenwood F AmigonCanadaAnna Fali UNQUALIFIED
Aika L ChuiRussiaStephen Shaw NEW
Morrow U MacleadCanadaIoni Bowcher 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>