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 Q RoysterFranceBernardo Dominic QUALIFIED
Leja Z GauchoGermanyXuxue Feng PROPOSAL
Kadeem H ChuiBrazilAmy Elsner UNQUALIFIED
Ashley U DoeCanadaOnyama Limba NEW
Salvatore F RutaAustraliaIvan Magalhaes PROPOSAL
Smith M DoeGermanyStephen Shaw NEW
Murillo C VocelkaCanadaStephen Shaw RENEWAL
Cody I InouyeSpainOnyama Limba RENEWAL
Murillo E AlbaresArgentinaStephen Shaw NEGOTIATION
Munro K PaprockiGermanyStephen Shaw NEW
Izzy N FlosiBrazilOnyama Limba QUALIFIED
Clifford D PoquetteGermanyElwin Sharvill RENEWAL
Salvatore M WieserItalyOnyama Limba NEW
Kaitlin B OstroskyRussiaElwin Sharvill PROPOSAL
Aika J RulapaughArgentinaElwin Sharvill UNQUALIFIED
Mujtaba Q MorascaArgentinaAmy Elsner PROPOSAL
Silvio O SaylorsFranceAsiya Javayant NEW
Izzy A WaycottFranceOnyama Limba QUALIFIED
Murillo Z ShinkoJapanXuxue Feng QUALIFIED
Ricardo V GauchoBrazilOnyama Limba UNQUALIFIED
Munro O OstroskySpainXuxue Feng UNQUALIFIED
Jennifer S AlbaresItalyBernardo Dominic RENEWAL
Ashley N FigeroaRussiaStephen Shaw NEGOTIATION
Adams I GlickUnited KingdomBernardo Dominic NEGOTIATION
Ricardo D RoysterArgentinaIoni Bowcher QUALIFIED
Misaki Q SchemmerFranceAsiya Javayant QUALIFIED
Cody D OstroskyBrazilStephen Shaw PROPOSAL
Aditya M GauchoAustraliaOnyama Limba QUALIFIED
Faith U TollnerGermanyOnyama Limba NEW
Wickens U CampainJapanAnna Fali PROPOSAL
Morrow G TollnerFranceOnyama Limba NEW
Aika Z ButtCanadaAmy Elsner PROPOSAL
Juan W FigeroaFranceStephen Shaw RENEWAL
Cody I FigeroaJapanIvan Magalhaes PROPOSAL
Isabel Y VocelkaCanadaAmy Elsner QUALIFIED
Emily Z WieserFranceXuxue Feng NEW
Ricardo E GillianGermanyIoni Bowcher PROPOSAL
Mujtaba D DilliardArgentinaAmy Elsner NEGOTIATION
Ricardo F SergiUnited KingdomElwin Sharvill NEW
Murillo Y SaylorsGermanyAsiya Javayant RENEWAL
Antonio E CaudyAustraliaAmy Elsner RENEWAL
Octavia F MaletJapanStephen Shaw NEGOTIATION
Cody X RimFranceOnyama Limba UNQUALIFIED
Silvio N NestleArgentinaAsiya Javayant UNQUALIFIED
Ricardo R RimArgentinaIvan Magalhaes UNQUALIFIED
Claire T RulapaughItalyXuxue Feng QUALIFIED
Jennifer F MaletArgentinaOnyama Limba QUALIFIED
Leon C KuskoItalyOnyama Limba RENEWAL
Julie X VocelkaBrazilIoni Bowcher NEGOTIATION
Ashley D OstroskyFranceXuxue Feng UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Nicolas N KolmetzJapanAnna Fali QUALIFIED
Adams B StensethIndiaAmy Elsner QUALIFIED
Johnson T StockhamBrazilIoni Bowcher NEW
Leon J StockhamBrazilAmy Elsner UNQUALIFIED
David I DilliardSpainAmy Elsner NEW
Maisha A AlbaresJapanAnna Fali RENEWAL
Rodrigues G StockhamSpainAnna Fali NEW
Clifford M SaylorsUnited KingdomIoni Bowcher NEGOTIATION
Rodrigues X OstroskyArgentinaStephen Shaw PROPOSAL
Smith T ShinkoUnited KingdomAsiya Javayant PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Tony S SchemmerUnited Kingdom2024-06-09Printing Dimensions QUALIFIED41Amy Elsner
1001Adams K TollnerSpain2024-06-15Buckley Miller Wright NEW97Amy Elsner
1002Ashley U FlosiUnited Kingdom2024-06-09Benton, John B Jr RENEWAL78Amy Elsner
1003Jefferson Q RoysterSpain2024-06-16Morlong Associates NEW73Xuxue Feng
1004Murillo E IturbideAustralia2024-05-28Rousseaux, Michael Esq PROPOSAL40Amy Elsner
1005Jennifer G IturbideBrazil2024-06-03Commercial Press PROPOSAL32Anna Fali
1006Izzy X NickaFrance2024-06-22Chapman, Ross E Esq RENEWAL47Asiya Javayant
1007Deepesh K InouyeSpain2024-06-02Dorl, James J Esq RENEWAL88Asiya Javayant
1008Leja H NestleArgentina2024-05-24Chanay, Jeffrey A Esq UNQUALIFIED46Ivan Magalhaes
1009Octavia N KolmetzIndia2024-06-18Benton, John B Jr NEGOTIATION74Asiya Javayant
1010Silvio S MorascaArgentina2024-05-31Commercial Press UNQUALIFIED3Stephen Shaw
1011Salvatore G GauchoRussia2024-05-30Dorl, James J Esq UNQUALIFIED42Elwin Sharvill
1012Jeanfrancois K GillianFrance2024-05-25Commercial Press PROPOSAL23Stephen Shaw
1013Sinclair H DarakjyAustralia2024-06-18Printing Dimensions QUALIFIED48Stephen Shaw
1014Deepesh F KuskoAustralia2024-06-05Printing Dimensions QUALIFIED4Bernardo Dominic
1015Aika C PoquetteGermany2024-06-18Feltz Printing Service PROPOSAL31Amy Elsner
1016Izzy A DoeArgentina2024-05-24Rousseaux, Michael Esq NEW68Onyama Limba
1017Chavez C CaudyRussia2024-05-31Commercial Press QUALIFIED77Xuxue Feng
1018Ricardo V PaprockiJapan2024-06-02Morlong Associates RENEWAL39Xuxue Feng
1019Antonio D VocelkaJapan2024-05-25Rousseaux, Michael Esq NEW72Onyama Limba
1020Deepesh D WaycottGermany2024-06-02Morlong Associates RENEWAL60Anna Fali
1021Rodrigues G GillianIndia2024-05-24Chemel, James L Cpa NEW10Stephen Shaw
1022Leon J FollerUnited Kingdom2024-06-10King, Christopher A Esq RENEWAL76Amy Elsner
1023Faith T RulapaughBrazil2024-06-17Feiner Bros NEW56Onyama Limba
1024Mayumi N GarufiGermany2024-06-17Chapman, Ross E Esq NEGOTIATION1Xuxue Feng
1025Leon P IturbideBrazil2024-05-24Benton, John B Jr QUALIFIED41Anna Fali
1026Arvin B WieserUnited Kingdom2024-05-30Feltz Printing Service RENEWAL52Bernardo Dominic
1027Aika K RutaFrance2024-06-10Chanay, Jeffrey A Esq UNQUALIFIED85Ioni Bowcher
1028Sinclair I NickaJapan2024-06-11Commercial Press NEGOTIATION76Amy Elsner
1029Mujtaba G NestleJapan2024-06-13Morlong Associates NEGOTIATION12Ivan Magalhaes
1030Greenwood L PaprockiFrance2024-06-03Benton, John B Jr PROPOSAL49Asiya Javayant
1031Deepesh K MacleadItaly2024-05-28Chemel, James L Cpa NEGOTIATION93Onyama Limba
1032Tony G DoeCanada2024-06-01Morlong Associates NEW73Xuxue Feng
1033Clifford J StockhamSpain2024-05-25Feltz Printing Service NEGOTIATION19Ioni Bowcher
1034Kadeem S KolmetzBrazil2024-05-28Printing Dimensions UNQUALIFIED56Elwin Sharvill
1035Ricardo R RimRussia2024-05-28Morlong Associates NEW10Xuxue Feng
1036Jefferson O CaudyCanada2024-05-28Dorl, James J Esq NEGOTIATION70Ivan Magalhaes
1037Octavia Y SaylorsFrance2024-05-28Buckley Miller Wright QUALIFIED60Asiya Javayant
1038Claire J PaprockiBrazil2024-06-16Benton, John B Jr UNQUALIFIED18Elwin Sharvill
1039Emily Z AlbaresAustralia2024-06-17Morlong Associates NEW29Ioni Bowcher
1040Costa E BriddickGermany2024-06-15Rangoni Of Florence NEW85Asiya Javayant
1041Jeanfrancois J NestleArgentina2024-06-02Commercial Press UNQUALIFIED72Stephen Shaw
1042Costa P RulapaughArgentina2024-06-04Chanay, Jeffrey A Esq NEW7Anna Fali
1043Greenwood I FerenczArgentina2024-06-07Rangoni Of Florence PROPOSAL24Onyama Limba
1044Aruna G DarakjyAustralia2024-05-24Chemel, James L Cpa NEW69Onyama Limba
1045Maria A DilliardArgentina2024-06-18Rangoni Of Florence PROPOSAL91Anna Fali
1046Juan T BriddickArgentina2024-05-30Feiner Bros PROPOSAL72Onyama Limba
1047Smith B RutaGermany2024-06-05Rangoni Of Florence UNQUALIFIED25Amy Elsner
1048Sinclair O KolmetzArgentina2024-06-12Morlong Associates NEGOTIATION92Ivan Magalhaes
1049Clifford A PerinRussia2024-05-24Feltz Printing Service NEW90Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Kadeem F FlosiGermanyAsiya Javayant UNQUALIFIED
Antonio J OldroydSpainBernardo Dominic RENEWAL
Rodrigues Z WhobreyJapanAmy Elsner NEGOTIATION
Faith P MorascaUnited KingdomAnna Fali QUALIFIED
Francesco L FerenczGermanyIvan Magalhaes PROPOSAL
Mayumi G ChuiJapanElwin Sharvill NEGOTIATION
Octavia H KolmetzFranceIoni Bowcher UNQUALIFIED
Jeanfrancois Y CaldareraUnited KingdomAsiya Javayant RENEWAL
Costa M FigeroaArgentinaIvan Magalhaes PROPOSAL
Sinclair H GarufiItalyXuxue Feng QUALIFIED
Jones U InouyeJapanOnyama Limba QUALIFIED
Jennifer L DarakjyUnited KingdomXuxue Feng UNQUALIFIED
Clifford W WaycottGermanyBernardo Dominic PROPOSAL
Aika K MarrierJapanAnna Fali QUALIFIED
Smith D GillianItalyStephen Shaw RENEWAL
Silvio Q AlbaresArgentinaIvan Magalhaes UNQUALIFIED
Arvin F BowleyCanadaStephen Shaw UNQUALIFIED
Darci X GauchoSpainBernardo Dominic NEGOTIATION
Ivar P InouyeFranceOnyama Limba PROPOSAL
Maria J MaletIndiaBernardo Dominic PROPOSAL
Morrow P NickaItalyOnyama Limba QUALIFIED
Chavez R FollerItalyXuxue Feng PROPOSAL
Costa I AmigonFranceXuxue Feng NEW
Julie S ButtJapanOnyama Limba UNQUALIFIED
Costa N SergiBrazilIoni Bowcher UNQUALIFIED
Francesco M IturbideUnited KingdomIoni Bowcher PROPOSAL
Greenwood X StensethSpainElwin Sharvill NEGOTIATION
Juan K NickaAustraliaIvan Magalhaes NEW
Ivar N SchemmerItalyStephen Shaw QUALIFIED
Tony A GlickSpainAnna Fali PROPOSAL
Mujtaba N VocelkaAustraliaAnna Fali UNQUALIFIED
Deepesh X MarrierUnited KingdomAnna Fali NEGOTIATION
Johnson A SaylorsUnited KingdomOnyama Limba NEGOTIATION
Mayumi C SaylorsJapanOnyama Limba UNQUALIFIED
Clifford U PerinAustraliaIvan Magalhaes RENEWAL
Alejandro F FerenczItalyAnna Fali NEGOTIATION
Mayumi F VocelkaBrazilAsiya Javayant PROPOSAL
Sinclair V InouyeFranceOnyama Limba QUALIFIED
Jones Z PaprockiSpainBernardo Dominic NEW
Aika B RimAustraliaXuxue Feng NEW
Antonio E SergiUnited KingdomXuxue Feng NEGOTIATION
Salvatore W GillianArgentinaStephen Shaw QUALIFIED
Jones O BowleyArgentinaElwin Sharvill NEW
Ricardo F MaletJapanOnyama Limba NEW
Cody L ButtBrazilBernardo Dominic NEW
Chavez U VenereIndiaOnyama Limba QUALIFIED
Wickens B GlickFranceOnyama Limba PROPOSAL
Aditya Z GarufiRussiaIoni Bowcher RENEWAL
Claire X RulapaughCanadaAmy Elsner PROPOSAL
Maria Z GauchoBrazilElwin Sharvill RENEWAL
Frozen Columns
Name
Kadeem B Wieser
Darci W Flosi
Darci Z Malet
Murillo Q Shinko
Adams Y Rulapaugh
Silvio Y Gillian
Jeanfrancois A Amigon
Arvin V Poquette
James V Amigon
Jeanfrancois X Waycott
Maisha W Slusarski
Ivar K Morasca
Aditya A Stockham
Alejandro R Amigon
Ricardo N Bolognia
Munro G Nestle
Munro V Poquette
Johnson N Sergi
Alejandro I Stockham
Francesco W Waycott
Faith F Royster
Silvio P Rulapaugh
Jones R Maclead
Julie A Stockham
Alejandro T Schemmer
Ashley R Amigon
Salvatore T Rim
Ivar J Whobrey
Emily U Doe
Deepesh O Slusarski
Mujtaba S Stockham
Faith G Butt
Darci Z Shinko
Aruna F Flosi
Antonio Y Bowley
Darci J Slusarski
Wickens A Marrier
Octavia L Rim
Adams J Wieser
Rodrigues D Morasca
Rodrigues Y Perin
Wickens F Gaucho
Ricardo P Tollner
Mayumi N Ferencz
Aruna F Wieser
Aika G Amigon
Juan D Glick
Aruna X Dilliard
Jeanfrancois E Inouye
Faith K Figeroa
IdCountryDate
1000Italy2024-06-17
1001Spain2024-05-31
1002France2024-06-13
1003Australia2024-06-03
1004France2024-06-06
1005Spain2024-05-26
1006Australia2024-05-31
1007France2024-05-27
1008Spain2024-06-22
1009Brazil2024-05-31
1010United Kingdom2024-06-15
1011India2024-06-15
1012India2024-06-18
1013Germany2024-05-30
1014United Kingdom2024-06-02
1015Russia2024-06-15
1016Brazil2024-05-25
1017United Kingdom2024-06-19
1018India2024-05-24
1019Spain2024-05-28
1020Italy2024-06-06
1021Australia2024-05-26
1022United Kingdom2024-06-08
1023Spain2024-06-14
1024Italy2024-06-17
1025United Kingdom2024-06-10
1026Australia2024-06-01
1027Spain2024-06-06
1028India2024-06-14
1029Brazil2024-05-31
1030Germany2024-06-17
1031Spain2024-06-18
1032Japan2024-06-03
1033Japan2024-06-16
1034France2024-05-28
1035Japan2024-06-03
1036United Kingdom2024-06-14
1037Italy2024-06-08
1038United Kingdom2024-05-28
1039Italy2024-06-17
1040Canada2024-06-15
1041Russia2024-06-03
1042Germany2024-06-04
1043India2024-06-12
1044Japan2024-05-26
1045United Kingdom2024-06-10
1046Russia2024-06-17
1047Japan2024-05-27
1048Canada2024-05-26
1049Canada2024-05-31

