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
Claire W BowleyGermanyStephen Shaw NEW
Deepesh O DilliardRussiaAnna Fali NEGOTIATION
Morrow G DilliardArgentinaBernardo Dominic NEGOTIATION
Nicolas E TollnerSpainAsiya Javayant PROPOSAL
Chavez R MaletRussiaOnyama Limba QUALIFIED
Smith Y SchemmerArgentinaIoni Bowcher QUALIFIED
Darci Z NestleGermanyBernardo Dominic QUALIFIED
Kaitlin G FlosiSpainBernardo Dominic UNQUALIFIED
Kaitlin G RulapaughItalyIoni Bowcher PROPOSAL
Mayumi C BowleyArgentinaAmy Elsner UNQUALIFIED
Mayumi D GarufiJapanElwin Sharvill PROPOSAL
Darci Q AlbaresBrazilIvan Magalhaes UNQUALIFIED
Kaitlin N ShinkoFranceIvan Magalhaes RENEWAL
Isabel W FlosiItalyAsiya Javayant NEGOTIATION
James B WieserBrazilBernardo Dominic NEW
Leja S GauchoArgentinaAnna Fali PROPOSAL
Aika F ButtIndiaAmy Elsner RENEWAL
Claire J MorascaJapanAnna Fali UNQUALIFIED
Ashley P FigeroaUnited KingdomAmy Elsner UNQUALIFIED
Faith I AlbaresRussiaOnyama Limba PROPOSAL
Aruna N SlusarskiGermanyBernardo Dominic UNQUALIFIED
Maisha R ChuiItalyStephen Shaw PROPOSAL
Antonio C InouyeSpainXuxue Feng PROPOSAL
Greenwood W TollnerCanadaAnna Fali PROPOSAL
Kaitlin N StensethGermanyIvan Magalhaes PROPOSAL
Mayumi M FlosiJapanXuxue Feng NEGOTIATION
Kadeem N WaycottIndiaOnyama Limba UNQUALIFIED
Jones I GillianJapanAsiya Javayant QUALIFIED
Arvin B GlickItalyAsiya Javayant NEW
Emily P CampainArgentinaAnna Fali NEW
Cody L BologniaUnited KingdomAmy Elsner PROPOSAL
Claire D DilliardAustraliaIoni Bowcher QUALIFIED
Mayumi H MacleadItalyStephen Shaw PROPOSAL
Rodrigues B KuskoIndiaIoni Bowcher NEW
Octavia Z ButtArgentinaBernardo Dominic PROPOSAL
Izzy R RoysterJapanXuxue Feng UNQUALIFIED
Mujtaba E PaprockiItalyIoni Bowcher NEGOTIATION
Johnson R SergiFranceAnna Fali RENEWAL
Leon O SlusarskiRussiaIvan Magalhaes PROPOSAL
Kaitlin K FollerItalyAsiya Javayant PROPOSAL
Wickens S MacleadAustraliaBernardo Dominic NEGOTIATION
David D IturbideFranceElwin Sharvill NEW
Ricardo J StensethCanadaElwin Sharvill RENEWAL
Francesco P BowleyGermanyElwin Sharvill NEGOTIATION
Mayumi S PoquetteBrazilBernardo Dominic PROPOSAL
Aika N MacleadArgentinaStephen Shaw UNQUALIFIED
Greenwood M CampainArgentinaIoni Bowcher QUALIFIED
James C StockhamBrazilOnyama Limba NEW
Murillo C PerinItalyBernardo Dominic PROPOSAL
Jones W WieserRussiaBernardo Dominic UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Cody E RutaIndiaAnna Fali RENEWAL
Wickens P NickaItalyIvan Magalhaes RENEWAL
Izzy F GauchoRussiaIvan Magalhaes NEW
Silvio E PoquetteUnited KingdomBernardo Dominic UNQUALIFIED
Antonio L SaylorsAustraliaXuxue Feng PROPOSAL
Rodrigues I DilliardUnited KingdomAsiya Javayant QUALIFIED
Adams G ButtArgentinaElwin Sharvill QUALIFIED
Misaki X TollnerBrazilAsiya Javayant NEGOTIATION
Jennifer G ChuiSpainElwin Sharvill NEGOTIATION
Juan A DoeBrazilAmy Elsner RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maria H FollerCanada2024-06-11Benton, John B Jr NEGOTIATION52Ioni Bowcher
1001Maria Q GauchoGermany2024-06-21Morlong Associates UNQUALIFIED54Anna Fali
1002Francesco S VocelkaArgentina2024-05-28Morlong Associates UNQUALIFIED52Asiya Javayant
1003Wickens G DarakjyUnited Kingdom2024-06-23Rousseaux, Michael Esq NEGOTIATION14Bernardo Dominic
1004Costa M BologniaUnited Kingdom2024-06-13Commercial Press QUALIFIED16Amy Elsner
1005Stacey H DoeItaly2024-06-16Rousseaux, Michael Esq NEGOTIATION91Anna Fali
1006Emily E DoeCanada2024-06-06King, Christopher A Esq NEW9Ioni Bowcher
1007Silvio M DoeUnited Kingdom2024-05-26Buckley Miller Wright QUALIFIED17Ioni Bowcher
1008Smith U MaletArgentina2024-05-30Dorl, James J Esq NEGOTIATION47Ivan Magalhaes
1009Johnson R NestleRussia2024-06-14Rousseaux, Michael Esq QUALIFIED62Elwin Sharvill
1010Misaki B StensethAustralia2024-06-11Commercial Press NEW56Ivan Magalhaes
1011Darci Y FigeroaCanada2024-06-13Feiner Bros QUALIFIED12Bernardo Dominic
1012Misaki H TollnerGermany2024-06-24Chapman, Ross E Esq PROPOSAL2Bernardo Dominic
1013Stacey X RoysterSpain2024-06-16Printing Dimensions PROPOSAL89Stephen Shaw
1014Misaki C IturbideRussia2024-05-27Chemel, James L Cpa NEGOTIATION12Elwin Sharvill
1015Maisha V KuskoSpain2024-06-12King, Christopher A Esq QUALIFIED25Ivan Magalhaes
1016Leon R BowleyCanada2024-06-04Commercial Press UNQUALIFIED4Onyama Limba
1017Ivar D DarakjyAustralia2024-06-02Rangoni Of Florence RENEWAL38Anna Fali
1018Aditya B VenereIndia2024-05-31Rousseaux, Michael Esq NEW65Stephen Shaw
1019Emily A FollerCanada2024-06-02Rousseaux, Michael Esq PROPOSAL74Xuxue Feng
1020Mujtaba N MaletArgentina2024-06-17Buckley Miller Wright PROPOSAL76Xuxue Feng
1021Kadeem N StockhamFrance2024-06-13Feiner Bros PROPOSAL29Ivan Magalhaes
1022Leja K CampainBrazil2024-06-24Morlong Associates PROPOSAL83Anna Fali
1023Cody V RoysterItaly2024-06-13Chapman, Ross E Esq PROPOSAL2Ivan Magalhaes
1024Silvio P FerenczGermany2024-05-27Feiner Bros NEGOTIATION3Asiya Javayant
1025Munro Q ShinkoGermany2024-06-02Rousseaux, Michael Esq NEW20Anna Fali
1026Arvin O RutaCanada2024-06-11Rousseaux, Michael Esq PROPOSAL18Amy Elsner
1027Stacey M RimRussia2024-05-28Commercial Press QUALIFIED72Anna Fali
1028Johnson I ShinkoSpain2024-05-28Feltz Printing Service NEW8Xuxue Feng
1029Ivar H CampainArgentina2024-06-11Commercial Press NEW43Onyama Limba
1030Clifford W AmigonBrazil2024-05-29Dorl, James J Esq QUALIFIED72Amy Elsner
1031James B InouyeBrazil2024-06-03Chapman, Ross E Esq QUALIFIED63Bernardo Dominic
1032Darci G PerinRussia2024-05-26Printing Dimensions RENEWAL39Ivan Magalhaes
1033Julie I BologniaGermany2024-06-03Feiner Bros NEGOTIATION30Onyama Limba
1034Greenwood H OstroskyItaly2024-06-18Chanay, Jeffrey A Esq QUALIFIED67Elwin Sharvill
1035Leja A FigeroaIndia2024-05-28Buckley Miller Wright QUALIFIED33Elwin Sharvill
1036Sinclair M GillianAustralia2024-06-12Rousseaux, Michael Esq NEGOTIATION96Asiya Javayant
1037Jennifer V VenereGermany2024-06-15Rangoni Of Florence NEGOTIATION70Onyama Limba
1038Jones U RutaArgentina2024-06-24Buckley Miller Wright NEW5Onyama Limba
1039Octavia P WhobreyFrance2024-05-29Chanay, Jeffrey A Esq UNQUALIFIED83Elwin Sharvill
1040Costa G DilliardAustralia2024-05-26Benton, John B Jr QUALIFIED46Anna Fali
1041Antonio C CaudyGermany2024-05-28Feltz Printing Service PROPOSAL19Stephen Shaw
1042Murillo E MaletFrance2024-06-21Chapman, Ross E Esq QUALIFIED78Elwin Sharvill
1043Octavia G NickaSpain2024-06-08Chapman, Ross E Esq NEGOTIATION59Bernardo Dominic
1044Costa M DoeItaly2024-05-31Truhlar And Truhlar Attys PROPOSAL85Bernardo Dominic
1045David A GillianRussia2024-06-11Rangoni Of Florence UNQUALIFIED36Ivan Magalhaes
1046Silvio R NestleFrance2024-06-24Feltz Printing Service QUALIFIED15Asiya Javayant
1047David O WhobreyAustralia2024-06-15Truhlar And Truhlar Attys NEW31Stephen Shaw
1048Claire E CaldareraGermany2024-06-15Chanay, Jeffrey A Esq QUALIFIED22Ivan Magalhaes
1049Faith O SaylorsItaly2024-06-17Commercial Press NEGOTIATION15Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Johnson H FlosiFranceAsiya Javayant PROPOSAL
Leon Y GarufiJapanBernardo Dominic NEGOTIATION
Clifford K SlusarskiIndiaIoni Bowcher NEGOTIATION
Juan Z GlickItalyAmy Elsner NEW
Ivar G RutaAustraliaAsiya Javayant PROPOSAL
Adams Y SergiRussiaBernardo Dominic QUALIFIED
Isabel F IturbideFranceIvan Magalhaes QUALIFIED
Salvatore S MaletAustraliaIvan Magalhaes UNQUALIFIED
Aruna L SchemmerFranceXuxue Feng PROPOSAL
Misaki R SergiItalyStephen Shaw QUALIFIED
Tony K DarakjyItalyIvan Magalhaes RENEWAL
Clifford A InouyeCanadaIoni Bowcher NEW
Jeanfrancois F SaylorsFranceIvan Magalhaes UNQUALIFIED
Costa C NestleBrazilAsiya Javayant NEW
Arvin B MacleadAustraliaAnna Fali UNQUALIFIED
Jeanfrancois A PerinGermanyAmy Elsner NEW
Johnson R GillianGermanyAsiya Javayant NEW
Emily H SaylorsUnited KingdomIoni Bowcher UNQUALIFIED
Murillo J SaylorsJapanStephen Shaw NEW
Greenwood N FerenczAustraliaAnna Fali NEGOTIATION
Cody B RulapaughArgentinaIvan Magalhaes NEGOTIATION
Wickens I MaletGermanyIoni Bowcher PROPOSAL
Faith E TollnerUnited KingdomIvan Magalhaes NEGOTIATION
Misaki U FollerJapanXuxue Feng NEW
Isabel S SchemmerRussiaStephen Shaw RENEWAL
Mayumi G FerenczSpainElwin Sharvill NEW
David E KuskoSpainXuxue Feng RENEWAL
Faith E BologniaBrazilIvan Magalhaes QUALIFIED
Julie R ButtAustraliaIoni Bowcher NEGOTIATION
Jefferson M WieserItalyStephen Shaw NEW
Francesco U MacleadJapanBernardo Dominic RENEWAL
Aika E KuskoGermanyAmy Elsner RENEWAL
Arvin E MarrierSpainXuxue Feng NEGOTIATION
Antonio B CaudyIndiaIoni Bowcher PROPOSAL
Jennifer G WaycottGermanyBernardo Dominic NEW
Kadeem B StockhamCanadaIvan Magalhaes PROPOSAL
Alejandro E ChuiFranceAmy Elsner RENEWAL
Aditya Y NickaCanadaStephen Shaw NEW
Faith I SchemmerAustraliaXuxue Feng NEGOTIATION
Munro L DoeJapanAnna Fali NEGOTIATION
Aditya Q CaudyUnited KingdomElwin Sharvill NEGOTIATION
Smith E SaylorsIndiaAsiya Javayant NEW
Jennifer C SchemmerFranceElwin Sharvill QUALIFIED
Aditya K PoquetteBrazilBernardo Dominic RENEWAL
Leja T KolmetzSpainXuxue Feng NEGOTIATION
Leja N RutaFranceElwin Sharvill NEW
Murillo G FerenczCanadaElwin Sharvill UNQUALIFIED
Alejandro Z OldroydArgentinaIvan Magalhaes NEGOTIATION
Salvatore P MaletUnited KingdomAmy Elsner NEGOTIATION
Aditya V WhobreyJapanStephen Shaw UNQUALIFIED
Frozen Columns
Name
James X Ostrosky
Sinclair U Malet
Salvatore E Figeroa
Ricardo G Kusko
Ashley Z Slusarski
Chavez J Bolognia
Faith C Morasca
David X Morasca
Deepesh X Slusarski
Costa J Wieser
Jeanfrancois I Ferencz
Deepesh X Kolmetz
Darci G Foller
Costa X Wieser
Antonio Q Poquette
Deepesh C Bolognia
Morrow O Maclead
Rodrigues Z Stenseth
Kaitlin H Oldroyd
Izzy W Butt
Aditya Y Inouye
Kadeem V Nestle
Salvatore A Gaucho
Leon Z Maclead
Antonio S Caudy
Salvatore E Gillian
Costa T Malet
Mujtaba Z Amigon
Misaki E Briddick
Kaitlin K Maclead
Misaki C Caldarera
Jennifer Y Morasca
Jefferson R Saylors
Maisha B Iturbide
Aruna X Bowley
Octavia O Bowley
Smith H Poquette
Jones E Bolognia
Leja V Slusarski
Stacey S Rulapaugh
Smith U Foller
Tony D Ruta
Stacey T Caudy
Rodrigues M Darakjy
Smith E Waycott
Isabel E Garufi
Tony S Slusarski
Izzy U Albares
Aika S Wieser
Aika G Bolognia
IdCountryDate
1000Russia2024-06-07
1001United Kingdom2024-05-30
1002Australia2024-06-09
1003Australia2024-06-05
1004India2024-05-27
1005Italy2024-06-15
1006Japan2024-06-01
1007Japan2024-06-18
1008United Kingdom2024-06-04
1009Germany2024-06-15
1010Italy2024-06-20
1011Canada2024-06-16
1012Germany2024-05-31
1013Japan2024-05-30
1014India2024-06-11
1015Russia2024-06-14
1016Brazil2024-06-16
1017Italy2024-06-04
1018Russia2024-06-09
1019Spain2024-05-26
1020United Kingdom2024-06-14
1021Canada2024-06-12
1022Argentina2024-05-30
1023Germany2024-06-09
1024Argentina2024-06-23
1025France2024-06-10
1026Argentina2024-06-24
1027United Kingdom2024-06-19
1028Japan2024-06-13
1029Russia2024-05-31
1030Italy2024-06-22
1031Japan2024-06-15
1032Spain2024-06-19
1033Italy2024-06-22
1034United Kingdom2024-05-26
1035Italy2024-06-06
1036India2024-06-11
1037Canada2024-06-19
1038Italy2024-06-03
1039India2024-05-28
1040Germany2024-06-18
1041United Kingdom2024-06-17
1042Argentina2024-06-23
1043Russia2024-06-02
1044India2024-06-20
1045Spain2024-06-06
1046Spain2024-06-03
1047United Kingdom2024-06-08
1048France2024-06-21
1049Australia2024-06-09

