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
Ivar U PerinJapanAsiya Javayant NEW
James S GillianIndiaIvan Magalhaes NEGOTIATION
Antonio N WaycottAustraliaXuxue Feng QUALIFIED
Juan V KuskoUnited KingdomBernardo Dominic NEW
Aika U StensethCanadaOnyama Limba RENEWAL
Munro N InouyeArgentinaBernardo Dominic RENEWAL
Nicolas I ButtArgentinaStephen Shaw UNQUALIFIED
Cody M GarufiCanadaIoni Bowcher QUALIFIED
Nicolas G MaletUnited KingdomBernardo Dominic QUALIFIED
Costa G MaletRussiaIvan Magalhaes UNQUALIFIED
Ivar U WhobreyAustraliaAsiya Javayant RENEWAL
Leja G GauchoSpainOnyama Limba PROPOSAL
Salvatore P PoquetteRussiaXuxue Feng NEW
Jones R FlosiArgentinaAmy Elsner PROPOSAL
Aditya C NickaAustraliaAnna Fali NEW
Cody R IturbideFranceOnyama Limba PROPOSAL
Alejandro V RutaArgentinaAnna Fali NEGOTIATION
Ashley Z IturbideRussiaOnyama Limba QUALIFIED
Aditya M SchemmerItalyOnyama Limba NEW
Smith O WhobreyJapanIvan Magalhaes QUALIFIED
Alejandro J GillianBrazilStephen Shaw QUALIFIED
Ivar E DilliardAustraliaAsiya Javayant RENEWAL
Deepesh J PoquetteArgentinaIoni Bowcher QUALIFIED
Rodrigues S OstroskyIndiaStephen Shaw QUALIFIED
Maisha E MaletGermanyElwin Sharvill RENEWAL
Antonio S FigeroaItalyXuxue Feng NEGOTIATION
Costa R ShinkoAustraliaAsiya Javayant QUALIFIED
Rodrigues K GillianItalyElwin Sharvill PROPOSAL
Salvatore R DilliardRussiaStephen Shaw PROPOSAL
Mujtaba O VocelkaArgentinaBernardo Dominic RENEWAL
Nicolas G MarrierSpainIoni Bowcher QUALIFIED
Jennifer E CaudyBrazilStephen Shaw NEW
Wickens M ShinkoCanadaAnna Fali UNQUALIFIED
Julie K StockhamRussiaBernardo Dominic NEW
Smith O DoeBrazilIoni Bowcher NEW
James N OldroydAustraliaStephen Shaw UNQUALIFIED
Ricardo B CaudyJapanAsiya Javayant QUALIFIED
Wickens D MaletRussiaStephen Shaw PROPOSAL
Murillo F GillianArgentinaBernardo Dominic RENEWAL
Smith K KolmetzUnited KingdomIvan Magalhaes NEGOTIATION
Jones C PerinAustraliaStephen Shaw QUALIFIED
Antonio W IturbideIndiaAmy Elsner NEGOTIATION
Murillo W AlbaresBrazilOnyama Limba RENEWAL
Jennifer Z SlusarskiBrazilBernardo Dominic NEGOTIATION
Ivar S RimSpainIvan Magalhaes NEW
Emily X MacleadJapanXuxue Feng NEGOTIATION
Aika F AmigonAustraliaIvan Magalhaes PROPOSAL
Tony S ChuiUnited KingdomElwin Sharvill NEGOTIATION
Johnson A RoysterCanadaOnyama Limba NEW
Stacey Q RimArgentinaIoni Bowcher NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Adams P VenereJapanAsiya Javayant QUALIFIED
Salvatore V SergiItalyBernardo Dominic NEGOTIATION
Kadeem M SchemmerArgentinaAsiya Javayant PROPOSAL
Octavia L DilliardBrazilOnyama Limba UNQUALIFIED
Arvin B BowleyCanadaBernardo Dominic PROPOSAL
Tony H WhobreyItalyElwin Sharvill NEW
Nicolas V GillianIndiaIvan Magalhaes UNQUALIFIED
Deepesh I FlosiBrazilAmy Elsner QUALIFIED
Emily S WaycottCanadaAmy Elsner NEGOTIATION
Antonio J WaycottBrazilAsiya Javayant NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Claire E RulapaughFrance2024-06-15Rousseaux, Michael Esq NEW82Bernardo Dominic
1001Munro B PaprockiItaly2024-05-30Chemel, James L Cpa QUALIFIED52Asiya Javayant
1002Maria J VenereBrazil2024-06-08Feltz Printing Service QUALIFIED49Onyama Limba
1003Ricardo X SergiFrance2024-06-19Morlong Associates PROPOSAL39Ivan Magalhaes
1004Antonio I MaletBrazil2024-05-30Printing Dimensions PROPOSAL82Ioni Bowcher
1005Jones K OldroydBrazil2024-06-15Morlong Associates QUALIFIED76Anna Fali
1006Tony Q FollerFrance2024-06-07Dorl, James J Esq PROPOSAL54Anna Fali
1007Johnson S OstroskyFrance2024-05-23Chapman, Ross E Esq RENEWAL81Xuxue Feng
1008Isabel K VocelkaJapan2024-05-25Rangoni Of Florence NEGOTIATION41Xuxue Feng
1009Chavez U DoeIndia2024-06-05Printing Dimensions NEW85Amy Elsner
1010Jones X NestleJapan2024-05-26Benton, John B Jr RENEWAL55Asiya Javayant
1011Izzy V IturbideItaly2024-06-05Printing Dimensions QUALIFIED43Ivan Magalhaes
1012Leon Z WaycottGermany2024-06-18Commercial Press NEGOTIATION62Anna Fali
1013Leon S VocelkaBrazil2024-05-24King, Christopher A Esq NEGOTIATION13Elwin Sharvill
1014Mujtaba S CaldareraArgentina2024-06-06Dorl, James J Esq RENEWAL47Anna Fali
1015Ricardo H DarakjyCanada2024-06-01Morlong Associates PROPOSAL66Anna Fali
1016Leja U KolmetzSpain2024-05-24Rangoni Of Florence NEW90Xuxue Feng
1017Sinclair A OldroydRussia2024-06-06Chemel, James L Cpa QUALIFIED5Ioni Bowcher
1018Alejandro W KuskoJapan2024-06-02Feiner Bros PROPOSAL3Anna Fali
1019Cody K StockhamAustralia2024-06-05Chapman, Ross E Esq PROPOSAL88Asiya Javayant
1020Octavia Y FlosiAustralia2024-06-06Truhlar And Truhlar Attys UNQUALIFIED87Onyama Limba
1021Smith G SaylorsSpain2024-05-23Dorl, James J Esq UNQUALIFIED24Anna Fali
1022Munro S MorascaSpain2024-05-27Rousseaux, Michael Esq PROPOSAL48Onyama Limba
1023Ashley Y GlickRussia2024-06-19Feltz Printing Service QUALIFIED11Asiya Javayant
1024Octavia A RoysterFrance2024-06-08King, Christopher A Esq UNQUALIFIED20Amy Elsner
1025Munro B GauchoFrance2024-05-28Chanay, Jeffrey A Esq NEGOTIATION34Ivan Magalhaes
1026Alejandro W GillianRussia2024-06-02Feiner Bros PROPOSAL27Anna Fali
1027Mayumi Z GauchoItaly2024-05-30King, Christopher A Esq NEW57Xuxue Feng
1028Adams A ChuiRussia2024-05-23Commercial Press NEW5Bernardo Dominic
1029Leja W PerinUnited Kingdom2024-06-18Chanay, Jeffrey A Esq RENEWAL66Onyama Limba
1030Aruna P FigeroaJapan2024-06-17Chapman, Ross E Esq UNQUALIFIED38Onyama Limba
1031Emily X FigeroaSpain2024-05-26Dorl, James J Esq PROPOSAL55Ioni Bowcher
1032Silvio K SchemmerRussia2024-06-13Feiner Bros PROPOSAL1Ioni Bowcher
1033Greenwood V StensethGermany2024-06-06Chemel, James L Cpa PROPOSAL80Stephen Shaw
1034Sinclair N MarrierSpain2024-06-14Truhlar And Truhlar Attys NEW79Anna Fali
1035Isabel T NestleAustralia2024-05-24Morlong Associates NEW20Onyama Limba
1036Antonio V WhobreyUnited Kingdom2024-06-08Chanay, Jeffrey A Esq UNQUALIFIED53Amy Elsner
1037Chavez F BologniaFrance2024-05-23Benton, John B Jr UNQUALIFIED13Ivan Magalhaes
1038Costa Z MaletIndia2024-06-02Feltz Printing Service UNQUALIFIED56Anna Fali
1039Jeanfrancois R BologniaJapan2024-05-31Rousseaux, Michael Esq NEGOTIATION37Asiya Javayant
1040Smith F DoeJapan2024-06-12Chapman, Ross E Esq RENEWAL48Elwin Sharvill
1041Tony D GlickArgentina2024-06-08Morlong Associates NEGOTIATION45Ioni Bowcher
1042Jeanfrancois B DoeFrance2024-06-08Feiner Bros NEW32Elwin Sharvill
1043Ashley V KuskoItaly2024-05-24Dorl, James J Esq NEGOTIATION93Bernardo Dominic
1044Emily M MarrierUnited Kingdom2024-06-03Rangoni Of Florence UNQUALIFIED1Anna Fali
1045Isabel Q GlickRussia2024-06-14King, Christopher A Esq NEGOTIATION2Onyama Limba
1046Salvatore S IturbideBrazil2024-05-27Chemel, James L Cpa PROPOSAL70Anna Fali
1047Maria D FlosiIndia2024-06-04Dorl, James J Esq NEGOTIATION71Anna Fali
1048Alejandro H FigeroaArgentina2024-06-11Benton, John B Jr RENEWAL41Ioni Bowcher
1049Jones J SergiBrazil2024-06-05Rangoni Of Florence UNQUALIFIED27Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Leon W AlbaresUnited KingdomAmy Elsner NEGOTIATION
Silvio S DarakjyGermanyAnna Fali QUALIFIED
Nicolas F BologniaRussiaBernardo Dominic QUALIFIED
Rodrigues A RutaFranceAnna Fali PROPOSAL
Smith F RulapaughGermanyIoni Bowcher UNQUALIFIED
James T MorascaIndiaIvan Magalhaes QUALIFIED
Juan Q ChuiGermanyIvan Magalhaes RENEWAL
Faith X MarrierSpainAmy Elsner NEW
Emily T WhobreySpainStephen Shaw QUALIFIED
Aruna I IturbideIndiaElwin Sharvill RENEWAL
Izzy L FlosiCanadaOnyama Limba PROPOSAL
Leon Y MacleadArgentinaAmy Elsner RENEWAL
Wickens I AmigonFranceElwin Sharvill NEW
Chavez D ShinkoGermanyElwin Sharvill UNQUALIFIED
Juan O BowleyAustraliaXuxue Feng RENEWAL
Julie K DilliardIndiaStephen Shaw NEW
Julie M WaycottIndiaAmy Elsner NEW
Clifford H MorascaBrazilStephen Shaw RENEWAL
Darci Y WaycottRussiaBernardo Dominic QUALIFIED
Ashley T DarakjyAustraliaBernardo Dominic PROPOSAL
Maisha A CaldareraGermanyBernardo Dominic RENEWAL
Johnson I NickaAustraliaXuxue Feng UNQUALIFIED
Adams S CaldareraAustraliaAmy Elsner PROPOSAL
Claire L IturbideCanadaIvan Magalhaes RENEWAL
Misaki A CampainAustraliaAmy Elsner QUALIFIED
Rodrigues A ButtRussiaBernardo Dominic PROPOSAL
Aruna N VocelkaCanadaXuxue Feng PROPOSAL
Octavia I OldroydJapanElwin Sharvill PROPOSAL
Mujtaba T OldroydIndiaAsiya Javayant NEW
Maisha B GlickAustraliaXuxue Feng NEGOTIATION
Rodrigues J VocelkaArgentinaBernardo Dominic UNQUALIFIED
Octavia H GarufiJapanAnna Fali NEGOTIATION
Jeanfrancois D IturbideRussiaAnna Fali NEGOTIATION
Faith D TollnerIndiaBernardo Dominic NEW
Jeanfrancois B AlbaresIndiaOnyama Limba UNQUALIFIED
Jeanfrancois I DarakjyIndiaBernardo Dominic QUALIFIED
Aruna E WhobreyJapanElwin Sharvill PROPOSAL
Aruna D DilliardIndiaAnna Fali UNQUALIFIED
Octavia D IturbideSpainAnna Fali UNQUALIFIED
Misaki P ChuiFranceIvan Magalhaes UNQUALIFIED
Mujtaba S GarufiIndiaAsiya Javayant UNQUALIFIED
Nicolas A GillianCanadaIvan Magalhaes RENEWAL
Jeanfrancois H FlosiRussiaIoni Bowcher UNQUALIFIED
Alejandro R ShinkoJapanElwin Sharvill QUALIFIED
Chavez H NickaGermanyElwin Sharvill NEW
Izzy J FigeroaSpainElwin Sharvill PROPOSAL
Jeanfrancois V SchemmerRussiaOnyama Limba NEW
Wickens H StockhamBrazilBernardo Dominic NEW
Jennifer O CampainArgentinaXuxue Feng NEGOTIATION
Maisha A OstroskyBrazilBernardo Dominic RENEWAL
Frozen Columns
Name
Mayumi D Malet
Munro V Stenseth
Chavez L Poquette
Maisha H Kusko
Murillo I Shinko
Arvin M Stenseth
David P Garufi
Kaitlin K Albares
Ashley B Malet
Kadeem L Rim
Jennifer O Slusarski
Octavia R Sergi
Silvio V Albares
Mujtaba V Glick
Maria U Royster
Jeanfrancois D Butt
Octavia L Stockham
Isabel Y Gillian
Juan W Kolmetz
Leja W Whobrey
Isabel K Glick
Deepesh I Ruta
Clifford F Malet
Johnson Q Bolognia
Morrow I Royster
Johnson X Saylors
Mujtaba Y Chui
Smith O Inouye
Francesco Z Malet
Kaitlin N Gillian
David M Rim
Misaki K Slusarski
Salvatore F Rulapaugh
Maisha Y Morasca
Ivar L Kusko
David M Gillian
Ricardo N Gillian
Adams H Wieser
Aruna P Amigon
Jennifer J Ferencz
Kadeem C Slusarski
Smith K Darakjy
Adams T Butt
Mayumi S Venere
Faith X Sergi
Jefferson U Glick
Ricardo A Ferencz
Aditya L Foller
Alejandro O Caldarera
Costa I Dilliard
IdCountryDate
1000Brazil2024-06-03
1001Canada2024-06-02
1002India2024-06-11
1003Russia2024-06-18
1004Brazil2024-05-29
1005Australia2024-06-05
1006Japan2024-06-03
1007United Kingdom2024-05-23
1008Australia2024-06-12
1009Canada2024-05-25
1010United Kingdom2024-06-12
1011Brazil2024-06-06
1012Russia2024-06-08
1013Australia2024-06-03
1014Canada2024-06-04
1015Brazil2024-06-02
1016United Kingdom2024-06-10
1017Germany2024-06-04
1018United Kingdom2024-06-03
1019Brazil2024-06-14
1020United Kingdom2024-06-16
1021Argentina2024-06-20
1022Italy2024-06-13
1023India2024-05-25
1024Italy2024-06-08
1025Argentina2024-05-30
1026Spain2024-05-27
1027Japan2024-06-19
1028Argentina2024-06-08
1029Japan2024-05-28
1030Brazil2024-06-08
1031Japan2024-05-27
1032Argentina2024-06-19
1033France2024-06-11
1034India2024-06-10
1035Argentina2024-06-01
1036Japan2024-06-21
1037Argentina2024-06-18
1038India2024-06-05
1039Brazil2024-06-17
1040Japan2024-06-11
1041France2024-06-16
1042Russia2024-06-13
1043United Kingdom2024-06-04
1044Australia2024-05-23
1045Russia2024-06-01
1046India2024-06-15
1047Italy2024-06-12
1048United Kingdom2024-06-21
1049Brazil2024-05-29

