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
Munro U BriddickGermanyBernardo Dominic PROPOSAL
David Y RulapaughFranceXuxue Feng RENEWAL
Leja L StensethIndiaStephen Shaw UNQUALIFIED
Ashley Z GillianItalyXuxue Feng QUALIFIED
Maria Y SergiBrazilAsiya Javayant PROPOSAL
Julie B PerinAustraliaXuxue Feng UNQUALIFIED
Misaki O RimGermanyIvan Magalhaes NEW
Misaki Y DarakjyUnited KingdomOnyama Limba RENEWAL
Aditya F OldroydItalyElwin Sharvill RENEWAL
Emily T CaldareraFranceStephen Shaw QUALIFIED
Tony E DarakjyIndiaOnyama Limba QUALIFIED
Octavia I GlickSpainXuxue Feng UNQUALIFIED
Leon M CampainJapanElwin Sharvill QUALIFIED
Jones Y BologniaBrazilAnna Fali UNQUALIFIED
Faith P WaycottUnited KingdomAnna Fali NEGOTIATION
Munro F StockhamSpainElwin Sharvill RENEWAL
Aruna U FigeroaCanadaAmy Elsner NEGOTIATION
Francesco V CampainFranceAsiya Javayant PROPOSAL
Octavia G MaletArgentinaAnna Fali UNQUALIFIED
Misaki F StockhamJapanAsiya Javayant QUALIFIED
David F WieserRussiaAmy Elsner NEW
Johnson Q SergiIndiaBernardo Dominic NEW
Julie R NestleAustraliaAsiya Javayant NEW
Morrow E VocelkaIndiaIoni Bowcher NEGOTIATION
Clifford E MaletSpainOnyama Limba RENEWAL
Misaki I SchemmerJapanStephen Shaw QUALIFIED
Claire T RutaCanadaStephen Shaw RENEWAL
Morrow T GlickGermanyStephen Shaw UNQUALIFIED
Morrow Y GlickUnited KingdomElwin Sharvill UNQUALIFIED
Maisha L MacleadSpainOnyama Limba NEW
Morrow Y SlusarskiIndiaBernardo Dominic UNQUALIFIED
Leja Q MacleadSpainIoni Bowcher NEW
Darci V AlbaresFranceIvan Magalhaes RENEWAL
Arvin L PerinFranceXuxue Feng PROPOSAL
Jones Z MaletGermanyElwin Sharvill NEGOTIATION
Jefferson Y SaylorsSpainIvan Magalhaes UNQUALIFIED
Claire J BologniaIndiaElwin Sharvill UNQUALIFIED
Darci C GarufiJapanOnyama Limba PROPOSAL
Izzy U DoeUnited KingdomXuxue Feng NEGOTIATION
Deepesh X MaletSpainBernardo Dominic PROPOSAL
Julie I FigeroaIndiaElwin Sharvill UNQUALIFIED
Jones Z StockhamItalyIvan Magalhaes PROPOSAL
Stacey K VocelkaItalyAnna Fali UNQUALIFIED
Murillo H CampainItalyAnna Fali RENEWAL
Faith Y FollerIndiaXuxue Feng UNQUALIFIED
Jeanfrancois Q DoeSpainStephen Shaw QUALIFIED
Izzy M VocelkaSpainOnyama Limba QUALIFIED
Jennifer Z SaylorsAustraliaAsiya Javayant QUALIFIED
Deepesh Z SlusarskiUnited KingdomAmy Elsner QUALIFIED
Aruna H WhobreyArgentinaXuxue Feng RENEWAL
Horizontal
NameCountryRepresentativeStatus
Silvio V KolmetzJapanAmy Elsner RENEWAL
Aika Y ButtIndiaOnyama Limba QUALIFIED
Octavia P GauchoFranceOnyama Limba NEGOTIATION
Maria Z RimIndiaXuxue Feng QUALIFIED
Adams R SchemmerUnited KingdomAmy Elsner NEGOTIATION
Murillo Y KolmetzIndiaIoni Bowcher PROPOSAL
Chavez J BriddickCanadaIoni Bowcher UNQUALIFIED
Juan N SchemmerAustraliaBernardo Dominic PROPOSAL
Octavia V IturbideSpainElwin Sharvill RENEWAL
Isabel V GauchoSpainOnyama Limba PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Misaki G FlosiCanada2024-05-16Morlong Associates NEGOTIATION80Asiya Javayant
1001Misaki M SergiRussia2024-05-09Feiner Bros RENEWAL96Ioni Bowcher
1002Aditya J FigeroaItaly2024-05-24Chemel, James L Cpa RENEWAL0Asiya Javayant
1003Mayumi V BowleyRussia2024-05-10Printing Dimensions RENEWAL27Elwin Sharvill
1004Izzy P RoysterAustralia2024-05-13Chemel, James L Cpa QUALIFIED18Stephen Shaw
1005Maisha H SaylorsIndia2024-05-25Printing Dimensions PROPOSAL81Amy Elsner
1006Clifford C VenereUnited Kingdom2024-06-02Printing Dimensions PROPOSAL37Bernardo Dominic
1007Alejandro Q StockhamJapan2024-05-24Rousseaux, Michael Esq RENEWAL85Elwin Sharvill
1008Murillo Y PerinIndia2024-05-26Dorl, James J Esq NEGOTIATION47Elwin Sharvill
1009Rodrigues P MaletItaly2024-05-13Feiner Bros UNQUALIFIED39Anna Fali
1010Nicolas P CaudyGermany2024-06-03Chapman, Ross E Esq NEW11Asiya Javayant
1011Claire V PaprockiRussia2024-05-22Chapman, Ross E Esq RENEWAL75Xuxue Feng
1012Ricardo U AlbaresUnited Kingdom2024-06-02Chapman, Ross E Esq UNQUALIFIED14Amy Elsner
1013Jones H BologniaArgentina2024-05-15Truhlar And Truhlar Attys RENEWAL62Elwin Sharvill
1014Munro O FerenczAustralia2024-06-02Feltz Printing Service NEW69Onyama Limba
1015Smith T AlbaresRussia2024-05-20Buckley Miller Wright NEGOTIATION77Xuxue Feng
1016Aruna W InouyeUnited Kingdom2024-05-24Morlong Associates UNQUALIFIED2Elwin Sharvill
1017Johnson X InouyeGermany2024-06-02Morlong Associates PROPOSAL59Xuxue Feng
1018Antonio M StockhamUnited Kingdom2024-06-03Benton, John B Jr PROPOSAL54Anna Fali
1019Ivar F FlosiJapan2024-05-31Truhlar And Truhlar Attys RENEWAL10Ioni Bowcher
1020Aruna I CampainSpain2024-06-01Morlong Associates QUALIFIED67Xuxue Feng
1021Jennifer M IturbideUnited Kingdom2024-05-17Chapman, Ross E Esq UNQUALIFIED54Asiya Javayant
1022Smith H SlusarskiFrance2024-05-16Chemel, James L Cpa PROPOSAL65Elwin Sharvill
1023Wickens J PaprockiCanada2024-05-22Truhlar And Truhlar Attys PROPOSAL26Ioni Bowcher
1024Arvin B GlickCanada2024-05-09Benton, John B Jr NEW7Anna Fali
1025Adams C MaletSpain2024-05-27Truhlar And Truhlar Attys NEW49Ioni Bowcher
1026Munro R PerinGermany2024-05-14Benton, John B Jr UNQUALIFIED98Asiya Javayant
1027Aika T AmigonBrazil2024-05-24Feltz Printing Service RENEWAL67Asiya Javayant
1028Aika E TollnerIndia2024-05-09Rousseaux, Michael Esq UNQUALIFIED48Elwin Sharvill
1029Clifford G BologniaJapan2024-05-23Feltz Printing Service NEGOTIATION6Ioni Bowcher
1030Mayumi J ChuiBrazil2024-05-07Benton, John B Jr QUALIFIED17Anna Fali
1031Aruna E AlbaresRussia2024-05-15Dorl, James J Esq NEGOTIATION95Stephen Shaw
1032Darci B FlosiSpain2024-05-20Feiner Bros UNQUALIFIED9Onyama Limba
1033Claire Z GlickJapan2024-05-20Truhlar And Truhlar Attys UNQUALIFIED92Amy Elsner
1034Maisha T KuskoAustralia2024-05-22Buckley Miller Wright NEW24Xuxue Feng
1035Ashley N WaycottUnited Kingdom2024-06-02Rousseaux, Michael Esq NEGOTIATION50Asiya Javayant
1036Deepesh P WaycottIndia2024-05-13Chanay, Jeffrey A Esq PROPOSAL36Xuxue Feng
1037Kadeem O MorascaAustralia2024-06-03Truhlar And Truhlar Attys RENEWAL9Anna Fali
1038Clifford N SlusarskiFrance2024-05-24Benton, John B Jr NEW97Ivan Magalhaes
1039Maria G AmigonRussia2024-05-21King, Christopher A Esq QUALIFIED83Ivan Magalhaes
1040Darci P StockhamRussia2024-05-20Chemel, James L Cpa NEGOTIATION93Bernardo Dominic
1041Aika O IturbideItaly2024-05-18Feltz Printing Service NEGOTIATION95Stephen Shaw
1042Julie D FigeroaCanada2024-06-04Morlong Associates NEGOTIATION1Amy Elsner
1043Adams F FigeroaAustralia2024-05-06Feltz Printing Service PROPOSAL14Elwin Sharvill
1044Isabel Q TollnerFrance2024-05-23Rangoni Of Florence PROPOSAL32Xuxue Feng
1045Mujtaba F ChuiFrance2024-05-21Rangoni Of Florence RENEWAL12Asiya Javayant
1046Isabel C FlosiItaly2024-05-18Rousseaux, Michael Esq PROPOSAL9Elwin Sharvill
1047Sinclair I PoquetteItaly2024-05-22Buckley Miller Wright QUALIFIED47Anna Fali
1048Antonio L VocelkaFrance2024-05-29Dorl, James J Esq NEW39Xuxue Feng
1049Smith Z AmigonRussia2024-05-11Buckley Miller Wright PROPOSAL26Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Alejandro Z DarakjyJapanElwin Sharvill RENEWAL
Isabel H SchemmerIndiaIvan Magalhaes QUALIFIED
Deepesh I ShinkoArgentinaElwin Sharvill QUALIFIED
James K RutaBrazilBernardo Dominic RENEWAL
Adams O PoquetteItalyAnna Fali UNQUALIFIED
Maria L GlickBrazilAmy Elsner PROPOSAL
David B SlusarskiRussiaIvan Magalhaes PROPOSAL
Morrow F MorascaBrazilBernardo Dominic UNQUALIFIED
Leon Y DoeBrazilIvan Magalhaes UNQUALIFIED
Jefferson P SlusarskiSpainIvan Magalhaes QUALIFIED
Cody U ChuiFranceIoni Bowcher NEGOTIATION
Leon O GillianRussiaAsiya Javayant UNQUALIFIED
Salvatore S FigeroaCanadaStephen Shaw PROPOSAL
Octavia V WaycottSpainBernardo Dominic NEW
Izzy A InouyeItalyAnna Fali RENEWAL
Jennifer I RutaArgentinaAnna Fali QUALIFIED
Stacey B IturbideIndiaIvan Magalhaes NEW
Darci J FollerItalyAnna Fali UNQUALIFIED
Costa L StensethIndiaAnna Fali NEW
Chavez V FerenczArgentinaBernardo Dominic NEGOTIATION
Murillo Y ButtGermanyStephen Shaw PROPOSAL
Sinclair P MacleadIndiaAsiya Javayant UNQUALIFIED
Morrow R PaprockiItalyAnna Fali QUALIFIED
Tony D KuskoSpainAsiya Javayant PROPOSAL
Arvin R StensethBrazilOnyama Limba UNQUALIFIED
Mayumi F MarrierBrazilOnyama Limba QUALIFIED
Octavia P WaycottGermanyBernardo Dominic NEW
Jones L CaldareraRussiaIvan Magalhaes RENEWAL
Murillo E KuskoJapanOnyama Limba UNQUALIFIED
James E DoeCanadaBernardo Dominic NEW
Salvatore V FerenczGermanyAmy Elsner NEGOTIATION
Cody K StensethIndiaAsiya Javayant UNQUALIFIED
David I GlickIndiaBernardo Dominic NEGOTIATION
James V RoysterGermanyElwin Sharvill NEGOTIATION
Izzy B DoeRussiaXuxue Feng PROPOSAL
Octavia L MaletGermanyIvan Magalhaes NEW
Maisha H RimGermanyStephen Shaw RENEWAL
Antonio J NickaRussiaAmy Elsner RENEWAL
Claire R NickaBrazilBernardo Dominic UNQUALIFIED
Johnson N StockhamFranceStephen Shaw RENEWAL
Mayumi Z DilliardUnited KingdomIvan Magalhaes PROPOSAL
Rodrigues L VenereItalyAnna Fali RENEWAL
Leja S WieserFranceAmy Elsner UNQUALIFIED
Jones S BowleyAustraliaBernardo Dominic NEW
Aruna K WieserBrazilBernardo Dominic NEGOTIATION
Adams U CaldareraRussiaElwin Sharvill QUALIFIED
Silvio J PaprockiFranceIvan Magalhaes NEW
Octavia H ShinkoArgentinaElwin Sharvill RENEWAL
Cody Y PoquetteSpainElwin Sharvill PROPOSAL
Francesco H SergiFranceAmy Elsner UNQUALIFIED
Frozen Columns
Name
Adams K Butt
Jones D Inouye
Isabel M Inouye
Cody P Nicka
Smith T Albares
Silvio X Butt
Juan E Rim
Maisha N Gaucho
Leon N Campain
Stacey P Malet
Aika M Ferencz
Leon W Stockham
Emily K Stockham
Izzy X Slusarski
Maria B Nicka
Aika W Doe
Faith U Oldroyd
Ricardo J Caldarera
Maisha Q Wieser
Morrow K Stockham
Silvio C Figeroa
Aika W Malet
Arvin J Darakjy
Ivar W Venere
Leja W Sergi
Kadeem Y Caudy
Stacey A Slusarski
Stacey B Caldarera
Darci G Marrier
Jeanfrancois K Ferencz
Cody I Ostrosky
Greenwood Q Slusarski
Octavia X Sergi
Misaki W Figeroa
Salvatore N Morasca
Emily F Caldarera
Rodrigues V Stockham
Izzy D Vocelka
Izzy M Amigon
Aruna T Shinko
Maria G Rim
Julie M Poquette
Munro V Figeroa
Juan K Bowley
Maisha J Inouye
Arvin V Saylors
Mujtaba Z Marrier
Clifford B Whobrey
Salvatore V Kolmetz
Claire Q Kusko
IdCountryDate
1000Germany2024-06-04
1001Brazil2024-06-02
1002Spain2024-06-01
1003Spain2024-05-21
1004Russia2024-05-22
1005Argentina2024-05-12
1006Australia2024-05-11
1007Australia2024-05-13
1008Japan2024-05-16
1009Brazil2024-05-28
1010Canada2024-05-08
1011Australia2024-05-28
1012India2024-05-21
1013Germany2024-05-28
1014Germany2024-05-14
1015Germany2024-05-25
1016Russia2024-05-13
1017Germany2024-05-13
1018Spain2024-05-28
1019Brazil2024-05-13
1020Russia2024-05-28
1021Brazil2024-05-15
1022Argentina2024-05-14
1023India2024-05-12
1024Brazil2024-05-16
1025Russia2024-05-08
1026Australia2024-05-25
1027India2024-05-07
1028Germany2024-05-15
1029Spain2024-05-18
1030India2024-05-11
1031Spain2024-05-18
1032Japan2024-05-27
1033India2024-05-07
1034Russia2024-05-16
1035India2024-06-04
1036Germany2024-05-10
1037France2024-05-06
1038Spain2024-05-29
1039Brazil2024-05-21
1040France2024-05-21
1041France2024-05-11
1042Japan2024-05-09
1043Canada2024-05-18
1044Argentina2024-05-29
1045United Kingdom2024-05-11
1046France2024-06-03
1047Russia2024-05-13
1048Italy2024-06-04
1049Canada2024-06-04