On-Demand Data

NameIdCountryDate
Kadeem X Malet1000Brazil2024-05-28
Kaitlin T Chui1001Canada2024-06-23
Cody U Waycott1002India2024-05-29
Deepesh J Ostrosky1003France2024-06-19
Morrow D Wieser1004Japan2024-06-18
Darci U Tollner1005Canada2024-06-21
Leon H Chui1006Argentina2024-06-13
Francesco I Ferencz1007France2024-06-22
Deepesh Z Wieser1008Japan2024-06-24
Salvatore S Amigon1009Argentina2024-06-14
Isabel A Slusarski1010Japan2024-06-09
Julie R Shinko1011India2024-06-15
Kaitlin G Figeroa1012Brazil2024-06-11
Kadeem J Stenseth1013Brazil2024-05-31
Maisha P Stockham1014Germany2024-06-21
Kadeem P Flosi1015Canada2024-06-21
Arvin M Kusko1016Germany2024-06-22
Leja G Whobrey1017United Kingdom2024-06-13
Cody M Albares1018France2024-06-11
Smith C Nicka1019Japan2024-05-29
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Arvin P MorascaJapanIvan Magalhaes PROPOSAL
Jefferson C DoeAustraliaXuxue Feng PROPOSAL
Costa R VocelkaGermanyBernardo Dominic NEGOTIATION
Chavez J GillianItalyAnna Fali RENEWAL
Alejandro D VocelkaArgentinaBernardo Dominic QUALIFIED
Claire W AlbaresCanadaXuxue Feng RENEWAL
Juan U BowleyJapanElwin Sharvill NEW
Antonio P WieserCanadaElwin Sharvill NEGOTIATION
Tony O CaudyAustraliaElwin Sharvill UNQUALIFIED
Alejandro O MacleadUnited KingdomElwin Sharvill QUALIFIED
Clifford S StensethCanadaIoni Bowcher NEGOTIATION
Salvatore R DarakjyUnited KingdomXuxue Feng NEW
Sinclair E PerinIndiaElwin Sharvill UNQUALIFIED
Ashley N RoysterJapanIvan Magalhaes NEW
Costa P BriddickArgentinaOnyama Limba NEGOTIATION
Aruna G RoysterUnited KingdomElwin Sharvill UNQUALIFIED
Maria W GauchoUnited KingdomAmy Elsner QUALIFIED
Morrow V AlbaresIndiaIoni Bowcher NEGOTIATION
Sinclair N AmigonCanadaIvan Magalhaes NEGOTIATION
Emily W IturbideFranceIoni Bowcher UNQUALIFIED
Darci E GillianArgentinaElwin Sharvill NEW
Mayumi O MorascaFranceStephen Shaw RENEWAL
Leja L FlosiRussiaAsiya Javayant PROPOSAL
Munro R CaldareraGermanyBernardo Dominic RENEWAL
Murillo E DilliardIndiaAsiya Javayant PROPOSAL
Izzy U ChuiJapanOnyama Limba QUALIFIED
Wickens B WhobreyCanadaElwin Sharvill UNQUALIFIED
David W CaldareraUnited KingdomXuxue Feng NEW
Misaki D DilliardUnited KingdomStephen Shaw NEGOTIATION
Mayumi H RimCanadaAmy Elsner PROPOSAL
Aika X GlickJapanBernardo Dominic NEW
Stacey Q BriddickBrazilBernardo Dominic NEGOTIATION
Sinclair E WhobreyFranceIoni Bowcher NEW
Maisha L RoysterCanadaStephen Shaw UNQUALIFIED
Izzy X KuskoItalyIvan Magalhaes RENEWAL
Claire N CampainRussiaIoni Bowcher UNQUALIFIED
Jennifer M PaprockiIndiaAsiya Javayant NEW
Aditya X VocelkaAustraliaStephen Shaw NEGOTIATION
Murillo S KuskoIndiaIoni Bowcher QUALIFIED
James U SchemmerItalyBernardo Dominic 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>