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
Ashley I DarakjyUnited KingdomIvan Magalhaes PROPOSAL
Morrow K ChuiFranceAnna Fali QUALIFIED
Morrow G IturbideGermanyOnyama Limba UNQUALIFIED
Rodrigues X NickaArgentinaBernardo Dominic NEW
Costa Z VenereFranceIvan Magalhaes RENEWAL
Sinclair I GillianGermanyXuxue Feng NEGOTIATION
Murillo J NickaAustraliaBernardo Dominic RENEWAL
Alejandro R FollerFranceIoni Bowcher RENEWAL
Aditya J MacleadIndiaXuxue Feng RENEWAL
Cody D RutaArgentinaAmy Elsner UNQUALIFIED
Aruna N PoquetteBrazilIvan Magalhaes UNQUALIFIED
Ricardo K ChuiAustraliaBernardo Dominic RENEWAL
Cody M SergiGermanyXuxue Feng UNQUALIFIED
Chavez T AlbaresJapanIoni Bowcher NEGOTIATION
Julie D RutaFranceOnyama Limba NEGOTIATION
Tony M DarakjyCanadaXuxue Feng PROPOSAL
Chavez P MaletGermanyAmy Elsner RENEWAL
Rodrigues P OldroydSpainAmy Elsner NEGOTIATION
Juan U RimAustraliaIoni Bowcher RENEWAL
Jones M SergiItalyIvan Magalhaes NEW
Juan V SaylorsArgentinaBernardo Dominic QUALIFIED
Chavez A GillianJapanElwin Sharvill PROPOSAL
Kaitlin Q AlbaresBrazilStephen Shaw QUALIFIED
Juan E NickaSpainOnyama Limba RENEWAL
Emily O MarrierSpainStephen Shaw QUALIFIED
Ivar W MacleadCanadaBernardo Dominic PROPOSAL
Misaki G RutaCanadaIvan Magalhaes PROPOSAL
Smith Q PaprockiArgentinaIoni Bowcher PROPOSAL
Stacey O FlosiGermanyIoni Bowcher NEGOTIATION
Aika V AlbaresJapanOnyama Limba NEGOTIATION
Aruna P AlbaresGermanyXuxue Feng UNQUALIFIED
Kaitlin P StensethCanadaOnyama Limba QUALIFIED
Clifford B MaletCanadaAnna Fali NEGOTIATION
Smith W RoysterIndiaElwin Sharvill NEW
James U MaletItalyBernardo Dominic RENEWAL
Antonio M CaudySpainAsiya Javayant PROPOSAL
Jefferson V FlosiAustraliaBernardo Dominic UNQUALIFIED
Costa B FigeroaFranceIoni Bowcher NEGOTIATION
Aditya G StensethArgentinaAmy Elsner QUALIFIED
Murillo E DarakjyRussiaAmy Elsner RENEWAL
James A CaudyAustraliaIvan Magalhaes PROPOSAL
Chavez B ButtAustraliaStephen Shaw NEGOTIATION
Salvatore W PerinRussiaAnna Fali PROPOSAL
Izzy I GillianGermanyIvan Magalhaes UNQUALIFIED
Kaitlin K OldroydGermanyOnyama Limba RENEWAL
Greenwood Z OldroydGermanyElwin Sharvill RENEWAL
Julie I GauchoGermanyElwin Sharvill NEGOTIATION
David H DoeGermanyIvan Magalhaes QUALIFIED
Kaitlin B VenereGermanyAsiya Javayant NEGOTIATION
Aika G CampainItalyIvan Magalhaes QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Arvin P InouyeAustraliaIvan Magalhaes QUALIFIED
Leja O SergiRussiaXuxue Feng RENEWAL
Misaki Q RulapaughSpainAnna Fali PROPOSAL
Julie H MacleadCanadaStephen Shaw NEW
Jones F NestleSpainXuxue Feng PROPOSAL
David A MaletJapanXuxue Feng QUALIFIED
Ricardo O SchemmerJapanIoni Bowcher PROPOSAL
Faith N StockhamBrazilElwin Sharvill NEGOTIATION
Morrow N RutaGermanyStephen Shaw PROPOSAL
Izzy R SchemmerAustraliaXuxue Feng NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Munro N ShinkoCanada2024-09-06Chanay, Jeffrey A Esq PROPOSAL36Xuxue Feng
1001Emily C MaletAustralia2024-09-19Feltz Printing Service PROPOSAL87Stephen Shaw
1002Murillo F BologniaFrance2024-09-13Feltz Printing Service RENEWAL0Ioni Bowcher
1003Kadeem E VocelkaItaly2024-09-12Rousseaux, Michael Esq NEW49Onyama Limba
1004Isabel U SchemmerFrance2024-09-04Morlong Associates NEGOTIATION60Asiya Javayant
1005Francesco C InouyeArgentina2024-09-17Printing Dimensions NEGOTIATION30Ioni Bowcher
1006Misaki A BowleyBrazil2024-09-18Buckley Miller Wright QUALIFIED88Ioni Bowcher
1007James H GlickRussia2024-09-06Truhlar And Truhlar Attys QUALIFIED93Asiya Javayant
1008Nicolas J DarakjyItaly2024-09-17Chapman, Ross E Esq PROPOSAL60Amy Elsner
1009Ricardo O NestleGermany2024-09-10Printing Dimensions PROPOSAL62Elwin Sharvill
1010Adams A SlusarskiArgentina2024-09-16Chemel, James L Cpa NEW78Elwin Sharvill
1011Morrow S SergiAustralia2024-09-19Commercial Press PROPOSAL42Ivan Magalhaes
1012Jeanfrancois S ButtUnited Kingdom2024-08-25King, Christopher A Esq PROPOSAL3Elwin Sharvill
1013Stacey R RimFrance2024-09-01Benton, John B Jr NEW12Bernardo Dominic
1014Darci K FollerBrazil2024-09-06Chemel, James L Cpa NEGOTIATION71Ivan Magalhaes
1015Julie G KuskoSpain2024-09-14King, Christopher A Esq NEGOTIATION35Anna Fali
1016Ashley V ShinkoGermany2024-08-29Feiner Bros NEGOTIATION45Ivan Magalhaes
1017Aika N WieserAustralia2024-09-19Truhlar And Truhlar Attys UNQUALIFIED0Xuxue Feng
1018Aditya E BologniaGermany2024-09-23Buckley Miller Wright UNQUALIFIED24Amy Elsner
1019Morrow P FigeroaBrazil2024-09-18Chemel, James L Cpa PROPOSAL6Asiya Javayant
1020Leon N BologniaArgentina2024-08-31Rangoni Of Florence QUALIFIED53Xuxue Feng
1021Murillo Z ButtIndia2024-08-27Benton, John B Jr NEW33Elwin Sharvill
1022Morrow S TollnerArgentina2024-08-27Printing Dimensions NEW1Stephen Shaw
1023Isabel P PaprockiIndia2024-09-19Feltz Printing Service QUALIFIED80Ioni Bowcher
1024Clifford E RoysterArgentina2024-08-30Commercial Press NEGOTIATION24Asiya Javayant
1025Jefferson X SergiUnited Kingdom2024-09-22Commercial Press NEW0Asiya Javayant
1026Cody N GlickRussia2024-09-01Dorl, James J Esq NEGOTIATION98Xuxue Feng
1027James Y RimIndia2024-09-10Rangoni Of Florence NEW38Onyama Limba
1028Maisha H FigeroaUnited Kingdom2024-08-25Printing Dimensions UNQUALIFIED16Amy Elsner
1029Costa M WaycottRussia2024-09-04Commercial Press PROPOSAL70Anna Fali
1030Jefferson S BriddickAustralia2024-09-22Commercial Press UNQUALIFIED70Bernardo Dominic
1031Stacey O SaylorsArgentina2024-09-06Printing Dimensions QUALIFIED52Asiya Javayant
1032Adams Z PoquetteBrazil2024-09-13Dorl, James J Esq RENEWAL18Xuxue Feng
1033Julie X CampainGermany2024-09-22Buckley Miller Wright QUALIFIED18Onyama Limba
1034David X DoeUnited Kingdom2024-09-19Commercial Press RENEWAL76Anna Fali
1035Clifford S ButtBrazil2024-08-25Morlong Associates RENEWAL49Stephen Shaw
1036Izzy T GillianItaly2024-09-10Chapman, Ross E Esq UNQUALIFIED99Onyama Limba
1037Morrow A MacleadSpain2024-09-01Morlong Associates RENEWAL79Onyama Limba
1038Clifford O VocelkaAustralia2024-09-15Chemel, James L Cpa PROPOSAL61Ivan Magalhaes
1039Nicolas K WieserArgentina2024-09-13Truhlar And Truhlar Attys QUALIFIED23Amy Elsner
1040Arvin N BowleyJapan2024-09-19Feiner Bros UNQUALIFIED22Ioni Bowcher
1041Ivar D VenereItaly2024-09-12King, Christopher A Esq NEGOTIATION52Onyama Limba
1042James C MorascaItaly2024-09-15Chanay, Jeffrey A Esq PROPOSAL2Ioni Bowcher
1043Silvio O GillianJapan2024-08-31Printing Dimensions UNQUALIFIED99Ivan Magalhaes
1044Izzy B GlickAustralia2024-09-16Chapman, Ross E Esq PROPOSAL5Stephen Shaw
1045Ivar R GillianUnited Kingdom2024-09-21Morlong Associates NEGOTIATION25Xuxue Feng
1046Costa X ButtSpain2024-09-21Printing Dimensions RENEWAL93Onyama Limba
1047Ashley T OldroydUnited Kingdom2024-09-01Truhlar And Truhlar Attys QUALIFIED13Asiya Javayant
1048Kaitlin L GarufiCanada2024-08-27Feltz Printing Service RENEWAL23Onyama Limba
1049Tony E RoysterArgentina2024-09-13Chanay, Jeffrey A Esq UNQUALIFIED13Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Alejandro H WaycottSpainIvan Magalhaes RENEWAL
Aditya I TollnerFranceBernardo Dominic UNQUALIFIED
Misaki D FigeroaUnited KingdomIoni Bowcher RENEWAL
Misaki V GauchoUnited KingdomBernardo Dominic QUALIFIED
Clifford J MaletSpainOnyama Limba NEGOTIATION
Juan W NickaIndiaIoni Bowcher NEGOTIATION
Isabel N SergiItalyOnyama Limba RENEWAL
Sinclair O BologniaAustraliaIvan Magalhaes QUALIFIED
Francesco P DilliardSpainElwin Sharvill RENEWAL
Kadeem J BriddickItalyAmy Elsner RENEWAL
Aika M MacleadJapanAnna Fali NEGOTIATION
Juan F GlickArgentinaStephen Shaw NEGOTIATION
Deepesh L MaletJapanAsiya Javayant RENEWAL
Jones E TollnerRussiaXuxue Feng UNQUALIFIED
Aditya D WhobreyJapanXuxue Feng NEGOTIATION
Izzy O BologniaBrazilXuxue Feng NEW
Stacey W RimAustraliaXuxue Feng NEGOTIATION
Chavez G GarufiIndiaAmy Elsner RENEWAL
Leon Q StockhamFranceIvan Magalhaes PROPOSAL
Sinclair I GarufiItalyIoni Bowcher PROPOSAL
Munro P PerinAustraliaAmy Elsner NEGOTIATION
Alejandro Y WhobreyItalyAnna Fali PROPOSAL
Kaitlin K GillianFranceAnna Fali PROPOSAL
Mujtaba L CaldareraGermanyXuxue Feng NEGOTIATION
Antonio F ShinkoCanadaIoni Bowcher PROPOSAL
Francesco D WhobreyAustraliaElwin Sharvill NEGOTIATION
Mayumi F SlusarskiCanadaOnyama Limba RENEWAL
Ricardo W CaudyGermanyOnyama Limba NEW
Maisha T RulapaughArgentinaAsiya Javayant NEW
Costa G BowleyAustraliaAmy Elsner NEW
Darci A SergiRussiaAmy Elsner UNQUALIFIED
Rodrigues K AmigonGermanyAnna Fali PROPOSAL
Arvin Z KuskoUnited KingdomOnyama Limba PROPOSAL
Maria J SergiAustraliaXuxue Feng QUALIFIED
Ivar K TollnerIndiaAnna Fali PROPOSAL
Alejandro V GauchoAustraliaBernardo Dominic UNQUALIFIED
Ashley W StensethCanadaOnyama Limba UNQUALIFIED
Misaki A SaylorsCanadaIoni Bowcher NEW
Julie L CaudyCanadaBernardo Dominic NEGOTIATION
Faith E DilliardSpainIvan Magalhaes QUALIFIED
Octavia S OldroydItalyAmy Elsner UNQUALIFIED
Cody J SchemmerCanadaOnyama Limba NEW
Tony W WhobreyUnited KingdomAsiya Javayant PROPOSAL
Misaki H PerinCanadaOnyama Limba NEW
Johnson E OldroydArgentinaIoni Bowcher PROPOSAL
Clifford H StensethCanadaBernardo Dominic NEGOTIATION
Deepesh T SchemmerJapanElwin Sharvill QUALIFIED
Chavez D FerenczIndiaIoni Bowcher UNQUALIFIED
Maria I ChuiJapanIvan Magalhaes PROPOSAL
Ivar L PaprockiFranceAsiya Javayant NEGOTIATION
Frozen Columns
Name
Stacey T Morasca
Isabel X Kolmetz
Johnson F Perin
Cody L Malet
Nicolas L Foller
Rodrigues T Ferencz
Misaki J Briddick
Aruna V Kolmetz
Leon D Whobrey
Misaki N Whobrey
James I Whobrey
Silvio U Briddick
James K Venere
Deepesh A Sergi
Mayumi T Stenseth
Salvatore F Briddick
Costa Q Albares
Juan O Figeroa
Munro B Maclead
Francesco F Venere
Ivar U Wieser
David D Campain
Wickens L Wieser
Ashley N Gillian
Aditya M Darakjy
Jeanfrancois I Stenseth
Morrow Y Caldarera
Arvin Z Caldarera
Leja L Doe
Ricardo F Venere
Emily K Marrier
Tony S Wieser
Aditya R Foller
Johnson O Poquette
Murillo K Shinko
Jefferson G Ruta
Ivar E Foller
Kadeem Q Rim
Chavez F Saylors
Cody H Kusko
Johnson A Caldarera
Jones S Kolmetz
Mayumi M Gillian
Mujtaba A Figeroa
Mayumi L Iturbide
Maisha E Foller
Murillo G Bowley
Izzy V Gaucho
Ivar G Malet
Misaki S Gillian
IdCountryDate
1000Italy2024-08-29
1001Australia2024-09-09
1002Italy2024-09-12
1003Japan2024-08-30
1004India2024-09-08
1005Argentina2024-09-08
1006Australia2024-09-11
1007Australia2024-09-03
1008Spain2024-08-25
1009Spain2024-08-31
1010Italy2024-08-26
1011Japan2024-09-01
1012Canada2024-09-17
1013Italy2024-08-27
1014India2024-09-04
1015Japan2024-09-13
1016Argentina2024-08-27
1017United Kingdom2024-09-09
1018Italy2024-09-18
1019Japan2024-09-03
1020Japan2024-08-25
1021Argentina2024-09-09
1022Russia2024-09-04
1023India2024-09-19
1024Italy2024-09-09
1025United Kingdom2024-08-27
1026Japan2024-09-19
1027Brazil2024-08-28
1028Canada2024-08-25
1029Spain2024-08-27
1030Canada2024-08-27
1031Argentina2024-09-07
1032United Kingdom2024-09-06
1033Argentina2024-08-28
1034Argentina2024-09-06
1035Argentina2024-09-14
1036France2024-09-18
1037Italy2024-08-31
1038United Kingdom2024-08-30
1039Brazil2024-09-17
1040Argentina2024-09-22
1041Australia2024-09-13
1042Italy2024-09-09
1043Australia2024-08-31
1044France2024-09-20
1045United Kingdom2024-09-08
1046Japan2024-09-06
1047France2024-09-01
1048Spain2024-09-20
1049India2024-08-26

