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
Jefferson F DarakjyBrazilXuxue Feng PROPOSAL
Ashley G ChuiBrazilStephen Shaw NEW
Nicolas K WieserUnited KingdomBernardo Dominic QUALIFIED
Leon U BologniaUnited KingdomAmy Elsner RENEWAL
Francesco S DoeFranceElwin Sharvill NEGOTIATION
Stacey R GlickAustraliaAmy Elsner PROPOSAL
Greenwood Z MarrierAustraliaAsiya Javayant QUALIFIED
Stacey M CampainRussiaOnyama Limba NEGOTIATION
Julie F BowleyIndiaIvan Magalhaes UNQUALIFIED
Claire S KolmetzCanadaAnna Fali PROPOSAL
Aika X PaprockiSpainIoni Bowcher UNQUALIFIED
Wickens T PoquetteGermanyAsiya Javayant QUALIFIED
David C KuskoFranceAnna Fali RENEWAL
Kaitlin S SchemmerJapanIoni Bowcher PROPOSAL
Aika F RutaSpainStephen Shaw PROPOSAL
Izzy Q CampainBrazilIvan Magalhaes NEW
Kadeem G GlickAustraliaAnna Fali UNQUALIFIED
Aruna I InouyeJapanStephen Shaw NEW
Misaki T SlusarskiRussiaElwin Sharvill NEGOTIATION
Stacey O FollerBrazilAsiya Javayant QUALIFIED
Kadeem P GarufiIndiaAnna Fali UNQUALIFIED
Jefferson Y KolmetzBrazilBernardo Dominic NEW
David W CaudyItalyBernardo Dominic QUALIFIED
Ashley P FlosiBrazilElwin Sharvill PROPOSAL
Wickens C ButtGermanyAsiya Javayant QUALIFIED
Maisha L FigeroaItalyIoni Bowcher QUALIFIED
Murillo G RulapaughItalyIvan Magalhaes RENEWAL
Antonio J NickaCanadaAsiya Javayant QUALIFIED
Mujtaba T InouyeAustraliaElwin Sharvill QUALIFIED
Nicolas N MaletSpainAsiya Javayant NEW
Clifford L InouyeSpainAnna Fali UNQUALIFIED
Smith O BologniaAustraliaElwin Sharvill RENEWAL
Ashley H AlbaresItalyIvan Magalhaes RENEWAL
Munro P VenereBrazilXuxue Feng NEW
Smith G InouyeSpainIoni Bowcher QUALIFIED
Alejandro L SergiCanadaAnna Fali QUALIFIED
Rodrigues R ChuiGermanyIvan Magalhaes RENEWAL
Julie Q ChuiIndiaIvan Magalhaes NEW
Ivar O WhobreyItalyBernardo Dominic RENEWAL
Octavia Q WaycottAustraliaAmy Elsner UNQUALIFIED
Sinclair L AmigonCanadaStephen Shaw NEW
Johnson K CampainCanadaAnna Fali QUALIFIED
Juan S SchemmerRussiaAmy Elsner NEGOTIATION
Ivar L IturbideSpainAmy Elsner QUALIFIED
Wickens U KolmetzRussiaAnna Fali UNQUALIFIED
Leja P ChuiItalyElwin Sharvill NEW
Morrow F ChuiCanadaAsiya Javayant NEW
Jeanfrancois W KuskoSpainBernardo Dominic PROPOSAL
Izzy N SlusarskiRussiaAmy Elsner UNQUALIFIED
Leja J WhobreyRussiaElwin Sharvill QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Jennifer C NickaCanadaStephen Shaw RENEWAL
Octavia Q MorascaUnited KingdomIoni Bowcher NEGOTIATION
Nicolas D CaldareraCanadaIvan Magalhaes NEGOTIATION
Maisha Z AlbaresCanadaBernardo Dominic NEW
Emily Z MaletAustraliaAmy Elsner RENEWAL
Deepesh O CaldareraItalyAnna Fali RENEWAL
Johnson N WhobreyRussiaBernardo Dominic QUALIFIED
Ashley P FerenczAustraliaElwin Sharvill PROPOSAL
Aditya O GauchoIndiaStephen Shaw NEW
Salvatore A RoysterItalyAnna Fali QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Kadeem U FlosiGermany2024-06-10Feltz Printing Service RENEWAL56Elwin Sharvill
1001Johnson B BriddickGermany2024-06-17Feltz Printing Service QUALIFIED90Onyama Limba
1002Isabel B GauchoJapan2024-06-10Benton, John B Jr RENEWAL37Elwin Sharvill
1003Claire Q MorascaItaly2024-05-23Commercial Press NEGOTIATION67Asiya Javayant
1004Alejandro L GarufiRussia2024-05-29Dorl, James J Esq QUALIFIED41Stephen Shaw
1005David U PaprockiUnited Kingdom2024-05-27Feltz Printing Service QUALIFIED96Bernardo Dominic
1006Ricardo B ChuiArgentina2024-06-03Chanay, Jeffrey A Esq PROPOSAL9Onyama Limba
1007Cody D PaprockiUnited Kingdom2024-06-12Morlong Associates PROPOSAL47Xuxue Feng
1008Adams X RoysterSpain2024-05-27Buckley Miller Wright NEGOTIATION21Asiya Javayant
1009Julie U MorascaCanada2024-06-07Dorl, James J Esq PROPOSAL17Onyama Limba
1010Ashley D NickaBrazil2024-05-23Rangoni Of Florence PROPOSAL15Elwin Sharvill
1011Aruna L VocelkaGermany2024-05-28Feltz Printing Service RENEWAL58Stephen Shaw
1012Ricardo G MacleadItaly2024-06-19Chanay, Jeffrey A Esq PROPOSAL4Anna Fali
1013Alejandro A BologniaRussia2024-06-06Chanay, Jeffrey A Esq QUALIFIED17Elwin Sharvill
1014Murillo X StensethCanada2024-06-14Rousseaux, Michael Esq NEGOTIATION11Asiya Javayant
1015Isabel R NickaGermany2024-06-19Buckley Miller Wright RENEWAL35Asiya Javayant
1016Kaitlin Y BowleyGermany2024-06-20Feiner Bros RENEWAL97Amy Elsner
1017Isabel A InouyeArgentina2024-06-08King, Christopher A Esq QUALIFIED88Asiya Javayant
1018Tony R ShinkoIndia2024-06-03Chapman, Ross E Esq UNQUALIFIED18Asiya Javayant
1019Maisha S OstroskyAustralia2024-06-01Feiner Bros NEW12Xuxue Feng
1020Nicolas K NickaRussia2024-05-27Chapman, Ross E Esq RENEWAL30Xuxue Feng
1021Mayumi S CampainCanada2024-06-05Dorl, James J Esq UNQUALIFIED71Asiya Javayant
1022Cody G AmigonAustralia2024-06-08Chanay, Jeffrey A Esq NEGOTIATION1Ioni Bowcher
1023Smith G RoysterRussia2024-06-14Printing Dimensions NEW99Ioni Bowcher
1024Maisha M ShinkoCanada2024-06-18Truhlar And Truhlar Attys QUALIFIED44Anna Fali
1025Emily M StockhamRussia2024-06-17Feltz Printing Service PROPOSAL80Anna Fali
1026Rodrigues M BowleySpain2024-06-16Chapman, Ross E Esq NEGOTIATION93Anna Fali
1027Greenwood V StockhamFrance2024-06-02Chapman, Ross E Esq PROPOSAL16Ivan Magalhaes
1028Murillo P TollnerItaly2024-05-24Truhlar And Truhlar Attys QUALIFIED7Stephen Shaw
1029Leja X KolmetzIndia2024-05-29Printing Dimensions UNQUALIFIED40Onyama Limba
1030Adams R IturbideCanada2024-06-05Rangoni Of Florence QUALIFIED80Stephen Shaw
1031Jeanfrancois A WaycottSpain2024-05-28Benton, John B Jr NEW45Asiya Javayant
1032Munro Q MacleadItaly2024-06-20Rangoni Of Florence NEGOTIATION54Onyama Limba
1033Chavez N PoquetteArgentina2024-05-31Buckley Miller Wright QUALIFIED53Stephen Shaw
1034Jennifer R GillianSpain2024-06-01Rousseaux, Michael Esq QUALIFIED50Bernardo Dominic
1035Cody G MorascaSpain2024-05-23King, Christopher A Esq NEW91Onyama Limba
1036Aika T StensethUnited Kingdom2024-05-27Feltz Printing Service PROPOSAL71Ivan Magalhaes
1037Sinclair I VocelkaBrazil2024-06-05Feltz Printing Service QUALIFIED77Stephen Shaw
1038Wickens S StensethBrazil2024-06-20Benton, John B Jr RENEWAL28Elwin Sharvill
1039Jefferson E RimBrazil2024-06-12Printing Dimensions PROPOSAL22Xuxue Feng
1040Darci O VocelkaAustralia2024-06-12Feiner Bros QUALIFIED11Stephen Shaw
1041Greenwood H IturbideGermany2024-05-28Chanay, Jeffrey A Esq PROPOSAL80Amy Elsner
1042Adams X RimRussia2024-06-02Chapman, Ross E Esq UNQUALIFIED92Amy Elsner
1043Jeanfrancois K OstroskyRussia2024-06-04Benton, John B Jr PROPOSAL92Onyama Limba
1044Mujtaba B PoquetteUnited Kingdom2024-06-08Rousseaux, Michael Esq RENEWAL35Elwin Sharvill
1045Jones D MarrierUnited Kingdom2024-06-02Chanay, Jeffrey A Esq RENEWAL70Asiya Javayant
1046Arvin F KuskoJapan2024-06-13Benton, John B Jr PROPOSAL14Stephen Shaw
1047Sinclair P OstroskyItaly2024-05-30Buckley Miller Wright NEW87Ivan Magalhaes
1048Tony M NickaRussia2024-06-13Commercial Press UNQUALIFIED29Asiya Javayant
1049Adams D GlickGermany2024-06-18Rousseaux, Michael Esq PROPOSAL12Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Rodrigues O ButtIndiaAnna Fali PROPOSAL
Antonio A FigeroaFranceOnyama Limba PROPOSAL
Aditya O IturbideGermanyAsiya Javayant NEW
Emily I InouyeSpainBernardo Dominic UNQUALIFIED
Johnson P KuskoCanadaAsiya Javayant NEW
Salvatore D FerenczSpainBernardo Dominic QUALIFIED
Alejandro B FollerItalyStephen Shaw NEGOTIATION
Murillo X BologniaUnited KingdomIvan Magalhaes NEGOTIATION
Costa J MorascaBrazilStephen Shaw RENEWAL
Misaki O AmigonUnited KingdomAnna Fali NEW
Ashley J KolmetzJapanElwin Sharvill QUALIFIED
Alejandro K TollnerAustraliaOnyama Limba RENEWAL
Maria E NestleBrazilXuxue Feng RENEWAL
Octavia M SchemmerUnited KingdomXuxue Feng RENEWAL
Smith V KolmetzUnited KingdomBernardo Dominic QUALIFIED
Wickens L MacleadUnited KingdomIoni Bowcher NEW
Julie U ButtIndiaIvan Magalhaes RENEWAL
Isabel L DarakjyAustraliaElwin Sharvill NEW
Munro B MarrierItalyAsiya Javayant UNQUALIFIED
James H VocelkaItalyIvan Magalhaes UNQUALIFIED
Kadeem Q PoquetteArgentinaIvan Magalhaes RENEWAL
Isabel C SergiArgentinaAsiya Javayant RENEWAL
Wickens V CampainBrazilOnyama Limba NEGOTIATION
Greenwood C AlbaresArgentinaBernardo Dominic UNQUALIFIED
Deepesh C AmigonAustraliaIvan Magalhaes NEW
Misaki T WhobreyGermanyElwin Sharvill NEGOTIATION
Francesco C FigeroaArgentinaElwin Sharvill QUALIFIED
Cody T FlosiUnited KingdomAsiya Javayant PROPOSAL
Jennifer Q ButtJapanIoni Bowcher UNQUALIFIED
Izzy B ChuiAustraliaAmy Elsner RENEWAL
Kadeem S GarufiAustraliaIoni Bowcher RENEWAL
Darci V RulapaughSpainAnna Fali PROPOSAL
Wickens K InouyeIndiaStephen Shaw NEGOTIATION
Sinclair X VenereUnited KingdomXuxue Feng UNQUALIFIED
Mayumi S PoquetteAustraliaIvan Magalhaes PROPOSAL
Julie G TollnerSpainOnyama Limba RENEWAL
Claire Z WaycottItalyXuxue Feng NEGOTIATION
Deepesh E FlosiCanadaElwin Sharvill UNQUALIFIED
Salvatore Y KuskoAustraliaBernardo Dominic QUALIFIED
Isabel E PaprockiArgentinaElwin Sharvill NEW
Aika U CaudyRussiaAmy Elsner NEGOTIATION
Maisha P DarakjyIndiaStephen Shaw NEGOTIATION
Isabel A DoeAustraliaAsiya Javayant PROPOSAL
Francesco C FigeroaAustraliaStephen Shaw RENEWAL
Aika S OstroskySpainStephen Shaw NEW
Ricardo Q VocelkaAustraliaIvan Magalhaes QUALIFIED
Deepesh I FlosiArgentinaStephen Shaw PROPOSAL
Wickens I PaprockiAustraliaIvan Magalhaes QUALIFIED
Kaitlin T MacleadIndiaBernardo Dominic NEW
Chavez X ButtItalyXuxue Feng NEGOTIATION
Frozen Columns
Name
Morrow J Stenseth
Faith H Venere
Ricardo S Oldroyd
Jones V Butt
Julie E Tollner
Francesco K Tollner
Ashley A Stenseth
Izzy R Darakjy
Munro O Albares
Rodrigues G Shinko
Jones B Schemmer
Julie F Doe
Mayumi A Campain
Wickens Z Saylors
Tony I Caudy
Juan Q Slusarski
Johnson I Waycott
Stacey E Royster
Mayumi F Slusarski
Mujtaba R Kusko
Greenwood O Morasca
Jennifer I Iturbide
Jefferson P Amigon
Tony E Nestle
David K Flosi
Misaki K Stenseth
Morrow B Chui
Costa P Sergi
Chavez R Ostrosky
Emily N Foller
David X Vocelka
Tony Q Bowley
Kadeem M Tollner
Mujtaba W Butt
Maria E Campain
Nicolas E Wieser
Clifford F Iturbide
Morrow W Ruta
Octavia N Darakjy
Julie X Garufi
Izzy O Venere
James A Albares
James G Poquette
Misaki B Royster
Sinclair Y Marrier
James A Ferencz
Silvio E Bolognia
Chavez S Whobrey
Leon V Paprocki
Julie Y Marrier
IdCountryDate
1000India2024-06-02
1001Russia2024-06-05
1002Spain2024-06-06
1003Spain2024-06-06
1004Argentina2024-06-15
1005Canada2024-06-20
1006Russia2024-05-25
1007France2024-06-09
1008Italy2024-06-11
1009Canada2024-06-04
1010Spain2024-05-26
1011France2024-06-13
1012Russia2024-06-11
1013Australia2024-06-06
1014Argentina2024-05-26
1015Germany2024-06-11
1016Italy2024-06-10
1017India2024-05-31
1018Russia2024-06-04
1019Brazil2024-06-15
1020Germany2024-05-27
1021France2024-06-20
1022Russia2024-05-29
1023Argentina2024-05-28
1024Italy2024-06-08
1025France2024-06-13
1026Japan2024-05-23
1027Argentina2024-06-08
1028Canada2024-06-21
1029India2024-05-24
1030Argentina2024-06-09
1031Russia2024-05-26
1032Brazil2024-06-16
1033Germany2024-06-19
1034France2024-06-17
1035United Kingdom2024-06-08
1036Spain2024-06-18
1037France2024-06-19
1038Spain2024-06-17
1039Russia2024-06-12
1040Japan2024-06-19
1041Brazil2024-06-10
1042Argentina2024-06-16
1043Argentina2024-05-23
1044Spain2024-06-21
1045Argentina2024-05-31
1046Germany2024-06-01
1047Australia2024-06-04
1048Japan2024-05-29
1049United Kingdom2024-06-12

