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
Tony R GarufiItalyAsiya Javayant QUALIFIED
Maisha Z BowleyItalyStephen Shaw RENEWAL
Darci G PoquetteItalyElwin Sharvill QUALIFIED
Darci O RimUnited KingdomStephen Shaw PROPOSAL
Izzy M MacleadIndiaOnyama Limba RENEWAL
Leon T StockhamBrazilElwin Sharvill UNQUALIFIED
Greenwood W CaldareraRussiaElwin Sharvill NEW
Aditya C CaldareraAustraliaIvan Magalhaes UNQUALIFIED
Chavez S PerinItalyAnna Fali RENEWAL
James A KuskoGermanyAmy Elsner RENEWAL
Kadeem P CampainRussiaIoni Bowcher NEGOTIATION
James H RutaGermanyXuxue Feng QUALIFIED
Claire D RoysterSpainIvan Magalhaes RENEWAL
Tony Y InouyeGermanyIvan Magalhaes UNQUALIFIED
Silvio P GauchoFranceStephen Shaw RENEWAL
Salvatore A PaprockiRussiaStephen Shaw RENEWAL
David Q FigeroaAustraliaIoni Bowcher NEGOTIATION
Cody B BologniaAustraliaAnna Fali NEGOTIATION
Leja P MaletFranceStephen Shaw UNQUALIFIED
Deepesh A CampainGermanyAnna Fali QUALIFIED
Sinclair M NestleSpainOnyama Limba QUALIFIED
Ashley T DilliardCanadaIvan Magalhaes NEW
Murillo I KolmetzArgentinaAsiya Javayant QUALIFIED
Kaitlin S RulapaughGermanyAmy Elsner QUALIFIED
Jennifer E FollerGermanyAmy Elsner UNQUALIFIED
Munro V DilliardGermanyXuxue Feng NEW
Aditya W SchemmerJapanOnyama Limba NEW
Stacey V NestleAustraliaIoni Bowcher RENEWAL
Francesco B DilliardCanadaAmy Elsner RENEWAL
Cody D SlusarskiItalyAnna Fali NEGOTIATION
Tony Q GlickSpainAsiya Javayant UNQUALIFIED
Julie F MarrierUnited KingdomAnna Fali UNQUALIFIED
Tony U MorascaUnited KingdomIoni Bowcher PROPOSAL
Emily P FollerArgentinaXuxue Feng UNQUALIFIED
Johnson R MorascaFranceIvan Magalhaes PROPOSAL
Aditya K DilliardUnited KingdomIoni Bowcher RENEWAL
Smith X RutaGermanyAmy Elsner NEW
Costa Z WhobreyCanadaXuxue Feng RENEWAL
Costa Z PerinItalyBernardo Dominic NEW
Murillo E WaycottGermanyXuxue Feng RENEWAL
Mayumi E FlosiAustraliaOnyama Limba PROPOSAL
Kadeem C AlbaresIndiaIoni Bowcher QUALIFIED
Ricardo V WaycottFranceElwin Sharvill RENEWAL
Wickens Y CampainItalyOnyama Limba UNQUALIFIED
Alejandro T DilliardRussiaStephen Shaw RENEWAL
Deepesh D SaylorsCanadaIoni Bowcher NEGOTIATION
Arvin O KolmetzIndiaXuxue Feng NEW
Isabel P PaprockiUnited KingdomIoni Bowcher NEGOTIATION
Chavez B MarrierAustraliaIoni Bowcher UNQUALIFIED
Julie A SlusarskiRussiaStephen Shaw NEW
Horizontal
NameCountryRepresentativeStatus
Juan F WhobreyFranceAmy Elsner NEW
Aika V StockhamBrazilXuxue Feng PROPOSAL
Greenwood W StensethIndiaStephen Shaw PROPOSAL
Chavez X WaycottFranceAmy Elsner PROPOSAL
Maisha F MorascaItalyBernardo Dominic QUALIFIED
Chavez O InouyeRussiaAnna Fali UNQUALIFIED
Deepesh P PerinBrazilXuxue Feng NEGOTIATION
Octavia H KuskoIndiaElwin Sharvill NEGOTIATION
Aditya M KolmetzItalyIvan Magalhaes RENEWAL
Leja V TollnerGermanyBernardo Dominic NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Greenwood D RulapaughSpain2024-06-13Buckley Miller Wright QUALIFIED51Ioni Bowcher
1001Clifford E RimArgentina2024-06-21Chanay, Jeffrey A Esq UNQUALIFIED52Ivan Magalhaes
1002Leon Z MarrierGermany2024-06-16Chapman, Ross E Esq UNQUALIFIED46Onyama Limba
1003Jennifer Z BologniaSpain2024-05-23Dorl, James J Esq QUALIFIED11Xuxue Feng
1004Costa K VocelkaRussia2024-05-31Feltz Printing Service QUALIFIED79Stephen Shaw
1005Alejandro F StensethJapan2024-06-21Chanay, Jeffrey A Esq UNQUALIFIED80Onyama Limba
1006Costa B DoeFrance2024-06-07Morlong Associates RENEWAL23Ivan Magalhaes
1007Jeanfrancois T PoquetteBrazil2024-05-25Benton, John B Jr RENEWAL46Onyama Limba
1008Silvio X FerenczSpain2024-06-03Morlong Associates PROPOSAL54Onyama Limba
1009Kaitlin W BowleyItaly2024-05-31Chapman, Ross E Esq NEGOTIATION19Anna Fali
1010Darci X AmigonAustralia2024-06-14Feiner Bros NEGOTIATION84Bernardo Dominic
1011Morrow D BowleyAustralia2024-06-03Benton, John B Jr RENEWAL51Onyama Limba
1012Faith U StockhamUnited Kingdom2024-06-08Commercial Press NEGOTIATION86Ioni Bowcher
1013Juan U RimFrance2024-06-10Truhlar And Truhlar Attys PROPOSAL93Ivan Magalhaes
1014Wickens K NickaGermany2024-06-08Chanay, Jeffrey A Esq RENEWAL74Ivan Magalhaes
1015Maria Q DarakjySpain2024-06-11Commercial Press UNQUALIFIED41Anna Fali
1016Kaitlin G MorascaFrance2024-06-05Chemel, James L Cpa UNQUALIFIED75Xuxue Feng
1017Mayumi K SchemmerArgentina2024-06-14Printing Dimensions NEGOTIATION95Anna Fali
1018Maria X FlosiFrance2024-06-14Chemel, James L Cpa NEW10Asiya Javayant
1019Rodrigues U PerinGermany2024-06-21Chanay, Jeffrey A Esq NEGOTIATION11Xuxue Feng
1020Tony K MorascaBrazil2024-05-23Rangoni Of Florence RENEWAL93Anna Fali
1021Morrow U AmigonUnited Kingdom2024-06-06King, Christopher A Esq UNQUALIFIED72Anna Fali
1022Salvatore F NickaJapan2024-06-08Chapman, Ross E Esq RENEWAL70Bernardo Dominic
1023Adams K NestleIndia2024-05-30Feiner Bros NEW47Anna Fali
1024Jeanfrancois N PaprockiArgentina2024-06-17Chanay, Jeffrey A Esq PROPOSAL53Onyama Limba
1025Leon H PerinRussia2024-06-11Morlong Associates RENEWAL90Bernardo Dominic
1026Mayumi V CampainBrazil2024-05-24Chanay, Jeffrey A Esq PROPOSAL9Ivan Magalhaes
1027Stacey X GillianRussia2024-06-14Feltz Printing Service QUALIFIED23Elwin Sharvill
1028Murillo W ChuiBrazil2024-05-25Benton, John B Jr RENEWAL68Ioni Bowcher
1029Jones Z RulapaughFrance2024-06-12Printing Dimensions NEW94Ioni Bowcher
1030Antonio Y FollerArgentina2024-05-27Buckley Miller Wright NEW20Elwin Sharvill
1031Greenwood F StensethCanada2024-06-17King, Christopher A Esq RENEWAL3Asiya Javayant
1032Faith S MacleadGermany2024-05-31King, Christopher A Esq QUALIFIED28Ivan Magalhaes
1033Sinclair S MorascaGermany2024-06-06Rousseaux, Michael Esq NEW43Amy Elsner
1034Mayumi E MaletBrazil2024-06-21Buckley Miller Wright PROPOSAL6Onyama Limba
1035Munro N ChuiUnited Kingdom2024-06-20Commercial Press PROPOSAL17Elwin Sharvill
1036Wickens B DilliardSpain2024-05-23Chapman, Ross E Esq QUALIFIED62Amy Elsner
1037Mayumi J PoquetteGermany2024-06-18Morlong Associates PROPOSAL43Elwin Sharvill
1038Julie L DoeIndia2024-06-17Feiner Bros NEW21Bernardo Dominic
1039Mayumi D PerinFrance2024-06-07Rangoni Of Florence NEGOTIATION47Anna Fali
1040Isabel S PaprockiArgentina2024-06-08Rangoni Of Florence PROPOSAL69Asiya Javayant
1041Octavia S KuskoItaly2024-06-13Chemel, James L Cpa NEGOTIATION23Stephen Shaw
1042Greenwood X CaudyArgentina2024-06-20Truhlar And Truhlar Attys QUALIFIED75Ioni Bowcher
1043Julie Q TollnerAustralia2024-05-29Feltz Printing Service NEGOTIATION58Bernardo Dominic
1044Aruna C FlosiJapan2024-06-16Chemel, James L Cpa PROPOSAL71Bernardo Dominic
1045Tony W GauchoRussia2024-06-04King, Christopher A Esq NEGOTIATION31Amy Elsner
1046Adams L OstroskyAustralia2024-06-21Rousseaux, Michael Esq UNQUALIFIED46Asiya Javayant
1047Isabel Q GillianGermany2024-05-30Chapman, Ross E Esq NEGOTIATION48Bernardo Dominic
1048Greenwood L InouyeUnited Kingdom2024-06-10Truhlar And Truhlar Attys NEW70Amy Elsner
1049Maisha E InouyeCanada2024-06-15Chemel, James L Cpa RENEWAL69Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Kadeem V StockhamCanadaAsiya Javayant NEW
Ricardo M WieserSpainAnna Fali QUALIFIED
Faith P WhobreyJapanElwin Sharvill RENEWAL
Mujtaba D StensethJapanOnyama Limba QUALIFIED
Tony I RulapaughItalyAnna Fali NEGOTIATION
Tony A FlosiBrazilAsiya Javayant PROPOSAL
Stacey U MorascaUnited KingdomElwin Sharvill PROPOSAL
Aika N SchemmerCanadaOnyama Limba UNQUALIFIED
Adams F DilliardGermanyIvan Magalhaes UNQUALIFIED
Deepesh M GlickJapanBernardo Dominic RENEWAL
Chavez V SlusarskiJapanOnyama Limba UNQUALIFIED
Kadeem A WaycottItalyAmy Elsner PROPOSAL
Salvatore I FlosiBrazilStephen Shaw NEGOTIATION
Cody C BologniaCanadaOnyama Limba RENEWAL
Isabel V SlusarskiUnited KingdomElwin Sharvill UNQUALIFIED
Salvatore M ChuiAustraliaXuxue Feng NEGOTIATION
Chavez I FerenczIndiaOnyama Limba QUALIFIED
Julie H OldroydSpainAsiya Javayant UNQUALIFIED
Stacey H RimIndiaOnyama Limba RENEWAL
Octavia Y CaudyAustraliaBernardo Dominic NEGOTIATION
Leon Z RoysterAustraliaAnna Fali UNQUALIFIED
Ricardo X StensethUnited KingdomAmy Elsner QUALIFIED
Aruna U ChuiFranceAmy Elsner UNQUALIFIED
Maria M CaudyRussiaAnna Fali RENEWAL
Aika D SergiCanadaElwin Sharvill RENEWAL
Stacey A AlbaresSpainElwin Sharvill UNQUALIFIED
Misaki R CaudyGermanyOnyama Limba NEGOTIATION
Maria K RoysterSpainStephen Shaw NEGOTIATION
Deepesh O MorascaSpainAsiya Javayant NEW
Silvio C MorascaIndiaIvan Magalhaes NEW
Aditya F PoquetteArgentinaAnna Fali PROPOSAL
Kaitlin E WieserSpainAmy Elsner NEW
Nicolas D GlickCanadaElwin Sharvill UNQUALIFIED
Kadeem D DoeGermanyAsiya Javayant PROPOSAL
Sinclair K FigeroaFranceAmy Elsner UNQUALIFIED
Jennifer Z RutaJapanXuxue Feng NEW
Aruna T AlbaresCanadaStephen Shaw UNQUALIFIED
Rodrigues G NickaIndiaAsiya Javayant PROPOSAL
Kadeem Y WieserUnited KingdomElwin Sharvill RENEWAL
Isabel N OstroskyItalyStephen Shaw QUALIFIED
Claire Z OstroskySpainIoni Bowcher NEGOTIATION
David O FigeroaUnited KingdomAmy Elsner QUALIFIED
Murillo W ButtArgentinaIvan Magalhaes PROPOSAL
Julie G SchemmerCanadaElwin Sharvill PROPOSAL
Clifford L TollnerUnited KingdomBernardo Dominic UNQUALIFIED
Maria R RulapaughAustraliaBernardo Dominic PROPOSAL
Adams Y FigeroaBrazilAsiya Javayant UNQUALIFIED
Costa I FigeroaRussiaIoni Bowcher QUALIFIED
Deepesh T NickaAustraliaAmy Elsner QUALIFIED
Alejandro I CaldareraRussiaBernardo Dominic NEGOTIATION
Frozen Columns
Name
Munro W Amigon
Juan R Maclead
David D Nestle
Morrow R Royster
Wickens N Rim
Sinclair I Vocelka
Kadeem K Malet
Alejandro G Ferencz
Arvin A Garufi
Leon B Albares
James R Flosi
Faith E Malet
Ricardo A Rim
James E Nicka
Kadeem D Morasca
Isabel D Ruta
Jeanfrancois W Rulapaugh
Faith C Maclead
Ricardo E Waycott
Claire S Butt
Rodrigues O Glick
Aruna Y Amigon
Darci K Sergi
Isabel B Iturbide
Leja O Darakjy
Silvio N Slusarski
Adams X Stenseth
Aruna C Malet
Costa M Bolognia
Wickens D Schemmer
Ricardo D Schemmer
Maisha M Sergi
Smith B Venere
Jones P Doe
Maisha T Albares
Claire A Sergi
Mayumi K Perin
Cody T Slusarski
Smith L Caldarera
Maria X Nicka
Izzy C Bolognia
Jeanfrancois T Tollner
Mujtaba T Malet
Deepesh Q Waycott
Francesco E Caldarera
Darci L Royster
Costa M Amigon
Leon V Oldroyd
Johnson N Venere
Morrow P Wieser
IdCountryDate
1000Germany2024-06-04
1001Japan2024-06-01
1002Argentina2024-06-10
1003Canada2024-05-23
1004Russia2024-06-11
1005United Kingdom2024-06-20
1006Germany2024-05-25
1007Germany2024-05-26
1008Russia2024-05-31
1009Russia2024-06-16
1010India2024-06-09
1011United Kingdom2024-05-27
1012France2024-06-18
1013Brazil2024-05-26
1014Canada2024-06-03
1015United Kingdom2024-06-19
1016India2024-06-06
1017India2024-06-16
1018France2024-05-31
1019United Kingdom2024-05-23
1020Brazil2024-05-24
1021India2024-06-06
1022United Kingdom2024-06-12
1023Germany2024-05-25
1024Russia2024-06-05
1025United Kingdom2024-05-25
1026Australia2024-06-11
1027Spain2024-06-09
1028Germany2024-05-26
1029Japan2024-06-09
1030Brazil2024-06-12
1031Japan2024-05-26
1032France2024-06-05
1033India2024-06-21
1034Spain2024-05-24
1035Spain2024-05-27
1036Russia2024-06-12
1037Italy2024-06-11
1038United Kingdom2024-06-06
1039Italy2024-05-25
1040Canada2024-06-16
1041Russia2024-06-12
1042United Kingdom2024-06-09
1043Brazil2024-05-24
1044Germany2024-06-12
1045India2024-06-14
1046Brazil2024-05-30
1047India2024-05-26
1048Germany2024-05-31
1049Spain2024-05-31

