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
Aditya Q MaletIndiaAsiya Javayant RENEWAL
Cody Y SergiIndiaIvan Magalhaes PROPOSAL
David C ShinkoIndiaIvan Magalhaes RENEWAL
Jones J RoysterGermanyAsiya Javayant PROPOSAL
Salvatore E FerenczJapanOnyama Limba NEGOTIATION
Izzy Y KolmetzBrazilAnna Fali QUALIFIED
Jennifer V BriddickArgentinaAsiya Javayant UNQUALIFIED
Misaki K RoysterRussiaAmy Elsner UNQUALIFIED
Leja C WaycottGermanyAmy Elsner QUALIFIED
Francesco J SlusarskiArgentinaOnyama Limba UNQUALIFIED
Faith A FollerItalyBernardo Dominic UNQUALIFIED
Cody B BriddickGermanyStephen Shaw RENEWAL
Misaki P RimGermanyIvan Magalhaes QUALIFIED
Murillo W RulapaughArgentinaElwin Sharvill QUALIFIED
Maria J BologniaFranceAnna Fali QUALIFIED
Chavez G FigeroaUnited KingdomAmy Elsner UNQUALIFIED
David Y InouyeFranceAsiya Javayant RENEWAL
Chavez J InouyeIndiaIoni Bowcher RENEWAL
Ivar S MaletUnited KingdomIoni Bowcher PROPOSAL
David N FerenczSpainStephen Shaw NEW
Costa H SchemmerBrazilBernardo Dominic QUALIFIED
David C BriddickJapanIvan Magalhaes RENEWAL
James U NickaCanadaAsiya Javayant PROPOSAL
Darci K NickaIndiaIoni Bowcher PROPOSAL
Murillo A MacleadIndiaOnyama Limba PROPOSAL
Octavia Z VocelkaAustraliaOnyama Limba RENEWAL
Alejandro Y NestleItalyStephen Shaw RENEWAL
Aditya W KolmetzItalyXuxue Feng QUALIFIED
Rodrigues Y RimCanadaOnyama Limba QUALIFIED
Francesco G OstroskyAustraliaIoni Bowcher QUALIFIED
Silvio P GarufiJapanElwin Sharvill QUALIFIED
Kaitlin Y TollnerGermanyStephen Shaw NEW
Ricardo L ChuiItalyElwin Sharvill QUALIFIED
Darci P KuskoRussiaOnyama Limba UNQUALIFIED
Claire A MorascaFranceBernardo Dominic PROPOSAL
Misaki T WhobreyCanadaAsiya Javayant NEGOTIATION
Aruna O DilliardBrazilAsiya Javayant NEGOTIATION
Costa F AmigonFranceStephen Shaw PROPOSAL
Johnson B RulapaughGermanyXuxue Feng UNQUALIFIED
David S BriddickItalyStephen Shaw QUALIFIED
Izzy K DoeUnited KingdomIoni Bowcher QUALIFIED
Isabel G SlusarskiJapanStephen Shaw NEGOTIATION
Francesco W FigeroaGermanyBernardo Dominic QUALIFIED
Ricardo T GlickItalyOnyama Limba NEGOTIATION
Aditya C StockhamAustraliaIoni Bowcher UNQUALIFIED
Ivar K MarrierAustraliaXuxue Feng UNQUALIFIED
Faith U SlusarskiFranceOnyama Limba QUALIFIED
Izzy L ChuiJapanAnna Fali RENEWAL
Nicolas Z AmigonFranceStephen Shaw NEGOTIATION
Aika A CaudyAustraliaOnyama Limba QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Greenwood L FerenczSpainXuxue Feng NEGOTIATION
Claire D FollerAustraliaOnyama Limba NEGOTIATION
Ricardo K SaylorsSpainAnna Fali NEW
Kadeem W CaldareraAustraliaBernardo Dominic NEW
Juan T RoysterBrazilIoni Bowcher RENEWAL
David A RulapaughGermanyAmy Elsner NEW
Aika K MaletBrazilStephen Shaw NEGOTIATION
Nicolas S FlosiCanadaBernardo Dominic NEGOTIATION
Sinclair Y StockhamArgentinaIvan Magalhaes UNQUALIFIED
Octavia S KolmetzUnited KingdomXuxue Feng RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jennifer X ChuiGermany2024-06-04Buckley Miller Wright QUALIFIED68Ivan Magalhaes
1001Deepesh D PaprockiIndia2024-06-02King, Christopher A Esq PROPOSAL66Elwin Sharvill
1002Leja K DilliardJapan2024-06-05Benton, John B Jr NEW93Ivan Magalhaes
1003Aruna N MaletItaly2024-06-02Rangoni Of Florence NEGOTIATION60Ivan Magalhaes
1004Aditya S KuskoIndia2024-06-12Feiner Bros NEW89Ioni Bowcher
1005Aditya T GauchoBrazil2024-06-16Feltz Printing Service NEW12Asiya Javayant
1006Salvatore P PaprockiIndia2024-06-04Morlong Associates PROPOSAL94Bernardo Dominic
1007Nicolas I StockhamSpain2024-06-12King, Christopher A Esq PROPOSAL49Elwin Sharvill
1008Aika L TollnerFrance2024-05-30Buckley Miller Wright UNQUALIFIED19Elwin Sharvill
1009Deepesh M GillianRussia2024-06-14Chapman, Ross E Esq QUALIFIED76Stephen Shaw
1010Sinclair T MarrierJapan2024-06-10Chapman, Ross E Esq PROPOSAL83Stephen Shaw
1011Aika K IturbideItaly2024-05-27King, Christopher A Esq PROPOSAL38Ivan Magalhaes
1012Cody N MaletItaly2024-06-23Commercial Press NEW34Anna Fali
1013Julie G NickaBrazil2024-06-15Benton, John B Jr RENEWAL19Ioni Bowcher
1014Tony Z SaylorsIndia2024-06-24Printing Dimensions PROPOSAL89Stephen Shaw
1015Faith C MacleadRussia2024-06-19Dorl, James J Esq NEGOTIATION58Asiya Javayant
1016Aditya L GarufiUnited Kingdom2024-06-24Chapman, Ross E Esq QUALIFIED67Bernardo Dominic
1017Kadeem K KolmetzJapan2024-05-26Benton, John B Jr NEW57Xuxue Feng
1018Antonio W MacleadIndia2024-06-17Truhlar And Truhlar Attys UNQUALIFIED8Ivan Magalhaes
1019Morrow T BologniaSpain2024-05-30Rousseaux, Michael Esq PROPOSAL40Bernardo Dominic
1020Kaitlin X WaycottAustralia2024-06-08Morlong Associates PROPOSAL49Ivan Magalhaes
1021Juan W SlusarskiBrazil2024-06-05Feiner Bros UNQUALIFIED72Amy Elsner
1022Jefferson Z ChuiSpain2024-06-18Truhlar And Truhlar Attys QUALIFIED23Onyama Limba
1023Darci W PerinArgentina2024-06-16Benton, John B Jr RENEWAL12Anna Fali
1024Aika L InouyeJapan2024-06-12Chemel, James L Cpa RENEWAL44Onyama Limba
1025Adams H TollnerSpain2024-06-14Buckley Miller Wright QUALIFIED67Onyama Limba
1026Kaitlin X DoeRussia2024-06-02Morlong Associates RENEWAL22Onyama Limba
1027Adams W InouyeArgentina2024-06-12Dorl, James J Esq NEW99Anna Fali
1028Ricardo A MacleadAustralia2024-06-24Chapman, Ross E Esq RENEWAL61Xuxue Feng
1029Izzy O SaylorsBrazil2024-06-05Feltz Printing Service PROPOSAL54Amy Elsner
1030Octavia A RutaArgentina2024-06-13Buckley Miller Wright RENEWAL57Asiya Javayant
1031Adams B VocelkaCanada2024-05-31Buckley Miller Wright PROPOSAL4Xuxue Feng
1032Alejandro S SergiGermany2024-06-17Rangoni Of Florence NEW6Elwin Sharvill
1033Salvatore H NestleItaly2024-06-20Buckley Miller Wright QUALIFIED73Onyama Limba
1034Jennifer I WhobreyUnited Kingdom2024-06-01Rangoni Of Florence PROPOSAL5Bernardo Dominic
1035David D SaylorsBrazil2024-06-18Chemel, James L Cpa QUALIFIED22Anna Fali
1036Murillo S KolmetzItaly2024-05-31Chemel, James L Cpa UNQUALIFIED62Elwin Sharvill
1037Antonio F RulapaughSpain2024-06-24Rousseaux, Michael Esq NEW4Ioni Bowcher
1038James U VenereUnited Kingdom2024-06-02Dorl, James J Esq NEGOTIATION9Stephen Shaw
1039Aditya A GillianAustralia2024-06-05Rangoni Of Florence PROPOSAL83Stephen Shaw
1040Ricardo Z GillianFrance2024-05-28Chapman, Ross E Esq QUALIFIED35Onyama Limba
1041Francesco X NickaRussia2024-06-08Buckley Miller Wright RENEWAL23Onyama Limba
1042Munro M ShinkoSpain2024-05-28Chemel, James L Cpa UNQUALIFIED58Stephen Shaw
1043Rodrigues M RulapaughRussia2024-06-08King, Christopher A Esq QUALIFIED96Elwin Sharvill
1044Smith L PerinBrazil2024-06-11Buckley Miller Wright UNQUALIFIED87Asiya Javayant
1045Clifford T BowleyGermany2024-06-13Buckley Miller Wright QUALIFIED62Amy Elsner
1046Aditya Z BriddickCanada2024-06-19Morlong Associates NEW64Ivan Magalhaes
1047Jones S DilliardRussia2024-06-22Feltz Printing Service RENEWAL83Amy Elsner
1048Aditya W GauchoItaly2024-06-16Chapman, Ross E Esq PROPOSAL3Stephen Shaw
1049Octavia V StensethSpain2024-06-20Printing Dimensions QUALIFIED74Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Leon L FollerArgentinaAmy Elsner PROPOSAL
David O NickaUnited KingdomAnna Fali NEW
James N BriddickArgentinaStephen Shaw NEW
Izzy L DarakjyIndiaAmy Elsner RENEWAL
Juan U DarakjyJapanElwin Sharvill NEW
Mayumi U RoysterRussiaBernardo Dominic QUALIFIED
Morrow S MacleadRussiaBernardo Dominic PROPOSAL
Octavia A DilliardUnited KingdomAmy Elsner RENEWAL
Chavez G RoysterGermanyOnyama Limba UNQUALIFIED
Juan J PerinArgentinaStephen Shaw QUALIFIED
Faith I SchemmerRussiaAmy Elsner QUALIFIED
Izzy S GlickAustraliaAsiya Javayant QUALIFIED
Ricardo E VocelkaIndiaStephen Shaw RENEWAL
Jones F ButtItalyElwin Sharvill NEGOTIATION
Emily P FigeroaCanadaIoni Bowcher NEW
Octavia D ShinkoFranceIoni Bowcher NEW
Ricardo P OstroskyJapanElwin Sharvill PROPOSAL
Munro F VocelkaRussiaIoni Bowcher PROPOSAL
Jefferson W MacleadCanadaXuxue Feng NEGOTIATION
Jeanfrancois D CampainAustraliaIoni Bowcher QUALIFIED
Izzy Q KuskoUnited KingdomElwin Sharvill PROPOSAL
Leon J IturbideArgentinaIvan Magalhaes UNQUALIFIED
Mayumi D WhobreyArgentinaBernardo Dominic RENEWAL
Adams L FollerBrazilAnna Fali NEW
Morrow C PerinAustraliaBernardo Dominic PROPOSAL
Misaki C MarrierAustraliaElwin Sharvill RENEWAL
Izzy P SchemmerJapanAnna Fali UNQUALIFIED
Nicolas M MacleadCanadaXuxue Feng UNQUALIFIED
Silvio B ShinkoCanadaAnna Fali QUALIFIED
Greenwood N SlusarskiCanadaElwin Sharvill PROPOSAL
Jefferson O PaprockiBrazilXuxue Feng QUALIFIED
Faith X GarufiBrazilAmy Elsner NEW
Aruna M AlbaresJapanAmy Elsner QUALIFIED
Sinclair M SaylorsGermanyIoni Bowcher UNQUALIFIED
Mayumi N WhobreyAustraliaBernardo Dominic PROPOSAL
Deepesh Z MorascaItalyStephen Shaw NEGOTIATION
James S CaldareraBrazilElwin Sharvill NEGOTIATION
Clifford V VenereUnited KingdomStephen Shaw UNQUALIFIED
Greenwood H SchemmerCanadaAnna Fali RENEWAL
Arvin Y NickaUnited KingdomIvan Magalhaes RENEWAL
Nicolas A FerenczBrazilIvan Magalhaes RENEWAL
Maisha D RutaIndiaOnyama Limba NEGOTIATION
Munro R ButtJapanAnna Fali UNQUALIFIED
Julie D FlosiSpainStephen Shaw UNQUALIFIED
Sinclair I PaprockiAustraliaAmy Elsner NEW
Chavez K BowleyJapanBernardo Dominic NEGOTIATION
Antonio O PoquetteAustraliaOnyama Limba RENEWAL
Antonio O GarufiItalyAnna Fali NEW
Leon J GauchoFranceIoni Bowcher RENEWAL
Clifford T GauchoGermanyOnyama Limba PROPOSAL
Frozen Columns
Name
Maisha A Ferencz
Isabel R Wieser
Stacey B Albares
Adams T Sergi
Ricardo C Saylors
Aika W Stockham
Alejandro N Whobrey
Aditya B Briddick
James L Wieser
Wickens K Doe
Cody Z Rim
Greenwood Q Shinko
Ivar A Briddick
Leja P Vocelka
Antonio P Stenseth
Nicolas S Iturbide
Adams I Dilliard
Nicolas M Tollner
Leon K Kusko
Adams T Ruta
Aditya J Chui
Mujtaba B Stenseth
Cody F Glick
Aika B Inouye
Leja Y Ferencz
Smith J Glick
David C Saylors
Aruna Z Inouye
Stacey F Figeroa
Deepesh R Paprocki
Jones R Paprocki
Salvatore I Dilliard
Stacey O Nicka
Aruna I Oldroyd
Morrow J Ostrosky
Emily G Foller
Jennifer D Slusarski
Aditya K Sergi
Aruna A Schemmer
Ashley P Campain
Kaitlin U Perin
Jeanfrancois K Morasca
Deepesh V Campain
Cody X Amigon
Antonio W Stenseth
Jefferson W Bowley
Clifford B Butt
Ashley V Gillian
Morrow J Amigon
Stacey L Inouye
IdCountryDate
1000Argentina2024-06-05
1001India2024-05-29
1002Spain2024-06-14
1003Italy2024-06-20
1004United Kingdom2024-06-17
1005India2024-06-10
1006Germany2024-05-29
1007Germany2024-06-15
1008Italy2024-05-27
1009Brazil2024-06-20
1010United Kingdom2024-06-01
1011Argentina2024-05-29
1012Brazil2024-06-24
1013Canada2024-06-05
1014India2024-06-11
1015Canada2024-06-04
1016France2024-06-13
1017Brazil2024-06-06
1018Australia2024-06-15
1019Australia2024-05-28
1020Australia2024-06-15
1021Australia2024-06-15
1022Brazil2024-06-15
1023Australia2024-06-16
1024Spain2024-06-23
1025Brazil2024-06-07
1026Canada2024-06-01
1027United Kingdom2024-06-21
1028Spain2024-06-09
1029India2024-06-09
1030France2024-05-29
1031Argentina2024-06-17
1032Brazil2024-06-22
1033Australia2024-06-20
1034France2024-06-17
1035Argentina2024-06-20
1036France2024-06-24
1037Canada2024-05-31
1038United Kingdom2024-06-03
1039Germany2024-06-06
1040Spain2024-06-17
1041Italy2024-06-04
1042Japan2024-06-01
1043Spain2024-06-17
1044Canada2024-06-02
1045Russia2024-06-08
1046Italy2024-06-18
1047Brazil2024-06-03
1048Germany2024-06-13
1049Canada2024-06-23

