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
Rodrigues H CaldareraCanadaElwin Sharvill NEGOTIATION
Leja L OstroskyAustraliaAmy Elsner RENEWAL
Emily Y RutaUnited KingdomIoni Bowcher NEGOTIATION
Maisha R TollnerJapanAmy Elsner QUALIFIED
Tony R GauchoIndiaStephen Shaw NEW
Silvio W GillianUnited KingdomElwin Sharvill RENEWAL
Francesco P WhobreyGermanyElwin Sharvill PROPOSAL
Misaki L FerenczFranceElwin Sharvill NEGOTIATION
David X KolmetzGermanyXuxue Feng RENEWAL
Claire C FlosiBrazilBernardo Dominic RENEWAL
Francesco F MorascaGermanyXuxue Feng QUALIFIED
Francesco G OstroskyCanadaStephen Shaw UNQUALIFIED
Kadeem Q MarrierFranceIoni Bowcher RENEWAL
Wickens U RulapaughAustraliaAmy Elsner NEGOTIATION
Octavia U FollerItalyStephen Shaw NEW
Julie E ChuiItalyElwin Sharvill NEGOTIATION
Mayumi Z RimItalyIvan Magalhaes NEW
Salvatore U VocelkaArgentinaElwin Sharvill NEGOTIATION
Aika U CaldareraCanadaIoni Bowcher UNQUALIFIED
Costa Y CaldareraSpainAmy Elsner RENEWAL
Maisha V GarufiGermanyAmy Elsner UNQUALIFIED
Adams Z BriddickGermanyAsiya Javayant NEW
Clifford B VocelkaSpainAmy Elsner UNQUALIFIED
Clifford G VocelkaItalyXuxue Feng PROPOSAL
Emily Q IturbideJapanXuxue Feng PROPOSAL
Johnson W FigeroaIndiaAnna Fali NEW
Johnson Z RutaCanadaElwin Sharvill UNQUALIFIED
Antonio Q PaprockiUnited KingdomAmy Elsner UNQUALIFIED
Aika T VocelkaRussiaOnyama Limba NEW
Maisha T OldroydRussiaXuxue Feng RENEWAL
James H TollnerArgentinaXuxue Feng RENEWAL
Mujtaba R SchemmerArgentinaXuxue Feng NEW
Chavez H DoeGermanyElwin Sharvill UNQUALIFIED
Leja C RutaItalyOnyama Limba RENEWAL
Isabel S WieserGermanyOnyama Limba QUALIFIED
Murillo A MaletRussiaIoni Bowcher PROPOSAL
Francesco B GillianGermanyStephen Shaw NEW
Isabel F GillianCanadaOnyama Limba PROPOSAL
Morrow U MaletAustraliaAmy Elsner RENEWAL
Jefferson Y ShinkoGermanyAsiya Javayant NEW
Ashley G PaprockiGermanyAmy Elsner RENEWAL
David T DilliardFranceIvan Magalhaes RENEWAL
Cody H GillianFranceIoni Bowcher UNQUALIFIED
Faith O BriddickJapanXuxue Feng QUALIFIED
Deepesh Z VocelkaItalyAmy Elsner RENEWAL
Jones L DilliardIndiaAnna Fali NEGOTIATION
Smith D NestleCanadaOnyama Limba NEGOTIATION
Clifford Y ShinkoRussiaIoni Bowcher NEGOTIATION
Maisha R SaylorsBrazilStephen Shaw NEW
Misaki G GauchoGermanyOnyama Limba NEW
Horizontal
NameCountryRepresentativeStatus
Mayumi N FlosiAustraliaBernardo Dominic NEGOTIATION
Smith H OstroskyItalyStephen Shaw QUALIFIED
Claire L OldroydFranceAsiya Javayant NEW
Darci M GarufiRussiaAsiya Javayant NEGOTIATION
Aruna W FlosiAustraliaElwin Sharvill NEGOTIATION
Silvio H RutaCanadaOnyama Limba QUALIFIED
Octavia M VocelkaGermanyAsiya Javayant UNQUALIFIED
Aruna S VocelkaJapanAnna Fali NEGOTIATION
Kadeem V KolmetzAustraliaAmy Elsner NEGOTIATION
Deepesh F OldroydSpainAnna Fali RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Alejandro S MorascaFrance2024-06-04Chanay, Jeffrey A Esq QUALIFIED46Ioni Bowcher
1001Ashley G BriddickUnited Kingdom2024-06-13Feiner Bros QUALIFIED76Ioni Bowcher
1002Stacey X BriddickGermany2024-06-19King, Christopher A Esq PROPOSAL46Amy Elsner
1003Julie T VocelkaCanada2024-06-03Dorl, James J Esq NEGOTIATION30Ioni Bowcher
1004Adams R GillianSpain2024-06-02Feiner Bros RENEWAL0Xuxue Feng
1005Arvin V GauchoFrance2024-06-12Buckley Miller Wright NEGOTIATION47Bernardo Dominic
1006Stacey R StensethUnited Kingdom2024-06-05Benton, John B Jr QUALIFIED92Onyama Limba
1007Johnson J WaycottCanada2024-05-27Chapman, Ross E Esq PROPOSAL24Onyama Limba
1008Faith I DarakjySpain2024-06-21Feltz Printing Service RENEWAL66Ioni Bowcher
1009Stacey N GillianRussia2024-06-03Commercial Press QUALIFIED34Amy Elsner
1010Stacey A AlbaresIndia2024-06-03Chanay, Jeffrey A Esq RENEWAL54Onyama Limba
1011Kadeem O MorascaCanada2024-06-02Commercial Press PROPOSAL6Onyama Limba
1012Jones Y BowleyAustralia2024-06-01King, Christopher A Esq PROPOSAL33Asiya Javayant
1013Stacey Z KolmetzJapan2024-06-14Buckley Miller Wright RENEWAL87Anna Fali
1014Kadeem D RulapaughSpain2024-05-29Printing Dimensions PROPOSAL66Amy Elsner
1015Munro M MacleadAustralia2024-06-16Chapman, Ross E Esq QUALIFIED94Asiya Javayant
1016Cody Z GauchoUnited Kingdom2024-06-14Benton, John B Jr RENEWAL34Ioni Bowcher
1017Ricardo G FlosiIndia2024-06-03Buckley Miller Wright RENEWAL97Anna Fali
1018Darci Z FigeroaItaly2024-06-04Printing Dimensions PROPOSAL34Ioni Bowcher
1019Arvin G NickaBrazil2024-06-14Feltz Printing Service UNQUALIFIED22Ivan Magalhaes
1020Faith Y FerenczAustralia2024-06-05Chanay, Jeffrey A Esq NEGOTIATION51Stephen Shaw
1021Nicolas O ButtSpain2024-06-23Rousseaux, Michael Esq QUALIFIED21Elwin Sharvill
1022Stacey M CampainGermany2024-06-07Buckley Miller Wright PROPOSAL22Onyama Limba
1023Antonio W StockhamFrance2024-06-06Commercial Press UNQUALIFIED24Stephen Shaw
1024Smith K GauchoRussia2024-06-08Commercial Press RENEWAL16Anna Fali
1025Cody U InouyeUnited Kingdom2024-06-09Truhlar And Truhlar Attys NEGOTIATION90Xuxue Feng
1026Wickens F OstroskyRussia2024-06-04Chemel, James L Cpa PROPOSAL64Asiya Javayant
1027Jeanfrancois M MacleadRussia2024-05-31Chapman, Ross E Esq UNQUALIFIED88Xuxue Feng
1028Aditya J OstroskyAustralia2024-06-24Benton, John B Jr QUALIFIED19Onyama Limba
1029Silvio K StockhamArgentina2024-05-30Morlong Associates QUALIFIED97Xuxue Feng
1030Maisha J AlbaresSpain2024-06-04King, Christopher A Esq QUALIFIED88Ioni Bowcher
1031Arvin D SaylorsJapan2024-06-14Buckley Miller Wright NEGOTIATION91Asiya Javayant
1032Salvatore W MaletUnited Kingdom2024-05-30Dorl, James J Esq QUALIFIED39Onyama Limba
1033Octavia P GarufiIndia2024-06-07Rangoni Of Florence NEGOTIATION44Asiya Javayant
1034Aditya M OldroydFrance2024-05-30Dorl, James J Esq RENEWAL8Onyama Limba
1035Kadeem U GarufiBrazil2024-05-31Rousseaux, Michael Esq NEW91Ivan Magalhaes
1036Leja E GarufiSpain2024-06-17King, Christopher A Esq NEGOTIATION32Xuxue Feng
1037Deepesh T CampainArgentina2024-06-13Feiner Bros NEGOTIATION64Xuxue Feng
1038Claire F MacleadFrance2024-06-07Commercial Press NEW18Amy Elsner
1039Antonio Q GarufiUnited Kingdom2024-06-24Commercial Press NEW63Ioni Bowcher
1040Leon H WhobreyCanada2024-06-12Buckley Miller Wright RENEWAL60Ioni Bowcher
1041Adams V StensethAustralia2024-06-11Buckley Miller Wright RENEWAL45Bernardo Dominic
1042Izzy J MaletAustralia2024-06-10Rousseaux, Michael Esq NEW58Bernardo Dominic
1043Alejandro Q FlosiArgentina2024-06-08Truhlar And Truhlar Attys QUALIFIED32Amy Elsner
1044Jefferson E OstroskyJapan2024-05-29Chemel, James L Cpa QUALIFIED96Stephen Shaw
1045Alejandro G RulapaughCanada2024-05-29Morlong Associates NEGOTIATION56Xuxue Feng
1046Rodrigues M KuskoFrance2024-06-15Chemel, James L Cpa RENEWAL97Xuxue Feng
1047Arvin H SlusarskiJapan2024-06-09Buckley Miller Wright QUALIFIED71Asiya Javayant
1048James A AlbaresUnited Kingdom2024-06-14Morlong Associates NEW91Anna Fali
1049Greenwood A DarakjyJapan2024-06-12Rangoni Of Florence UNQUALIFIED81Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Darci S TollnerItalyIvan Magalhaes QUALIFIED
Mujtaba C GlickItalyIvan Magalhaes NEW
Isabel T MaletArgentinaIoni Bowcher PROPOSAL
Silvio P DoeItalyElwin Sharvill RENEWAL
Morrow T AlbaresUnited KingdomStephen Shaw NEGOTIATION
Morrow N GillianIndiaXuxue Feng NEW
Kadeem J PaprockiSpainIvan Magalhaes QUALIFIED
Silvio V SaylorsBrazilStephen Shaw NEGOTIATION
Ricardo J CampainItalyIvan Magalhaes NEGOTIATION
Greenwood V OstroskyArgentinaIvan Magalhaes NEW
Aika V MacleadSpainElwin Sharvill UNQUALIFIED
Aruna U StockhamFranceBernardo Dominic PROPOSAL
Jeanfrancois O MaletCanadaAmy Elsner NEW
Greenwood P RoysterBrazilStephen Shaw NEW
Julie A GauchoBrazilStephen Shaw NEW
Cody S GlickGermanyXuxue Feng NEGOTIATION
Arvin G SlusarskiSpainOnyama Limba NEW
Julie S OldroydFranceAsiya Javayant UNQUALIFIED
Sinclair F MaletBrazilOnyama Limba PROPOSAL
Adams F CaudyIndiaAnna Fali NEGOTIATION
Aruna C MaletArgentinaOnyama Limba QUALIFIED
Antonio A GarufiJapanAsiya Javayant PROPOSAL
Chavez F NestleSpainElwin Sharvill QUALIFIED
Maisha T CaudyJapanElwin Sharvill UNQUALIFIED
Francesco Y OldroydJapanAmy Elsner QUALIFIED
Silvio R SchemmerFranceIvan Magalhaes NEGOTIATION
Tony Y CampainUnited KingdomAnna Fali NEGOTIATION
Salvatore Z StockhamAustraliaIvan Magalhaes RENEWAL
Costa M VenereFranceAmy Elsner NEGOTIATION
Emily Q RulapaughUnited KingdomAsiya Javayant QUALIFIED
Jennifer X WaycottUnited KingdomBernardo Dominic QUALIFIED
Adams I WaycottRussiaStephen Shaw NEGOTIATION
Faith Y FlosiUnited KingdomIvan Magalhaes QUALIFIED
Jefferson K PerinRussiaAnna Fali RENEWAL
Clifford D WieserItalyOnyama Limba QUALIFIED
Smith K AmigonArgentinaStephen Shaw NEGOTIATION
Misaki G ChuiFranceOnyama Limba NEGOTIATION
Arvin C GillianArgentinaIvan Magalhaes QUALIFIED
Cody J CampainRussiaAnna Fali RENEWAL
Emily W AmigonBrazilStephen Shaw NEW
Ashley J MaletRussiaOnyama Limba NEGOTIATION
Stacey S InouyeSpainXuxue Feng QUALIFIED
Jennifer R MacleadSpainOnyama Limba PROPOSAL
Isabel E GlickGermanyXuxue Feng NEW
Munro X MorascaJapanBernardo Dominic RENEWAL
Isabel V GillianBrazilStephen Shaw RENEWAL
Murillo Y MaletFranceXuxue Feng NEGOTIATION
Julie B TollnerArgentinaXuxue Feng NEW
Adams P WaycottJapanIoni Bowcher PROPOSAL
Wickens T FlosiUnited KingdomAnna Fali UNQUALIFIED
Frozen Columns
Name
James L Dilliard
Deepesh I Sergi
Emily J Whobrey
Jones H Sergi
Greenwood J Gaucho
Octavia S Sergi
Cody F Paprocki
Cody X Kusko
Sinclair B Gaucho
Cody T Caudy
Cody E Morasca
Kadeem W Iturbide
Mayumi H Chui
Darci K Kusko
Costa J Albares
Murillo F Glick
Arvin B Gillian
Smith N Paprocki
Alejandro U Caudy
Clifford G Oldroyd
Jennifer S Saylors
Francesco S Perin
Jefferson N Shinko
Jennifer P Nestle
Juan A Royster
Julie S Vocelka
Julie V Wieser
Claire I Gaucho
Aika I Ruta
Chavez F Sergi
Ashley V Inouye
Tony M Bolognia
Kadeem X Doe
David I Poquette
Ivar X Darakjy
Rodrigues Z Kusko
Julie E Gaucho
Aditya P Bolognia
Costa P Stockham
Greenwood U Slusarski
Jennifer U Flosi
Silvio R Maclead
Claire I Wieser
Mujtaba L Perin
Juan H Rulapaugh
Clifford X Rulapaugh
Greenwood B Malet
Isabel X Paprocki
Emily M Morasca
Alejandro I Kusko
IdCountryDate
1000Russia2024-06-02
1001Spain2024-06-22
1002United Kingdom2024-06-22
1003Argentina2024-06-20
1004Australia2024-06-07
1005Canada2024-06-10
1006Japan2024-06-13
1007Canada2024-06-12
1008Japan2024-06-20
1009Australia2024-06-07
1010Canada2024-06-05
1011Australia2024-06-18
1012Germany2024-06-08
1013Japan2024-06-03
1014Australia2024-06-23
1015United Kingdom2024-06-16
1016United Kingdom2024-06-19
1017India2024-06-22
1018United Kingdom2024-05-30
1019Spain2024-06-04
1020Japan2024-06-15
1021Japan2024-05-26
1022Japan2024-06-04
1023Japan2024-05-31
1024Brazil2024-06-03
1025Spain2024-06-14
1026Russia2024-06-09
1027Australia2024-06-07
1028France2024-06-14
1029Australia2024-06-15
1030Spain2024-06-12
1031Russia2024-05-31
1032Italy2024-05-26
1033United Kingdom2024-06-23
1034United Kingdom2024-06-21
1035Brazil2024-06-24
1036Russia2024-06-17
1037Brazil2024-06-06
1038United Kingdom2024-05-26
1039Australia2024-06-21
1040Canada2024-06-20
1041Argentina2024-06-09
1042United Kingdom2024-05-31
1043Canada2024-06-14
1044United Kingdom2024-06-01
1045Australia2024-06-13
1046Brazil2024-05-27
1047France2024-05-27
1048United Kingdom2024-06-03
1049India2024-05-26

