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
Alejandro Q GlickGermanyElwin Sharvill RENEWAL
James Z MorascaSpainStephen Shaw UNQUALIFIED
Jefferson L GillianArgentinaBernardo Dominic NEW
Aruna B NestleCanadaAnna Fali PROPOSAL
David X BologniaArgentinaElwin Sharvill NEGOTIATION
Aruna A BologniaIndiaAnna Fali NEW
Izzy D WaycottJapanIvan Magalhaes RENEWAL
Emily V TollnerAustraliaAsiya Javayant UNQUALIFIED
Johnson F StockhamJapanStephen Shaw QUALIFIED
Smith A OldroydAustraliaBernardo Dominic QUALIFIED
Munro D PaprockiRussiaStephen Shaw UNQUALIFIED
Octavia O ShinkoGermanyIoni Bowcher QUALIFIED
Smith E GarufiGermanyOnyama Limba UNQUALIFIED
Mujtaba Y ButtSpainStephen Shaw NEW
Jones J CaldareraAustraliaIvan Magalhaes NEW
Deepesh H IturbideFranceAnna Fali RENEWAL
Murillo Y FigeroaSpainBernardo Dominic RENEWAL
Maria W NickaJapanStephen Shaw UNQUALIFIED
Jeanfrancois F TollnerCanadaOnyama Limba NEW
Leon W MaletJapanAnna Fali QUALIFIED
Aruna K RimBrazilAmy Elsner PROPOSAL
James T NestleJapanElwin Sharvill QUALIFIED
Ashley R BriddickSpainStephen Shaw RENEWAL
Rodrigues J BowleyUnited KingdomAmy Elsner UNQUALIFIED
Octavia L AmigonCanadaOnyama Limba PROPOSAL
Juan B GillianUnited KingdomElwin Sharvill PROPOSAL
Mujtaba S IturbideUnited KingdomXuxue Feng RENEWAL
Murillo N BologniaGermanyIvan Magalhaes PROPOSAL
Deepesh H OldroydFranceStephen Shaw NEGOTIATION
Antonio K SchemmerIndiaXuxue Feng QUALIFIED
Francesco E OldroydFranceBernardo Dominic NEW
Jeanfrancois U BowleyBrazilAsiya Javayant QUALIFIED
Claire F CaldareraUnited KingdomOnyama Limba PROPOSAL
Greenwood I NestleItalyBernardo Dominic NEW
Ashley L DilliardItalyBernardo Dominic UNQUALIFIED
Isabel C RutaJapanBernardo Dominic UNQUALIFIED
Johnson D GillianIndiaAmy Elsner NEW
Silvio W FlosiItalyOnyama Limba NEW
Aditya T BologniaSpainXuxue Feng NEGOTIATION
Greenwood P IturbideUnited KingdomBernardo Dominic RENEWAL
Munro F WhobreyJapanAsiya Javayant UNQUALIFIED
Sinclair F PoquetteFranceAmy Elsner QUALIFIED
Darci K CaldareraArgentinaBernardo Dominic QUALIFIED
Jeanfrancois T GlickIndiaIoni Bowcher UNQUALIFIED
Jefferson P WaycottUnited KingdomAnna Fali NEW
Faith D SaylorsItalyIoni Bowcher NEGOTIATION
Aditya T InouyeBrazilOnyama Limba NEGOTIATION
Deepesh N GlickJapanXuxue Feng UNQUALIFIED
Ivar K InouyeGermanyBernardo Dominic UNQUALIFIED
James Q CaudyJapanElwin Sharvill RENEWAL
Horizontal
NameCountryRepresentativeStatus
Jones W SaylorsGermanyAmy Elsner QUALIFIED
Darci K MaletSpainIvan Magalhaes QUALIFIED
Deepesh R MaletJapanAsiya Javayant NEW
Jones N TollnerArgentinaAmy Elsner NEW
Antonio F WieserUnited KingdomOnyama Limba NEW
Darci O StockhamIndiaAsiya Javayant NEW
Adams A IturbideIndiaAmy Elsner UNQUALIFIED
Kaitlin R DilliardSpainAsiya Javayant QUALIFIED
Stacey M GlickSpainBernardo Dominic NEW
Claire H AmigonJapanBernardo Dominic RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Claire I MarrierArgentina2024-06-03Buckley Miller Wright NEGOTIATION99Amy Elsner
1001Julie H SaylorsItaly2024-06-07Morlong Associates QUALIFIED77Onyama Limba
1002Morrow U SergiGermany2024-05-30Commercial Press QUALIFIED15Anna Fali
1003Costa O RimRussia2024-06-13Rousseaux, Michael Esq RENEWAL39Anna Fali
1004Deepesh N GarufiSpain2024-06-15Dorl, James J Esq NEGOTIATION27Amy Elsner
1005Maisha O BologniaGermany2024-06-02Printing Dimensions UNQUALIFIED16Asiya Javayant
1006Kaitlin K RimSpain2024-06-24Commercial Press NEGOTIATION20Stephen Shaw
1007Julie I ButtCanada2024-06-09Buckley Miller Wright PROPOSAL94Onyama Limba
1008Claire S SlusarskiArgentina2024-06-18Chanay, Jeffrey A Esq QUALIFIED2Stephen Shaw
1009Silvio H WaycottJapan2024-06-19Truhlar And Truhlar Attys QUALIFIED58Ivan Magalhaes
1010Antonio E ButtFrance2024-06-08Dorl, James J Esq QUALIFIED44Ioni Bowcher
1011Munro P ShinkoArgentina2024-05-27Chemel, James L Cpa UNQUALIFIED37Ioni Bowcher
1012Munro L DoeJapan2024-05-27Rangoni Of Florence PROPOSAL21Amy Elsner
1013David W AlbaresGermany2024-05-26Feltz Printing Service QUALIFIED15Anna Fali
1014Chavez X RutaCanada2024-05-29Buckley Miller Wright UNQUALIFIED32Stephen Shaw
1015Arvin P RutaIndia2024-06-02Rousseaux, Michael Esq NEW70Stephen Shaw
1016Izzy V SaylorsBrazil2024-06-22Truhlar And Truhlar Attys PROPOSAL39Ioni Bowcher
1017Izzy X OldroydArgentina2024-06-23Dorl, James J Esq NEW11Stephen Shaw
1018Silvio O SlusarskiUnited Kingdom2024-06-05King, Christopher A Esq PROPOSAL16Amy Elsner
1019Maisha Q BologniaIndia2024-06-19Chanay, Jeffrey A Esq NEW36Amy Elsner
1020Greenwood L OstroskyRussia2024-05-26Printing Dimensions QUALIFIED76Xuxue Feng
1021Mayumi V GillianArgentina2024-06-22Morlong Associates NEGOTIATION88Amy Elsner
1022Aditya I BologniaBrazil2024-06-09Benton, John B Jr UNQUALIFIED69Asiya Javayant
1023Greenwood C NickaArgentina2024-06-06Benton, John B Jr NEW93Amy Elsner
1024Octavia E CaldareraAustralia2024-06-06King, Christopher A Esq QUALIFIED14Ivan Magalhaes
1025Juan S GlickGermany2024-06-21Benton, John B Jr QUALIFIED19Asiya Javayant
1026Faith W GarufiArgentina2024-06-13Morlong Associates NEW44Asiya Javayant
1027Juan P WieserIndia2024-06-02Feiner Bros NEW40Asiya Javayant
1028David V StockhamFrance2024-06-10Chanay, Jeffrey A Esq QUALIFIED56Asiya Javayant
1029Johnson W NickaFrance2024-06-13Benton, John B Jr PROPOSAL81Ivan Magalhaes
1030Francesco E DilliardItaly2024-05-30Commercial Press QUALIFIED26Ioni Bowcher
1031Maisha V PerinJapan2024-06-16King, Christopher A Esq NEGOTIATION35Bernardo Dominic
1032Leja Y CampainItaly2024-06-08Chapman, Ross E Esq NEW92Bernardo Dominic
1033Francesco B ButtIndia2024-06-05Commercial Press UNQUALIFIED56Ivan Magalhaes
1034Adams M KolmetzArgentina2024-06-16Feltz Printing Service RENEWAL37Onyama Limba
1035Munro X DilliardSpain2024-06-06Feltz Printing Service QUALIFIED81Asiya Javayant
1036Julie S GillianGermany2024-06-14King, Christopher A Esq NEW60Ioni Bowcher
1037Izzy O BowleyGermany2024-05-27Printing Dimensions UNQUALIFIED93Anna Fali
1038Mujtaba X PaprockiJapan2024-06-06Commercial Press QUALIFIED35Anna Fali
1039Mujtaba J DilliardIndia2024-06-24Rangoni Of Florence NEGOTIATION26Onyama Limba
1040Nicolas A MarrierRussia2024-06-01Chanay, Jeffrey A Esq RENEWAL33Onyama Limba
1041David D RutaCanada2024-06-10Feiner Bros PROPOSAL19Ivan Magalhaes
1042Octavia W NickaFrance2024-06-02Rangoni Of Florence PROPOSAL0Xuxue Feng
1043Arvin W WhobreyFrance2024-05-26Chapman, Ross E Esq PROPOSAL68Amy Elsner
1044Salvatore R KuskoIndia2024-06-03Commercial Press NEW58Elwin Sharvill
1045Morrow X SaylorsRussia2024-06-23Commercial Press NEW38Stephen Shaw
1046Sinclair Q NestleUnited Kingdom2024-06-08Commercial Press UNQUALIFIED57Elwin Sharvill
1047Juan K WhobreyItaly2024-06-10Truhlar And Truhlar Attys NEW50Bernardo Dominic
1048Leon G ChuiAustralia2024-06-13Truhlar And Truhlar Attys UNQUALIFIED56Onyama Limba
1049Faith Y KuskoItaly2024-06-16King, Christopher A Esq UNQUALIFIED6Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Munro U DilliardJapanIoni Bowcher UNQUALIFIED
Izzy V DarakjyGermanyAnna Fali QUALIFIED
Misaki P PerinArgentinaStephen Shaw PROPOSAL
Morrow M IturbideIndiaIoni Bowcher QUALIFIED
Kaitlin S PoquetteArgentinaStephen Shaw PROPOSAL
Arvin X FigeroaJapanElwin Sharvill PROPOSAL
Costa J ShinkoSpainAnna Fali PROPOSAL
Julie O AlbaresIndiaElwin Sharvill NEW
Costa N WieserArgentinaIvan Magalhaes UNQUALIFIED
Rodrigues M StockhamArgentinaBernardo Dominic UNQUALIFIED
Mayumi H BowleySpainAmy Elsner PROPOSAL
Izzy H RimSpainElwin Sharvill NEGOTIATION
Silvio A NickaUnited KingdomAsiya Javayant QUALIFIED
James O TollnerItalyBernardo Dominic UNQUALIFIED
Aruna H AlbaresArgentinaBernardo Dominic PROPOSAL
Faith D VocelkaUnited KingdomAnna Fali RENEWAL
Mujtaba I FlosiItalyIvan Magalhaes UNQUALIFIED
Chavez U GillianCanadaElwin Sharvill PROPOSAL
Arvin D WieserUnited KingdomStephen Shaw NEW
Alejandro M KolmetzUnited KingdomStephen Shaw QUALIFIED
Antonio A PoquetteGermanyAnna Fali PROPOSAL
James T SchemmerSpainOnyama Limba UNQUALIFIED
Adams F StensethRussiaOnyama Limba NEGOTIATION
David M OldroydFranceBernardo Dominic RENEWAL
Octavia X MacleadFranceIoni Bowcher NEGOTIATION
Clifford F GillianArgentinaAmy Elsner UNQUALIFIED
Maria U NestleItalyAmy Elsner QUALIFIED
Jeanfrancois O FigeroaRussiaStephen Shaw UNQUALIFIED
Faith F KuskoArgentinaOnyama Limba NEW
Tony O TollnerJapanAmy Elsner RENEWAL
Tony M DilliardCanadaAmy Elsner RENEWAL
Clifford G PerinJapanXuxue Feng NEGOTIATION
Faith I TollnerBrazilOnyama Limba RENEWAL
Smith Z DilliardRussiaBernardo Dominic NEW
Juan B RulapaughSpainAmy Elsner PROPOSAL
Izzy E InouyeBrazilIvan Magalhaes PROPOSAL
Ivar K FlosiGermanyBernardo Dominic QUALIFIED
Wickens U FerenczGermanyAmy Elsner QUALIFIED
Leon K GlickUnited KingdomBernardo Dominic NEW
Clifford V RulapaughAustraliaBernardo Dominic NEGOTIATION
Isabel A SchemmerItalyAsiya Javayant NEGOTIATION
Greenwood S BowleyFranceIoni Bowcher RENEWAL
Antonio C RimCanadaXuxue Feng UNQUALIFIED
Kadeem N WaycottFranceBernardo Dominic NEW
Kaitlin S BologniaIndiaElwin Sharvill RENEWAL
Aditya D VenereIndiaAsiya Javayant QUALIFIED
Leja A StockhamGermanyOnyama Limba QUALIFIED
Julie P StensethCanadaStephen Shaw RENEWAL
James E VenereFranceOnyama Limba RENEWAL
Alejandro Q IturbideBrazilAmy Elsner PROPOSAL
Frozen Columns
Name
Jones T Dilliard
Juan D Whobrey
Julie P Waycott
Sinclair G Shinko
Aditya B Bowley
Costa P Garufi
Antonio P Stenseth
Silvio G Slusarski
Smith F Ferencz
Sinclair B Rim
Maria U Tollner
Faith Y Whobrey
Mayumi H Vocelka
Jones P Poquette
Jefferson R Malet
Leon R Gillian
James K Poquette
Julie H Tollner
Jennifer U Glick
Maisha F Caudy
Tony Z Malet
Isabel L Gillian
Silvio U Marrier
Alejandro K Kolmetz
Claire L Paprocki
Mujtaba G Ferencz
Aditya Q Morasca
Costa L Ruta
Kaitlin E Ferencz
Aika D Doe
Julie D Schemmer
Misaki V Oldroyd
Juan S Nicka
Alejandro Q Briddick
Morrow N Oldroyd
Izzy W Waycott
Ashley R Malet
David J Saylors
Aika Q Vocelka
Sinclair G Stockham
Smith N Briddick
Claire G Slusarski
Kaitlin L Oldroyd
Tony Y Glick
Octavia E Oldroyd
Alejandro I Foller
Mujtaba P Amigon
Morrow Y Chui
Izzy K Briddick
Ricardo L Amigon
IdCountryDate
1000India2024-06-02
1001Japan2024-06-15
1002India2024-06-14
1003United Kingdom2024-06-10
1004Italy2024-05-31
1005France2024-06-01
1006Brazil2024-06-08
1007France2024-05-28
1008Spain2024-06-05
1009Japan2024-05-31
1010Brazil2024-06-08
1011France2024-06-15
1012France2024-06-16
1013Australia2024-06-16
1014Argentina2024-06-02
1015Japan2024-06-12
1016Germany2024-05-31
1017Argentina2024-06-10
1018Germany2024-06-01
1019Australia2024-06-06
1020Canada2024-06-24
1021India2024-06-06
1022Spain2024-06-23
1023Canada2024-06-17
1024Brazil2024-06-23
1025Russia2024-06-03
1026Japan2024-06-21
1027Argentina2024-06-24
1028France2024-06-09
1029Japan2024-06-12
1030Brazil2024-06-09
1031Italy2024-05-26
1032United Kingdom2024-05-26
1033Italy2024-06-19
1034Canada2024-05-29
1035Germany2024-06-12
1036Canada2024-06-20
1037Japan2024-05-30
1038Canada2024-06-14
1039India2024-06-13
1040Spain2024-06-16
1041Argentina2024-06-12
1042India2024-06-08
1043Canada2024-06-20
1044Germany2024-06-17
1045France2024-06-12
1046Germany2024-06-19
1047Germany2024-06-17
1048Russia2024-06-20
1049India2024-06-17

