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
Aika T VenereJapanStephen Shaw PROPOSAL
Ricardo G BologniaRussiaAnna Fali RENEWAL
Wickens W RulapaughBrazilIoni Bowcher RENEWAL
Juan M RulapaughArgentinaIoni Bowcher QUALIFIED
Jennifer A KolmetzArgentinaAmy Elsner PROPOSAL
Claire Z DilliardUnited KingdomIoni Bowcher NEGOTIATION
Julie T OldroydGermanyStephen Shaw NEW
Clifford I OstroskyRussiaStephen Shaw PROPOSAL
Stacey F BriddickItalyAnna Fali QUALIFIED
Wickens R RulapaughAustraliaIoni Bowcher QUALIFIED
Cody K PoquetteSpainAsiya Javayant NEGOTIATION
Jennifer D RoysterCanadaElwin Sharvill RENEWAL
Ivar X FigeroaCanadaStephen Shaw NEW
Wickens U RoysterIndiaIvan Magalhaes PROPOSAL
Murillo W OldroydUnited KingdomAsiya Javayant UNQUALIFIED
Alejandro K OstroskyAustraliaIvan Magalhaes RENEWAL
Sinclair Z DoeBrazilBernardo Dominic UNQUALIFIED
Murillo X FigeroaJapanStephen Shaw PROPOSAL
Claire C FigeroaArgentinaXuxue Feng PROPOSAL
Jeanfrancois N VocelkaIndiaIoni Bowcher RENEWAL
Julie D KolmetzSpainIoni Bowcher NEGOTIATION
Wickens R MaletArgentinaIvan Magalhaes RENEWAL
Salvatore A KuskoArgentinaXuxue Feng NEGOTIATION
Chavez C MarrierIndiaBernardo Dominic NEGOTIATION
Isabel S PaprockiFranceIvan Magalhaes QUALIFIED
Murillo Y FerenczSpainAsiya Javayant PROPOSAL
Wickens Q BologniaItalyIvan Magalhaes UNQUALIFIED
Faith Q GarufiGermanyXuxue Feng NEW
Munro K GlickItalyBernardo Dominic NEGOTIATION
Sinclair A GlickFranceStephen Shaw NEW
Maria M FollerGermanyOnyama Limba PROPOSAL
Chavez J NickaFranceAsiya Javayant NEGOTIATION
Wickens H MaletArgentinaBernardo Dominic NEGOTIATION
Francesco D FerenczFranceAsiya Javayant RENEWAL
Deepesh Z InouyeArgentinaIvan Magalhaes UNQUALIFIED
Julie K MorascaCanadaOnyama Limba UNQUALIFIED
Jefferson M OldroydFranceAsiya Javayant QUALIFIED
Stacey Q GlickRussiaOnyama Limba NEGOTIATION
Munro U SaylorsIndiaIoni Bowcher PROPOSAL
Tony V MaletItalyAsiya Javayant NEW
Jefferson J RoysterSpainAmy Elsner UNQUALIFIED
Adams P SchemmerIndiaOnyama Limba NEW
Murillo V StockhamBrazilAnna Fali NEGOTIATION
Wickens H NestleCanadaAmy Elsner NEW
Stacey W SaylorsIndiaAnna Fali PROPOSAL
Izzy V NestleSpainIvan Magalhaes RENEWAL
Murillo Q RimJapanXuxue Feng NEW
Tony D SchemmerArgentinaIvan Magalhaes UNQUALIFIED
Jeanfrancois B BologniaCanadaElwin Sharvill NEGOTIATION
Munro M CampainSpainXuxue Feng NEW
Horizontal
NameCountryRepresentativeStatus
Julie E StockhamSpainStephen Shaw NEGOTIATION
Adams Q RulapaughUnited KingdomIoni Bowcher QUALIFIED
Isabel H BriddickAustraliaOnyama Limba RENEWAL
Wickens Y NickaArgentinaIvan Magalhaes QUALIFIED
Maria X NickaJapanStephen Shaw QUALIFIED
Smith T StockhamFranceAnna Fali NEW
Murillo Q GarufiSpainStephen Shaw NEW
Jefferson N OstroskyJapanBernardo Dominic UNQUALIFIED
Arvin Q VocelkaFranceXuxue Feng NEW
Faith B VocelkaSpainIvan Magalhaes NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Stacey Q GlickIndia2024-06-03Chemel, James L Cpa RENEWAL97Amy Elsner
1001Rodrigues H GarufiBrazil2024-06-06Commercial Press UNQUALIFIED29Elwin Sharvill
1002Munro Z VocelkaUnited Kingdom2024-06-10Chapman, Ross E Esq QUALIFIED17Elwin Sharvill
1003Leon M IturbideSpain2024-05-24Commercial Press UNQUALIFIED10Ivan Magalhaes
1004Murillo S NestleBrazil2024-06-11Benton, John B Jr UNQUALIFIED2Ioni Bowcher
1005Murillo W RoysterBrazil2024-05-22King, Christopher A Esq QUALIFIED74Onyama Limba
1006Arvin E DilliardJapan2024-05-26Dorl, James J Esq NEW7Anna Fali
1007James O CaudyBrazil2024-05-22Feiner Bros RENEWAL37Ivan Magalhaes
1008Smith Q GauchoJapan2024-06-15Chapman, Ross E Esq RENEWAL8Amy Elsner
1009James Z ButtAustralia2024-06-13Feltz Printing Service QUALIFIED53Bernardo Dominic
1010Adams W WaycottJapan2024-05-27Feiner Bros QUALIFIED59Bernardo Dominic
1011Munro S MacleadAustralia2024-06-03Truhlar And Truhlar Attys UNQUALIFIED29Xuxue Feng
1012Darci B OstroskyArgentina2024-06-12Benton, John B Jr RENEWAL95Stephen Shaw
1013Morrow X OldroydCanada2024-06-13Truhlar And Truhlar Attys NEW26Asiya Javayant
1014Darci I BowleySpain2024-06-06Rangoni Of Florence NEGOTIATION18Amy Elsner
1015Costa X NestleArgentina2024-06-08Truhlar And Truhlar Attys NEGOTIATION85Anna Fali
1016Deepesh E AlbaresUnited Kingdom2024-06-07Morlong Associates PROPOSAL60Amy Elsner
1017Aditya Y StockhamBrazil2024-06-16Rousseaux, Michael Esq PROPOSAL53Xuxue Feng
1018Sinclair D RutaAustralia2024-06-04Buckley Miller Wright UNQUALIFIED4Elwin Sharvill
1019Antonio F DilliardGermany2024-06-14Printing Dimensions UNQUALIFIED97Amy Elsner
1020Ashley S TollnerJapan2024-06-08Chapman, Ross E Esq UNQUALIFIED49Onyama Limba
1021Ashley Z DilliardFrance2024-05-29Chapman, Ross E Esq NEW81Ioni Bowcher
1022Ricardo K IturbideUnited Kingdom2024-06-04Rousseaux, Michael Esq PROPOSAL60Bernardo Dominic
1023Greenwood T BologniaCanada2024-05-27Truhlar And Truhlar Attys QUALIFIED88Xuxue Feng
1024Kaitlin X GarufiGermany2024-05-24Chanay, Jeffrey A Esq QUALIFIED61Xuxue Feng
1025Antonio I KolmetzBrazil2024-06-04Chemel, James L Cpa NEGOTIATION7Ioni Bowcher
1026Maria C PerinItaly2024-06-06Commercial Press RENEWAL17Anna Fali
1027Johnson G AlbaresJapan2024-05-25Chapman, Ross E Esq RENEWAL23Bernardo Dominic
1028Adams M DarakjySpain2024-06-11Buckley Miller Wright NEW44Anna Fali
1029Izzy M MarrierBrazil2024-05-22King, Christopher A Esq QUALIFIED61Ioni Bowcher
1030Mayumi A KolmetzCanada2024-06-06Chapman, Ross E Esq QUALIFIED44Asiya Javayant
1031Ricardo V DarakjyIndia2024-05-26Morlong Associates PROPOSAL24Amy Elsner
1032Claire U FollerFrance2024-06-07King, Christopher A Esq RENEWAL79Ioni Bowcher
1033Julie K StockhamArgentina2024-05-28Chemel, James L Cpa NEGOTIATION91Amy Elsner
1034Claire N KuskoJapan2024-06-12Printing Dimensions NEGOTIATION32Asiya Javayant
1035Maria I RulapaughJapan2024-06-17Buckley Miller Wright NEGOTIATION63Stephen Shaw
1036Leja R PerinRussia2024-06-14Benton, John B Jr NEW54Anna Fali
1037Alejandro T FlosiGermany2024-05-26Chemel, James L Cpa RENEWAL45Stephen Shaw
1038Chavez A MaletUnited Kingdom2024-05-29Chanay, Jeffrey A Esq PROPOSAL57Anna Fali
1039Octavia N PaprockiAustralia2024-06-09Printing Dimensions QUALIFIED67Stephen Shaw
1040Deepesh S NestleBrazil2024-05-25Truhlar And Truhlar Attys NEW36Asiya Javayant
1041Misaki A WhobreyGermany2024-05-19Printing Dimensions UNQUALIFIED12Bernardo Dominic
1042Antonio X MarrierFrance2024-05-22King, Christopher A Esq QUALIFIED13Asiya Javayant
1043Deepesh H CampainIndia2024-05-19Chapman, Ross E Esq UNQUALIFIED88Amy Elsner
1044Jeanfrancois U PaprockiItaly2024-05-24Rousseaux, Michael Esq UNQUALIFIED98Bernardo Dominic
1045Mayumi D VocelkaIndia2024-06-15Morlong Associates UNQUALIFIED31Anna Fali
1046Silvio X PaprockiJapan2024-05-30Benton, John B Jr QUALIFIED70Amy Elsner
1047Octavia J DarakjyIndia2024-06-12Benton, John B Jr QUALIFIED95Bernardo Dominic
1048Aditya Z SergiSpain2024-05-26Buckley Miller Wright UNQUALIFIED18Stephen Shaw
1049Francesco P StockhamArgentina2024-05-28Feltz Printing Service RENEWAL11Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Octavia P FollerJapanAnna Fali PROPOSAL
Emily O MacleadSpainStephen Shaw UNQUALIFIED
Stacey L RulapaughArgentinaIvan Magalhaes NEGOTIATION
Mayumi S PerinRussiaAmy Elsner NEW
Claire D RulapaughJapanIvan Magalhaes QUALIFIED
Misaki J BologniaRussiaIvan Magalhaes UNQUALIFIED
Salvatore F SlusarskiUnited KingdomIoni Bowcher UNQUALIFIED
Izzy U FerenczFranceXuxue Feng PROPOSAL
Kaitlin S VocelkaGermanyAsiya Javayant RENEWAL
Emily H MarrierJapanIvan Magalhaes UNQUALIFIED
Clifford T IturbideArgentinaAnna Fali UNQUALIFIED
Ivar D PoquetteCanadaStephen Shaw RENEWAL
Leon G MarrierBrazilAnna Fali RENEWAL
Jefferson W CampainRussiaIoni Bowcher QUALIFIED
Morrow W SaylorsJapanElwin Sharvill RENEWAL
Jefferson H SergiFranceOnyama Limba UNQUALIFIED
David V BowleyFranceAmy Elsner UNQUALIFIED
Morrow P AlbaresGermanyIoni Bowcher NEW
Darci U MaletJapanXuxue Feng NEW
Faith F CaudyUnited KingdomAnna Fali NEW
David D MorascaCanadaStephen Shaw QUALIFIED
Stacey R FigeroaFranceBernardo Dominic RENEWAL
Morrow J OldroydFranceElwin Sharvill NEW
Aditya C VocelkaArgentinaStephen Shaw QUALIFIED
Salvatore J GauchoArgentinaAsiya Javayant PROPOSAL
Darci U WaycottUnited KingdomIvan Magalhaes QUALIFIED
James X GarufiGermanyBernardo Dominic PROPOSAL
Alejandro K PerinJapanIoni Bowcher UNQUALIFIED
Leja J GillianJapanOnyama Limba RENEWAL
Octavia S DarakjyFranceElwin Sharvill NEGOTIATION
Darci M WhobreyIndiaIvan Magalhaes UNQUALIFIED
Juan D VocelkaJapanIoni Bowcher PROPOSAL
James X MorascaBrazilAmy Elsner NEW
Jones P StensethGermanyElwin Sharvill RENEWAL
Kaitlin N WaycottArgentinaElwin Sharvill NEGOTIATION
Jefferson H TollnerSpainBernardo Dominic NEW
Ashley A InouyeFranceElwin Sharvill NEW
Deepesh G BriddickSpainIvan Magalhaes RENEWAL
Rodrigues B GauchoSpainBernardo Dominic NEGOTIATION
Aruna R VocelkaGermanyBernardo Dominic QUALIFIED
Tony S FollerRussiaStephen Shaw RENEWAL
Johnson U CaudyIndiaElwin Sharvill QUALIFIED
Greenwood D FlosiArgentinaXuxue Feng NEGOTIATION
David D StensethUnited KingdomOnyama Limba NEGOTIATION
Mujtaba A AmigonIndiaBernardo Dominic PROPOSAL
Aruna P TollnerArgentinaIoni Bowcher PROPOSAL
Chavez H NestleBrazilBernardo Dominic UNQUALIFIED
Clifford Y ChuiGermanyStephen Shaw RENEWAL
Mujtaba K SaylorsBrazilOnyama Limba RENEWAL
Costa O RimBrazilIoni Bowcher NEGOTIATION
Frozen Columns
Name
Silvio Z Malet
Leon Q Bolognia
Wickens M Caldarera
David J Whobrey
Arvin Y Malet
Claire Z Vocelka
Rodrigues H Briddick
Faith V Inouye
Ivar X Waycott
Julie O Stenseth
Antonio D Dilliard
Julie X Schemmer
Murillo O Chui
Julie X Perin
Tony W Whobrey
Jefferson N Darakjy
Morrow Z Glick
Aruna H Bolognia
Ivar D Flosi
Greenwood U Tollner
Kadeem Z Ferencz
Ashley O Dilliard
Maisha A Butt
Aika C Ostrosky
Isabel E Doe
Jones P Gillian
Juan F Morasca
Alejandro Y Waycott
Jefferson A Tollner
Claire W Garufi
Ricardo K Oldroyd
Antonio O Amigon
Leon G Poquette
Julie F Waycott
Alejandro W Gaucho
Ricardo A Dilliard
Alejandro N Bolognia
Costa C Chui
Leon N Iturbide
Costa D Bolognia
Adams B Bowley
Silvio X Royster
Maria L Rim
Izzy A Kusko
Jennifer U Iturbide
Maisha O Dilliard
Jefferson R Caldarera
Rodrigues A Vocelka
Jefferson Z Oldroyd
Cody T Bolognia
IdCountryDate
1000India2024-06-01
1001Brazil2024-05-20
1002Spain2024-06-14
1003Argentina2024-06-09
1004United Kingdom2024-06-08
1005Russia2024-05-28
1006Spain2024-06-16
1007Russia2024-05-24
1008Australia2024-06-02
1009Italy2024-06-14
1010India2024-06-04
1011United Kingdom2024-06-16
1012Russia2024-06-15
1013Spain2024-05-24
1014Australia2024-05-21
1015India2024-06-01
1016Spain2024-05-26
1017France2024-05-29
1018Canada2024-06-13
1019France2024-05-20
1020Brazil2024-05-21
1021Spain2024-05-25
1022Germany2024-05-26
1023Canada2024-06-09
1024Japan2024-05-26
1025France2024-06-15
1026Argentina2024-06-03
1027United Kingdom2024-06-16
1028Japan2024-05-31
1029Australia2024-06-05
1030Japan2024-05-25
1031India2024-05-19
1032Russia2024-06-17
1033Brazil2024-06-13
1034United Kingdom2024-06-07
1035Australia2024-06-03
1036Brazil2024-06-12
1037Brazil2024-05-21
1038Argentina2024-05-27
1039Canada2024-05-27
1040Germany2024-06-01
1041Russia2024-05-21
1042India2024-06-01
1043Spain2024-05-20
1044Germany2024-05-30
1045Russia2024-06-04
1046France2024-06-12
1047Spain2024-05-30
1048Brazil2024-05-21
1049United Kingdom2024-06-08