On-Demand Data

NameIdCountryDate
Juan U Whobrey1000Russia2024-06-11
Izzy F Gillian1001Brazil2024-05-29
Jones Y Rim1002Japan2024-05-29
Faith S Poquette1003United Kingdom2024-06-11
Mujtaba F Whobrey1004Australia2024-06-03
Johnson P Poquette1005Japan2024-06-07
Alejandro M Ostrosky1006India2024-06-23
Johnson I Bolognia1007Japan2024-06-08
Cody H Amigon1008Brazil2024-06-02
Ivar Z Whobrey1009Spain2024-06-06
Murillo L Caldarera1010Spain2024-05-29
Jennifer E Campain1011Italy2024-06-04
Alejandro O Saylors1012Italy2024-06-14
Munro A Maclead1013India2024-06-17
Claire L Sergi1014Brazil2024-06-20
Adams C Malet1015Spain2024-06-10
Misaki D Darakjy1016Japan2024-06-17
Antonio K Foller1017Brazil2024-06-03
Kadeem R Foller1018Germany2024-05-31
Chavez I Tollner1019Spain2024-06-03
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Tony H PerinIndiaBernardo Dominic NEW
Claire N FerenczIndiaAnna Fali UNQUALIFIED
Greenwood J StensethIndiaIoni Bowcher NEW
Murillo A RimItalyBernardo Dominic PROPOSAL
Adams D PerinCanadaAsiya Javayant NEGOTIATION
Alejandro J RimSpainOnyama Limba QUALIFIED
Aditya J MacleadBrazilIvan Magalhaes NEGOTIATION
Antonio Z CaldareraArgentinaXuxue Feng UNQUALIFIED
Greenwood R NestleSpainIoni Bowcher QUALIFIED
Rodrigues A FigeroaCanadaXuxue Feng UNQUALIFIED
Jefferson W SchemmerRussiaXuxue Feng QUALIFIED
Leja B PoquetteJapanXuxue Feng UNQUALIFIED
Leon U ChuiAustraliaAsiya Javayant NEGOTIATION
Morrow D ChuiArgentinaIvan Magalhaes UNQUALIFIED
Salvatore X MorascaRussiaIoni Bowcher RENEWAL
Clifford S NestleCanadaElwin Sharvill RENEWAL
Emily X MorascaSpainBernardo Dominic QUALIFIED
Ivar U PaprockiFranceIoni Bowcher PROPOSAL
Aruna M SaylorsItalyElwin Sharvill NEW
Morrow L OstroskyCanadaElwin Sharvill UNQUALIFIED
Greenwood D StensethIndiaXuxue Feng NEW
Octavia F CaldareraRussiaOnyama Limba QUALIFIED
Kaitlin I SlusarskiBrazilBernardo Dominic NEGOTIATION
Stacey X TollnerAustraliaElwin Sharvill RENEWAL
Clifford E CaudyBrazilElwin Sharvill NEGOTIATION
Aika K BowleyJapanAnna Fali PROPOSAL
Maria J FigeroaArgentinaOnyama Limba QUALIFIED
Juan P DilliardFranceStephen Shaw NEGOTIATION
Kadeem T RutaBrazilIvan Magalhaes NEW
Aika V BologniaItalyAsiya Javayant PROPOSAL
Maria S SchemmerRussiaIoni Bowcher PROPOSAL
Johnson T PaprockiFranceAmy Elsner PROPOSAL
Claire N MaletFranceXuxue Feng QUALIFIED
Maria F NestleUnited KingdomElwin Sharvill NEGOTIATION
Morrow G RulapaughCanadaXuxue Feng UNQUALIFIED
Costa D OstroskyArgentinaAsiya Javayant RENEWAL
Murillo Z IturbideArgentinaAnna Fali UNQUALIFIED
Salvatore H TollnerUnited KingdomIvan Magalhaes NEGOTIATION
Juan H PaprockiRussiaAmy Elsner NEGOTIATION
Alejandro T GlickCanadaElwin Sharvill 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>