On-Demand Data

NameIdCountryDate
Octavia C Paprocki1000Japan2024-05-30
Wickens D Foller1001Spain2024-05-24
Faith T Figeroa1002Russia2024-06-08
Mujtaba N Royster1003United Kingdom2024-05-29
Maisha M Maclead1004Australia2024-06-04
Adams Q Waycott1005France2024-06-11
Kaitlin J Wieser1006Canada2024-05-28
Ivar F Amigon1007Germany2024-05-25
Mujtaba F Sergi1008Canada2024-06-09
Chavez W Tollner1009Spain2024-05-28
Leja L Malet1010Russia2024-06-16
Jefferson T Stockham1011Brazil2024-06-13
Alejandro M Stenseth1012France2024-05-29
Darci G Gaucho1013Spain2024-05-23
Morrow C Bolognia1014India2024-05-29
Izzy U Briddick1015Russia2024-06-04
Jennifer B Iturbide1016India2024-06-14
Adams S Rulapaugh1017France2024-06-09
Isabel I Poquette1018United Kingdom2024-06-16
Ivar O Sergi1019Australia2024-06-14
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Leja F SlusarskiUnited KingdomIvan Magalhaes NEW
Mayumi S OldroydFranceElwin Sharvill UNQUALIFIED
Ivar X GauchoFranceStephen Shaw UNQUALIFIED
Greenwood Q OstroskyJapanXuxue Feng QUALIFIED
Ricardo E NestleCanadaStephen Shaw NEGOTIATION
Rodrigues A SchemmerBrazilBernardo Dominic QUALIFIED
Misaki A KolmetzGermanyAsiya Javayant NEGOTIATION
Misaki E BowleyRussiaElwin Sharvill NEW
Cody A KuskoCanadaIoni Bowcher PROPOSAL
Jennifer K DilliardFranceAsiya Javayant RENEWAL
Izzy E GarufiItalyAsiya Javayant RENEWAL
Claire D MaletJapanStephen Shaw QUALIFIED
Maria E DarakjyIndiaAnna Fali QUALIFIED
Kadeem A ShinkoAustraliaAnna Fali RENEWAL
Leon K VocelkaArgentinaStephen Shaw UNQUALIFIED
Rodrigues I DilliardArgentinaXuxue Feng QUALIFIED
Salvatore O MorascaFranceXuxue Feng NEGOTIATION
Aditya J GillianItalyIoni Bowcher PROPOSAL
Kadeem K GillianGermanyOnyama Limba NEW
James M TollnerIndiaElwin Sharvill NEW
Wickens K ButtArgentinaIoni Bowcher PROPOSAL
Octavia Z MacleadSpainXuxue Feng NEW
Isabel U PerinCanadaBernardo Dominic QUALIFIED
Darci E SlusarskiCanadaXuxue Feng NEGOTIATION
Salvatore Q ShinkoJapanIoni Bowcher NEW
Francesco V OldroydIndiaAsiya Javayant PROPOSAL
Johnson H WhobreyUnited KingdomXuxue Feng NEW
Maisha G StensethSpainAmy Elsner QUALIFIED
Darci K GarufiCanadaXuxue Feng QUALIFIED
Ivar I RulapaughRussiaIvan Magalhaes RENEWAL
Mujtaba O GauchoJapanAmy Elsner RENEWAL
Arvin R BologniaSpainXuxue Feng NEGOTIATION
Deepesh M CaudyCanadaOnyama Limba PROPOSAL
Jefferson O MarrierAustraliaIoni Bowcher NEW
Clifford O PoquetteGermanyElwin Sharvill QUALIFIED
Leja W SchemmerUnited KingdomElwin Sharvill NEGOTIATION
Arvin P ChuiArgentinaOnyama Limba RENEWAL
Adams A WieserArgentinaOnyama Limba QUALIFIED
Clifford V InouyeArgentinaXuxue Feng NEW
James T ShinkoAustraliaStephen Shaw PROPOSAL

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