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
Faith Q IturbideSpainStephen Shaw PROPOSAL
Aika Y MacleadAustraliaAnna Fali NEW
Greenwood A KolmetzUnited KingdomBernardo Dominic UNQUALIFIED
Chavez K WhobreyCanadaElwin Sharvill UNQUALIFIED
Johnson Y RoysterBrazilAsiya Javayant NEW
Francesco O GauchoAustraliaIvan Magalhaes PROPOSAL
Silvio P VenereRussiaXuxue Feng NEGOTIATION
Isabel H MaletItalyAsiya Javayant UNQUALIFIED
Aika V BowleyGermanyAmy Elsner RENEWAL
Aditya B InouyeSpainStephen Shaw UNQUALIFIED
Adams G OstroskyGermanyAmy Elsner UNQUALIFIED
Francesco X FerenczGermanyAnna Fali UNQUALIFIED
Rodrigues M CaldareraJapanStephen Shaw RENEWAL
Antonio S AlbaresCanadaIoni Bowcher NEGOTIATION
Mayumi F GarufiArgentinaBernardo Dominic PROPOSAL
Emily M StockhamCanadaIoni Bowcher RENEWAL
Sinclair Q SaylorsUnited KingdomIoni Bowcher PROPOSAL
Silvio G AmigonJapanElwin Sharvill NEW
Isabel V GillianFranceElwin Sharvill UNQUALIFIED
Adams E DilliardArgentinaBernardo Dominic UNQUALIFIED
Jennifer U MorascaFranceStephen Shaw NEGOTIATION
Rodrigues G MacleadItalyAsiya Javayant NEW
Maria L PerinUnited KingdomOnyama Limba PROPOSAL
Aika S BologniaGermanyAnna Fali RENEWAL
Stacey A MaletUnited KingdomElwin Sharvill NEGOTIATION
Aruna C MaletCanadaAnna Fali QUALIFIED
Juan U ShinkoAustraliaStephen Shaw UNQUALIFIED
Silvio R MacleadBrazilXuxue Feng PROPOSAL
Nicolas K VocelkaIndiaIoni Bowcher PROPOSAL
Ashley O NickaIndiaOnyama Limba NEW
Aika N BowleyCanadaAnna Fali QUALIFIED
Jennifer Z RutaRussiaOnyama Limba NEGOTIATION
Salvatore V VocelkaRussiaAmy Elsner NEGOTIATION
Jefferson L DilliardRussiaBernardo Dominic RENEWAL
Leon O DarakjyFranceIvan Magalhaes NEGOTIATION
Antonio X MorascaAustraliaAnna Fali UNQUALIFIED
Jefferson O FigeroaBrazilIoni Bowcher QUALIFIED
Deepesh Z BowleyArgentinaIvan Magalhaes NEGOTIATION
Julie U PoquetteBrazilXuxue Feng QUALIFIED
Salvatore R BowleyGermanyAsiya Javayant RENEWAL
Clifford V SaylorsCanadaIoni Bowcher NEGOTIATION
Mayumi V DilliardIndiaBernardo Dominic UNQUALIFIED
Munro X ChuiGermanyAmy Elsner PROPOSAL
Sinclair G RimCanadaIoni Bowcher RENEWAL
Antonio K CaldareraJapanIvan Magalhaes QUALIFIED
Ashley C BriddickFranceIoni Bowcher NEW
David X FerenczIndiaAnna Fali NEW
Leon F GauchoSpainBernardo Dominic NEW
Morrow Q OldroydGermanyAsiya Javayant PROPOSAL
Alejandro P FerenczSpainOnyama Limba NEW
Horizontal
NameCountryRepresentativeStatus
Munro K WieserJapanXuxue Feng NEGOTIATION
Aditya Q WaycottRussiaIvan Magalhaes NEW
Sinclair R CaudySpainAmy Elsner NEW
Sinclair X DilliardCanadaOnyama Limba PROPOSAL
Johnson O CampainRussiaIvan Magalhaes NEGOTIATION
Greenwood R BowleyIndiaAsiya Javayant PROPOSAL
Chavez F RoysterFranceAsiya Javayant NEGOTIATION
Tony H RoysterJapanAsiya Javayant QUALIFIED
Kaitlin H CaldareraArgentinaOnyama Limba QUALIFIED
Faith J AlbaresFranceStephen Shaw NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Antonio U MacleadAustralia2024-06-01Rousseaux, Michael Esq UNQUALIFIED35Stephen Shaw
1001Maisha M FigeroaAustralia2024-06-11Rousseaux, Michael Esq NEGOTIATION17Onyama Limba
1002Misaki R OldroydSpain2024-06-11Truhlar And Truhlar Attys NEGOTIATION81Elwin Sharvill
1003Maria M GauchoArgentina2024-06-04Chemel, James L Cpa UNQUALIFIED49Stephen Shaw
1004Octavia J RulapaughSpain2024-05-31Printing Dimensions QUALIFIED65Elwin Sharvill
1005Isabel D OstroskyFrance2024-06-02Chanay, Jeffrey A Esq PROPOSAL37Bernardo Dominic
1006Ricardo A GlickBrazil2024-06-05Buckley Miller Wright UNQUALIFIED70Ioni Bowcher
1007Rodrigues X FigeroaJapan2024-06-02Buckley Miller Wright QUALIFIED57Ioni Bowcher
1008Emily D CaldareraGermany2024-05-27Morlong Associates NEGOTIATION2Asiya Javayant
1009Wickens I TollnerCanada2024-06-11Commercial Press NEGOTIATION23Bernardo Dominic
1010Aditya J FerenczBrazil2024-05-24Benton, John B Jr UNQUALIFIED47Xuxue Feng
1011Tony U InouyeBrazil2024-06-08Buckley Miller Wright UNQUALIFIED47Onyama Limba
1012Silvio B OldroydArgentina2024-06-18Benton, John B Jr PROPOSAL65Amy Elsner
1013Johnson J BriddickArgentina2024-06-02Morlong Associates NEW81Asiya Javayant
1014Salvatore D SlusarskiCanada2024-05-25Feltz Printing Service PROPOSAL26Xuxue Feng
1015Octavia M BriddickAustralia2024-06-15Feiner Bros QUALIFIED69Bernardo Dominic
1016Kaitlin F OldroydGermany2024-05-28Buckley Miller Wright PROPOSAL81Anna Fali
1017Johnson Y SchemmerSpain2024-05-26Dorl, James J Esq QUALIFIED32Asiya Javayant
1018Mayumi O PerinSpain2024-05-29Printing Dimensions NEGOTIATION61Ioni Bowcher
1019Leon R MacleadJapan2024-06-03Chapman, Ross E Esq NEW21Xuxue Feng
1020Ashley V CaudyItaly2024-06-19Chapman, Ross E Esq RENEWAL44Bernardo Dominic
1021Aika G KolmetzGermany2024-06-14Dorl, James J Esq NEGOTIATION91Anna Fali
1022Deepesh H BologniaUnited Kingdom2024-06-02Chapman, Ross E Esq UNQUALIFIED74Stephen Shaw
1023Julie D CaudyCanada2024-05-28Chemel, James L Cpa NEW34Onyama Limba
1024Aruna G MarrierArgentina2024-06-15King, Christopher A Esq NEGOTIATION77Asiya Javayant
1025Greenwood H RutaArgentina2024-06-16Rousseaux, Michael Esq QUALIFIED76Onyama Limba
1026Claire Y ChuiSpain2024-05-28Benton, John B Jr RENEWAL34Ivan Magalhaes
1027Kadeem V OstroskyArgentina2024-06-11Chapman, Ross E Esq NEW91Amy Elsner
1028Kadeem G KolmetzBrazil2024-06-13Benton, John B Jr PROPOSAL21Elwin Sharvill
1029Mujtaba P RimIndia2024-06-12Commercial Press PROPOSAL99Elwin Sharvill
1030Johnson G WaycottUnited Kingdom2024-06-07Dorl, James J Esq NEGOTIATION52Xuxue Feng
1031James H SergiUnited Kingdom2024-06-13Printing Dimensions NEGOTIATION24Ivan Magalhaes
1032Claire D MorascaUnited Kingdom2024-06-11Rangoni Of Florence PROPOSAL53Asiya Javayant
1033Antonio S OstroskyFrance2024-06-13Feltz Printing Service RENEWAL84Anna Fali
1034Johnson Y FerenczIndia2024-05-29Chemel, James L Cpa UNQUALIFIED27Amy Elsner
1035Cody H FerenczRussia2024-05-26Rousseaux, Michael Esq PROPOSAL29Asiya Javayant
1036Kaitlin Q CampainCanada2024-06-04Benton, John B Jr NEGOTIATION74Bernardo Dominic
1037Juan D VocelkaJapan2024-06-07Commercial Press RENEWAL6Ioni Bowcher
1038Deepesh R RoysterCanada2024-05-30Printing Dimensions PROPOSAL50Asiya Javayant
1039Wickens K GillianCanada2024-05-31Rangoni Of Florence QUALIFIED52Amy Elsner
1040Francesco P SaylorsGermany2024-05-28Chemel, James L Cpa RENEWAL33Ivan Magalhaes
1041Francesco I PoquetteAustralia2024-06-17Rangoni Of Florence PROPOSAL4Onyama Limba
1042Claire V RimIndia2024-06-15Rangoni Of Florence NEGOTIATION80Ivan Magalhaes
1043David L AlbaresCanada2024-06-04Rangoni Of Florence NEW39Bernardo Dominic
1044Silvio C StensethAustralia2024-06-16Truhlar And Truhlar Attys NEW16Bernardo Dominic
1045Deepesh D MarrierIndia2024-06-13Printing Dimensions NEGOTIATION13Amy Elsner
1046Alejandro J OstroskyArgentina2024-06-22Morlong Associates UNQUALIFIED0Asiya Javayant
1047Jones C FollerBrazil2024-06-18Feiner Bros NEGOTIATION41Anna Fali
1048Munro B CaldareraAustralia2024-06-07Dorl, James J Esq PROPOSAL48Asiya Javayant
1049Jefferson V ButtFrance2024-06-12Chanay, Jeffrey A Esq UNQUALIFIED30Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
James B RimItalyStephen Shaw RENEWAL
Munro B StockhamAustraliaXuxue Feng RENEWAL
Jones H RulapaughItalyElwin Sharvill UNQUALIFIED
Leja T FigeroaAustraliaOnyama Limba PROPOSAL
Tony V InouyeGermanyIvan Magalhaes UNQUALIFIED
Morrow Y InouyeGermanyIoni Bowcher PROPOSAL
Claire H RulapaughIndiaAmy Elsner QUALIFIED
Costa L GlickFranceBernardo Dominic RENEWAL
Ashley N PaprockiArgentinaXuxue Feng UNQUALIFIED
James S NestleCanadaOnyama Limba NEW
Sinclair D OstroskyIndiaBernardo Dominic PROPOSAL
Nicolas R MorascaUnited KingdomAmy Elsner RENEWAL
Jones G IturbideSpainXuxue Feng RENEWAL
Sinclair Q BowleyCanadaIvan Magalhaes NEW
Murillo K ShinkoBrazilBernardo Dominic NEGOTIATION
Morrow L DoeGermanyBernardo Dominic RENEWAL
Jeanfrancois V InouyeSpainIvan Magalhaes NEGOTIATION
Claire D SaylorsFranceIvan Magalhaes NEW
Jefferson F RulapaughBrazilStephen Shaw PROPOSAL
Mujtaba T VenereItalyAsiya Javayant RENEWAL
Salvatore J RimFranceElwin Sharvill NEW
David C PerinRussiaStephen Shaw RENEWAL
Emily R BologniaSpainStephen Shaw RENEWAL
Sinclair H WhobreyJapanBernardo Dominic NEW
Wickens X ChuiItalyIoni Bowcher UNQUALIFIED
Munro M BriddickSpainBernardo Dominic RENEWAL
Octavia N GillianItalyAnna Fali PROPOSAL
Ashley I FlosiCanadaOnyama Limba RENEWAL
Jeanfrancois L IturbideBrazilElwin Sharvill RENEWAL
Wickens D RoysterItalyBernardo Dominic UNQUALIFIED
Jones E IturbideRussiaIvan Magalhaes NEW
Leon M ButtArgentinaIoni Bowcher PROPOSAL
Adams A ChuiFranceOnyama Limba RENEWAL
Stacey J MaletSpainElwin Sharvill RENEWAL
Izzy Q KolmetzFranceElwin Sharvill UNQUALIFIED
Jeanfrancois X SchemmerFranceBernardo Dominic RENEWAL
Jeanfrancois S DilliardRussiaAmy Elsner NEGOTIATION
Jeanfrancois W SergiArgentinaIoni Bowcher NEW
Leja U TollnerBrazilAnna Fali NEGOTIATION
Ashley C RoysterItalyElwin Sharvill UNQUALIFIED
Ricardo Q BowleyItalyOnyama Limba QUALIFIED
Francesco A VocelkaCanadaIvan Magalhaes PROPOSAL
Octavia T KolmetzItalyStephen Shaw NEW
Octavia V FerenczIndiaElwin Sharvill NEGOTIATION
Ivar T WhobreyRussiaStephen Shaw PROPOSAL
Sinclair S SchemmerItalyStephen Shaw QUALIFIED
Rodrigues R GauchoIndiaAnna Fali QUALIFIED
Nicolas P WieserJapanStephen Shaw NEW
Murillo M WaycottRussiaIvan Magalhaes NEGOTIATION
Maisha F StockhamCanadaAmy Elsner QUALIFIED
Frozen Columns
Name
Kaitlin B Briddick
Izzy I Malet
Aruna F Kusko
Juan W Kusko
Izzy E Schemmer
Ricardo Z Maclead
Clifford G Garufi
Nicolas R Figeroa
Tony H Malet
Leja K Saylors
Wickens V Glick
Greenwood C Iturbide
Mujtaba H Garufi
Ivar I Ferencz
Aditya U Albares
Silvio L Campain
Mujtaba O Inouye
Leon Y Flosi
Alejandro D Venere
Mujtaba E Bowley
Wickens B Doe
Smith R Campain
Alejandro E Flosi
Jones F Waycott
David W Foller
Munro C Rim
Nicolas D Gillian
Darci S Shinko
Juan Z Bolognia
Wickens V Maclead
Maria Z Chui
Jeanfrancois S Figeroa
Leon H Poquette
Sinclair O Glick
Ashley T Poquette
Johnson K Perin
Misaki O Ruta
Tony T Kolmetz
Cody P Malet
Murillo Q Vocelka
Maisha A Caudy
Arvin Z Morasca
Nicolas J Marrier
Arvin N Saylors
Ricardo I Iturbide
Tony Y Caudy
Aruna S Foller
Costa A Waycott
Darci Q Rim
Jefferson B Gillian
IdCountryDate
1000Italy2024-06-10
1001France2024-05-29
1002United Kingdom2024-06-05
1003Japan2024-06-14
1004France2024-06-20
1005Brazil2024-05-26
1006United Kingdom2024-06-05
1007Germany2024-06-12
1008Brazil2024-06-15
1009Australia2024-05-30
1010France2024-06-06
1011Australia2024-06-03
1012France2024-06-10
1013Australia2024-06-02
1014Australia2024-06-18
1015Brazil2024-06-15
1016Australia2024-05-27
1017Italy2024-06-05
1018Japan2024-06-11
1019France2024-05-31
1020Germany2024-06-17
1021Argentina2024-06-13
1022Spain2024-05-24
1023Spain2024-06-15
1024Canada2024-06-09
1025Germany2024-06-03
1026Canada2024-06-06
1027Spain2024-06-04
1028Argentina2024-06-04
1029Germany2024-06-12
1030Brazil2024-06-20
1031Brazil2024-06-07
1032France2024-06-21
1033Germany2024-06-08
1034United Kingdom2024-06-02
1035Brazil2024-06-10
1036Japan2024-05-27
1037Spain2024-06-22
1038Argentina2024-05-27
1039Argentina2024-06-10
1040Canada2024-06-01
1041India2024-05-26
1042Russia2024-06-15
1043Spain2024-05-27
1044Australia2024-06-01
1045Australia2024-05-31
1046Argentina2024-06-06
1047France2024-06-01
1048Japan2024-06-16
1049Australia2024-06-03

