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
Leon N OldroydFranceXuxue Feng UNQUALIFIED
Wickens D OldroydBrazilStephen Shaw UNQUALIFIED
Johnson M GauchoIndiaXuxue Feng UNQUALIFIED
Emily V WhobreyGermanyXuxue Feng UNQUALIFIED
Deepesh U BriddickGermanyAmy Elsner QUALIFIED
Kaitlin X FigeroaIndiaIvan Magalhaes PROPOSAL
Deepesh V StensethJapanAsiya Javayant RENEWAL
Ashley F GarufiJapanElwin Sharvill RENEWAL
Izzy N CaudyUnited KingdomBernardo Dominic RENEWAL
Tony N FlosiIndiaAnna Fali QUALIFIED
Silvio Y PerinUnited KingdomBernardo Dominic PROPOSAL
Francesco G CaudyIndiaElwin Sharvill NEGOTIATION
Costa E VocelkaGermanyAmy Elsner QUALIFIED
Aruna V PerinAustraliaIvan Magalhaes NEGOTIATION
Arvin S VocelkaJapanAmy Elsner QUALIFIED
Octavia P BowleyCanadaIvan Magalhaes RENEWAL
Nicolas K CaudyCanadaAsiya Javayant QUALIFIED
Emily Y RulapaughAustraliaStephen Shaw NEGOTIATION
Johnson P KolmetzRussiaBernardo Dominic QUALIFIED
Mujtaba K ChuiJapanAmy Elsner UNQUALIFIED
David R DarakjyArgentinaOnyama Limba NEW
Darci N NestleBrazilAmy Elsner PROPOSAL
Murillo C DarakjyItalyIoni Bowcher NEGOTIATION
Deepesh M RimRussiaStephen Shaw NEW
Morrow W DilliardUnited KingdomIvan Magalhaes QUALIFIED
Chavez D StockhamAustraliaAnna Fali UNQUALIFIED
Tony D FollerBrazilIvan Magalhaes NEW
Octavia E FollerJapanAmy Elsner UNQUALIFIED
Murillo H BowleyJapanIvan Magalhaes PROPOSAL
Johnson O VenereRussiaElwin Sharvill QUALIFIED
Costa Q StockhamUnited KingdomBernardo Dominic NEGOTIATION
Ivar N WaycottSpainIoni Bowcher NEGOTIATION
Claire X WhobreyRussiaOnyama Limba UNQUALIFIED
Kadeem V GillianUnited KingdomOnyama Limba RENEWAL
Darci E TollnerSpainAsiya Javayant NEW
Chavez Y FlosiBrazilStephen Shaw PROPOSAL
Kadeem V VenereJapanStephen Shaw NEGOTIATION
Morrow S TollnerArgentinaElwin Sharvill NEW
Izzy Q FerenczJapanAmy Elsner RENEWAL
Murillo E MaletItalyAnna Fali RENEWAL
Salvatore I WaycottFranceOnyama Limba NEGOTIATION
Francesco O KuskoIndiaXuxue Feng UNQUALIFIED
Tony R KolmetzRussiaOnyama Limba NEGOTIATION
Isabel H ChuiRussiaAnna Fali PROPOSAL
Octavia O SlusarskiIndiaStephen Shaw RENEWAL
Darci T FollerBrazilXuxue Feng NEW
Aditya E TollnerFranceIoni Bowcher NEW
Stacey T WaycottAustraliaXuxue Feng NEGOTIATION
Antonio G GarufiGermanyOnyama Limba PROPOSAL
Maisha A SergiJapanAsiya Javayant NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Ricardo X AlbaresUnited KingdomIoni Bowcher UNQUALIFIED
Murillo M MarrierAustraliaAsiya Javayant PROPOSAL
Smith F WaycottIndiaAnna Fali RENEWAL
Aditya Y BologniaFranceStephen Shaw NEW
Nicolas X BriddickSpainElwin Sharvill UNQUALIFIED
Ashley W RoysterItalyElwin Sharvill QUALIFIED
Jones A NickaItalyAnna Fali RENEWAL
Cody J MaletJapanIvan Magalhaes NEGOTIATION
Stacey Y PerinCanadaIoni Bowcher NEW
Kadeem C GlickBrazilAsiya Javayant NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Adams T OstroskyCanada2024-05-12Commercial Press RENEWAL64Ivan Magalhaes
1001Ashley J CampainItaly2024-05-21Rangoni Of Florence NEW8Ioni Bowcher
1002Alejandro O BowleyJapan2024-05-11Chanay, Jeffrey A Esq UNQUALIFIED98Onyama Limba
1003Nicolas F SaylorsArgentina2024-05-01Rousseaux, Michael Esq RENEWAL31Xuxue Feng
1004Deepesh H RutaFrance2024-05-24Printing Dimensions QUALIFIED64Stephen Shaw
1005Darci N MarrierAustralia2024-05-13Dorl, James J Esq PROPOSAL9Xuxue Feng
1006Kadeem F MorascaSpain2024-05-21Dorl, James J Esq QUALIFIED40Stephen Shaw
1007Julie G ShinkoGermany2024-05-24Chemel, James L Cpa UNQUALIFIED33Asiya Javayant
1008Aika U DoeCanada2024-05-21Rousseaux, Michael Esq UNQUALIFIED3Bernardo Dominic
1009Alejandro A SaylorsFrance2024-05-01Rousseaux, Michael Esq NEGOTIATION25Xuxue Feng
1010Mujtaba P GlickFrance2024-05-20Rousseaux, Michael Esq NEW87Anna Fali
1011Julie J InouyeJapan2024-05-20Morlong Associates RENEWAL17Ioni Bowcher
1012Francesco F AlbaresBrazil2024-05-25Printing Dimensions QUALIFIED51Amy Elsner
1013Stacey B CampainAustralia2024-05-02Feiner Bros NEW93Bernardo Dominic
1014Adams S AmigonJapan2024-05-07Benton, John B Jr NEGOTIATION30Ivan Magalhaes
1015Costa W GarufiAustralia2024-05-05Rousseaux, Michael Esq UNQUALIFIED1Amy Elsner
1016Maria C AmigonArgentina2024-05-27Chanay, Jeffrey A Esq QUALIFIED7Ivan Magalhaes
1017Arvin U GlickFrance2024-05-27Chapman, Ross E Esq PROPOSAL78Asiya Javayant
1018Smith S BriddickArgentina2024-05-23Buckley Miller Wright NEGOTIATION57Stephen Shaw
1019Deepesh K FollerArgentina2024-05-14Buckley Miller Wright NEGOTIATION56Anna Fali
1020Francesco T MaletJapan2024-05-08King, Christopher A Esq NEGOTIATION36Ioni Bowcher
1021Misaki D StensethFrance2024-05-16Printing Dimensions PROPOSAL58Onyama Limba
1022Jones M CaudySpain2024-05-23Chemel, James L Cpa QUALIFIED38Ivan Magalhaes
1023Ashley R DilliardBrazil2024-05-18Chapman, Ross E Esq UNQUALIFIED36Ioni Bowcher
1024Mayumi Z RimJapan2024-04-29Chanay, Jeffrey A Esq NEW74Asiya Javayant
1025Ashley M GlickRussia2024-05-08Rousseaux, Michael Esq PROPOSAL33Anna Fali
1026Morrow N MacleadRussia2024-05-04Dorl, James J Esq NEGOTIATION79Anna Fali
1027Deepesh D NickaAustralia2024-05-21Chemel, James L Cpa QUALIFIED77Amy Elsner
1028Juan P FerenczGermany2024-05-08Printing Dimensions UNQUALIFIED39Xuxue Feng
1029Antonio E SaylorsGermany2024-05-21Truhlar And Truhlar Attys RENEWAL72Onyama Limba
1030Maria T CaldareraCanada2024-05-06Chemel, James L Cpa QUALIFIED96Onyama Limba
1031Stacey O CaudyUnited Kingdom2024-05-10Chanay, Jeffrey A Esq UNQUALIFIED69Stephen Shaw
1032Claire M MaletBrazil2024-05-19Dorl, James J Esq QUALIFIED49Anna Fali
1033David N RimCanada2024-05-04Rousseaux, Michael Esq NEW63Ivan Magalhaes
1034Costa X PaprockiJapan2024-04-29Truhlar And Truhlar Attys NEGOTIATION18Ivan Magalhaes
1035Chavez W SchemmerFrance2024-04-29Chapman, Ross E Esq QUALIFIED9Bernardo Dominic
1036Deepesh Z WhobreyJapan2024-05-14Benton, John B Jr UNQUALIFIED52Anna Fali
1037Kadeem D FerenczGermany2024-05-12Chanay, Jeffrey A Esq PROPOSAL83Asiya Javayant
1038Ivar E GillianBrazil2024-05-27Benton, John B Jr NEGOTIATION18Onyama Limba
1039Leon A WaycottSpain2024-05-04Feiner Bros UNQUALIFIED97Stephen Shaw
1040Mujtaba L KolmetzAustralia2024-05-04Dorl, James J Esq UNQUALIFIED61Anna Fali
1041Claire L MacleadArgentina2024-05-23Buckley Miller Wright NEW30Amy Elsner
1042Aruna Q WaycottGermany2024-05-08Chanay, Jeffrey A Esq RENEWAL74Ioni Bowcher
1043Leon T FlosiItaly2024-05-03Truhlar And Truhlar Attys PROPOSAL30Onyama Limba
1044Alejandro M GauchoAustralia2024-05-03Dorl, James J Esq UNQUALIFIED44Onyama Limba
1045James K VocelkaFrance2024-05-06Feltz Printing Service UNQUALIFIED92Elwin Sharvill
1046Wickens U StensethAustralia2024-05-04Feiner Bros QUALIFIED78Ivan Magalhaes
1047Izzy A CaldareraItaly2024-05-20Chapman, Ross E Esq QUALIFIED49Onyama Limba
1048Leja Q AmigonSpain2024-05-07Feiner Bros NEGOTIATION93Ivan Magalhaes
1049Ashley P DarakjyCanada2024-05-12Dorl, James J Esq NEW37Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Mayumi H CaldareraGermanyOnyama Limba NEW
Aruna U VocelkaSpainElwin Sharvill QUALIFIED
Aruna E CaldareraItalyAnna Fali UNQUALIFIED
Antonio K OldroydCanadaXuxue Feng NEW
Maisha L StensethUnited KingdomStephen Shaw RENEWAL
Izzy G RimFranceAmy Elsner NEW
Jones B GarufiCanadaElwin Sharvill PROPOSAL
Morrow P MaletCanadaAsiya Javayant PROPOSAL
Kadeem U SlusarskiItalyElwin Sharvill PROPOSAL
Aditya O FerenczCanadaAsiya Javayant QUALIFIED
Munro Z AlbaresAustraliaStephen Shaw NEW
Misaki T WaycottIndiaBernardo Dominic QUALIFIED
Maisha B CaldareraSpainXuxue Feng NEW
Alejandro K BologniaFranceAnna Fali NEW
Tony B SaylorsBrazilOnyama Limba RENEWAL
Faith G VocelkaUnited KingdomAnna Fali QUALIFIED
Maisha B BriddickAustraliaStephen Shaw RENEWAL
Julie J VenereGermanyOnyama Limba QUALIFIED
Rodrigues I DoeAustraliaStephen Shaw NEGOTIATION
Tony Y CaudyGermanyXuxue Feng NEW
Munro E MaletBrazilOnyama Limba RENEWAL
Adams G SergiArgentinaBernardo Dominic PROPOSAL
Aruna U VenereAustraliaXuxue Feng PROPOSAL
Morrow A FigeroaRussiaStephen Shaw RENEWAL
James Y GarufiBrazilOnyama Limba NEGOTIATION
Darci G BriddickItalyElwin Sharvill NEGOTIATION
Aika C AlbaresItalyBernardo Dominic PROPOSAL
Leon D BologniaAustraliaAmy Elsner RENEWAL
Wickens D RimRussiaElwin Sharvill NEGOTIATION
David U FollerArgentinaStephen Shaw RENEWAL
Ashley C FigeroaSpainAnna Fali NEGOTIATION
Greenwood G ShinkoItalyStephen Shaw NEGOTIATION
Maria W KuskoBrazilAnna Fali NEGOTIATION
Smith E SaylorsSpainIvan Magalhaes QUALIFIED
Silvio S WieserRussiaIoni Bowcher QUALIFIED
Silvio F ButtGermanyIoni Bowcher UNQUALIFIED
Jefferson W WhobreyGermanyElwin Sharvill UNQUALIFIED
Aruna P CaldareraFranceOnyama Limba NEW
Johnson P MarrierCanadaXuxue Feng NEGOTIATION
Julie P GillianItalyAnna Fali NEGOTIATION
Jennifer W BriddickCanadaElwin Sharvill QUALIFIED
Emily F RimAustraliaAmy Elsner RENEWAL
Izzy A NestleRussiaIvan Magalhaes PROPOSAL
Ricardo K AlbaresUnited KingdomAsiya Javayant PROPOSAL
Antonio N BriddickRussiaAnna Fali NEW
Octavia I MorascaSpainXuxue Feng NEGOTIATION
Munro V CampainUnited KingdomOnyama Limba PROPOSAL
James H FigeroaBrazilElwin Sharvill UNQUALIFIED
Ricardo R WhobreyIndiaIvan Magalhaes NEW
Aika D GlickAustraliaXuxue Feng PROPOSAL
Frozen Columns
Name
Munro O Ruta
Julie A Ruta
Rodrigues I Albares
Emily J Malet
Rodrigues O Waycott
James F Stenseth
Sinclair I Waycott
James O Darakjy
Maisha J Saylors
Leon L Caldarera
Morrow E Marrier
Murillo P Oldroyd
Salvatore L Bowley
Munro J Morasca
Murillo Y Venere
Jefferson M Inouye
Jefferson R Gaucho
Ricardo N Waycott
Smith Z Kolmetz
Clifford D Royster
Jeanfrancois X Gaucho
Sinclair E Bowley
Aditya X Maclead
Leja V Waycott
Silvio X Marrier
Jefferson N Shinko
Aruna H Malet
Antonio H Poquette
Juan A Maclead
Munro A Tollner
James X Rulapaugh
James O Saylors
Mujtaba X Ostrosky
Kaitlin B Vocelka
Smith D Tollner
Kaitlin C Morasca
Rodrigues A Stockham
Juan S Venere
Aditya W Campain
Adams N Chui
Wickens O Caudy
Smith J Caldarera
Wickens M Inouye
Claire X Stenseth
Jefferson P Campain
Aika P Garufi
Deepesh K Perin
Deepesh X Inouye
Clifford A Stenseth
Alejandro Q Bolognia
IdCountryDate
1000India2024-05-09
1001India2024-05-08
1002France2024-05-14
1003Argentina2024-05-27
1004Brazil2024-05-23
1005Canada2024-05-18
1006Argentina2024-05-28
1007Russia2024-05-19
1008France2024-05-16
1009United Kingdom2024-05-08
1010Italy2024-05-17
1011Canada2024-05-07
1012Argentina2024-05-14
1013Canada2024-04-29
1014Argentina2024-05-16
1015United Kingdom2024-05-02
1016Brazil2024-05-20
1017France2024-05-03
1018United Kingdom2024-05-07
1019United Kingdom2024-05-18
1020France2024-05-14
1021France2024-05-04
1022Australia2024-05-05
1023Brazil2024-05-02
1024Canada2024-05-24
1025Italy2024-04-30
1026Argentina2024-05-20
1027Brazil2024-05-27
1028Japan2024-05-06
1029Italy2024-05-14
1030India2024-05-19
1031India2024-05-27
1032Canada2024-05-27
1033Italy2024-05-12
1034Canada2024-05-06
1035France2024-05-03
1036Spain2024-05-21
1037Japan2024-05-01
1038Spain2024-05-05
1039Argentina2024-05-07
1040Spain2024-05-24
1041Japan2024-05-22
1042Spain2024-05-26
1043Argentina2024-05-12
1044United Kingdom2024-05-08
1045France2024-05-08
1046Germany2024-05-15
1047Russia2024-05-06
1048Brazil2024-05-22
1049Spain2024-05-19

