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
Aruna Z FlosiFranceXuxue Feng UNQUALIFIED
Greenwood H RimSpainIoni Bowcher NEGOTIATION
Mayumi E SlusarskiUnited KingdomBernardo Dominic QUALIFIED
Mayumi B AlbaresRussiaIoni Bowcher NEGOTIATION
Ashley I MarrierCanadaAmy Elsner NEW
Juan S BowleyAustraliaOnyama Limba RENEWAL
Izzy V ChuiIndiaOnyama Limba RENEWAL
Tony H DarakjyArgentinaAsiya Javayant RENEWAL
Tony O OstroskyItalyAnna Fali UNQUALIFIED
Adams G GlickJapanBernardo Dominic PROPOSAL
Ivar Q RoysterBrazilElwin Sharvill NEW
Juan T AlbaresItalyBernardo Dominic NEW
Faith R RoysterArgentinaElwin Sharvill NEGOTIATION
Jeanfrancois M NestleArgentinaElwin Sharvill UNQUALIFIED
Maria Q RulapaughFranceAsiya Javayant NEW
Alejandro S PoquetteAustraliaAnna Fali PROPOSAL
Maria V WhobreyIndiaAmy Elsner NEGOTIATION
Kaitlin Y MacleadIndiaIvan Magalhaes NEGOTIATION
Wickens B MacleadCanadaOnyama Limba NEGOTIATION
Wickens W AlbaresCanadaOnyama Limba RENEWAL
Mayumi H VocelkaRussiaAmy Elsner RENEWAL
Maisha F MaletUnited KingdomXuxue Feng UNQUALIFIED
Leja V DilliardItalyAmy Elsner PROPOSAL
David D ShinkoJapanStephen Shaw NEW
Johnson P SergiGermanyAsiya Javayant NEGOTIATION
Faith L DarakjyGermanyStephen Shaw RENEWAL
Darci Z FollerArgentinaOnyama Limba NEGOTIATION
Ashley P WieserUnited KingdomAsiya Javayant PROPOSAL
Nicolas F KuskoUnited KingdomAnna Fali NEW
Leon F NestleFranceOnyama Limba RENEWAL
Salvatore B StockhamAustraliaStephen Shaw UNQUALIFIED
David M ShinkoGermanyElwin Sharvill QUALIFIED
Maisha Y ButtArgentinaAsiya Javayant UNQUALIFIED
Antonio E GauchoIndiaXuxue Feng UNQUALIFIED
Silvio W StensethUnited KingdomElwin Sharvill NEGOTIATION
Mujtaba X RutaGermanyAmy Elsner NEW
Aika Q VocelkaUnited KingdomOnyama Limba QUALIFIED
Leon A SchemmerSpainElwin Sharvill PROPOSAL
Jeanfrancois X PerinJapanBernardo Dominic NEGOTIATION
Misaki U BowleySpainBernardo Dominic NEW
Deepesh Q WhobreyFranceStephen Shaw UNQUALIFIED
Smith W MacleadRussiaElwin Sharvill RENEWAL
Aditya U OldroydFranceAmy Elsner NEW
Adams B KuskoBrazilStephen Shaw RENEWAL
Murillo W NestleItalyIoni Bowcher QUALIFIED
Claire D AlbaresItalyElwin Sharvill QUALIFIED
James G FlosiFranceAmy Elsner PROPOSAL
Rodrigues I MacleadAustraliaBernardo Dominic RENEWAL
Kadeem X CaudyBrazilIoni Bowcher RENEWAL
Antonio Q VocelkaUnited KingdomElwin Sharvill RENEWAL
Horizontal
NameCountryRepresentativeStatus
Silvio S WaycottIndiaBernardo Dominic PROPOSAL
Antonio L GauchoBrazilIvan Magalhaes RENEWAL
Silvio N PoquetteUnited KingdomAmy Elsner QUALIFIED
Juan I PaprockiSpainElwin Sharvill RENEWAL
Emily U FigeroaGermanyIvan Magalhaes PROPOSAL
Mayumi E NestleBrazilXuxue Feng RENEWAL
Maisha V PaprockiRussiaIoni Bowcher PROPOSAL
Jennifer U DoeBrazilAmy Elsner PROPOSAL
Alejandro P DoeIndiaAmy Elsner PROPOSAL
Claire M CaldareraItalyElwin Sharvill UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Mayumi O MacleadBrazil2024-06-04Printing Dimensions NEGOTIATION96Amy Elsner
1001Wickens K SaylorsJapan2024-06-15Truhlar And Truhlar Attys PROPOSAL16Bernardo Dominic
1002Stacey O MarrierCanada2024-05-26Morlong Associates UNQUALIFIED65Stephen Shaw
1003Izzy X VocelkaCanada2024-05-22Chemel, James L Cpa QUALIFIED49Ivan Magalhaes
1004Ivar Q IturbideSpain2024-06-02Morlong Associates PROPOSAL19Amy Elsner
1005Izzy J NestleArgentina2024-06-03Chemel, James L Cpa NEGOTIATION82Xuxue Feng
1006Faith L KolmetzRussia2024-06-14Chapman, Ross E Esq NEGOTIATION73Elwin Sharvill
1007Francesco G BowleyUnited Kingdom2024-05-31Rangoni Of Florence RENEWAL42Stephen Shaw
1008Kadeem T MaletUnited Kingdom2024-06-01Benton, John B Jr NEW2Elwin Sharvill
1009James W RutaSpain2024-05-25Benton, John B Jr NEW50Ivan Magalhaes
1010Nicolas H FigeroaUnited Kingdom2024-06-07Dorl, James J Esq QUALIFIED13Ivan Magalhaes
1011Chavez B WieserSpain2024-06-08Benton, John B Jr QUALIFIED79Elwin Sharvill
1012Maria O DarakjyGermany2024-06-13Printing Dimensions RENEWAL2Bernardo Dominic
1013Kaitlin D DarakjySpain2024-06-17Truhlar And Truhlar Attys RENEWAL82Bernardo Dominic
1014Antonio X StensethIndia2024-06-12Printing Dimensions NEGOTIATION63Ioni Bowcher
1015Johnson K MacleadGermany2024-05-26Benton, John B Jr PROPOSAL96Anna Fali
1016Aditya Z SlusarskiJapan2024-05-23Commercial Press UNQUALIFIED46Anna Fali
1017Rodrigues H BowleyCanada2024-06-12Chapman, Ross E Esq RENEWAL52Onyama Limba
1018Aditya Z WieserBrazil2024-06-02Chemel, James L Cpa NEW16Ioni Bowcher
1019Morrow L SergiArgentina2024-06-13Rousseaux, Michael Esq QUALIFIED71Stephen Shaw
1020Rodrigues R SchemmerFrance2024-05-31King, Christopher A Esq NEGOTIATION10Elwin Sharvill
1021Rodrigues D PoquetteGermany2024-06-06Morlong Associates UNQUALIFIED22Xuxue Feng
1022Darci A MaletGermany2024-06-14Benton, John B Jr NEW74Ioni Bowcher
1023Claire R StockhamBrazil2024-05-28Dorl, James J Esq RENEWAL79Elwin Sharvill
1024Darci X PerinItaly2024-05-25Feltz Printing Service NEGOTIATION21Xuxue Feng
1025Aika E ShinkoRussia2024-05-30Benton, John B Jr NEW82Xuxue Feng
1026Jennifer K ButtArgentina2024-06-12Chapman, Ross E Esq NEGOTIATION33Elwin Sharvill
1027Ricardo K StockhamFrance2024-06-04Commercial Press QUALIFIED16Stephen Shaw
1028Misaki V FollerGermany2024-05-29Truhlar And Truhlar Attys UNQUALIFIED62Amy Elsner
1029Tony P MaletBrazil2024-06-01Chanay, Jeffrey A Esq QUALIFIED41Ioni Bowcher
1030Kadeem T MorascaJapan2024-06-01Chanay, Jeffrey A Esq QUALIFIED34Stephen Shaw
1031James N GlickJapan2024-05-29Feiner Bros QUALIFIED46Bernardo Dominic
1032Johnson J WieserUnited Kingdom2024-05-23Benton, John B Jr PROPOSAL42Ivan Magalhaes
1033Ashley H WieserUnited Kingdom2024-05-22Dorl, James J Esq RENEWAL50Stephen Shaw
1034Wickens G InouyeFrance2024-06-05Feiner Bros UNQUALIFIED63Stephen Shaw
1035Antonio T WieserSpain2024-05-29Rangoni Of Florence NEGOTIATION34Stephen Shaw
1036Ashley U CaldareraArgentina2024-05-22Rangoni Of Florence PROPOSAL46Ivan Magalhaes
1037Francesco Y NickaAustralia2024-06-15Dorl, James J Esq NEW29Bernardo Dominic
1038Chavez I FigeroaIndia2024-06-12Feiner Bros NEW70Xuxue Feng
1039Nicolas N AmigonCanada2024-06-07Rousseaux, Michael Esq NEW40Stephen Shaw
1040Aditya C AlbaresFrance2024-05-29Feiner Bros NEGOTIATION69Stephen Shaw
1041Deepesh V FerenczGermany2024-06-18Printing Dimensions NEGOTIATION26Onyama Limba
1042Darci L CampainUnited Kingdom2024-06-16King, Christopher A Esq RENEWAL93Ioni Bowcher
1043James R GillianFrance2024-05-21King, Christopher A Esq NEGOTIATION55Asiya Javayant
1044Mayumi Y FerenczItaly2024-06-12Commercial Press RENEWAL17Bernardo Dominic
1045Silvio O BriddickJapan2024-06-10Morlong Associates NEW4Xuxue Feng
1046Darci Y GauchoArgentina2024-05-26Chapman, Ross E Esq PROPOSAL1Asiya Javayant
1047Chavez F DoeJapan2024-05-24Truhlar And Truhlar Attys UNQUALIFIED73Ioni Bowcher
1048Misaki V SchemmerAustralia2024-05-21Feltz Printing Service UNQUALIFIED83Ivan Magalhaes
1049Arvin O PoquetteRussia2024-05-25Buckley Miller Wright RENEWAL54Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Greenwood U WieserCanadaIoni Bowcher PROPOSAL
Darci F OldroydUnited KingdomAsiya Javayant NEW
Jennifer I GauchoAustraliaAmy Elsner UNQUALIFIED
Silvio Z KuskoSpainOnyama Limba NEW
Maisha X ShinkoItalyBernardo Dominic UNQUALIFIED
Ashley A OldroydGermanyAmy Elsner UNQUALIFIED
Julie D FerenczGermanyAnna Fali NEW
Julie O PaprockiArgentinaXuxue Feng RENEWAL
Costa B BowleyCanadaAnna Fali NEGOTIATION
Adams V VocelkaSpainElwin Sharvill NEGOTIATION
Morrow S StensethRussiaIvan Magalhaes UNQUALIFIED
Izzy M StockhamAustraliaElwin Sharvill NEGOTIATION
Maria N MorascaCanadaAsiya Javayant UNQUALIFIED
Francesco S AlbaresIndiaAmy Elsner QUALIFIED
Izzy F PerinRussiaXuxue Feng PROPOSAL
Julie I KolmetzBrazilOnyama Limba NEGOTIATION
Izzy M MorascaCanadaAsiya Javayant NEW
David Z SaylorsItalyBernardo Dominic QUALIFIED
Ashley M RulapaughBrazilAnna Fali RENEWAL
Ivar U WaycottAustraliaElwin Sharvill NEW
Aika R RoysterGermanyIoni Bowcher RENEWAL
Darci G BowleyArgentinaElwin Sharvill NEGOTIATION
Ricardo F MorascaSpainBernardo Dominic NEW
Sinclair Z GlickBrazilOnyama Limba NEGOTIATION
Clifford D VenereBrazilAnna Fali QUALIFIED
Sinclair W IturbideSpainXuxue Feng NEW
Izzy G GauchoFranceXuxue Feng NEW
Alejandro Z ButtSpainElwin Sharvill NEGOTIATION
Faith C PerinAustraliaElwin Sharvill QUALIFIED
David G FerenczFranceAmy Elsner NEGOTIATION
Francesco X RutaGermanyOnyama Limba PROPOSAL
Leja O FigeroaIndiaIoni Bowcher QUALIFIED
David E OstroskyFranceIvan Magalhaes PROPOSAL
Morrow A DoeUnited KingdomStephen Shaw NEGOTIATION
Costa G DarakjyIndiaAsiya Javayant PROPOSAL
Smith A CaudyCanadaAsiya Javayant NEGOTIATION
Darci G MarrierFranceAmy Elsner NEW
Jeanfrancois B DilliardCanadaStephen Shaw QUALIFIED
Clifford S CampainGermanyXuxue Feng RENEWAL
Salvatore R PoquetteFranceIvan Magalhaes PROPOSAL
Chavez O FollerAustraliaIvan Magalhaes PROPOSAL
Emily J MarrierItalyStephen Shaw NEW
Smith U CampainCanadaStephen Shaw UNQUALIFIED
Jefferson U GlickCanadaIoni Bowcher NEW
Ivar A TollnerAustraliaBernardo Dominic PROPOSAL
Kadeem Y InouyeIndiaElwin Sharvill PROPOSAL
Stacey I KolmetzUnited KingdomElwin Sharvill RENEWAL
Ashley T RulapaughGermanyStephen Shaw PROPOSAL
Mayumi N PerinJapanStephen Shaw NEGOTIATION
Leja G GillianFranceBernardo Dominic UNQUALIFIED
Frozen Columns
Name
Misaki B Saylors
Chavez W Flosi
Aruna C Ostrosky
Maria Y Venere
Nicolas O Campain
Emily C Kusko
Morrow C Butt
Ashley Q Dilliard
Maria G Malet
Nicolas P Whobrey
Wickens L Chui
Greenwood Q Doe
Silvio Y Glick
Julie F Rim
Leon N Gillian
Julie Q Briddick
Johnson M Vocelka
Chavez W Dilliard
Jones I Rim
Maisha F Nicka
Claire Y Caldarera
Cody H Tollner
Clifford V Sergi
Murillo B Oldroyd
Ivar D Briddick
Morrow X Waycott
Antonio U Venere
Leon O Kolmetz
Silvio S Iturbide
Johnson Y Dilliard
Wickens V Slusarski
Aruna P Butt
Jeanfrancois K Nicka
Leja G Malet
Wickens U Vocelka
Greenwood R Tollner
Tony Z Maclead
Izzy Z Caudy
Maisha F Caudy
Sinclair L Garufi
Jeanfrancois U Kolmetz
Julie A Saylors
Clifford R Slusarski
Kaitlin J Ruta
Adams S Morasca
Arvin T Butt
Chavez T Foller
Rodrigues J Sergi
Stacey M Rim
Jeanfrancois V Malet
IdCountryDate
1000Germany2024-05-22
1001Canada2024-05-24
1002Australia2024-06-07
1003Russia2024-06-11
1004Australia2024-05-22
1005Japan2024-06-08
1006United Kingdom2024-06-02
1007Germany2024-05-22
1008Australia2024-05-20
1009United Kingdom2024-06-04
1010United Kingdom2024-06-17
1011Russia2024-05-26
1012Argentina2024-06-09
1013Spain2024-05-30
1014Italy2024-05-21
1015Brazil2024-06-12
1016France2024-06-07
1017Italy2024-06-10
1018India2024-05-26
1019India2024-05-27
1020France2024-06-09
1021Japan2024-06-03
1022Russia2024-06-15
1023Italy2024-06-01
1024Australia2024-06-07
1025Brazil2024-05-26
1026Italy2024-06-05
1027United Kingdom2024-06-16
1028Russia2024-05-25
1029Brazil2024-05-21
1030Germany2024-05-25
1031Brazil2024-06-13
1032Italy2024-06-15
1033India2024-06-12
1034Argentina2024-05-30
1035Spain2024-05-28
1036Brazil2024-06-04
1037Canada2024-06-06
1038Spain2024-06-12
1039France2024-06-12
1040Germany2024-05-20
1041Japan2024-05-29
1042Italy2024-06-17
1043Japan2024-05-27
1044Brazil2024-06-06
1045Australia2024-05-27
1046Japan2024-05-25
1047India2024-06-07
1048Italy2024-06-06
1049Russia2024-05-30