On-Demand Data

NameIdCountryDate
Sinclair F Butt1000Canada2024-06-03
Kaitlin R Rim1001France2024-06-19
Smith P Paprocki1002France2024-06-11
Jennifer F Campain1003Japan2024-06-03
Maisha L Inouye1004Germany2024-06-08
Nicolas O Bowley1005Italy2024-06-10
Claire Y Campain1006Australia2024-06-10
Ricardo K Caudy1007Argentina2024-06-07
Deepesh Z Whobrey1008Brazil2024-06-15
Julie S Kolmetz1009Germany2024-06-17
David G Foller1010Australia2024-06-11
Francesco H Iturbide1011Germany2024-06-16
Tony M Bowley1012Italy2024-06-17
Sinclair S Amigon1013Russia2024-06-14
Maisha B Slusarski1014Japan2024-06-03
Arvin N Vocelka1015Brazil2024-06-12
Tony K Tollner1016Russia2024-06-18
Aika G Royster1017Japan2024-06-18
Deepesh C Darakjy1018Canada2024-06-14
Cody K Ostrosky1019Argentina2024-05-28
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Wickens C GarufiRussiaAmy Elsner NEGOTIATION
Alejandro S GarufiArgentinaAnna Fali RENEWAL
Smith Q WaycottAustraliaXuxue Feng QUALIFIED
Chavez T PerinGermanyIvan Magalhaes NEGOTIATION
Ashley G DilliardCanadaIoni Bowcher NEGOTIATION
Greenwood S WhobreyCanadaXuxue Feng UNQUALIFIED
Johnson D ShinkoBrazilAsiya Javayant NEGOTIATION
Aika W ChuiSpainXuxue Feng UNQUALIFIED
Aditya X WhobreyItalyIvan Magalhaes NEGOTIATION
Julie F NestleUnited KingdomStephen Shaw NEGOTIATION
Kaitlin Q IturbideAustraliaAsiya Javayant NEGOTIATION
Adams B AmigonUnited KingdomXuxue Feng NEGOTIATION
Mujtaba Y PoquetteGermanyIoni Bowcher NEW
Nicolas O MaletFranceIoni Bowcher PROPOSAL
Leja I GauchoArgentinaStephen Shaw NEW
Alejandro F MarrierAustraliaIvan Magalhaes UNQUALIFIED
Jefferson P TollnerFranceIvan Magalhaes NEW
Johnson I DoeJapanAmy Elsner PROPOSAL
Johnson F GillianRussiaStephen Shaw QUALIFIED
Jefferson J VocelkaJapanAmy Elsner RENEWAL
Morrow Y WhobreyJapanElwin Sharvill NEGOTIATION
Leon R FerenczArgentinaXuxue Feng NEW
Izzy J MarrierIndiaStephen Shaw RENEWAL
Izzy M KuskoGermanyBernardo Dominic UNQUALIFIED
Jeanfrancois I StensethItalyOnyama Limba PROPOSAL
Julie M DarakjyBrazilIoni Bowcher RENEWAL
Morrow C PoquetteRussiaStephen Shaw NEW
Murillo J BriddickGermanyIoni Bowcher NEW
Arvin M SchemmerGermanyIoni Bowcher QUALIFIED
Nicolas Y MaletJapanAsiya Javayant UNQUALIFIED
Johnson L WieserUnited KingdomIoni Bowcher NEGOTIATION
Adams L CaudyRussiaStephen Shaw NEGOTIATION
Leja K SergiBrazilStephen Shaw RENEWAL
Morrow X SchemmerUnited KingdomAmy Elsner NEW
Aditya L GarufiUnited KingdomIoni Bowcher RENEWAL
Isabel A GarufiSpainIvan Magalhaes PROPOSAL
Deepesh B RutaBrazilAnna Fali QUALIFIED
Octavia L OldroydArgentinaBernardo Dominic PROPOSAL
Stacey S WaycottArgentinaStephen Shaw PROPOSAL
Silvio D GillianCanadaBernardo Dominic 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>