On-Demand Data

NameIdCountryDate
Alejandro R Malet1000Canada2024-05-26
Aika C Paprocki1001Canada2024-05-13
Arvin X Darakjy1002India2024-05-06
Ivar J Whobrey1003Australia2024-05-18
Adams O Garufi1004Spain2024-05-27
Deepesh U Oldroyd1005Brazil2024-05-17
Jennifer V Malet1006Russia2024-05-03
Smith L Bowley1007France2024-05-01
Darci Y Marrier1008Argentina2024-05-21
James H Figeroa1009Germany2024-05-05
Adams N Glick1010Spain2024-05-10
Maria X Kolmetz1011Australia2024-05-01
Ricardo Z Ruta1012Italy2024-05-10
Kadeem X Chui1013Russia2024-05-20
Clifford M Amigon1014Brazil2024-05-25
Maria J Darakjy1015Germany2024-05-04
Ashley I Stenseth1016Japan2024-05-12
Julie T Inouye1017Argentina2024-05-27
Tony J Bowley1018France2024-05-13
Leja B Iturbide1019United Kingdom2024-04-29
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Juan N WieserRussiaXuxue Feng RENEWAL
Ricardo O RimCanadaIoni Bowcher UNQUALIFIED
Maria V BowleyFranceAmy Elsner NEGOTIATION
Kaitlin C SergiArgentinaIvan Magalhaes NEW
Izzy T FerenczIndiaAmy Elsner QUALIFIED
Leja O DoeArgentinaIoni Bowcher PROPOSAL
Maisha P RoysterBrazilStephen Shaw NEW
Cody V ShinkoIndiaAmy Elsner PROPOSAL
Wickens Q DarakjyJapanAsiya Javayant UNQUALIFIED
Emily F OstroskyJapanOnyama Limba PROPOSAL
Leja N FerenczArgentinaOnyama Limba PROPOSAL
Johnson W ChuiCanadaXuxue Feng UNQUALIFIED
Chavez X StockhamCanadaAsiya Javayant QUALIFIED
Emily C StensethUnited KingdomOnyama Limba NEW
James V StensethCanadaOnyama Limba NEW
Johnson U MaletSpainOnyama Limba NEW
Aruna O CaudyItalyAsiya Javayant NEGOTIATION
Jones S VocelkaIndiaIvan Magalhaes NEW
Silvio I TollnerGermanyIvan Magalhaes UNQUALIFIED
Ashley M StensethGermanyIoni Bowcher RENEWAL
Adams F MaletRussiaXuxue Feng NEGOTIATION
Aruna L FollerIndiaAnna Fali UNQUALIFIED
James G FlosiFranceElwin Sharvill NEW
Kaitlin Z BologniaUnited KingdomAsiya Javayant NEW
James D GillianRussiaBernardo Dominic PROPOSAL
Francesco F PoquetteItalyIvan Magalhaes NEGOTIATION
Salvatore W OldroydItalyOnyama Limba NEW
Izzy N VocelkaBrazilBernardo Dominic RENEWAL
Smith S IturbideUnited KingdomAsiya Javayant NEW
Emily M OstroskyUnited KingdomBernardo Dominic UNQUALIFIED
Aruna Q SaylorsFranceAnna Fali RENEWAL
Izzy Y AmigonAustraliaStephen Shaw PROPOSAL
Aika E RoysterArgentinaStephen Shaw NEW
Darci Z OstroskyAustraliaAsiya Javayant NEW
Clifford T ButtSpainStephen Shaw QUALIFIED
Jefferson V DarakjyIndiaOnyama Limba PROPOSAL
Julie I KuskoSpainXuxue Feng NEGOTIATION
Francesco I CaudyUnited KingdomElwin Sharvill QUALIFIED
Adams U SergiRussiaIvan Magalhaes PROPOSAL
Ashley J AlbaresCanadaAsiya 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>