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
Salvatore I StensethSpainBernardo Dominic NEW
Emily D KolmetzBrazilStephen Shaw NEGOTIATION
Isabel M StensethFranceIoni Bowcher NEGOTIATION
Clifford B GarufiFranceIoni Bowcher PROPOSAL
Jennifer K SergiSpainAsiya Javayant NEGOTIATION
Aruna E ChuiFranceAsiya Javayant NEGOTIATION
Francesco Z MacleadSpainAmy Elsner UNQUALIFIED
Octavia U CaldareraUnited KingdomIvan Magalhaes UNQUALIFIED
Salvatore E MacleadIndiaXuxue Feng RENEWAL
Sinclair G MaletItalyElwin Sharvill PROPOSAL
Mujtaba U DoeSpainIoni Bowcher UNQUALIFIED
Julie F BowleyRussiaStephen Shaw RENEWAL
Stacey I RoysterAustraliaIvan Magalhaes QUALIFIED
Leja T PerinBrazilXuxue Feng QUALIFIED
Tony W DarakjyJapanElwin Sharvill QUALIFIED
Leja P PaprockiGermanyXuxue Feng NEGOTIATION
Cody R MacleadGermanyElwin Sharvill RENEWAL
Octavia Y BowleyGermanyIvan Magalhaes QUALIFIED
Murillo V GlickCanadaElwin Sharvill RENEWAL
Aika V MaletIndiaIvan Magalhaes NEGOTIATION
Johnson T NickaCanadaElwin Sharvill PROPOSAL
Deepesh U RimJapanAmy Elsner RENEWAL
Jeanfrancois A AlbaresArgentinaAnna Fali PROPOSAL
Costa G SchemmerFranceBernardo Dominic UNQUALIFIED
Johnson H RutaUnited KingdomIvan Magalhaes PROPOSAL
Maria E FigeroaBrazilXuxue Feng PROPOSAL
Leon L VenereAustraliaAsiya Javayant PROPOSAL
Mujtaba S MarrierIndiaElwin Sharvill NEGOTIATION
Stacey E CaudyJapanIvan Magalhaes NEGOTIATION
Juan W WaycottSpainXuxue Feng RENEWAL
Salvatore F PerinIndiaBernardo Dominic QUALIFIED
Murillo R BologniaRussiaBernardo Dominic RENEWAL
Leja A WhobreyItalyStephen Shaw RENEWAL
Isabel N RulapaughIndiaAnna Fali NEGOTIATION
Silvio V MaletCanadaAsiya Javayant PROPOSAL
Claire L CampainArgentinaAnna Fali PROPOSAL
Jefferson U FerenczItalyStephen Shaw NEGOTIATION
Jennifer U RutaRussiaAnna Fali NEW
Ivar H StensethItalyXuxue Feng QUALIFIED
James W GlickBrazilStephen Shaw UNQUALIFIED
Greenwood V BriddickArgentinaBernardo Dominic NEW
Sinclair S PaprockiBrazilAsiya Javayant PROPOSAL
Misaki W ButtArgentinaAmy Elsner UNQUALIFIED
Kadeem F SaylorsItalyAsiya Javayant NEGOTIATION
Jones F PerinRussiaStephen Shaw NEGOTIATION
Izzy S MorascaCanadaAmy Elsner RENEWAL
Claire V VenereAustraliaAmy Elsner QUALIFIED
Arvin T SchemmerFranceStephen Shaw NEW
Ivar I WaycottUnited KingdomOnyama Limba QUALIFIED
Aika I RutaIndiaAmy Elsner RENEWAL
Horizontal
NameCountryRepresentativeStatus
Jeanfrancois K RutaArgentinaAnna Fali NEW
Morrow I MacleadItalyOnyama Limba UNQUALIFIED
Julie Q SlusarskiRussiaAmy Elsner UNQUALIFIED
Julie P StockhamCanadaStephen Shaw UNQUALIFIED
Francesco R WhobreyJapanOnyama Limba QUALIFIED
Darci K GauchoRussiaIoni Bowcher NEW
Smith F ChuiAustraliaAsiya Javayant QUALIFIED
Isabel A OldroydUnited KingdomOnyama Limba PROPOSAL
Chavez Q RimAustraliaOnyama Limba PROPOSAL
Faith N ButtItalyAnna Fali QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Leon V DarakjyFrance2024-06-01Printing Dimensions NEW46Stephen Shaw
1001Jones C ButtBrazil2024-06-09Truhlar And Truhlar Attys NEW28Anna Fali
1002Cody F PoquetteIndia2024-06-18Benton, John B Jr QUALIFIED55Onyama Limba
1003Kaitlin G FlosiBrazil2024-06-09Rousseaux, Michael Esq UNQUALIFIED0Ioni Bowcher
1004Cody N FollerCanada2024-06-13Truhlar And Truhlar Attys UNQUALIFIED20Ivan Magalhaes
1005Aika H PaprockiCanada2024-06-19Feltz Printing Service RENEWAL13Asiya Javayant
1006Costa K MaletSpain2024-06-11Rousseaux, Michael Esq QUALIFIED86Amy Elsner
1007Wickens Z CaudyJapan2024-06-20Feltz Printing Service UNQUALIFIED21Anna Fali
1008Leja I KolmetzUnited Kingdom2024-06-19Commercial Press RENEWAL83Ioni Bowcher
1009Jennifer S GarufiGermany2024-06-20Rangoni Of Florence PROPOSAL95Bernardo Dominic
1010Maria O AmigonSpain2024-05-29Commercial Press UNQUALIFIED86Bernardo Dominic
1011Alejandro G RimSpain2024-06-05Morlong Associates PROPOSAL83Amy Elsner
1012Wickens I KuskoIndia2024-06-13Feiner Bros UNQUALIFIED78Elwin Sharvill
1013Nicolas Z SaylorsAustralia2024-06-08King, Christopher A Esq RENEWAL96Ioni Bowcher
1014Darci N VocelkaBrazil2024-06-02Buckley Miller Wright UNQUALIFIED2Asiya Javayant
1015Maisha K KuskoCanada2024-06-13Benton, John B Jr RENEWAL82Asiya Javayant
1016Emily M StockhamItaly2024-06-13Feiner Bros RENEWAL30Ivan Magalhaes
1017Adams H BriddickItaly2024-05-24Chemel, James L Cpa PROPOSAL5Onyama Limba
1018David M RulapaughGermany2024-06-04Printing Dimensions PROPOSAL95Onyama Limba
1019Juan E MacleadFrance2024-06-09King, Christopher A Esq PROPOSAL63Ivan Magalhaes
1020Julie Y NestleAustralia2024-05-28King, Christopher A Esq UNQUALIFIED51Bernardo Dominic
1021Francesco W SergiJapan2024-06-05Chanay, Jeffrey A Esq NEW86Xuxue Feng
1022Wickens I VocelkaJapan2024-06-10Rangoni Of Florence RENEWAL99Anna Fali
1023Misaki Y MacleadFrance2024-05-29Feltz Printing Service RENEWAL91Xuxue Feng
1024Ashley Z VenereJapan2024-06-19Buckley Miller Wright RENEWAL2Xuxue Feng
1025Morrow V InouyeIndia2024-06-11Chapman, Ross E Esq NEGOTIATION69Xuxue Feng
1026Chavez N AlbaresUnited Kingdom2024-06-18Feiner Bros QUALIFIED8Anna Fali
1027Mujtaba R FigeroaArgentina2024-06-03Feiner Bros NEGOTIATION32Xuxue Feng
1028Aika C SaylorsBrazil2024-06-12Printing Dimensions PROPOSAL82Stephen Shaw
1029Deepesh S SergiCanada2024-05-25Dorl, James J Esq NEW29Xuxue Feng
1030Ricardo G SchemmerSpain2024-06-07King, Christopher A Esq QUALIFIED70Elwin Sharvill
1031Kadeem K MarrierRussia2024-05-29Rangoni Of Florence UNQUALIFIED90Stephen Shaw
1032Darci C StensethSpain2024-06-03Dorl, James J Esq UNQUALIFIED36Xuxue Feng
1033Arvin E AlbaresJapan2024-05-26Truhlar And Truhlar Attys UNQUALIFIED95Ioni Bowcher
1034Costa R OstroskyItaly2024-06-01Rousseaux, Michael Esq NEGOTIATION10Amy Elsner
1035Aika W MacleadCanada2024-06-05Commercial Press NEGOTIATION0Asiya Javayant
1036Ivar F PaprockiItaly2024-06-07Commercial Press PROPOSAL23Amy Elsner
1037Leon Y MorascaIndia2024-06-17Chemel, James L Cpa UNQUALIFIED90Ioni Bowcher
1038Smith F StockhamAustralia2024-06-11Feltz Printing Service PROPOSAL20Ioni Bowcher
1039Antonio S OldroydIndia2024-06-20Rangoni Of Florence QUALIFIED97Asiya Javayant
1040Antonio C KuskoUnited Kingdom2024-05-30Dorl, James J Esq RENEWAL54Amy Elsner
1041Tony E FigeroaArgentina2024-06-21King, Christopher A Esq PROPOSAL36Ioni Bowcher
1042Chavez I GauchoRussia2024-05-26King, Christopher A Esq PROPOSAL97Ivan Magalhaes
1043Misaki L PoquetteJapan2024-06-17Commercial Press RENEWAL51Ivan Magalhaes
1044Kaitlin J NestleArgentina2024-06-04Chemel, James L Cpa PROPOSAL18Ioni Bowcher
1045Aditya B VocelkaGermany2024-05-27Morlong Associates UNQUALIFIED38Onyama Limba
1046Morrow W RutaArgentina2024-05-29Feiner Bros QUALIFIED18Ioni Bowcher
1047Chavez X FigeroaIndia2024-06-02Printing Dimensions NEGOTIATION36Anna Fali
1048Maria Z PerinArgentina2024-05-30Dorl, James J Esq NEW76Ioni Bowcher
1049Isabel S DoeItaly2024-06-13Rangoni Of Florence NEW29Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Clifford W MarrierAustraliaAmy Elsner UNQUALIFIED
Aditya L MaletSpainAsiya Javayant RENEWAL
Tony I GauchoRussiaAmy Elsner QUALIFIED
Costa F KuskoCanadaOnyama Limba QUALIFIED
Rodrigues J SlusarskiRussiaOnyama Limba RENEWAL
Aditya O GillianAustraliaAmy Elsner PROPOSAL
Clifford L OldroydArgentinaBernardo Dominic PROPOSAL
Juan N AmigonAustraliaAnna Fali NEGOTIATION
Deepesh D CampainUnited KingdomIvan Magalhaes NEGOTIATION
Isabel M OldroydAustraliaStephen Shaw PROPOSAL
Alejandro D MarrierJapanBernardo Dominic PROPOSAL
Izzy P GlickBrazilXuxue Feng RENEWAL
Leon M ShinkoBrazilXuxue Feng PROPOSAL
Jones T OldroydAustraliaElwin Sharvill NEGOTIATION
Nicolas S CaldareraGermanyAsiya Javayant NEGOTIATION
Juan I CaldareraFranceIvan Magalhaes RENEWAL
Arvin W BriddickSpainXuxue Feng NEW
Nicolas U VocelkaIndiaElwin Sharvill NEGOTIATION
Juan D ChuiArgentinaBernardo Dominic PROPOSAL
Wickens T OstroskyRussiaAnna Fali NEGOTIATION
Mayumi V WhobreyArgentinaBernardo Dominic UNQUALIFIED
Ricardo F RulapaughBrazilElwin Sharvill NEGOTIATION
Ashley X SaylorsUnited KingdomAsiya Javayant PROPOSAL
Aika T PerinBrazilAnna Fali QUALIFIED
Silvio T GauchoBrazilAnna Fali QUALIFIED
Izzy C MaletUnited KingdomElwin Sharvill NEW
Murillo G GillianCanadaIoni Bowcher RENEWAL
Francesco P BowleyAustraliaElwin Sharvill NEW
Chavez B StockhamAustraliaAnna Fali UNQUALIFIED
Izzy S VocelkaBrazilAnna Fali PROPOSAL
Ivar D TollnerItalyElwin Sharvill RENEWAL
Clifford Q FollerRussiaIvan Magalhaes NEW
Claire O ButtSpainElwin Sharvill NEGOTIATION
Leon B DilliardItalyIoni Bowcher NEGOTIATION
Aika N StensethCanadaAmy Elsner PROPOSAL
Costa H FlosiUnited KingdomAnna Fali PROPOSAL
Aruna N SlusarskiJapanBernardo Dominic PROPOSAL
Octavia X GauchoCanadaAnna Fali NEW
Chavez Z FerenczFranceOnyama Limba UNQUALIFIED
Faith S GillianBrazilXuxue Feng RENEWAL
Costa N OstroskyBrazilOnyama Limba UNQUALIFIED
Johnson W WieserFranceIvan Magalhaes NEGOTIATION
Wickens J IturbideRussiaAmy Elsner QUALIFIED
Jefferson A RulapaughFranceBernardo Dominic NEGOTIATION
Darci U StockhamCanadaXuxue Feng NEGOTIATION
Julie U StockhamFranceAsiya Javayant PROPOSAL
Maria G PoquetteBrazilAnna Fali PROPOSAL
Aruna A MaletJapanXuxue Feng UNQUALIFIED
Morrow S TollnerArgentinaAsiya Javayant RENEWAL
Clifford X DoeUnited KingdomXuxue Feng NEGOTIATION
Frozen Columns
Name
Francesco A Campain
Jennifer T Slusarski
Murillo Y Glick
Deepesh N Rulapaugh
Kaitlin Z Malet
Aika S Tollner
Alejandro F Malet
Mayumi E Morasca
Adams G Paprocki
Claire O Glick
Francesco A Tollner
Sinclair M Albares
Misaki C Glick
Octavia N Malet
Maria W Venere
Francesco V Nestle
Izzy I Stockham
Juan Z Wieser
Faith A Vocelka
Salvatore C Maclead
Ricardo I Stockham
Mayumi R Ostrosky
Maria H Vocelka
Antonio I Iturbide
Cody L Gaucho
Nicolas P Marrier
Arvin Q Poquette
Munro V Waycott
Maisha V Shinko
Claire Z Malet
Stacey Z Schemmer
Rodrigues C Campain
Aruna G Shinko
Ivar Y Garufi
Kaitlin I Stockham
Leon O Gillian
Aruna E Caldarera
Greenwood V Shinko
Chavez Z Rulapaugh
Antonio G Bolognia
Jefferson N Doe
Julie O Venere
Adams A Caudy
Antonio T Shinko
Munro J Nestle
Jefferson Y Campain
Chavez A Briddick
Leon O Ferencz
Ivar N Chui
Alejandro M Glick
IdCountryDate
1000Canada2024-06-20
1001Russia2024-05-29
1002Brazil2024-06-15
1003Brazil2024-06-01
1004Russia2024-06-15
1005Australia2024-06-11
1006Russia2024-05-25
1007Spain2024-05-27
1008Russia2024-06-04
1009Germany2024-06-05
1010Russia2024-06-21
1011Brazil2024-06-14
1012United Kingdom2024-06-01
1013Spain2024-06-22
1014Germany2024-06-03
1015France2024-06-20
1016Canada2024-06-01
1017Russia2024-06-02
1018Russia2024-06-11
1019Argentina2024-05-29
1020Russia2024-06-11
1021Brazil2024-06-10
1022India2024-06-22
1023Spain2024-05-26
1024Brazil2024-05-29
1025Germany2024-06-16
1026France2024-06-07
1027Italy2024-05-28
1028India2024-06-02
1029Brazil2024-05-30
1030France2024-05-31
1031Canada2024-05-27
1032Russia2024-05-28
1033France2024-06-15
1034Japan2024-05-26
1035Germany2024-06-02
1036Brazil2024-06-16
1037Canada2024-06-17
1038Argentina2024-06-04
1039United Kingdom2024-06-10
1040United Kingdom2024-06-02
1041Canada2024-05-27
1042Australia2024-06-19
1043Russia2024-06-15
1044Japan2024-05-24
1045United Kingdom2024-05-26
1046India2024-06-12
1047Brazil2024-06-03
1048France2024-05-26
1049Spain2024-06-21