On-Demand Data

NameIdCountryDate
Aruna K Foller1000India2024-05-15
Kadeem Q Kolmetz1001United Kingdom2024-05-29
Murillo D Caudy1002Italy2024-05-07
Sinclair E Marrier1003Germany2024-05-15
Maisha G Caldarera1004Brazil2024-05-14
Murillo Z Bowley1005Brazil2024-05-20
Misaki G Dilliard1006Italy2024-05-14
Izzy U Maclead1007France2024-05-27
Maria U Perin1008Italy2024-05-12
Maria F Garufi1009France2024-05-29
Salvatore N Flosi1010Canada2024-05-25
Murillo I Ferencz1011Russia2024-05-10
Jeanfrancois G Darakjy1012Italy2024-05-25
Jeanfrancois Q Doe1013India2024-05-28
Jeanfrancois G Kolmetz1014India2024-05-11
Maisha Q Morasca1015United Kingdom2024-05-06
Mayumi D Slusarski1016Japan2024-05-18
Deepesh Y Schemmer1017Japan2024-05-23
Costa A Nestle1018Argentina2024-05-16
Salvatore X Stenseth1019United Kingdom2024-05-21
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Cody O ButtFranceOnyama Limba NEW
Darci W GarufiItalyElwin Sharvill QUALIFIED
Morrow V BologniaUnited KingdomBernardo Dominic QUALIFIED
Smith R CampainIndiaAnna Fali QUALIFIED
Chavez F GarufiUnited KingdomXuxue Feng QUALIFIED
Misaki B PaprockiCanadaAnna Fali RENEWAL
Kaitlin K MorascaCanadaIoni Bowcher UNQUALIFIED
Francesco P RutaIndiaXuxue Feng PROPOSAL
Wickens F BologniaRussiaAnna Fali NEGOTIATION
Morrow O DoeFranceElwin Sharvill RENEWAL
Costa B FollerBrazilAsiya Javayant RENEWAL
Smith N RutaAustraliaXuxue Feng NEGOTIATION
Adams J DoeGermanyIoni Bowcher NEW
Cody D PerinArgentinaStephen Shaw NEW
Maria Z TollnerCanadaOnyama Limba NEGOTIATION
Aika N GauchoBrazilAsiya Javayant RENEWAL
Izzy J MarrierItalyAsiya Javayant RENEWAL
Wickens F BriddickRussiaElwin Sharvill RENEWAL
Maisha O MorascaIndiaIoni Bowcher UNQUALIFIED
Silvio Z FollerGermanyStephen Shaw NEGOTIATION
Arvin V MacleadItalyXuxue Feng RENEWAL
Arvin E GarufiSpainXuxue Feng NEGOTIATION
Alejandro X AmigonGermanyBernardo Dominic NEW
Wickens A NickaJapanBernardo Dominic PROPOSAL
Misaki V InouyeRussiaIvan Magalhaes QUALIFIED
Alejandro Q BologniaUnited KingdomIvan Magalhaes QUALIFIED
Silvio F WieserFranceOnyama Limba UNQUALIFIED
Jones I CampainGermanyXuxue Feng QUALIFIED
Aditya A MacleadArgentinaIvan Magalhaes QUALIFIED
David P FigeroaSpainAmy Elsner UNQUALIFIED
Greenwood C WhobreyRussiaElwin Sharvill QUALIFIED
Johnson Q WhobreyJapanStephen Shaw QUALIFIED
Misaki O AlbaresJapanOnyama Limba UNQUALIFIED
Johnson C PoquetteGermanyElwin Sharvill QUALIFIED
Antonio R CaldareraGermanyXuxue Feng PROPOSAL
Jefferson E OldroydRussiaBernardo Dominic PROPOSAL
Mujtaba L ChuiIndiaAsiya Javayant PROPOSAL
Antonio L FigeroaJapanStephen Shaw PROPOSAL
Johnson Y RoysterUnited KingdomAmy Elsner NEW
Arvin P FollerArgentinaStephen Shaw QUALIFIED

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