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
Francesco I ShinkoAustraliaAsiya Javayant RENEWAL
Silvio I PaprockiJapanXuxue Feng NEW
Johnson L VocelkaCanadaAmy Elsner RENEWAL
Munro P SaylorsJapanStephen Shaw NEW
Salvatore X NickaRussiaIvan Magalhaes QUALIFIED
Ricardo P PaprockiCanadaBernardo Dominic NEW
Stacey R TollnerCanadaAnna Fali NEGOTIATION
Silvio D FigeroaGermanyAmy Elsner PROPOSAL
Arvin K CaudyFranceOnyama Limba UNQUALIFIED
Silvio X FigeroaArgentinaStephen Shaw QUALIFIED
Tony P RoysterArgentinaAsiya Javayant QUALIFIED
Munro W MaletBrazilXuxue Feng QUALIFIED
Misaki V DoeBrazilAmy Elsner NEW
Greenwood H VenereBrazilBernardo Dominic NEW
Aika T FlosiGermanyBernardo Dominic NEGOTIATION
Salvatore D RoysterBrazilOnyama Limba NEW
Jennifer H GarufiItalyStephen Shaw NEW
Antonio K PaprockiJapanStephen Shaw NEW
Kaitlin W InouyeSpainBernardo Dominic QUALIFIED
Arvin S TollnerBrazilXuxue Feng NEW
Claire O StockhamArgentinaIoni Bowcher PROPOSAL
Smith C NestleCanadaBernardo Dominic PROPOSAL
Octavia X CaldareraBrazilElwin Sharvill RENEWAL
Francesco Q NickaSpainIoni Bowcher RENEWAL
Rodrigues E FollerIndiaIvan Magalhaes NEGOTIATION
Maisha G RimFranceElwin Sharvill NEGOTIATION
Maria K FollerRussiaAsiya Javayant QUALIFIED
Aika U IturbideUnited KingdomBernardo Dominic RENEWAL
Wickens Y CaudyFranceXuxue Feng UNQUALIFIED
Antonio L TollnerUnited KingdomBernardo Dominic QUALIFIED
Isabel V CaudyIndiaAsiya Javayant NEGOTIATION
Adams P RimAustraliaStephen Shaw NEW
Leja W WieserCanadaAsiya Javayant RENEWAL
Aika F StensethJapanIoni Bowcher NEGOTIATION
Rodrigues Q SaylorsUnited KingdomAnna Fali QUALIFIED
Jeanfrancois I GlickCanadaAnna Fali RENEWAL
Juan F PoquetteGermanyAnna Fali NEGOTIATION
Kaitlin I GarufiUnited KingdomXuxue Feng QUALIFIED
Tony T WaycottArgentinaAmy Elsner PROPOSAL
Julie C BriddickFranceIoni Bowcher PROPOSAL
Salvatore A VenereItalyBernardo Dominic NEW
Tony T CaldareraUnited KingdomBernardo Dominic QUALIFIED
Johnson B WieserBrazilAsiya Javayant QUALIFIED
Tony I AlbaresJapanAsiya Javayant UNQUALIFIED
Leon N MacleadAustraliaAmy Elsner NEW
Munro P PaprockiAustraliaIoni Bowcher UNQUALIFIED
Rodrigues V MorascaItalyIoni Bowcher UNQUALIFIED
Murillo U PaprockiGermanyStephen Shaw NEW
Silvio P GarufiRussiaAmy Elsner QUALIFIED
Adams U WaycottSpainBernardo Dominic UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Costa E MacleadFranceStephen Shaw PROPOSAL
Wickens R SergiItalyAnna Fali UNQUALIFIED
Aika P ShinkoUnited KingdomIvan Magalhaes NEGOTIATION
Darci V AmigonItalyBernardo Dominic PROPOSAL
Salvatore H PoquetteRussiaBernardo Dominic RENEWAL
Nicolas I BowleyJapanIvan Magalhaes QUALIFIED
Johnson Q BriddickGermanyAnna Fali UNQUALIFIED
Juan H VocelkaCanadaAnna Fali PROPOSAL
Arvin A WhobreyIndiaElwin Sharvill NEW
Munro H PoquetteIndiaAmy Elsner RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Wickens I MorascaGermany2024-05-28Dorl, James J Esq QUALIFIED90Asiya Javayant
1001Wickens Y GauchoSpain2024-05-28Rangoni Of Florence RENEWAL24Stephen Shaw
1002Cody B AlbaresCanada2024-05-13Chanay, Jeffrey A Esq PROPOSAL12Anna Fali
1003Aditya U KolmetzUnited Kingdom2024-05-17Dorl, James J Esq PROPOSAL2Ivan Magalhaes
1004Nicolas C DoeCanada2024-05-11Commercial Press NEW89Amy Elsner
1005Jones X PerinUnited Kingdom2024-05-15Printing Dimensions RENEWAL91Asiya Javayant
1006Stacey S VocelkaRussia2024-05-11Buckley Miller Wright QUALIFIED10Stephen Shaw
1007Jefferson T RimRussia2024-05-24Rousseaux, Michael Esq QUALIFIED70Stephen Shaw
1008Morrow M CampainAustralia2024-05-18Commercial Press NEGOTIATION7Asiya Javayant
1009Morrow X AlbaresArgentina2024-05-23Commercial Press NEGOTIATION95Amy Elsner
1010Ricardo J TollnerAustralia2024-05-18Printing Dimensions NEW10Onyama Limba
1011Faith O TollnerUnited Kingdom2024-05-30Buckley Miller Wright NEW80Xuxue Feng
1012Costa P WaycottBrazil2024-06-04Truhlar And Truhlar Attys NEW35Anna Fali
1013Cody E SergiJapan2024-05-12Chanay, Jeffrey A Esq NEW41Ivan Magalhaes
1014Jones W MaletCanada2024-05-10Truhlar And Truhlar Attys NEW41Onyama Limba
1015Smith X GarufiItaly2024-05-10Feltz Printing Service NEGOTIATION54Ivan Magalhaes
1016Isabel B StensethSpain2024-05-10King, Christopher A Esq NEW18Onyama Limba
1017Faith K GarufiArgentina2024-05-10Chanay, Jeffrey A Esq RENEWAL84Amy Elsner
1018Stacey H SergiCanada2024-05-16Buckley Miller Wright NEGOTIATION41Anna Fali
1019Aditya H FollerAustralia2024-05-30Chemel, James L Cpa NEGOTIATION28Xuxue Feng
1020Morrow Y FlosiUnited Kingdom2024-05-09Morlong Associates QUALIFIED56Ioni Bowcher
1021Clifford R ChuiIndia2024-05-25Printing Dimensions QUALIFIED35Bernardo Dominic
1022Misaki Y FlosiAustralia2024-05-25Chapman, Ross E Esq QUALIFIED9Amy Elsner
1023Ivar W MarrierUnited Kingdom2024-06-05Chemel, James L Cpa NEW40Elwin Sharvill
1024Claire E VenereCanada2024-05-18Dorl, James J Esq NEGOTIATION42Ivan Magalhaes
1025Juan D CampainBrazil2024-05-29Chemel, James L Cpa UNQUALIFIED96Bernardo Dominic
1026Ricardo G TollnerCanada2024-05-23Truhlar And Truhlar Attys PROPOSAL81Xuxue Feng
1027Cody T FollerIndia2024-05-13Rangoni Of Florence UNQUALIFIED46Onyama Limba
1028Salvatore S MacleadUnited Kingdom2024-05-30Benton, John B Jr QUALIFIED18Asiya Javayant
1029Murillo K PoquetteUnited Kingdom2024-06-04Benton, John B Jr NEGOTIATION98Onyama Limba
1030Murillo O IturbideUnited Kingdom2024-05-20Chemel, James L Cpa NEGOTIATION84Bernardo Dominic
1031Maria L BologniaArgentina2024-05-21Printing Dimensions QUALIFIED66Amy Elsner
1032Deepesh W VocelkaSpain2024-05-22Chapman, Ross E Esq QUALIFIED78Ioni Bowcher
1033Jones J OstroskyIndia2024-05-17Printing Dimensions UNQUALIFIED26Asiya Javayant
1034David Q AmigonSpain2024-05-21Chemel, James L Cpa QUALIFIED73Bernardo Dominic
1035Jones C RutaSpain2024-05-12Rangoni Of Florence NEGOTIATION66Xuxue Feng
1036Juan A NestleGermany2024-05-24Feltz Printing Service UNQUALIFIED15Ivan Magalhaes
1037Adams I SaylorsArgentina2024-05-25King, Christopher A Esq UNQUALIFIED79Ivan Magalhaes
1038Kadeem I StensethCanada2024-06-05Printing Dimensions NEGOTIATION4Anna Fali
1039Maisha V KolmetzCanada2024-05-19Rousseaux, Michael Esq RENEWAL85Xuxue Feng
1040Costa Y StensethCanada2024-06-02Chanay, Jeffrey A Esq NEGOTIATION59Onyama Limba
1041Francesco S SlusarskiSpain2024-05-15Buckley Miller Wright QUALIFIED33Ioni Bowcher
1042Darci P OstroskyItaly2024-06-01Rangoni Of Florence RENEWAL45Ioni Bowcher
1043Kadeem N ButtRussia2024-05-18Printing Dimensions UNQUALIFIED25Anna Fali
1044Aditya Q AlbaresArgentina2024-05-19Chapman, Ross E Esq QUALIFIED72Bernardo Dominic
1045Jones C DarakjyArgentina2024-05-10Feiner Bros NEW33Stephen Shaw
1046Tony N PerinArgentina2024-05-21Benton, John B Jr NEW27Anna Fali
1047Ashley A RutaSpain2024-06-01Chanay, Jeffrey A Esq PROPOSAL53Onyama Limba
1048Julie L DilliardRussia2024-05-19Chemel, James L Cpa PROPOSAL97Elwin Sharvill
1049Ashley G ButtItaly2024-05-16Commercial Press UNQUALIFIED33Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Emily Q CampainArgentinaAsiya Javayant QUALIFIED
Jones U OstroskyArgentinaOnyama Limba RENEWAL
Octavia O AlbaresArgentinaAnna Fali NEGOTIATION
Mayumi R MaletUnited KingdomOnyama Limba NEW
Leja L GarufiFranceBernardo Dominic NEW
Kadeem F FollerIndiaIoni Bowcher NEW
Deepesh E StockhamJapanAmy Elsner RENEWAL
Smith L GauchoRussiaBernardo Dominic NEW
Juan C FlosiFranceAsiya Javayant NEGOTIATION
Adams Z GauchoBrazilOnyama Limba NEW
Chavez L FollerJapanAsiya Javayant RENEWAL
Faith L WhobreyCanadaAsiya Javayant RENEWAL
James L WaycottGermanyIvan Magalhaes UNQUALIFIED
David I FerenczJapanAnna Fali QUALIFIED
Morrow K FlosiSpainAsiya Javayant RENEWAL
Salvatore M OstroskySpainIvan Magalhaes QUALIFIED
Clifford A RimArgentinaElwin Sharvill QUALIFIED
Aditya B CaldareraFranceBernardo Dominic RENEWAL
Adams C WieserCanadaIoni Bowcher QUALIFIED
Isabel V CaldareraItalyIoni Bowcher RENEWAL
Kaitlin T CaudyRussiaAnna Fali NEW
Arvin L StockhamUnited KingdomStephen Shaw NEW
Aruna Z WieserItalyElwin Sharvill UNQUALIFIED
Faith W BowleyJapanOnyama Limba NEW
Darci X IturbideJapanIoni Bowcher QUALIFIED
Nicolas C KuskoItalyXuxue Feng PROPOSAL
Ricardo J MarrierRussiaBernardo Dominic QUALIFIED
Cody M RutaFranceBernardo Dominic UNQUALIFIED
Jeanfrancois N WaycottGermanyXuxue Feng UNQUALIFIED
Clifford E StockhamArgentinaAnna Fali RENEWAL
Ashley H CaldareraItalyAsiya Javayant QUALIFIED
Arvin V FollerIndiaBernardo Dominic PROPOSAL
Kaitlin O RulapaughAustraliaAsiya Javayant PROPOSAL
Alejandro E MorascaGermanyAsiya Javayant UNQUALIFIED
Alejandro M FigeroaBrazilElwin Sharvill PROPOSAL
Clifford G AmigonRussiaAsiya Javayant NEW
James Q IturbideFranceOnyama Limba PROPOSAL
Misaki X SaylorsGermanyXuxue Feng RENEWAL
Darci P IturbideRussiaIoni Bowcher NEGOTIATION
Kaitlin P ShinkoRussiaAsiya Javayant UNQUALIFIED
Kaitlin S WaycottRussiaAnna Fali UNQUALIFIED
Cody Y OstroskyFranceBernardo Dominic RENEWAL
Salvatore E FerenczCanadaXuxue Feng NEGOTIATION
Greenwood H SergiUnited KingdomStephen Shaw PROPOSAL
Murillo K NestleJapanOnyama Limba QUALIFIED
Morrow E BowleyGermanyAsiya Javayant QUALIFIED
Salvatore G MaletRussiaIvan Magalhaes NEW
Ashley H BriddickUnited KingdomXuxue Feng NEW
Jennifer D StensethJapanIvan Magalhaes UNQUALIFIED
Kadeem P SchemmerItalyAsiya Javayant RENEWAL
Frozen Columns
Name
Darci L Oldroyd
Maria L Saylors
Johnson B Rulapaugh
Ricardo L Nicka
Johnson W Shinko
Tony N Doe
Chavez P Glick
Munro B Doe
Juan V Briddick
Aditya K Doe
Isabel Y Venere
Ashley N Ferencz
Izzy E Glick
Smith Y Darakjy
Izzy I Nicka
Alejandro D Whobrey
Octavia O Flosi
Emily F Slusarski
Munro T Foller
Juan Q Nestle
Ivar O Venere
Cody P Figeroa
Salvatore O Bolognia
Arvin I Bolognia
Clifford Q Glick
Maisha X Perin
Ricardo X Perin
Adams E Maclead
Ricardo H Rulapaugh
Adams U Kusko
Stacey W Royster
Chavez A Briddick
Jefferson M Maclead
Jones X Dilliard
Alejandro N Tollner
Isabel J Kolmetz
Silvio P Ferencz
Clifford V Nicka
Misaki H Ostrosky
David Z Inouye
Ricardo Q Ruta
Octavia Q Glick
Kadeem D Poquette
Morrow W Morasca
Jeanfrancois F Caudy
Aruna I Figeroa
Claire K Ruta
Leja F Figeroa
Tony W Sergi
Silvio J Nestle
IdCountryDate
1000Australia2024-06-06
1001France2024-05-24
1002Japan2024-05-12
1003France2024-05-19
1004Russia2024-05-31
1005Russia2024-05-10
1006Australia2024-05-09
1007France2024-05-16
1008India2024-05-24
1009United Kingdom2024-06-04
1010United Kingdom2024-06-04
1011United Kingdom2024-06-03
1012Argentina2024-06-05
1013Germany2024-05-14
1014Canada2024-05-24
1015France2024-05-24
1016Japan2024-06-02
1017Canada2024-05-11
1018Argentina2024-06-02
1019Spain2024-05-27
1020Australia2024-06-05
1021Italy2024-05-18
1022Italy2024-06-01
1023United Kingdom2024-05-24
1024Italy2024-05-31
1025France2024-05-24
1026France2024-05-21
1027Australia2024-05-22
1028Brazil2024-06-04
1029France2024-05-09
1030Germany2024-05-08
1031Argentina2024-05-10
1032India2024-05-22
1033India2024-05-22
1034Argentina2024-06-02
1035Italy2024-05-31
1036Japan2024-06-03
1037Japan2024-05-10
1038India2024-05-28
1039France2024-05-26
1040Canada2024-06-06
1041Italy2024-05-21
1042Italy2024-06-05
1043India2024-06-05
1044India2024-05-25
1045Russia2024-05-10
1046Italy2024-05-15
1047Japan2024-05-27
1048Germany2024-05-08
1049France2024-05-20