On-Demand Data

NameIdCountryDate
James F Shinko1000Brazil2024-06-14
Leon Y Tollner1001Russia2024-06-07
Kadeem D Royster1002Brazil2024-05-28
Ivar E Campain1003Japan2024-06-07
Emily V Inouye1004Brazil2024-06-18
Sinclair O Nicka1005France2024-06-09
Jefferson Z Stenseth1006Spain2024-06-01
Faith Y Nicka1007France2024-06-05
Smith X Campain1008France2024-06-16
Stacey J Amigon1009Australia2024-06-08
Octavia O Shinko1010United Kingdom2024-06-14
Clifford H Iturbide1011Australia2024-06-01
Clifford B Chui1012Spain2024-06-10
Kaitlin T Gillian1013Italy2024-05-29
Faith C Maclead1014Argentina2024-06-23
Costa U Perin1015India2024-06-18
Claire X Bolognia1016Australia2024-06-05
David R Caldarera1017Spain2024-06-10
Tony E Campain1018Spain2024-06-07
Faith K Nestle1019United Kingdom2024-06-14
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Deepesh R BriddickGermanyIoni Bowcher NEW
Emily I DarakjySpainBernardo Dominic NEGOTIATION
Cody O NickaJapanAnna Fali NEGOTIATION
Darci B VenereUnited KingdomIvan Magalhaes NEGOTIATION
Johnson T SchemmerGermanyXuxue Feng RENEWAL
Nicolas C NestleAustraliaIvan Magalhaes RENEWAL
Nicolas I RutaCanadaStephen Shaw NEW
Chavez B SergiUnited KingdomAnna Fali QUALIFIED
Antonio T VocelkaUnited KingdomAnna Fali QUALIFIED
Cody V SlusarskiGermanyStephen Shaw NEGOTIATION
Darci P BologniaUnited KingdomIvan Magalhaes UNQUALIFIED
Nicolas S RimUnited KingdomIoni Bowcher QUALIFIED
Emily T SchemmerItalyBernardo Dominic PROPOSAL
Jones Y PaprockiAustraliaXuxue Feng UNQUALIFIED
Isabel F FerenczGermanyXuxue Feng QUALIFIED
Maisha X IturbideFranceBernardo Dominic UNQUALIFIED
Izzy C InouyeJapanAnna Fali UNQUALIFIED
Costa J KolmetzIndiaOnyama Limba NEW
Murillo R RulapaughGermanyAsiya Javayant PROPOSAL
Misaki X VocelkaRussiaAmy Elsner PROPOSAL
Claire T GarufiCanadaIvan Magalhaes QUALIFIED
Munro B KolmetzJapanElwin Sharvill NEW
Ricardo I SlusarskiFranceXuxue Feng NEW
Julie M MarrierGermanyAnna Fali RENEWAL
Maisha K OstroskyItalyStephen Shaw NEW
Aditya M RoysterArgentinaIoni Bowcher PROPOSAL
Alejandro L RutaCanadaBernardo Dominic NEGOTIATION
Deepesh W OldroydSpainIoni Bowcher QUALIFIED
Sinclair O FlosiCanadaAsiya Javayant UNQUALIFIED
Jennifer M SaylorsUnited KingdomStephen Shaw PROPOSAL
Leja N WieserJapanStephen Shaw QUALIFIED
Mujtaba Z GillianRussiaAsiya Javayant NEGOTIATION
Mayumi Z MacleadCanadaBernardo Dominic NEGOTIATION
Aditya S VenereItalyIoni Bowcher RENEWAL
Murillo Y InouyeUnited KingdomIvan Magalhaes QUALIFIED
Kadeem T GlickIndiaAsiya Javayant PROPOSAL
Julie O WhobreyJapanBernardo Dominic PROPOSAL
Emily I KolmetzArgentinaAmy Elsner QUALIFIED
Clifford T PerinFranceAmy Elsner NEW
Leon F VenereGermanyOnyama Limba NEW

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