On-Demand Data

NameIdCountryDate
Mayumi D Royster1000Germany2024-08-25
Kaitlin O Sergi1001Russia2024-08-29
Ricardo E Chui1002Australia2024-09-13
Murillo S Sergi1003Russia2024-09-18
Ricardo Z Campain1004France2024-09-07
Jones P Rim1005Spain2024-09-21
Sinclair A Dilliard1006Russia2024-09-13
Alejandro G Venere1007Italy2024-08-27
Adams O Inouye1008Spain2024-09-01
Isabel H Caudy1009France2024-08-28
Octavia D Amigon1010Germany2024-09-16
Cody C Royster1011Spain2024-08-28
Leja W Stenseth1012India2024-09-04
Clifford B Bolognia1013Canada2024-09-07
Izzy Z Ostrosky1014Italy2024-08-27
Juan J Vocelka1015Germany2024-09-05
Jennifer V Stenseth1016India2024-09-09
Mujtaba W Bowley1017Germany2024-08-31
Leon L Malet1018Japan2024-09-02
Smith G Amigon1019France2024-09-15
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Francesco J DarakjyUnited KingdomBernardo Dominic RENEWAL
Julie U PoquetteBrazilAmy Elsner UNQUALIFIED
Julie B AlbaresSpainBernardo Dominic PROPOSAL
Aruna T RimIndiaAnna Fali UNQUALIFIED
Kadeem Y PoquetteAustraliaIvan Magalhaes RENEWAL
Deepesh Z FlosiGermanyAsiya Javayant RENEWAL
Mujtaba R OstroskyFranceIoni Bowcher UNQUALIFIED
Clifford E WaycottIndiaBernardo Dominic QUALIFIED
Aruna X MaletAustraliaElwin Sharvill QUALIFIED
Jefferson W PoquetteRussiaXuxue Feng PROPOSAL
Faith V DilliardSpainOnyama Limba QUALIFIED
Maisha V ButtBrazilOnyama Limba QUALIFIED
Claire P ButtRussiaXuxue Feng UNQUALIFIED
Kadeem M GauchoFranceBernardo Dominic PROPOSAL
Misaki A CampainAustraliaIvan Magalhaes PROPOSAL
Isabel J DoeFranceIoni Bowcher NEW
Clifford L SergiItalyXuxue Feng NEGOTIATION
David N ButtUnited KingdomXuxue Feng NEGOTIATION
Tony A SaylorsAustraliaAsiya Javayant RENEWAL
Wickens N BowleySpainElwin Sharvill QUALIFIED
Kadeem N FollerCanadaAnna Fali RENEWAL
Darci M PerinBrazilAmy Elsner PROPOSAL
Julie H RimSpainIoni Bowcher NEW
Misaki Q ButtIndiaAmy Elsner NEGOTIATION
Isabel G BowleyRussiaAsiya Javayant RENEWAL
James F RoysterAustraliaAsiya Javayant QUALIFIED
Arvin M CaldareraCanadaXuxue Feng NEW
Maria U WaycottFranceIvan Magalhaes RENEWAL
Isabel X ChuiItalyOnyama Limba NEW
Francesco P OldroydArgentinaIvan Magalhaes PROPOSAL
Emily U FerenczItalyIoni Bowcher UNQUALIFIED
Claire L FigeroaRussiaStephen Shaw UNQUALIFIED
Claire S CaldareraJapanOnyama Limba PROPOSAL
Maria M NickaSpainOnyama Limba PROPOSAL
Nicolas B AmigonCanadaIoni Bowcher NEGOTIATION
Isabel G CaudyBrazilAsiya Javayant PROPOSAL
Johnson Z MaletBrazilBernardo Dominic PROPOSAL
Cody I KolmetzItalyXuxue Feng QUALIFIED
Izzy X WieserAustraliaOnyama Limba RENEWAL
Emily Y PoquetteFranceElwin Sharvill 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>