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 A SlusarskiRussiaAmy Elsner UNQUALIFIED
Kaitlin Q DarakjyJapanXuxue Feng PROPOSAL
Kaitlin C AmigonSpainXuxue Feng NEGOTIATION
Alejandro P BriddickBrazilElwin Sharvill NEW
Faith W InouyeCanadaXuxue Feng RENEWAL
Izzy F GarufiJapanAsiya Javayant NEGOTIATION
Aika D ShinkoFranceIvan Magalhaes RENEWAL
Murillo E StockhamBrazilOnyama Limba PROPOSAL
Tony O GarufiItalyOnyama Limba NEW
Johnson P BriddickAustraliaElwin Sharvill UNQUALIFIED
Faith R VocelkaAustraliaXuxue Feng PROPOSAL
Maisha S WieserGermanyAmy Elsner QUALIFIED
Antonio S DilliardIndiaIoni Bowcher QUALIFIED
Leja U GarufiArgentinaAnna Fali RENEWAL
Leon U PerinJapanOnyama Limba NEW
Maria W FlosiUnited KingdomIoni Bowcher UNQUALIFIED
Ivar P CaudySpainElwin Sharvill RENEWAL
Kadeem F WhobreyUnited KingdomStephen Shaw RENEWAL
Faith O WhobreyRussiaXuxue Feng NEW
Silvio Q MaletCanadaIoni Bowcher PROPOSAL
Sinclair I OstroskyFranceAmy Elsner NEW
David B KolmetzJapanStephen Shaw QUALIFIED
Jefferson D FollerFranceIoni Bowcher RENEWAL
Stacey T FlosiAustraliaIoni Bowcher NEGOTIATION
Arvin H MaletRussiaOnyama Limba QUALIFIED
Arvin G SchemmerCanadaElwin Sharvill NEW
Claire U BowleyBrazilElwin Sharvill RENEWAL
Julie A TollnerBrazilAmy Elsner RENEWAL
Aruna D CampainItalyAnna Fali UNQUALIFIED
Munro G NestleBrazilStephen Shaw PROPOSAL
Silvio U AlbaresItalyBernardo Dominic UNQUALIFIED
Claire U VenereItalyIvan Magalhaes RENEWAL
Octavia A MacleadCanadaAmy Elsner RENEWAL
Aruna Y GlickSpainAnna Fali NEW
Cody Q RimGermanyStephen Shaw RENEWAL
Clifford I PerinGermanyAsiya Javayant RENEWAL
Leon D BriddickItalyXuxue Feng RENEWAL
Juan W BowleyGermanyOnyama Limba NEGOTIATION
Johnson X FlosiArgentinaAsiya Javayant UNQUALIFIED
Greenwood X ShinkoJapanBernardo Dominic PROPOSAL
Tony Y MarrierCanadaIoni Bowcher UNQUALIFIED
Jones Y SergiGermanyIoni Bowcher UNQUALIFIED
Greenwood T InouyeArgentinaIoni Bowcher PROPOSAL
Murillo R ButtRussiaElwin Sharvill PROPOSAL
Silvio B WieserArgentinaIoni Bowcher NEW
Julie N FollerCanadaXuxue Feng RENEWAL
Wickens Y MorascaAustraliaOnyama Limba NEGOTIATION
Aruna F NestleItalyIoni Bowcher RENEWAL
Morrow U MacleadRussiaAsiya Javayant NEW
Smith N GauchoAustraliaAsiya Javayant PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Silvio J ShinkoCanadaAmy Elsner UNQUALIFIED
Emily Z VocelkaFranceElwin Sharvill RENEWAL
Octavia R ButtGermanyIoni Bowcher NEGOTIATION
Jones R StockhamFranceAmy Elsner UNQUALIFIED
Greenwood B ChuiFranceBernardo Dominic PROPOSAL
Maisha F VenereSpainBernardo Dominic RENEWAL
Claire B KolmetzJapanXuxue Feng PROPOSAL
Isabel O IturbideFranceAnna Fali RENEWAL
Silvio L WieserCanadaAmy Elsner RENEWAL
Izzy B NestleItalyOnyama Limba NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Chavez Q RutaItaly2024-06-10Morlong Associates QUALIFIED31Xuxue Feng
1001Antonio L GauchoUnited Kingdom2024-06-22Buckley Miller Wright UNQUALIFIED19Bernardo Dominic
1002Ashley E GauchoFrance2024-06-04Dorl, James J Esq NEW7Ioni Bowcher
1003Nicolas S RimBrazil2024-05-30Morlong Associates NEW39Elwin Sharvill
1004James U SaylorsIndia2024-06-01Chanay, Jeffrey A Esq NEW49Ioni Bowcher
1005Aditya Q GauchoIndia2024-06-05Chemel, James L Cpa NEW85Stephen Shaw
1006Cody Q VocelkaRussia2024-06-09Rangoni Of Florence QUALIFIED60Elwin Sharvill
1007Alejandro R SlusarskiArgentina2024-06-11Printing Dimensions RENEWAL48Anna Fali
1008Claire V KolmetzGermany2024-05-31Benton, John B Jr UNQUALIFIED25Bernardo Dominic
1009Julie U StockhamRussia2024-06-04Feiner Bros QUALIFIED55Stephen Shaw
1010Sinclair W BologniaBrazil2024-06-16Chapman, Ross E Esq PROPOSAL33Xuxue Feng
1011Mayumi V MorascaBrazil2024-06-07Commercial Press NEW40Stephen Shaw
1012Greenwood D PoquetteArgentina2024-06-07Rousseaux, Michael Esq NEGOTIATION9Xuxue Feng
1013Tony Z ButtUnited Kingdom2024-06-19Rousseaux, Michael Esq QUALIFIED55Asiya Javayant
1014Costa F WhobreyFrance2024-05-30Benton, John B Jr NEW47Anna Fali
1015Stacey C BriddickUnited Kingdom2024-06-21Commercial Press QUALIFIED65Amy Elsner
1016Cody P InouyeUnited Kingdom2024-06-19Feltz Printing Service QUALIFIED91Bernardo Dominic
1017Leon O FerenczJapan2024-06-17Feiner Bros QUALIFIED73Ivan Magalhaes
1018Morrow E ChuiItaly2024-06-15Feltz Printing Service UNQUALIFIED70Onyama Limba
1019Salvatore I DarakjyAustralia2024-06-18Commercial Press QUALIFIED50Xuxue Feng
1020Jones T PoquetteCanada2024-06-16Benton, John B Jr NEGOTIATION38Elwin Sharvill
1021Mujtaba D RutaCanada2024-05-31Commercial Press PROPOSAL92Onyama Limba
1022Aditya U DoeCanada2024-06-11Morlong Associates NEGOTIATION91Anna Fali
1023Wickens I PerinSpain2024-06-22Printing Dimensions PROPOSAL91Xuxue Feng
1024Rodrigues M MarrierGermany2024-06-05Chanay, Jeffrey A Esq RENEWAL29Asiya Javayant
1025Cody D GarufiFrance2024-06-08Rangoni Of Florence NEW66Anna Fali
1026Ivar K ChuiUnited Kingdom2024-06-12Chapman, Ross E Esq PROPOSAL70Xuxue Feng
1027Julie L SchemmerGermany2024-06-18Printing Dimensions UNQUALIFIED19Bernardo Dominic
1028Cody A NestleArgentina2024-06-03Rangoni Of Florence NEGOTIATION14Anna Fali
1029Greenwood M StockhamArgentina2024-06-20Rousseaux, Michael Esq QUALIFIED10Xuxue Feng
1030Isabel T MaletArgentina2024-06-10Printing Dimensions RENEWAL22Amy Elsner
1031Salvatore R SergiRussia2024-05-25Feiner Bros QUALIFIED44Xuxue Feng
1032Kaitlin D TollnerItaly2024-06-05Feltz Printing Service NEW10Stephen Shaw
1033Aruna D NickaRussia2024-06-16Chemel, James L Cpa QUALIFIED58Bernardo Dominic
1034Costa S CampainFrance2024-06-07Buckley Miller Wright QUALIFIED37Asiya Javayant
1035Nicolas R FlosiGermany2024-06-15Rousseaux, Michael Esq NEW32Bernardo Dominic
1036Faith O ChuiSpain2024-06-08Benton, John B Jr NEGOTIATION7Asiya Javayant
1037Silvio C TollnerIndia2024-06-03Feltz Printing Service NEGOTIATION66Ivan Magalhaes
1038Jeanfrancois B RulapaughGermany2024-05-26Truhlar And Truhlar Attys RENEWAL64Asiya Javayant
1039Izzy K NickaAustralia2024-06-04Printing Dimensions QUALIFIED41Elwin Sharvill
1040Adams E GauchoArgentina2024-06-19Morlong Associates UNQUALIFIED5Anna Fali
1041Leja D ChuiRussia2024-05-26King, Christopher A Esq NEW88Amy Elsner
1042Francesco J VenereJapan2024-06-10Dorl, James J Esq RENEWAL53Xuxue Feng
1043Alejandro M IturbideBrazil2024-06-15King, Christopher A Esq QUALIFIED3Amy Elsner
1044Claire G VenereAustralia2024-06-12Chapman, Ross E Esq UNQUALIFIED43Amy Elsner
1045Nicolas U MarrierAustralia2024-05-25Buckley Miller Wright NEGOTIATION51Ioni Bowcher
1046Tony Y VenereSpain2024-05-27Dorl, James J Esq UNQUALIFIED11Bernardo Dominic
1047Octavia D VocelkaRussia2024-05-27Feltz Printing Service RENEWAL32Ioni Bowcher
1048Jeanfrancois U RulapaughIndia2024-06-05Chemel, James L Cpa UNQUALIFIED34Amy Elsner
1049Isabel S TollnerSpain2024-06-04Commercial Press NEGOTIATION4Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Arvin S BowleyJapanStephen Shaw RENEWAL
Morrow F PoquetteBrazilIvan Magalhaes RENEWAL
Emily E VenereIndiaAsiya Javayant QUALIFIED
Clifford R FollerBrazilIvan Magalhaes QUALIFIED
Salvatore Y RutaFranceAmy Elsner PROPOSAL
Francesco F VenereBrazilAnna Fali RENEWAL
Alejandro V PoquetteBrazilIoni Bowcher PROPOSAL
Izzy S IturbideUnited KingdomAnna Fali NEW
Deepesh H GlickJapanElwin Sharvill NEW
Ricardo C MaletIndiaElwin Sharvill RENEWAL
Nicolas I CampainIndiaElwin Sharvill PROPOSAL
Ashley A GarufiCanadaStephen Shaw NEGOTIATION
Julie M WaycottRussiaStephen Shaw QUALIFIED
Emily D KolmetzJapanAsiya Javayant NEGOTIATION
Jeanfrancois A GlickCanadaStephen Shaw NEW
Faith I SaylorsSpainBernardo Dominic UNQUALIFIED
Wickens V VocelkaRussiaElwin Sharvill UNQUALIFIED
Wickens E FollerGermanyOnyama Limba PROPOSAL
Misaki M NestleJapanStephen Shaw PROPOSAL
Faith E MacleadArgentinaElwin Sharvill RENEWAL
Tony O GlickAustraliaStephen Shaw UNQUALIFIED
Aika X PaprockiJapanIoni Bowcher UNQUALIFIED
Ricardo W MorascaUnited KingdomBernardo Dominic QUALIFIED
Francesco N GarufiBrazilAnna Fali NEGOTIATION
Juan S PerinCanadaElwin Sharvill RENEWAL
Cody N GarufiGermanyAmy Elsner RENEWAL
Izzy V ChuiJapanAsiya Javayant NEGOTIATION
Izzy B BologniaGermanyElwin Sharvill NEW
Misaki I ChuiGermanyXuxue Feng RENEWAL
Clifford K OldroydItalyAmy Elsner PROPOSAL
Francesco I FerenczCanadaOnyama Limba PROPOSAL
Leon T BriddickIndiaIoni Bowcher NEW
Maria K SergiBrazilStephen Shaw UNQUALIFIED
Ricardo Z FollerIndiaAsiya Javayant PROPOSAL
Mujtaba S PoquetteIndiaIoni Bowcher UNQUALIFIED
Alejandro S VocelkaIndiaElwin Sharvill QUALIFIED
Leja J WhobreyJapanOnyama Limba RENEWAL
Ivar Z CampainJapanBernardo Dominic PROPOSAL
Jones A IturbideArgentinaAnna Fali UNQUALIFIED
Julie K GlickJapanIoni Bowcher NEW
Tony R ShinkoRussiaAmy Elsner QUALIFIED
Clifford U NestleRussiaXuxue Feng RENEWAL
Mujtaba A GlickCanadaIoni Bowcher QUALIFIED
Isabel A WaycottUnited KingdomOnyama Limba UNQUALIFIED
Clifford C AmigonBrazilOnyama Limba UNQUALIFIED
Darci M MaletJapanIoni Bowcher NEGOTIATION
Ashley R KolmetzCanadaIvan Magalhaes NEGOTIATION
Aika E MarrierRussiaXuxue Feng UNQUALIFIED
Mujtaba F SlusarskiBrazilIvan Magalhaes RENEWAL
Aditya J DarakjyArgentinaAmy Elsner UNQUALIFIED
Frozen Columns
Name
Munro X Marrier
Cody O Ferencz
Cody K Wieser
Silvio K Morasca
Leja U Glick
Johnson J Nicka
Maria X Schemmer
Greenwood V Amigon
Morrow T Gaucho
Nicolas B Slusarski
Tony I Inouye
James W Royster
Clifford M Wieser
Octavia Q Albares
Tony C Briddick
Munro K Oldroyd
Mayumi B Caudy
Stacey N Venere
Aruna V Kolmetz
Munro P Malet
Emily Y Waycott
Aruna C Malet
Rodrigues V Venere
Leon W Sergi
James H Briddick
Kaitlin J Glick
Johnson Y Doe
Silvio K Malet
Darci U Sergi
Murillo D Bowley
Smith G Stenseth
Greenwood I Slusarski
Kadeem G Foller
David O Kusko
Leja N Tollner
Mayumi E Morasca
Smith A Royster
Murillo H Garufi
Emily G Campain
Kadeem R Chui
Emily S Maclead
Francesco W Stockham
Emily K Saylors
Murillo O Nestle
Francesco C Inouye
Ivar O Slusarski
Deepesh J Venere
Izzy J Wieser
Mujtaba L Albares
Misaki S Figeroa
IdCountryDate
1000Canada2024-06-10
1001United Kingdom2024-06-06
1002Germany2024-06-02
1003Russia2024-06-14
1004Japan2024-05-30
1005Brazil2024-06-03
1006Spain2024-06-22
1007Russia2024-06-20
1008Spain2024-06-12
1009United Kingdom2024-06-11
1010Russia2024-06-23
1011Germany2024-06-03
1012Canada2024-06-09
1013Spain2024-06-15
1014France2024-06-23
1015India2024-06-15
1016Japan2024-06-08
1017Australia2024-05-31
1018Argentina2024-05-31
1019Germany2024-06-13
1020United Kingdom2024-06-16
1021Russia2024-05-25
1022Australia2024-05-28
1023Brazil2024-05-26
1024Italy2024-05-26
1025Canada2024-05-25
1026Brazil2024-05-28
1027Russia2024-06-18
1028France2024-06-23
1029Japan2024-06-06
1030Argentina2024-06-05
1031Japan2024-06-11
1032Spain2024-06-13
1033France2024-06-02
1034Spain2024-06-02
1035Japan2024-06-09
1036France2024-06-07
1037France2024-06-07
1038Italy2024-05-26
1039Canada2024-05-25
1040Italy2024-06-14
1041Spain2024-06-15
1042Japan2024-06-04
1043United Kingdom2024-05-31
1044Russia2024-06-22
1045Japan2024-06-02
1046Spain2024-05-26
1047Italy2024-06-11
1048Japan2024-05-25
1049Japan2024-06-22