On-Demand Data

NameIdCountryDate
Sinclair W Kolmetz1000France2024-05-23
Aruna G Marrier1001United Kingdom2024-05-21
Murillo O Ruta1002Canada2024-05-20
Nicolas Z Figeroa1003Australia2024-06-08
Claire H Caldarera1004Spain2024-06-07
Salvatore W Gaucho1005Spain2024-05-23
Mayumi V Sergi1006India2024-05-25
Silvio U Saylors1007Japan2024-06-06
Morrow Z Nicka1008United Kingdom2024-05-21
Jefferson N Saylors1009Argentina2024-06-10
Jones L Flosi1010Japan2024-05-20
Mayumi Z Caldarera1011Australia2024-06-14
Kaitlin L Bowley1012Canada2024-05-26
Antonio R Vocelka1013Australia2024-06-03
Rodrigues B Nicka1014Germany2024-05-24
Jefferson C Slusarski1015Brazil2024-06-18
Leja P Figeroa1016Russia2024-05-28
Leja P Briddick1017Canada2024-05-27
Leja B Morasca1018Argentina2024-05-30
Morrow R Paprocki1019Australia2024-06-15
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
David B DilliardSpainOnyama Limba QUALIFIED
Kadeem T PoquetteCanadaAsiya Javayant NEGOTIATION
Izzy R TollnerAustraliaAsiya Javayant NEGOTIATION
Salvatore A MarrierRussiaIoni Bowcher NEW
Izzy F MacleadItalyIoni Bowcher QUALIFIED
Ricardo H MarrierIndiaElwin Sharvill QUALIFIED
Stacey I DoeArgentinaElwin Sharvill UNQUALIFIED
Darci N GlickBrazilIoni Bowcher NEGOTIATION
Jeanfrancois G ShinkoIndiaAnna Fali PROPOSAL
Maria P GauchoItalyBernardo Dominic NEW
Claire M SchemmerSpainIoni Bowcher NEGOTIATION
Clifford Z FerenczAustraliaXuxue Feng QUALIFIED
Claire P SaylorsItalyOnyama Limba NEW
Darci W AlbaresSpainStephen Shaw NEGOTIATION
Julie E MorascaIndiaXuxue Feng RENEWAL
Ashley N GauchoFranceOnyama Limba NEGOTIATION
Leja S SchemmerArgentinaIvan Magalhaes RENEWAL
Faith G SergiUnited KingdomAsiya Javayant RENEWAL
Aika W AlbaresSpainElwin Sharvill QUALIFIED
Kadeem C InouyeCanadaOnyama Limba NEW
Francesco A CampainGermanyXuxue Feng QUALIFIED
Jefferson X ShinkoItalyIoni Bowcher NEW
Francesco D IturbideIndiaIoni Bowcher QUALIFIED
Izzy P MacleadArgentinaIvan Magalhaes QUALIFIED
Cody P InouyeRussiaElwin Sharvill UNQUALIFIED
Tony C VocelkaAustraliaIoni Bowcher RENEWAL
Jennifer H BologniaSpainOnyama Limba NEW
Aruna F CaldareraBrazilBernardo Dominic RENEWAL
Ashley A IturbideFranceXuxue Feng PROPOSAL
Rodrigues U CaudyArgentinaElwin Sharvill RENEWAL
Cody N DilliardIndiaAnna Fali NEW
Kadeem T SlusarskiArgentinaXuxue Feng NEW
Darci V VocelkaCanadaOnyama Limba QUALIFIED
Jennifer A ChuiGermanyAnna Fali NEGOTIATION
Faith C WhobreyAustraliaAsiya Javayant QUALIFIED
Ashley E MarrierFranceAsiya Javayant RENEWAL
Mujtaba P KolmetzBrazilOnyama Limba NEW
Arvin V MorascaRussiaIoni Bowcher NEGOTIATION
Stacey O NestleSpainBernardo Dominic UNQUALIFIED
Sinclair C IturbideFranceXuxue Feng NEGOTIATION

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