On-Demand Data

NameIdCountryDate
Cody W Amigon1000United Kingdom2024-06-04
Munro L Nicka1001France2024-05-31
Deepesh S Butt1002Argentina2024-06-20
Faith G Slusarski1003Canada2024-06-08
Wickens N Briddick1004France2024-06-12
Tony O Ruta1005Canada2024-06-05
Leja F Foller1006Germany2024-05-31
Greenwood L Iturbide1007Japan2024-05-28
Morrow I Bolognia1008France2024-06-09
Isabel S Figeroa1009United Kingdom2024-06-11
Munro Z Gaucho1010Italy2024-05-25
Greenwood A Morasca1011France2024-06-04
Alejandro L Amigon1012France2024-05-23
Ashley M Briddick1013Spain2024-06-17
Juan J Flosi1014Japan2024-06-04
Clifford G Slusarski1015Germany2024-06-21
Francesco G Caudy1016Canada2024-06-11
Ricardo L Figeroa1017Japan2024-06-13
Cody C Malet1018United Kingdom2024-06-09
Maria V Ferencz1019Japan2024-05-30
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Juan K SergiBrazilBernardo Dominic NEGOTIATION
Ivar P AmigonRussiaBernardo Dominic PROPOSAL
Ricardo M AlbaresJapanIvan Magalhaes QUALIFIED
Francesco Q PerinGermanyIoni Bowcher RENEWAL
Clifford T SchemmerBrazilAsiya Javayant UNQUALIFIED
Leon E GauchoAustraliaAmy Elsner QUALIFIED
Jefferson W MacleadGermanyAmy Elsner NEW
Wickens A PoquetteAustraliaIoni Bowcher NEW
Francesco W BologniaUnited KingdomXuxue Feng RENEWAL
Stacey G AlbaresUnited KingdomBernardo Dominic QUALIFIED
Ricardo A KolmetzSpainStephen Shaw RENEWAL
Aruna S NestleCanadaIoni Bowcher PROPOSAL
Smith O BriddickItalyAnna Fali QUALIFIED
Sinclair C InouyeRussiaAnna Fali NEW
Jeanfrancois C ButtUnited KingdomOnyama Limba UNQUALIFIED
Ashley C FerenczAustraliaBernardo Dominic NEW
Johnson O SaylorsGermanyBernardo Dominic QUALIFIED
Francesco Y TollnerUnited KingdomIoni Bowcher PROPOSAL
David W ShinkoUnited KingdomAnna Fali UNQUALIFIED
Faith K VocelkaGermanyIvan Magalhaes NEW
Costa Y DarakjySpainXuxue Feng RENEWAL
Kadeem D RulapaughRussiaElwin Sharvill NEGOTIATION
Kadeem E DilliardCanadaXuxue Feng QUALIFIED
Smith M SergiAustraliaElwin Sharvill QUALIFIED
Silvio Z RulapaughSpainStephen Shaw QUALIFIED
Salvatore I DarakjyUnited KingdomAsiya Javayant UNQUALIFIED
Aruna V MarrierRussiaStephen Shaw NEW
Ricardo T VocelkaGermanyBernardo Dominic PROPOSAL
Cody Q BowleySpainElwin Sharvill PROPOSAL
Cody L KolmetzItalyIvan Magalhaes NEGOTIATION
Antonio U SchemmerArgentinaIoni Bowcher PROPOSAL
Misaki Z DoeFranceAnna Fali RENEWAL
Smith C RimSpainOnyama Limba QUALIFIED
Aruna I OstroskyGermanyOnyama Limba NEW
Darci U RulapaughIndiaIoni Bowcher QUALIFIED
Chavez Q PoquetteArgentinaXuxue Feng NEW
Jefferson T TollnerBrazilXuxue Feng UNQUALIFIED
Aika A OstroskyJapanAmy Elsner NEW
Rodrigues N NestleSpainOnyama Limba NEW
Munro O SaylorsItalyIoni Bowcher NEGOTIATION

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