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
Ashley Z VenereItalyIvan Magalhaes QUALIFIED
Mujtaba E GlickCanadaAmy Elsner NEGOTIATION
Emily C ButtGermanyAnna Fali QUALIFIED
Deepesh N RimFranceAmy Elsner PROPOSAL
Cody R CaudyAustraliaElwin Sharvill NEGOTIATION
Arvin P PaprockiBrazilAmy Elsner RENEWAL
Salvatore W PaprockiSpainIoni Bowcher NEW
Kaitlin X StockhamRussiaOnyama Limba NEGOTIATION
Maria O SergiSpainAsiya Javayant PROPOSAL
Arvin Y StockhamUnited KingdomAsiya Javayant NEW
Rodrigues M ShinkoGermanyIoni Bowcher QUALIFIED
Ivar M SchemmerFranceElwin Sharvill NEW
Julie Q TollnerUnited KingdomXuxue Feng NEGOTIATION
Wickens P BriddickJapanBernardo Dominic NEW
Morrow T GauchoRussiaElwin Sharvill UNQUALIFIED
Silvio M SlusarskiCanadaElwin Sharvill QUALIFIED
Maisha J MaletUnited KingdomAmy Elsner UNQUALIFIED
Maisha F OldroydArgentinaAnna Fali PROPOSAL
Arvin T GlickUnited KingdomXuxue Feng UNQUALIFIED
Aika G RutaRussiaAmy Elsner PROPOSAL
Arvin K IturbideBrazilIvan Magalhaes PROPOSAL
Kadeem A ChuiGermanyAmy Elsner NEGOTIATION
Nicolas H BriddickFranceXuxue Feng PROPOSAL
Salvatore C FerenczAustraliaIvan Magalhaes RENEWAL
Jones U DoeBrazilIoni Bowcher QUALIFIED
Salvatore E NickaFranceOnyama Limba NEW
David H RulapaughCanadaXuxue Feng RENEWAL
Greenwood M CaudyJapanOnyama Limba QUALIFIED
Maria P CaldareraUnited KingdomXuxue Feng UNQUALIFIED
Aruna P GillianGermanyOnyama Limba NEGOTIATION
James L MacleadFranceStephen Shaw PROPOSAL
Francesco H RutaItalyOnyama Limba RENEWAL
Greenwood D InouyeBrazilElwin Sharvill UNQUALIFIED
Julie F KolmetzArgentinaOnyama Limba NEGOTIATION
David N DarakjyGermanyElwin Sharvill PROPOSAL
Misaki Z MacleadSpainStephen Shaw UNQUALIFIED
Deepesh M BowleyCanadaAmy Elsner NEW
Aditya N ChuiIndiaAsiya Javayant NEGOTIATION
Morrow Q RoysterRussiaIoni Bowcher RENEWAL
Costa G BowleyBrazilAmy Elsner RENEWAL
Greenwood S OstroskyArgentinaStephen Shaw NEW
Jeanfrancois B MaletSpainIvan Magalhaes RENEWAL
Salvatore R IturbideBrazilIvan Magalhaes NEGOTIATION
Tony P GillianAustraliaAmy Elsner NEGOTIATION
Sinclair U BologniaGermanyElwin Sharvill NEW
Deepesh V FerenczGermanyIvan Magalhaes PROPOSAL
Jefferson J FerenczSpainBernardo Dominic RENEWAL
Rodrigues U FlosiGermanyIoni Bowcher RENEWAL
Leon A SaylorsFranceIoni Bowcher NEW
Wickens V PaprockiItalyXuxue Feng NEW
Horizontal
NameCountryRepresentativeStatus
Clifford E PaprockiSpainXuxue Feng QUALIFIED
Maria T CaldareraGermanyAnna Fali PROPOSAL
Rodrigues S MacleadGermanyAsiya Javayant RENEWAL
Faith P StensethArgentinaAmy Elsner QUALIFIED
Antonio T DoeJapanIoni Bowcher QUALIFIED
James P TollnerJapanIvan Magalhaes PROPOSAL
Leja A RutaJapanIvan Magalhaes PROPOSAL
Stacey A CaudyJapanOnyama Limba NEGOTIATION
Adams F CampainRussiaAnna Fali NEGOTIATION
Claire F RutaUnited KingdomIoni Bowcher RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Faith R DarakjyGermany2024-05-21Benton, John B Jr PROPOSAL16Asiya Javayant
1001Tony O VenereAustralia2024-05-17Rousseaux, Michael Esq NEGOTIATION19Amy Elsner
1002Julie M GlickGermany2024-05-02Dorl, James J Esq QUALIFIED85Stephen Shaw
1003Rodrigues D RutaRussia2024-05-09Dorl, James J Esq RENEWAL37Amy Elsner
1004Jefferson V AlbaresRussia2024-05-29Truhlar And Truhlar Attys NEGOTIATION87Ivan Magalhaes
1005Clifford W DilliardUnited Kingdom2024-05-08Benton, John B Jr NEGOTIATION25Amy Elsner
1006Chavez H DarakjyBrazil2024-05-02Printing Dimensions UNQUALIFIED44Stephen Shaw
1007Wickens Y RulapaughGermany2024-05-20Feltz Printing Service QUALIFIED28Xuxue Feng
1008James L RoysterGermany2024-05-27Feltz Printing Service QUALIFIED8Stephen Shaw
1009Kadeem W MaletRussia2024-05-31Feiner Bros UNQUALIFIED51Ivan Magalhaes
1010Claire T PaprockiCanada2024-05-02Benton, John B Jr QUALIFIED8Onyama Limba
1011Smith Z AlbaresUnited Kingdom2024-05-25Truhlar And Truhlar Attys NEW66Ioni Bowcher
1012Aditya R VenereBrazil2024-05-29Feltz Printing Service NEW0Anna Fali
1013Silvio P StockhamArgentina2024-05-05Rangoni Of Florence PROPOSAL60Ioni Bowcher
1014James Y FigeroaIndia2024-05-17Printing Dimensions NEW45Asiya Javayant
1015Jefferson K AmigonCanada2024-05-25Chemel, James L Cpa QUALIFIED86Anna Fali
1016Alejandro F WaycottAustralia2024-05-25Benton, John B Jr PROPOSAL5Elwin Sharvill
1017Leon A SergiUnited Kingdom2024-05-05Buckley Miller Wright NEW28Xuxue Feng
1018Ivar C RulapaughItaly2024-05-14Commercial Press QUALIFIED26Ivan Magalhaes
1019Maria E GlickRussia2024-05-09Rangoni Of Florence NEGOTIATION17Xuxue Feng
1020Antonio R FigeroaBrazil2024-05-12Commercial Press UNQUALIFIED99Onyama Limba
1021Deepesh S BowleyBrazil2024-05-04Rangoni Of Florence QUALIFIED91Anna Fali
1022Jones I BowleyCanada2024-05-05Benton, John B Jr NEW33Stephen Shaw
1023Chavez I AlbaresBrazil2024-05-27Buckley Miller Wright PROPOSAL69Ioni Bowcher
1024Greenwood A NestleAustralia2024-05-24King, Christopher A Esq NEGOTIATION24Amy Elsner
1025Murillo A DoeIndia2024-05-17Truhlar And Truhlar Attys NEW66Ioni Bowcher
1026Johnson M NickaGermany2024-05-13Chemel, James L Cpa RENEWAL64Onyama Limba
1027Izzy G SchemmerJapan2024-05-21King, Christopher A Esq UNQUALIFIED11Asiya Javayant
1028Arvin M MarrierSpain2024-05-26Morlong Associates NEW92Stephen Shaw
1029Ivar E SaylorsCanada2024-05-28Chemel, James L Cpa PROPOSAL44Amy Elsner
1030Clifford E DilliardSpain2024-05-29Feltz Printing Service NEGOTIATION11Bernardo Dominic
1031Kaitlin O MaletGermany2024-05-29Buckley Miller Wright UNQUALIFIED29Bernardo Dominic
1032Rodrigues H PaprockiRussia2024-05-12Feiner Bros UNQUALIFIED29Bernardo Dominic
1033James Q NestleCanada2024-05-10Benton, John B Jr NEW59Ivan Magalhaes
1034Silvio I NestleItaly2024-05-21Morlong Associates QUALIFIED97Amy Elsner
1035Maisha A RimUnited Kingdom2024-05-14Benton, John B Jr UNQUALIFIED5Anna Fali
1036Munro M AmigonRussia2024-05-29Commercial Press NEW49Asiya Javayant
1037Murillo A OldroydItaly2024-05-09Buckley Miller Wright PROPOSAL70Bernardo Dominic
1038Julie M KuskoArgentina2024-05-21Benton, John B Jr PROPOSAL48Anna Fali
1039Jeanfrancois E GillianArgentina2024-05-06Benton, John B Jr UNQUALIFIED46Xuxue Feng
1040Munro N BriddickSpain2024-05-14Rousseaux, Michael Esq NEGOTIATION58Amy Elsner
1041Octavia N FigeroaFrance2024-05-25Feiner Bros RENEWAL0Xuxue Feng
1042Aruna I MarrierItaly2024-05-23King, Christopher A Esq RENEWAL78Anna Fali
1043Ricardo G ShinkoFrance2024-05-23Feltz Printing Service UNQUALIFIED31Ivan Magalhaes
1044Silvio K AlbaresSpain2024-05-15Benton, John B Jr NEGOTIATION93Xuxue Feng
1045Nicolas J FigeroaItaly2024-05-08Feltz Printing Service NEW60Stephen Shaw
1046Mujtaba D NickaSpain2024-05-07Chapman, Ross E Esq PROPOSAL85Asiya Javayant
1047Jennifer Q CaudySpain2024-05-09Printing Dimensions UNQUALIFIED41Ivan Magalhaes
1048Faith X CaudyJapan2024-05-23King, Christopher A Esq PROPOSAL35Elwin Sharvill
1049Salvatore P AmigonSpain2024-05-19Morlong Associates QUALIFIED17Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Juan A StockhamGermanyAmy Elsner QUALIFIED
Smith H StockhamBrazilOnyama Limba RENEWAL
Silvio I GlickRussiaOnyama Limba NEW
Octavia D CampainSpainStephen Shaw QUALIFIED
Cody W NestleFranceAmy Elsner PROPOSAL
Kaitlin S BriddickBrazilXuxue Feng NEW
Claire A WhobreyArgentinaIoni Bowcher NEGOTIATION
Salvatore Q PoquetteRussiaStephen Shaw QUALIFIED
Aruna Z GillianGermanyBernardo Dominic NEW
Maria T MacleadArgentinaAsiya Javayant PROPOSAL
Claire J PoquetteUnited KingdomStephen Shaw NEGOTIATION
Arvin S WhobreyIndiaIvan Magalhaes UNQUALIFIED
Juan A CampainJapanIoni Bowcher UNQUALIFIED
Wickens I OldroydRussiaXuxue Feng QUALIFIED
Maria B SaylorsRussiaElwin Sharvill NEW
Kadeem Z MarrierCanadaAnna Fali UNQUALIFIED
James K ShinkoItalyBernardo Dominic NEW
Morrow K FerenczItalyOnyama Limba NEGOTIATION
Rodrigues Q RutaJapanStephen Shaw PROPOSAL
Nicolas A DarakjyRussiaBernardo Dominic NEGOTIATION
Murillo N SchemmerSpainBernardo Dominic RENEWAL
Chavez D DoeFranceIoni Bowcher UNQUALIFIED
Costa A RimUnited KingdomAnna Fali NEGOTIATION
Izzy K RimSpainIoni Bowcher NEGOTIATION
Ashley K MaletJapanAmy Elsner NEGOTIATION
Jones V MorascaSpainStephen Shaw QUALIFIED
Aika Q WieserCanadaAsiya Javayant UNQUALIFIED
Ricardo B ButtBrazilAsiya Javayant UNQUALIFIED
James E VocelkaSpainAsiya Javayant NEW
Darci F RimSpainIoni Bowcher UNQUALIFIED
Darci I NickaJapanElwin Sharvill NEW
Jones M SergiItalyAsiya Javayant NEGOTIATION
Munro J PerinFranceIvan Magalhaes QUALIFIED
Aika O WhobreyItalyOnyama Limba NEW
Adams M IturbideCanadaElwin Sharvill RENEWAL
Octavia J PaprockiCanadaIvan Magalhaes UNQUALIFIED
Jefferson A MacleadUnited KingdomElwin Sharvill NEGOTIATION
Aruna K BologniaRussiaBernardo Dominic QUALIFIED
Izzy M FlosiItalyBernardo Dominic UNQUALIFIED
Jefferson V FlosiJapanBernardo Dominic QUALIFIED
Maisha Q OstroskyIndiaAsiya Javayant NEW
Greenwood U FlosiFranceIoni Bowcher QUALIFIED
Aika M MacleadBrazilAmy Elsner NEGOTIATION
Leon Y InouyeUnited KingdomXuxue Feng QUALIFIED
Aditya L IturbideJapanStephen Shaw NEGOTIATION
Nicolas O GillianSpainAnna Fali NEGOTIATION
Izzy G GlickSpainAsiya Javayant NEGOTIATION
Adams L WaycottJapanAnna Fali NEGOTIATION
Leja S OldroydBrazilOnyama Limba UNQUALIFIED
Kadeem I BowleyBrazilElwin Sharvill UNQUALIFIED
Frozen Columns
Name
Leja Y Rim
Jennifer L Saylors
Francesco F Slusarski
James P Kusko
Faith T Amigon
Deepesh N Flosi
Emily X Paprocki
Wickens O Gillian
Chavez C Butt
Tony Z Campain
Maria W Ruta
Kaitlin V Venere
Misaki O Malet
Alejandro P Paprocki
Leon H Rim
Antonio S Tollner
Alejandro U Glick
Octavia O Kusko
Antonio V Bowley
Leja Z Figeroa
Juan L Maclead
Darci L Doe
Ricardo I Poquette
Kaitlin Q Saylors
David R Caldarera
Ashley B Albares
Darci F Gaucho
Leja S Ostrosky
Chavez F Slusarski
Kadeem A Sergi
Leja C Foller
Costa M Caldarera
Juan H Garufi
Julie U Slusarski
Smith K Kusko
Johnson M Shinko
Tony I Rim
Jennifer H Glick
Jones R Stenseth
Octavia U Stenseth
Kadeem B Gaucho
Mayumi Q Paprocki
Emily B Tollner
Isabel J Royster
Greenwood A Stenseth
David S Oldroyd
Isabel N Slusarski
Claire S Poquette
Maria V Whobrey
Ivar K Gillian
IdCountryDate
1000Germany2024-05-20
1001Argentina2024-05-13
1002Italy2024-05-23
1003Germany2024-05-03
1004Canada2024-05-12
1005Australia2024-05-08
1006United Kingdom2024-05-03
1007Brazil2024-05-04
1008France2024-05-08
1009United Kingdom2024-05-14
1010Germany2024-05-11
1011Canada2024-05-23
1012United Kingdom2024-05-13
1013India2024-05-29
1014Australia2024-05-29
1015Italy2024-05-31
1016United Kingdom2024-05-25
1017Spain2024-05-22
1018Argentina2024-05-18
1019Argentina2024-05-06
1020France2024-05-24
1021France2024-05-05
1022Argentina2024-05-18
1023Russia2024-05-14
1024Canada2024-05-06
1025Russia2024-05-29
1026Japan2024-05-29
1027Germany2024-05-12
1028Spain2024-05-18
1029India2024-05-19
1030India2024-05-30
1031Spain2024-05-06
1032Argentina2024-05-19
1033Japan2024-05-05
1034Japan2024-05-07
1035Brazil2024-05-22
1036India2024-05-12
1037United Kingdom2024-05-06
1038United Kingdom2024-05-17
1039Japan2024-05-30
1040Argentina2024-05-06
1041India2024-05-14
1042Russia2024-05-21
1043Canada2024-05-29
1044Italy2024-05-12
1045Italy2024-05-19
1046India2024-05-05
1047France2024-05-02
1048Argentina2024-05-15
1049Russia2024-05-31