On-Demand Data

NameIdCountryDate
Ricardo K Tollner1000Australia2024-06-15
James Q Tollner1001Germany2024-06-05
Smith U Saylors1002Canada2024-06-06
James J Butt1003Japan2024-06-08
Cody S Rulapaugh1004Spain2024-06-16
Misaki Z Rim1005India2024-06-14
Murillo N Rulapaugh1006Italy2024-06-04
Aika E Malet1007Spain2024-06-13
Maisha S Figeroa1008Russia2024-06-09
Aruna X Saylors1009Germany2024-06-08
Kaitlin E Tollner1010Argentina2024-05-20
Chavez S Inouye1011Canada2024-06-06
Maisha Y Marrier1012Germany2024-05-29
Kadeem K Schemmer1013Italy2024-05-27
Octavia I Campain1014Russia2024-05-25
Isabel L Rim1015Spain2024-06-01
Tony C Bowley1016Germany2024-06-10
Francesco Q Briddick1017Brazil2024-06-05
Mujtaba V Kusko1018United Kingdom2024-05-30
Maisha M Tollner1019Argentina2024-06-11
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Nicolas O FollerBrazilElwin Sharvill RENEWAL
Clifford B PoquetteIndiaXuxue Feng NEW
Mayumi Z AmigonItalyOnyama Limba PROPOSAL
Costa H TollnerBrazilIoni Bowcher NEW
Jones S StockhamItalyAnna Fali RENEWAL
Aditya X StensethFranceIoni Bowcher RENEWAL
Darci C TollnerBrazilStephen Shaw QUALIFIED
Izzy M MorascaRussiaXuxue Feng PROPOSAL
Julie W MaletBrazilOnyama Limba QUALIFIED
Tony R CaldareraGermanyBernardo Dominic UNQUALIFIED
Ivar Z MorascaUnited KingdomStephen Shaw QUALIFIED
Claire D KuskoIndiaElwin Sharvill QUALIFIED
Octavia N WhobreyArgentinaElwin Sharvill NEW
Greenwood D MaletBrazilStephen Shaw NEW
Costa E TollnerCanadaStephen Shaw NEW
Isabel H DarakjyAustraliaAsiya Javayant UNQUALIFIED
Isabel M VenereAustraliaStephen Shaw NEW
Juan J DilliardGermanyBernardo Dominic QUALIFIED
Stacey D AmigonJapanIvan Magalhaes PROPOSAL
Tony I InouyeGermanyAmy Elsner NEGOTIATION
Greenwood K VocelkaRussiaStephen Shaw RENEWAL
Antonio R PoquetteBrazilElwin Sharvill QUALIFIED
Jones X MacleadRussiaBernardo Dominic UNQUALIFIED
Leja R KolmetzSpainAmy Elsner PROPOSAL
Maisha F IturbideRussiaAnna Fali UNQUALIFIED
Aika T CaldareraFranceOnyama Limba QUALIFIED
Silvio B MacleadAustraliaIvan Magalhaes NEGOTIATION
Wickens T RulapaughArgentinaAnna Fali UNQUALIFIED
David V ChuiSpainAnna Fali UNQUALIFIED
Ricardo L WaycottUnited KingdomAmy Elsner RENEWAL
Deepesh N SchemmerIndiaAnna Fali NEW
Jennifer R BologniaJapanAsiya Javayant NEW
Octavia A MarrierJapanAsiya Javayant PROPOSAL
Octavia B RulapaughIndiaOnyama Limba PROPOSAL
Sinclair C MorascaGermanyBernardo Dominic QUALIFIED
Isabel U PaprockiArgentinaAsiya Javayant UNQUALIFIED
Julie J WhobreyGermanyXuxue Feng QUALIFIED
Morrow V BriddickArgentinaAnna Fali RENEWAL
Arvin Z StockhamItalyBernardo Dominic QUALIFIED
Leon E StensethGermanyAsiya Javayant UNQUALIFIED

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