On-Demand Data

NameIdCountryDate
Cody H Saylors1000India2024-05-31
Jeanfrancois O Ostrosky1001India2024-06-22
Izzy N Waycott1002Germany2024-06-18
Leon J Ruta1003India2024-06-09
Clifford A Bolognia1004Argentina2024-06-20
Leon P Stenseth1005Italy2024-05-26
Stacey P Sergi1006United Kingdom2024-06-18
Sinclair U Butt1007Germany2024-06-23
Jefferson X Shinko1008Spain2024-06-11
Morrow J Wieser1009Argentina2024-06-17
David P Schemmer1010Canada2024-06-15
Aditya Z Garufi1011Russia2024-06-19
Adams Q Maclead1012Spain2024-06-08
Mujtaba I Nicka1013Brazil2024-06-20
Sinclair Q Ruta1014Spain2024-06-20
Jennifer K Caudy1015Japan2024-06-05
Maria M Malet1016Australia2024-06-04
Silvio F Nicka1017Argentina2024-06-15
Julie D Slusarski1018Australia2024-06-17
Morrow T Waycott1019Russia2024-06-14
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aika C WhobreySpainAnna Fali NEW
Julie U RoysterJapanBernardo Dominic NEGOTIATION
Mujtaba O MarrierAustraliaStephen Shaw NEGOTIATION
Faith Y PaprockiArgentinaIvan Magalhaes PROPOSAL
Kadeem Z GlickJapanAnna Fali NEGOTIATION
James E CaldareraBrazilOnyama Limba QUALIFIED
Rodrigues X CaudyRussiaIoni Bowcher QUALIFIED
Johnson V AmigonBrazilElwin Sharvill QUALIFIED
Murillo L DarakjyGermanyAnna Fali PROPOSAL
Murillo T ButtGermanyXuxue Feng UNQUALIFIED
Clifford T StockhamArgentinaIoni Bowcher NEGOTIATION
Claire K FollerSpainAmy Elsner UNQUALIFIED
Isabel J VenereRussiaIoni Bowcher RENEWAL
Jennifer V ChuiRussiaOnyama Limba NEGOTIATION
Misaki N PoquetteCanadaIvan Magalhaes QUALIFIED
Alejandro F KolmetzCanadaElwin Sharvill QUALIFIED
Alejandro S BowleyItalyXuxue Feng NEGOTIATION
Smith T DilliardAustraliaElwin Sharvill QUALIFIED
Rodrigues R MaletGermanyOnyama Limba QUALIFIED
James Y DoeRussiaAnna Fali QUALIFIED
Maria E AmigonFranceAsiya Javayant PROPOSAL
Jones S VocelkaUnited KingdomXuxue Feng NEGOTIATION
Jefferson U RimJapanIoni Bowcher UNQUALIFIED
Wickens D SergiCanadaStephen Shaw RENEWAL
Misaki H SaylorsRussiaBernardo Dominic PROPOSAL
Kadeem A FollerItalyBernardo Dominic PROPOSAL
Salvatore D TollnerIndiaXuxue Feng UNQUALIFIED
Isabel V RoysterUnited KingdomStephen Shaw RENEWAL
Murillo U OldroydJapanStephen Shaw UNQUALIFIED
Murillo V GarufiBrazilBernardo Dominic NEW
Julie J WaycottIndiaElwin Sharvill UNQUALIFIED
James Q BowleyAustraliaAnna Fali UNQUALIFIED
Misaki M GarufiItalyAsiya Javayant NEGOTIATION
Jeanfrancois O GauchoIndiaBernardo Dominic RENEWAL
Stacey I DoeFranceStephen Shaw NEGOTIATION
Silvio D BowleyArgentinaBernardo Dominic RENEWAL
Arvin I FigeroaCanadaIvan Magalhaes QUALIFIED
Aika F SergiBrazilAsiya Javayant RENEWAL
Leja L FollerUnited KingdomIoni Bowcher NEW
Isabel Q MarrierCanadaStephen Shaw 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>