On-Demand Data

NameIdCountryDate
Faith K Shinko1000Spain2024-05-09
Stacey P Royster1001Russia2024-05-21
Costa G Rulapaugh1002Argentina2024-05-25
Juan C Bowley1003France2024-05-24
Juan I Albares1004Germany2024-05-08
Claire Q Saylors1005United Kingdom2024-05-27
Sinclair S Schemmer1006India2024-05-04
Ivar H Figeroa1007Japan2024-05-24
Emily E Wieser1008Italy2024-05-17
Antonio C Paprocki1009Germany2024-05-10
Jennifer O Malet1010Argentina2024-05-03
Jennifer N Sergi1011Italy2024-05-25
James A Glick1012Brazil2024-05-06
James R Campain1013Germany2024-05-17
Rodrigues Z Amigon1014Canada2024-05-03
Jennifer O Rim1015Argentina2024-05-10
James Z Inouye1016Russia2024-05-19
Nicolas M Doe1017United Kingdom2024-05-24
Nicolas Y Darakjy1018Spain2024-05-06
Emily S Ostrosky1019Japan2024-05-13
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
David N StockhamJapanStephen Shaw NEGOTIATION
Maisha W GlickAustraliaBernardo Dominic QUALIFIED
Stacey P MarrierItalyXuxue Feng QUALIFIED
Isabel B FigeroaArgentinaAmy Elsner NEW
Deepesh M SergiFranceOnyama Limba RENEWAL
Jennifer Q FigeroaRussiaElwin Sharvill NEGOTIATION
Alejandro H MorascaUnited KingdomXuxue Feng QUALIFIED
Tony Z StensethBrazilOnyama Limba NEGOTIATION
Deepesh V GillianCanadaIvan Magalhaes UNQUALIFIED
Francesco V SlusarskiFranceIvan Magalhaes UNQUALIFIED
Maria Z CampainUnited KingdomIoni Bowcher QUALIFIED
Claire W SergiCanadaIvan Magalhaes UNQUALIFIED
Deepesh K PerinRussiaStephen Shaw PROPOSAL
Julie D ChuiAustraliaElwin Sharvill UNQUALIFIED
James Z ChuiRussiaAmy Elsner NEGOTIATION
Greenwood A IturbideUnited KingdomAsiya Javayant NEW
Ashley M RutaGermanyBernardo Dominic RENEWAL
James H VenereFranceXuxue Feng PROPOSAL
Ivar R OldroydArgentinaAsiya Javayant UNQUALIFIED
Johnson A CaudyBrazilStephen Shaw UNQUALIFIED
Chavez D OldroydAustraliaIoni Bowcher PROPOSAL
Alejandro O GillianItalyIoni Bowcher PROPOSAL
Emily C DilliardArgentinaXuxue Feng NEW
Alejandro H NestleAustraliaOnyama Limba UNQUALIFIED
Jones K KuskoUnited KingdomAmy Elsner PROPOSAL
David W TollnerRussiaStephen Shaw UNQUALIFIED
Julie Z MorascaCanadaStephen Shaw PROPOSAL
Adams S SaylorsGermanyIvan Magalhaes NEW
Aruna K BowleyAustraliaAmy Elsner QUALIFIED
Kaitlin O RoysterBrazilElwin Sharvill PROPOSAL
Francesco Y ShinkoJapanIoni Bowcher UNQUALIFIED
Munro O DilliardCanadaXuxue Feng QUALIFIED
Adams P KuskoCanadaBernardo Dominic QUALIFIED
Munro B CaudySpainOnyama Limba NEGOTIATION
Sinclair V KolmetzRussiaIvan Magalhaes PROPOSAL
Maisha G FlosiGermanyXuxue Feng NEW
Munro W CampainBrazilIvan Magalhaes NEW
Isabel T WhobreyAustraliaOnyama Limba NEGOTIATION
Izzy U RimSpainAsiya Javayant NEGOTIATION
Aika Y DarakjyJapanAnna Fali RENEWAL

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