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 S MaletUnited KingdomIoni Bowcher NEGOTIATION
Isabel L RutaItalyIvan Magalhaes UNQUALIFIED
Morrow W StensethIndiaXuxue Feng RENEWAL
Costa J VocelkaArgentinaAsiya Javayant PROPOSAL
Deepesh J RimBrazilElwin Sharvill NEW
Jennifer E CaldareraItalyIvan Magalhaes PROPOSAL
Antonio F BriddickRussiaIoni Bowcher NEW
Johnson N VocelkaBrazilAmy Elsner UNQUALIFIED
Darci I RimBrazilStephen Shaw RENEWAL
Rodrigues G RulapaughSpainAmy Elsner PROPOSAL
Ashley L PoquetteCanadaStephen Shaw PROPOSAL
Darci G DilliardItalyIvan Magalhaes RENEWAL
Chavez J CampainBrazilIvan Magalhaes PROPOSAL
Darci Q GauchoSpainIoni Bowcher QUALIFIED
Kadeem F StockhamUnited KingdomBernardo Dominic NEW
Morrow V TollnerIndiaIoni Bowcher PROPOSAL
Chavez W SaylorsIndiaAmy Elsner UNQUALIFIED
Rodrigues J KolmetzGermanyAsiya Javayant NEW
David L DilliardSpainBernardo Dominic NEGOTIATION
Cody G WieserItalyAmy Elsner NEGOTIATION
Silvio A GauchoItalyIoni Bowcher RENEWAL
Emily W VenereFranceStephen Shaw NEGOTIATION
Wickens N NickaArgentinaAsiya Javayant RENEWAL
Aditya T CaldareraGermanyXuxue Feng RENEWAL
Costa W VocelkaBrazilIoni Bowcher PROPOSAL
Antonio Z DilliardItalyAsiya Javayant RENEWAL
James H AmigonJapanIvan Magalhaes PROPOSAL
Tony W PaprockiUnited KingdomOnyama Limba NEGOTIATION
Aika F BriddickAustraliaElwin Sharvill RENEWAL
Leon R RutaItalyIvan Magalhaes NEGOTIATION
Costa I BriddickSpainOnyama Limba NEW
Emily B PaprockiGermanyAsiya Javayant UNQUALIFIED
Salvatore R GarufiCanadaBernardo Dominic PROPOSAL
Kadeem S RulapaughRussiaIoni Bowcher NEGOTIATION
Francesco C OldroydCanadaBernardo Dominic RENEWAL
Antonio R RimBrazilAmy Elsner UNQUALIFIED
Ricardo F OldroydGermanyIoni Bowcher NEGOTIATION
Mujtaba O ButtFranceAsiya Javayant NEGOTIATION
Ivar K RulapaughItalyStephen Shaw NEW
Mayumi L SergiRussiaIoni Bowcher QUALIFIED
Maisha K SergiAustraliaBernardo Dominic UNQUALIFIED
Maria W KolmetzGermanyOnyama Limba RENEWAL
Isabel V MaletIndiaOnyama Limba QUALIFIED
Izzy Z RoysterArgentinaIoni Bowcher UNQUALIFIED
Salvatore D SergiItalyElwin Sharvill NEW
Munro A RoysterUnited KingdomIoni Bowcher PROPOSAL
James K KolmetzAustraliaAnna Fali PROPOSAL
Kaitlin P DoeArgentinaAsiya Javayant QUALIFIED
James R NestleAustraliaAnna Fali NEGOTIATION
Faith O StockhamCanadaAsiya Javayant NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Leon L VocelkaArgentinaIvan Magalhaes QUALIFIED
Clifford T MorascaIndiaAsiya Javayant NEW
Smith T VocelkaBrazilXuxue Feng NEW
Aruna M WieserCanadaAmy Elsner NEGOTIATION
Morrow J CampainGermanyAsiya Javayant PROPOSAL
Murillo T RimIndiaStephen Shaw RENEWAL
Chavez K VenereFranceAsiya Javayant QUALIFIED
Mujtaba D StockhamFranceAmy Elsner UNQUALIFIED
Kadeem U InouyeArgentinaStephen Shaw RENEWAL
Octavia C MacleadBrazilStephen Shaw QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Kadeem P StockhamBrazil2024-06-21Truhlar And Truhlar Attys NEW53Stephen Shaw
1001Leon T GlickAustralia2024-06-12Rousseaux, Michael Esq RENEWAL3Bernardo Dominic
1002Smith D VocelkaArgentina2024-06-17Printing Dimensions QUALIFIED12Ivan Magalhaes
1003Faith D RimSpain2024-06-06Feltz Printing Service PROPOSAL39Asiya Javayant
1004Juan V OldroydCanada2024-06-19Buckley Miller Wright RENEWAL98Bernardo Dominic
1005Silvio U SaylorsUnited Kingdom2024-06-21Feiner Bros PROPOSAL4Anna Fali
1006Smith Q RulapaughSpain2024-06-10Feiner Bros UNQUALIFIED12Ioni Bowcher
1007Mujtaba H VenereUnited Kingdom2024-05-26Chanay, Jeffrey A Esq UNQUALIFIED24Ioni Bowcher
1008David C DilliardIndia2024-06-02Commercial Press UNQUALIFIED69Onyama Limba
1009Ivar B StensethArgentina2024-06-23Benton, John B Jr NEGOTIATION3Xuxue Feng
1010Chavez O KolmetzSpain2024-06-16Chemel, James L Cpa RENEWAL51Stephen Shaw
1011Mayumi I GillianCanada2024-06-19Chapman, Ross E Esq RENEWAL30Elwin Sharvill
1012Faith D WaycottArgentina2024-06-10Feltz Printing Service NEW98Stephen Shaw
1013Morrow V VocelkaAustralia2024-05-26Chapman, Ross E Esq NEGOTIATION40Elwin Sharvill
1014Stacey S RoysterUnited Kingdom2024-06-19Truhlar And Truhlar Attys UNQUALIFIED95Elwin Sharvill
1015Adams K NestleSpain2024-06-23Feltz Printing Service QUALIFIED70Bernardo Dominic
1016Salvatore C GlickArgentina2024-06-11Chanay, Jeffrey A Esq QUALIFIED10Ivan Magalhaes
1017Francesco P FlosiArgentina2024-05-28Printing Dimensions PROPOSAL68Ioni Bowcher
1018Julie A PaprockiAustralia2024-06-15Feiner Bros QUALIFIED58Anna Fali
1019Rodrigues F StockhamSpain2024-06-02Rangoni Of Florence PROPOSAL75Elwin Sharvill
1020Jeanfrancois R DoeCanada2024-06-11Commercial Press UNQUALIFIED36Onyama Limba
1021Greenwood S OstroskyItaly2024-06-08Printing Dimensions NEGOTIATION88Onyama Limba
1022Kadeem X DoeCanada2024-06-16Dorl, James J Esq NEGOTIATION39Bernardo Dominic
1023Octavia Y AlbaresFrance2024-06-24Chapman, Ross E Esq QUALIFIED49Ioni Bowcher
1024Emily H NestleBrazil2024-06-20Chemel, James L Cpa QUALIFIED85Anna Fali
1025Deepesh N MorascaFrance2024-06-19Rangoni Of Florence RENEWAL42Ivan Magalhaes
1026Julie M RimBrazil2024-06-14Morlong Associates UNQUALIFIED25Ivan Magalhaes
1027James N ChuiIndia2024-05-28Benton, John B Jr QUALIFIED14Anna Fali
1028Ivar B RulapaughUnited Kingdom2024-06-18Benton, John B Jr UNQUALIFIED15Xuxue Feng
1029Chavez M DarakjyIndia2024-06-10Feltz Printing Service NEGOTIATION58Xuxue Feng
1030David W MorascaBrazil2024-06-09Chanay, Jeffrey A Esq PROPOSAL2Amy Elsner
1031Tony Q VocelkaIndia2024-06-03King, Christopher A Esq NEW31Onyama Limba
1032Ashley R StensethAustralia2024-06-13Buckley Miller Wright NEGOTIATION57Onyama Limba
1033Jeanfrancois L PaprockiCanada2024-06-05Commercial Press NEGOTIATION39Elwin Sharvill
1034Nicolas M MaletBrazil2024-05-31Commercial Press PROPOSAL2Onyama Limba
1035Kaitlin Y FigeroaCanada2024-06-07Dorl, James J Esq NEGOTIATION41Asiya Javayant
1036Jeanfrancois T FlosiGermany2024-06-23Dorl, James J Esq UNQUALIFIED73Anna Fali
1037Stacey W WaycottJapan2024-06-11Rousseaux, Michael Esq NEW50Asiya Javayant
1038Aika G FerenczItaly2024-05-28Dorl, James J Esq NEGOTIATION47Ivan Magalhaes
1039Francesco L MaletSpain2024-06-03King, Christopher A Esq NEGOTIATION25Stephen Shaw
1040Stacey D PoquetteRussia2024-06-15Dorl, James J Esq NEGOTIATION86Anna Fali
1041Mayumi V AmigonJapan2024-06-23Feltz Printing Service QUALIFIED0Amy Elsner
1042Morrow J RimIndia2024-05-30King, Christopher A Esq NEW26Stephen Shaw
1043Arvin F RulapaughCanada2024-06-23Chemel, James L Cpa NEW66Elwin Sharvill
1044Jones F KolmetzGermany2024-06-17Commercial Press QUALIFIED93Bernardo Dominic
1045David B MaletBrazil2024-06-23Truhlar And Truhlar Attys QUALIFIED4Anna Fali
1046Juan F TollnerArgentina2024-05-31Benton, John B Jr UNQUALIFIED72Ivan Magalhaes
1047Kadeem O RoysterJapan2024-06-13Rousseaux, Michael Esq PROPOSAL34Asiya Javayant
1048Kadeem G SchemmerCanada2024-06-04Printing Dimensions NEGOTIATION43Onyama Limba
1049James C ChuiIndia2024-06-10Rangoni Of Florence NEGOTIATION45Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Aditya A ShinkoSpainBernardo Dominic QUALIFIED
Misaki I ShinkoIndiaAsiya Javayant QUALIFIED
Cody W AmigonSpainBernardo Dominic QUALIFIED
Ivar C PoquetteSpainAnna Fali UNQUALIFIED
Izzy Y KolmetzIndiaIoni Bowcher PROPOSAL
Rodrigues N VocelkaGermanyAsiya Javayant NEGOTIATION
Clifford N IturbideFranceIoni Bowcher RENEWAL
Maria N StensethItalyStephen Shaw NEGOTIATION
Nicolas B TollnerSpainXuxue Feng NEW
Darci R IturbideItalyAnna Fali RENEWAL
Ricardo I NestleSpainXuxue Feng UNQUALIFIED
Deepesh S MaletJapanAsiya Javayant UNQUALIFIED
Juan Y DoeUnited KingdomBernardo Dominic NEW
Johnson V AlbaresAustraliaIoni Bowcher NEW
Aditya V ShinkoJapanAnna Fali NEW
Leon V StockhamAustraliaAmy Elsner UNQUALIFIED
Salvatore M TollnerAustraliaBernardo Dominic PROPOSAL
Francesco Z BologniaArgentinaBernardo Dominic PROPOSAL
Nicolas O WhobreyJapanIvan Magalhaes RENEWAL
Ricardo D VenereIndiaElwin Sharvill NEGOTIATION
Ivar Y DilliardUnited KingdomAnna Fali NEW
Jones B PaprockiJapanElwin Sharvill NEW
Maria B ChuiBrazilElwin Sharvill QUALIFIED
Leon K PerinSpainStephen Shaw UNQUALIFIED
Aika X KuskoItalyAnna Fali QUALIFIED
Maria E GarufiCanadaIvan Magalhaes NEGOTIATION
Kadeem U SaylorsAustraliaAnna Fali QUALIFIED
Adams F GarufiGermanyOnyama Limba RENEWAL
Ivar T CampainJapanIoni Bowcher NEW
Smith Y ChuiRussiaOnyama Limba RENEWAL
Smith B BowleyBrazilElwin Sharvill PROPOSAL
Costa X KolmetzArgentinaOnyama Limba QUALIFIED
Jennifer C FlosiUnited KingdomIoni Bowcher UNQUALIFIED
Nicolas P AmigonItalyStephen Shaw NEW
Aditya G RoysterBrazilBernardo Dominic NEW
Costa S DoeCanadaAmy Elsner QUALIFIED
Darci R ButtGermanyIvan Magalhaes QUALIFIED
Ricardo H CampainRussiaAnna Fali NEGOTIATION
Jones Y GillianCanadaOnyama Limba UNQUALIFIED
Munro X PerinRussiaIoni Bowcher RENEWAL
Sinclair G AlbaresSpainElwin Sharvill NEGOTIATION
Emily R ShinkoJapanAsiya Javayant PROPOSAL
Ashley R RimSpainAsiya Javayant UNQUALIFIED
Nicolas B KolmetzGermanyIoni Bowcher RENEWAL
Aruna J GlickCanadaBernardo Dominic PROPOSAL
Jones T VenereRussiaIvan Magalhaes UNQUALIFIED
Wickens X GlickArgentinaOnyama Limba UNQUALIFIED
Alejandro Z RulapaughGermanyElwin Sharvill PROPOSAL
Aruna A RutaItalyIoni Bowcher QUALIFIED
Juan E MacleadIndiaOnyama Limba UNQUALIFIED
Frozen Columns
Name
Cody U Stockham
Clifford A Maclead
Morrow C Slusarski
David H Ostrosky
Mujtaba P Bowley
Izzy Z Dilliard
Ivar D Stenseth
Morrow Q Slusarski
Ricardo S Garufi
Maisha C Bowley
Aruna M Maclead
Jones A Inouye
Silvio Y Sergi
Clifford S Malet
Smith G Flosi
Antonio A Tollner
Chavez V Nestle
Julie W Shinko
Julie O Slusarski
Maisha L Nicka
Rodrigues I Foller
Juan E Nestle
Octavia M Amigon
Francesco L Paprocki
James E Amigon
Johnson E Kusko
Greenwood J Gaucho
Aruna L Albares
Costa Y Gillian
Arvin O Amigon
Chavez D Caldarera
Munro D Campain
Sinclair A Rulapaugh
Jennifer B Slusarski
Aruna D Venere
Claire E Inouye
Antonio U Dilliard
Chavez I Schemmer
Julie V Nestle
Octavia T Kolmetz
Morrow X Shinko
Adams V Wieser
Clifford A Venere
Aruna F Caudy
Leon N Rim
Emily X Venere
Smith H Malet
Julie C Paprocki
Ivar Y Venere
Cody G Saylors
IdCountryDate
1000Japan2024-06-13
1001Argentina2024-06-03
1002France2024-06-03
1003Brazil2024-06-04
1004Argentina2024-06-02
1005Canada2024-06-04
1006Italy2024-06-17
1007Brazil2024-06-02
1008Spain2024-06-14
1009Spain2024-05-27
1010Germany2024-05-26
1011India2024-06-11
1012Canada2024-06-09
1013India2024-06-18
1014Japan2024-06-19
1015Germany2024-05-30
1016Australia2024-06-04
1017France2024-06-10
1018United Kingdom2024-06-16
1019France2024-06-07
1020France2024-06-19
1021Germany2024-06-07
1022Japan2024-05-30
1023France2024-06-03
1024Germany2024-06-13
1025Argentina2024-06-19
1026Italy2024-06-07
1027India2024-05-29
1028Japan2024-06-16
1029Brazil2024-06-23
1030India2024-06-12
1031Canada2024-06-21
1032Germany2024-06-19
1033Argentina2024-05-30
1034Italy2024-05-31
1035Japan2024-06-14
1036Japan2024-06-10
1037France2024-06-24
1038Canada2024-05-27
1039Russia2024-05-28
1040United Kingdom2024-06-22
1041India2024-05-30
1042Italy2024-05-28
1043Brazil2024-05-28
1044Germany2024-06-13
1045United Kingdom2024-06-11
1046Brazil2024-06-24
1047Canada2024-06-19
1048Spain2024-05-30
1049Japan2024-06-03