On-Demand Data

NameIdCountryDate
Clifford R Vocelka1000Brazil2024-05-26
Alejandro H Doe1001Germany2024-06-02
Darci Z Caudy1002Spain2024-06-07
Aditya J Saylors1003Japan2024-06-24
Leon X Iturbide1004Australia2024-06-11
Faith O Kolmetz1005Russia2024-06-20
Isabel A Briddick1006United Kingdom2024-06-08
Faith S Figeroa1007Australia2024-06-17
Wickens J Darakjy1008Japan2024-06-13
Rodrigues A Rulapaugh1009Spain2024-05-30
Kaitlin B Ruta1010Australia2024-06-11
Emily J Sergi1011Russia2024-06-04
Jones F Saylors1012Japan2024-05-30
Maria W Glick1013Japan2024-06-21
Wickens B Malet1014Germany2024-06-24
Silvio R Ostrosky1015Japan2024-06-04
Izzy E Malet1016Spain2024-06-22
Cody U Whobrey1017Italy2024-06-07
Rodrigues F Saylors1018United Kingdom2024-06-02
Jennifer Z Kolmetz1019Italy2024-05-31
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Leon M MaletCanadaElwin Sharvill PROPOSAL
Leon J WaycottSpainIoni Bowcher UNQUALIFIED
Costa F RutaSpainXuxue Feng NEW
James V OldroydGermanyIvan Magalhaes UNQUALIFIED
Stacey E DarakjyIndiaAsiya Javayant NEGOTIATION
Mujtaba Z CampainUnited KingdomStephen Shaw UNQUALIFIED
Jefferson S MorascaRussiaStephen Shaw RENEWAL
Jones D MaletAustraliaAnna Fali RENEWAL
Tony U KuskoIndiaBernardo Dominic UNQUALIFIED
Chavez P TollnerBrazilBernardo Dominic NEW
Leja I RoysterFranceIoni Bowcher NEGOTIATION
Aruna L GarufiUnited KingdomIoni Bowcher PROPOSAL
Adams X FerenczJapanIoni Bowcher QUALIFIED
Munro Z GlickSpainIoni Bowcher UNQUALIFIED
Kadeem Y MorascaArgentinaIoni Bowcher UNQUALIFIED
Nicolas L VenereSpainIoni Bowcher QUALIFIED
James B WaycottSpainOnyama Limba QUALIFIED
Alejandro E StensethFranceAsiya Javayant UNQUALIFIED
Munro K PaprockiJapanIoni Bowcher UNQUALIFIED
Salvatore L AmigonIndiaBernardo Dominic UNQUALIFIED
Misaki E ShinkoAustraliaElwin Sharvill RENEWAL
Jefferson Z AlbaresIndiaAmy Elsner PROPOSAL
Johnson I StockhamBrazilIvan Magalhaes NEGOTIATION
Ashley M WieserSpainIvan Magalhaes UNQUALIFIED
Rodrigues E RimSpainOnyama Limba UNQUALIFIED
Tony T MacleadJapanAmy Elsner PROPOSAL
Morrow Y RulapaughRussiaIvan Magalhaes NEW
Kaitlin F GauchoGermanyStephen Shaw UNQUALIFIED
Emily C FlosiAustraliaAmy Elsner UNQUALIFIED
Ivar Y DoeSpainIoni Bowcher RENEWAL
Alejandro H GarufiIndiaStephen Shaw NEGOTIATION
Arvin K InouyeArgentinaAsiya Javayant QUALIFIED
Ricardo P ShinkoRussiaAsiya Javayant UNQUALIFIED
Juan Y CampainFranceIvan Magalhaes PROPOSAL
Sinclair V FlosiCanadaOnyama Limba NEGOTIATION
Leja P AmigonJapanOnyama Limba UNQUALIFIED
Deepesh V BriddickUnited KingdomXuxue Feng QUALIFIED
Stacey L PaprockiJapanIoni Bowcher RENEWAL
Salvatore G FigeroaAustraliaBernardo Dominic UNQUALIFIED
Kadeem P AmigonSpainAsiya Javayant 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>