On-Demand Data

NameIdCountryDate
Leja U Stenseth1000India2024-06-05
Jones V Iturbide1001India2024-06-10
Izzy Z Malet1002Argentina2024-06-01
Izzy L Flosi1003Australia2024-06-13
Jeanfrancois G Wieser1004Argentina2024-06-04
Sinclair E Gaucho1005France2024-06-02
Alejandro F Vocelka1006Australia2024-06-13
Juan R Morasca1007Germany2024-06-16
Smith N Saylors1008Canada2024-06-22
Mujtaba X Nicka1009Italy2024-06-01
Clifford T Vocelka1010Germany2024-06-03
Jefferson U Marrier1011Brazil2024-05-26
Octavia O Figeroa1012United Kingdom2024-06-05
Alejandro M Poquette1013Russia2024-06-11
Isabel Q Whobrey1014Brazil2024-06-01
Kaitlin D Wieser1015Russia2024-06-09
Cody N Kusko1016France2024-06-15
Antonio I Iturbide1017Australia2024-05-26
Salvatore N Wieser1018Argentina2024-06-17
Ashley M Flosi1019Australia2024-06-07
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Octavia Q FerenczJapanStephen Shaw QUALIFIED
Aika O ChuiFranceStephen Shaw PROPOSAL
Leja W GauchoJapanAmy Elsner QUALIFIED
Faith K FigeroaFranceIoni Bowcher NEW
Jones D NickaItalyAnna Fali NEW
Cody M WaycottJapanXuxue Feng NEW
Faith M RoysterGermanyOnyama Limba NEW
Faith X RoysterFranceIvan Magalhaes NEGOTIATION
Isabel F KolmetzFranceOnyama Limba NEGOTIATION
Stacey Z FerenczSpainAsiya Javayant NEGOTIATION
Jeanfrancois C FollerSpainAsiya Javayant RENEWAL
Kaitlin K MarrierArgentinaAmy Elsner NEGOTIATION
Adams Y RoysterUnited KingdomStephen Shaw UNQUALIFIED
Murillo X SchemmerBrazilBernardo Dominic PROPOSAL
Munro F NickaIndiaStephen Shaw NEW
Ivar R MorascaRussiaBernardo Dominic UNQUALIFIED
Julie X RulapaughItalyElwin Sharvill QUALIFIED
Julie Q RoysterJapanAsiya Javayant NEW
Jefferson G CaldareraGermanyOnyama Limba UNQUALIFIED
David C MorascaFranceOnyama Limba UNQUALIFIED
Rodrigues I OstroskyArgentinaBernardo Dominic PROPOSAL
Wickens G KolmetzFranceElwin Sharvill PROPOSAL
Jennifer Z NickaRussiaAmy Elsner NEW
Chavez Q PoquetteBrazilAmy Elsner QUALIFIED
Arvin R GlickItalyAnna Fali NEGOTIATION
Ivar R MarrierBrazilElwin Sharvill NEW
Morrow O GauchoCanadaIvan Magalhaes NEGOTIATION
Rodrigues M CaldareraBrazilStephen Shaw RENEWAL
James V VenereJapanAmy Elsner RENEWAL
Emily O CaldareraSpainIvan Magalhaes RENEWAL
Murillo L RoysterUnited KingdomAnna Fali PROPOSAL
Jones O BologniaItalyAsiya Javayant RENEWAL
Leon V KuskoGermanyBernardo Dominic NEW
Maisha A NickaJapanXuxue Feng PROPOSAL
Stacey I BriddickRussiaAmy Elsner UNQUALIFIED
Chavez V InouyeArgentinaStephen Shaw RENEWAL
Emily G GlickSpainBernardo Dominic PROPOSAL
Greenwood X PaprockiGermanyAsiya Javayant QUALIFIED
Isabel P AmigonCanadaBernardo Dominic PROPOSAL
Kadeem Q TollnerItalyIoni Bowcher RENEWAL

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