On-Demand Data

NameIdCountryDate
Salvatore I Malet1000Russia2024-06-14
Arvin K Dilliard1001Australia2024-06-03
Stacey O Bowley1002Spain2024-06-08
Juan D Gaucho1003Russia2024-05-24
Jefferson Y Nestle1004Argentina2024-06-16
Rodrigues V Stockham1005United Kingdom2024-05-27
Mayumi S Darakjy1006Canada2024-05-31
Costa Z Inouye1007Brazil2024-06-01
Costa D Rim1008Australia2024-06-16
Deepesh C Marrier1009Russia2024-06-17
Darci F Tollner1010Japan2024-06-08
Mujtaba D Kusko1011Japan2024-05-27
Isabel Z Venere1012France2024-06-16
Aruna Q Bolognia1013Brazil2024-06-15
Jefferson W Royster1014Italy2024-06-07
Silvio M Stenseth1015Russia2024-05-26
Misaki N Amigon1016Italy2024-06-21
Jefferson Z Poquette1017Russia2024-06-19
Cody K Stockham1018Russia2024-06-05
Maisha Q Nestle1019Australia2024-05-29
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Emily B PoquetteSpainIoni Bowcher UNQUALIFIED
Morrow A StockhamRussiaOnyama Limba PROPOSAL
Isabel Z BologniaRussiaElwin Sharvill NEW
Nicolas U StockhamFranceOnyama Limba PROPOSAL
Jefferson W FollerBrazilAsiya Javayant RENEWAL
Smith N BologniaSpainBernardo Dominic RENEWAL
Sinclair F FerenczItalyXuxue Feng PROPOSAL
Juan E RoysterAustraliaAnna Fali NEGOTIATION
Aruna Z BriddickArgentinaIvan Magalhaes QUALIFIED
Darci U NestleSpainOnyama Limba PROPOSAL
Misaki U DoeSpainXuxue Feng UNQUALIFIED
Greenwood X PaprockiRussiaIvan Magalhaes UNQUALIFIED
Johnson K FerenczSpainElwin Sharvill NEW
Juan Z MacleadRussiaBernardo Dominic UNQUALIFIED
Darci S GlickGermanyBernardo Dominic UNQUALIFIED
Kadeem C VocelkaCanadaAsiya Javayant QUALIFIED
Kaitlin A CaldareraIndiaIvan Magalhaes RENEWAL
Jefferson A CaudyItalyXuxue Feng UNQUALIFIED
Darci F DoeFranceAnna Fali NEW
Misaki I DarakjyRussiaAnna Fali RENEWAL
Costa W MaletIndiaXuxue Feng NEGOTIATION
Kadeem T BologniaIndiaAmy Elsner RENEWAL
Francesco E GauchoRussiaAmy Elsner QUALIFIED
Juan H GarufiArgentinaAsiya Javayant NEW
Ashley M InouyeUnited KingdomOnyama Limba NEW
Isabel O FollerBrazilBernardo Dominic PROPOSAL
Francesco R MacleadJapanIvan Magalhaes UNQUALIFIED
Clifford F GarufiBrazilStephen Shaw NEW
Greenwood K RimJapanIvan Magalhaes QUALIFIED
Greenwood W FlosiGermanyBernardo Dominic UNQUALIFIED
Smith F RutaFranceStephen Shaw RENEWAL
David P CampainSpainIoni Bowcher NEW
James N FigeroaRussiaIvan Magalhaes NEGOTIATION
Greenwood C MacleadGermanyAsiya Javayant RENEWAL
Rodrigues B WaycottRussiaOnyama Limba NEW
Kaitlin M CampainRussiaStephen Shaw NEW
Nicolas M DoeUnited KingdomOnyama Limba QUALIFIED
Claire R CaudyRussiaAnna Fali NEW
James W SlusarskiFranceIvan Magalhaes NEW
Isabel Z IturbideIndiaElwin Sharvill QUALIFIED

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