On-Demand Data

NameIdCountryDate
Emily M Gillian1000India2024-05-13
Ivar Y Bolognia1001Japan2024-05-15
Deepesh I Figeroa1002Spain2024-05-08
Faith P Royster1003India2024-05-20
Arvin P Darakjy1004United Kingdom2024-06-03
Wickens K Flosi1005Brazil2024-06-06
Aika B Malet1006Italy2024-06-03
Greenwood I Doe1007France2024-05-17
Aruna Q Nestle1008Australia2024-05-12
Faith V Figeroa1009Japan2024-06-01
Jefferson D Kusko1010Italy2024-05-11
Deepesh J Wieser1011Australia2024-05-31
Aditya Q Tollner1012India2024-05-23
Mayumi Q Ostrosky1013Germany2024-05-16
Greenwood Q Wieser1014Australia2024-05-10
Octavia K Rim1015Japan2024-05-14
Tony J Vocelka1016India2024-05-16
Salvatore M Chui1017Italy2024-06-01
Jeanfrancois N Foller1018Canada2024-05-11
James P Sergi1019Australia2024-05-30
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Cody K RutaIndiaAnna Fali UNQUALIFIED
Rodrigues U CaudyJapanIoni Bowcher NEGOTIATION
Jennifer T RulapaughAustraliaAsiya Javayant QUALIFIED
Johnson M KolmetzJapanStephen Shaw QUALIFIED
Juan T OstroskyUnited KingdomElwin Sharvill PROPOSAL
Mayumi M GarufiAustraliaAmy Elsner PROPOSAL
Mayumi O BowleyArgentinaAmy Elsner NEGOTIATION
Chavez E RoysterIndiaAnna Fali NEGOTIATION
Misaki P WieserJapanAnna Fali PROPOSAL
Claire A WaycottFranceElwin Sharvill NEGOTIATION
Jefferson L RutaItalyAnna Fali NEGOTIATION
Jefferson Q PoquetteRussiaIoni Bowcher PROPOSAL
Cody U InouyeIndiaStephen Shaw PROPOSAL
Leja A StensethItalyStephen Shaw NEGOTIATION
Maria C MorascaAustraliaElwin Sharvill RENEWAL
Jones L MarrierFranceElwin Sharvill RENEWAL
Maisha G CaudyJapanIvan Magalhaes UNQUALIFIED
Munro D RulapaughUnited KingdomXuxue Feng RENEWAL
Izzy V MorascaAustraliaOnyama Limba NEGOTIATION
Deepesh Z PerinBrazilBernardo Dominic QUALIFIED
Cody U WhobreyFranceIoni Bowcher UNQUALIFIED
Mayumi G AmigonSpainIvan Magalhaes QUALIFIED
Deepesh V MaletAustraliaIoni Bowcher RENEWAL
Izzy J StensethJapanBernardo Dominic NEW
Aruna R NickaBrazilBernardo Dominic NEGOTIATION
Stacey Q TollnerCanadaIoni Bowcher QUALIFIED
Izzy J TollnerAustraliaIvan Magalhaes RENEWAL
Clifford Y PerinSpainAmy Elsner NEGOTIATION
Smith Q DarakjyJapanElwin Sharvill RENEWAL
Maisha G FollerJapanXuxue Feng RENEWAL
Wickens Z KuskoItalyBernardo Dominic QUALIFIED
Isabel M DarakjyItalyAmy Elsner UNQUALIFIED
Clifford P BologniaBrazilIoni Bowcher PROPOSAL
Jennifer D CampainItalyIvan Magalhaes UNQUALIFIED
Jones X GillianIndiaAnna Fali NEW
Maisha J NickaIndiaIoni Bowcher RENEWAL
Chavez L WieserBrazilStephen Shaw NEW
Smith W ButtItalyIvan Magalhaes QUALIFIED
Aditya S NestleAustraliaStephen Shaw NEGOTIATION
Deepesh N RulapaughBrazilAsiya Javayant PROPOSAL

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