On-Demand Data

NameIdCountryDate
Misaki X Marrier1000France2024-06-07
Jeanfrancois T Flosi1001Germany2024-05-31
Costa B Nestle1002Russia2024-06-13
Rodrigues D Flosi1003Russia2024-06-04
Greenwood Z Garufi1004Australia2024-06-03
Stacey V Caudy1005Japan2024-06-10
Jefferson N Royster1006Canada2024-05-31
Octavia J Butt1007Canada2024-06-05
Stacey I Kusko1008Canada2024-06-01
Jeanfrancois R Venere1009Argentina2024-06-03
Salvatore X Ferencz1010India2024-06-17
Aditya Z Albares1011France2024-05-24
Faith E Rim1012Australia2024-06-20
Mujtaba X Campain1013Japan2024-06-15
Misaki W Poquette1014India2024-05-26
Murillo F Bolognia1015France2024-05-24
Sinclair W Inouye1016Italy2024-06-13
Nicolas D Ruta1017France2024-05-28
Salvatore E Whobrey1018Argentina2024-06-21
Smith W Butt1019France2024-06-03
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Julie K FlosiFranceBernardo Dominic UNQUALIFIED
Antonio V StockhamSpainAnna Fali NEW
Maria I RimRussiaXuxue Feng QUALIFIED
Munro E ChuiIndiaOnyama Limba RENEWAL
Clifford A SlusarskiArgentinaBernardo Dominic RENEWAL
Morrow R VocelkaAustraliaAmy Elsner PROPOSAL
Tony U GarufiAustraliaAsiya Javayant NEW
Claire D RoysterArgentinaElwin Sharvill PROPOSAL
Francesco Q GarufiBrazilAnna Fali RENEWAL
Murillo D WieserAustraliaAsiya Javayant PROPOSAL
Smith B NickaFranceAsiya Javayant QUALIFIED
Tony W FlosiBrazilIvan Magalhaes NEW
Maisha M PoquetteAustraliaIvan Magalhaes RENEWAL
Misaki P CampainSpainElwin Sharvill RENEWAL
Francesco Z SergiSpainAmy Elsner QUALIFIED
Rodrigues B IturbideJapanStephen Shaw QUALIFIED
Aika Q CampainAustraliaBernardo Dominic NEGOTIATION
Francesco Z SergiCanadaStephen Shaw PROPOSAL
Deepesh L WhobreyUnited KingdomStephen Shaw QUALIFIED
Faith Q RutaArgentinaBernardo Dominic RENEWAL
Antonio T RulapaughRussiaAsiya Javayant NEW
Aruna F WieserRussiaElwin Sharvill PROPOSAL
Rodrigues P GarufiAustraliaAsiya Javayant NEGOTIATION
Stacey Y RimBrazilXuxue Feng NEGOTIATION
Jeanfrancois E WieserAustraliaAsiya Javayant PROPOSAL
Kaitlin J NestleItalyAsiya Javayant NEW
Greenwood F AmigonRussiaAnna Fali QUALIFIED
Antonio G MaletAustraliaXuxue Feng PROPOSAL
Juan Y FerenczJapanIvan Magalhaes PROPOSAL
Isabel T GlickSpainAmy Elsner NEW
Tony S StockhamCanadaBernardo Dominic RENEWAL
Emily X DarakjyBrazilElwin Sharvill RENEWAL
Leon Y PaprockiJapanAmy Elsner NEGOTIATION
Deepesh T SchemmerArgentinaIvan Magalhaes PROPOSAL
Morrow Q ChuiItalyXuxue Feng QUALIFIED
Adams A VenereArgentinaIoni Bowcher RENEWAL
Aruna Z PoquetteRussiaStephen Shaw UNQUALIFIED
Jennifer W AmigonCanadaBernardo Dominic NEW
Mujtaba C StockhamItalyXuxue Feng NEW
Morrow Q BriddickItalyIoni Bowcher 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>