On-Demand Data

NameIdCountryDate
Isabel A Oldroyd1000France2024-06-07
Juan I Perin1001France2024-05-26
Wickens O Chui1002Russia2024-06-12
Sinclair D Caldarera1003Brazil2024-06-15
Deepesh T Figeroa1004Russia2024-06-05
Faith H Malet1005Argentina2024-06-17
Aika K Dilliard1006Canada2024-06-05
Wickens C Rulapaugh1007Russia2024-05-30
Arvin Y Bowley1008United Kingdom2024-06-12
Misaki Z Gaucho1009Italy2024-06-21
Deepesh W Sergi1010Italy2024-05-29
Jennifer X Malet1011India2024-06-22
Mayumi R Flosi1012Spain2024-06-06
Emily R Maclead1013Australia2024-06-24
Silvio U Glick1014Russia2024-06-13
Tony Q Malet1015Russia2024-06-19
Aruna C Butt1016Argentina2024-06-12
Wickens Z Marrier1017Italy2024-06-06
Izzy M Perin1018Japan2024-06-18
Clifford Y Poquette1019India2024-06-02
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Greenwood A WaycottCanadaXuxue Feng QUALIFIED
Alejandro P SergiFranceAnna Fali NEGOTIATION
Francesco J ChuiIndiaStephen Shaw NEGOTIATION
Mayumi E InouyeAustraliaAnna Fali PROPOSAL
Wickens A BowleySpainStephen Shaw RENEWAL
Rodrigues E KuskoGermanyAmy Elsner QUALIFIED
Costa O WieserCanadaXuxue Feng RENEWAL
Deepesh U AlbaresUnited KingdomAmy Elsner NEW
Julie P AmigonCanadaAsiya Javayant PROPOSAL
Jennifer P BowleyGermanyBernardo Dominic PROPOSAL
Emily Q KolmetzCanadaXuxue Feng RENEWAL
Aika Z GauchoGermanyAnna Fali UNQUALIFIED
Johnson Q IturbideArgentinaAsiya Javayant RENEWAL
Deepesh V MaletSpainElwin Sharvill RENEWAL
Jennifer T FlosiFranceIoni Bowcher PROPOSAL
Leon X KolmetzIndiaAmy Elsner QUALIFIED
Alejandro Z SlusarskiJapanIvan Magalhaes PROPOSAL
Ricardo T OldroydFranceBernardo Dominic PROPOSAL
Nicolas P RutaItalyAmy Elsner NEW
Mayumi S DoeArgentinaBernardo Dominic PROPOSAL
Mayumi Q AmigonCanadaAnna Fali UNQUALIFIED
Murillo H FlosiIndiaIvan Magalhaes UNQUALIFIED
Morrow O AlbaresCanadaBernardo Dominic QUALIFIED
Costa C BologniaGermanyStephen Shaw QUALIFIED
Adams D DilliardCanadaAnna Fali UNQUALIFIED
Munro A StensethIndiaAnna Fali NEW
Claire W BowleyJapanAmy Elsner RENEWAL
Leja W GillianItalyElwin Sharvill PROPOSAL
Julie W RimIndiaStephen Shaw PROPOSAL
Maria Y OldroydCanadaAnna Fali UNQUALIFIED
Kadeem K AlbaresUnited KingdomAmy Elsner NEW
James F CaldareraRussiaIoni Bowcher RENEWAL
Johnson G ChuiJapanIoni Bowcher NEGOTIATION
Cody L MaletGermanyAsiya Javayant NEGOTIATION
Costa D TollnerAustraliaStephen Shaw RENEWAL
Jeanfrancois H WaycottCanadaBernardo Dominic NEW
Alejandro R FollerArgentinaAmy Elsner RENEWAL
Smith I MaletAustraliaAmy Elsner NEW
Antonio S KuskoItalyElwin Sharvill QUALIFIED
Wickens X GarufiRussiaAsiya Javayant UNQUALIFIED

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