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
Rodrigues D MaletGermanyOnyama Limba NEGOTIATION
Smith F RulapaughBrazilElwin Sharvill RENEWAL
Cody Z RimAustraliaElwin Sharvill QUALIFIED
Costa N CampainFranceIvan Magalhaes QUALIFIED
James R VocelkaJapanBernardo Dominic NEGOTIATION
Cody U FigeroaSpainXuxue Feng NEGOTIATION
Tony B MacleadSpainAsiya Javayant NEGOTIATION
Tony U WieserIndiaElwin Sharvill QUALIFIED
Sinclair P GillianJapanAmy Elsner QUALIFIED
Aika J PaprockiUnited KingdomXuxue Feng PROPOSAL
Sinclair F StockhamJapanIoni Bowcher NEGOTIATION
Maisha M GarufiFranceAmy Elsner UNQUALIFIED
David J WhobreyJapanStephen Shaw PROPOSAL
Jeanfrancois O SchemmerUnited KingdomIvan Magalhaes UNQUALIFIED
Claire W SlusarskiCanadaOnyama Limba PROPOSAL
Sinclair M MacleadItalyOnyama Limba QUALIFIED
Wickens D AmigonGermanyBernardo Dominic UNQUALIFIED
Faith Q BowleyJapanElwin Sharvill PROPOSAL
Stacey N GauchoArgentinaAnna Fali RENEWAL
Kaitlin O FlosiRussiaAsiya Javayant NEW
Jefferson N NickaFranceStephen Shaw NEW
Cody F ButtSpainOnyama Limba QUALIFIED
Ivar Q KolmetzGermanyAsiya Javayant NEGOTIATION
Johnson P DarakjyJapanAnna Fali NEW
Izzy K TollnerUnited KingdomXuxue Feng PROPOSAL
Kadeem B KolmetzIndiaXuxue Feng UNQUALIFIED
Nicolas K StensethSpainBernardo Dominic QUALIFIED
Smith Q RulapaughArgentinaIoni Bowcher QUALIFIED
Sinclair E MaletRussiaStephen Shaw PROPOSAL
Jeanfrancois S DilliardGermanyAmy Elsner NEW
Morrow C SchemmerArgentinaIoni Bowcher QUALIFIED
Claire J PaprockiFranceAnna Fali QUALIFIED
Nicolas F BriddickCanadaAnna Fali NEW
Octavia K PerinRussiaBernardo Dominic NEW
Jefferson J SaylorsAustraliaBernardo Dominic NEGOTIATION
Munro P TollnerUnited KingdomXuxue Feng QUALIFIED
Izzy T PerinFranceIoni Bowcher UNQUALIFIED
Kaitlin N DarakjyFranceIvan Magalhaes NEGOTIATION
Isabel G NestleUnited KingdomAnna Fali PROPOSAL
Julie H AmigonBrazilAsiya Javayant NEGOTIATION
Smith M StockhamJapanAmy Elsner NEW
Tony W VocelkaJapanOnyama Limba NEGOTIATION
Ashley H MorascaArgentinaIoni Bowcher RENEWAL
Misaki X FigeroaJapanAnna Fali QUALIFIED
Juan L VenereJapanAmy Elsner UNQUALIFIED
Jeanfrancois D InouyeArgentinaBernardo Dominic UNQUALIFIED
Juan Y CaldareraJapanElwin Sharvill NEW
Greenwood F StensethSpainElwin Sharvill QUALIFIED
Munro C InouyeIndiaOnyama Limba NEGOTIATION
Kadeem P MaletRussiaBernardo Dominic PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Alejandro A SaylorsSpainAmy Elsner QUALIFIED
Octavia K GauchoFranceAsiya Javayant PROPOSAL
Aruna H BowleyUnited KingdomBernardo Dominic RENEWAL
Cody S IturbideBrazilAnna Fali NEW
Sinclair P StensethItalyAsiya Javayant NEW
Octavia G PerinCanadaAsiya Javayant NEGOTIATION
Misaki T CaldareraJapanAsiya Javayant PROPOSAL
Kadeem K DarakjySpainIoni Bowcher PROPOSAL
Jennifer U ChuiGermanyBernardo Dominic PROPOSAL
Mayumi C InouyeJapanAnna Fali RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Isabel M BriddickSpain2024-06-15Rousseaux, Michael Esq NEW36Elwin Sharvill
1001Leon P FerenczJapan2024-06-03Chapman, Ross E Esq NEW97Onyama Limba
1002Julie Z StensethCanada2024-05-27King, Christopher A Esq RENEWAL29Elwin Sharvill
1003Emily B GauchoRussia2024-06-12Feltz Printing Service UNQUALIFIED47Asiya Javayant
1004Jefferson Y PaprockiRussia2024-05-26Morlong Associates RENEWAL31Elwin Sharvill
1005Kaitlin D OldroydSpain2024-06-13Dorl, James J Esq NEGOTIATION6Anna Fali
1006Munro L CampainSpain2024-05-25Feltz Printing Service UNQUALIFIED42Elwin Sharvill
1007Juan S FlosiJapan2024-06-02King, Christopher A Esq NEGOTIATION95Bernardo Dominic
1008Nicolas W MaletBrazil2024-06-02Feiner Bros PROPOSAL84Amy Elsner
1009Cody B WieserAustralia2024-06-06King, Christopher A Esq NEGOTIATION4Elwin Sharvill
1010Alejandro U AmigonIndia2024-06-17Rangoni Of Florence QUALIFIED9Anna Fali
1011Leja G GarufiSpain2024-06-04King, Christopher A Esq QUALIFIED76Asiya Javayant
1012Maisha V SergiCanada2024-06-22Chapman, Ross E Esq PROPOSAL26Onyama Limba
1013Antonio N ChuiBrazil2024-06-04Dorl, James J Esq UNQUALIFIED63Asiya Javayant
1014Rodrigues W StensethGermany2024-06-15Commercial Press PROPOSAL69Elwin Sharvill
1015Aruna D FollerItaly2024-06-19Feiner Bros RENEWAL44Bernardo Dominic
1016Salvatore Z StockhamRussia2024-06-06Chanay, Jeffrey A Esq UNQUALIFIED85Anna Fali
1017Izzy X SlusarskiItaly2024-06-23Rousseaux, Michael Esq NEGOTIATION36Bernardo Dominic
1018Ricardo U MarrierRussia2024-06-08Chanay, Jeffrey A Esq PROPOSAL4Ioni Bowcher
1019Francesco P StensethIndia2024-06-02Dorl, James J Esq NEGOTIATION27Ioni Bowcher
1020Arvin I BologniaAustralia2024-06-03Buckley Miller Wright QUALIFIED50Elwin Sharvill
1021Munro O VocelkaGermany2024-06-17Morlong Associates NEGOTIATION2Bernardo Dominic
1022Juan W CaudyRussia2024-05-28Buckley Miller Wright UNQUALIFIED34Bernardo Dominic
1023Jones H WhobreyAustralia2024-06-15Truhlar And Truhlar Attys RENEWAL29Ioni Bowcher
1024Salvatore O GarufiRussia2024-06-06Rousseaux, Michael Esq NEGOTIATION79Stephen Shaw
1025Costa E ChuiBrazil2024-05-29Morlong Associates UNQUALIFIED46Xuxue Feng
1026Chavez J MacleadBrazil2024-05-29Dorl, James J Esq PROPOSAL92Bernardo Dominic
1027Nicolas P ChuiCanada2024-05-27Commercial Press PROPOSAL62Xuxue Feng
1028Rodrigues R BowleyIndia2024-06-02Rousseaux, Michael Esq UNQUALIFIED91Asiya Javayant
1029Claire R CampainJapan2024-06-03Feiner Bros PROPOSAL10Ioni Bowcher
1030Isabel S KolmetzJapan2024-05-28Rousseaux, Michael Esq PROPOSAL43Bernardo Dominic
1031Antonio C BowleyAustralia2024-06-06Chemel, James L Cpa RENEWAL11Stephen Shaw
1032Munro P FlosiFrance2024-06-08Benton, John B Jr PROPOSAL12Stephen Shaw
1033Aika C MorascaJapan2024-06-04Buckley Miller Wright NEGOTIATION2Anna Fali
1034Johnson S CaldareraSpain2024-05-27Chapman, Ross E Esq NEGOTIATION66Elwin Sharvill
1035Kaitlin K PerinCanada2024-06-01Truhlar And Truhlar Attys NEW54Ioni Bowcher
1036Morrow S NestleGermany2024-06-06Morlong Associates PROPOSAL45Amy Elsner
1037Jennifer D GlickItaly2024-06-07Chanay, Jeffrey A Esq PROPOSAL66Onyama Limba
1038Ricardo Z VenereCanada2024-06-04Feiner Bros PROPOSAL74Ivan Magalhaes
1039Leja Y BowleyBrazil2024-06-14Truhlar And Truhlar Attys PROPOSAL34Ivan Magalhaes
1040Cody D ChuiIndia2024-06-07Rangoni Of Florence RENEWAL62Ivan Magalhaes
1041Rodrigues M GillianIndia2024-05-30Chemel, James L Cpa NEW55Onyama Limba
1042Ivar M RimFrance2024-05-26Truhlar And Truhlar Attys NEW75Ioni Bowcher
1043Francesco D PaprockiRussia2024-06-08Rangoni Of Florence NEW59Bernardo Dominic
1044Wickens C SlusarskiFrance2024-05-26King, Christopher A Esq QUALIFIED77Bernardo Dominic
1045Salvatore H MarrierIndia2024-06-22Feltz Printing Service QUALIFIED13Xuxue Feng
1046Mayumi E PoquetteSpain2024-06-01Feiner Bros QUALIFIED33Xuxue Feng
1047Julie B RimIndia2024-06-13Chanay, Jeffrey A Esq RENEWAL71Asiya Javayant
1048Silvio O GlickJapan2024-06-16Printing Dimensions QUALIFIED12Xuxue Feng
1049Maria G RoysterRussia2024-06-12Rousseaux, Michael Esq NEGOTIATION21Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Kaitlin Y ShinkoAustraliaOnyama Limba UNQUALIFIED
Mujtaba Y WaycottUnited KingdomIvan Magalhaes NEGOTIATION
Aruna A GillianRussiaIvan Magalhaes NEW
Maisha O DilliardCanadaElwin Sharvill QUALIFIED
Alejandro O OldroydBrazilStephen Shaw PROPOSAL
Darci I GlickSpainIoni Bowcher NEGOTIATION
Wickens A NickaArgentinaOnyama Limba NEW
Nicolas Y MorascaCanadaStephen Shaw RENEWAL
Sinclair E DarakjyRussiaBernardo Dominic QUALIFIED
Mayumi V RoysterFranceIoni Bowcher RENEWAL
Kadeem V VocelkaUnited KingdomOnyama Limba RENEWAL
Claire W NickaIndiaOnyama Limba PROPOSAL
Ashley V StockhamAustraliaXuxue Feng NEGOTIATION
Sinclair V GauchoIndiaElwin Sharvill NEW
Stacey N DilliardIndiaIvan Magalhaes PROPOSAL
Kadeem T DarakjySpainXuxue Feng NEW
Nicolas Q AlbaresGermanyAmy Elsner NEW
Arvin C SlusarskiJapanIvan Magalhaes RENEWAL
Isabel A RimAustraliaIoni Bowcher QUALIFIED
Silvio E RoysterJapanIvan Magalhaes PROPOSAL
Greenwood N InouyeBrazilAnna Fali NEGOTIATION
Alejandro C CaldareraCanadaAmy Elsner NEGOTIATION
Morrow X BriddickFranceOnyama Limba NEW
Aditya D GarufiUnited KingdomIvan Magalhaes UNQUALIFIED
Antonio Q ShinkoCanadaElwin Sharvill PROPOSAL
Jones Q AlbaresFranceAmy Elsner UNQUALIFIED
Costa U AmigonBrazilStephen Shaw QUALIFIED
Jeanfrancois U PerinJapanIoni Bowcher UNQUALIFIED
Adams B MorascaItalyBernardo Dominic NEW
Isabel H CaldareraGermanyXuxue Feng UNQUALIFIED
Silvio L PaprockiIndiaXuxue Feng QUALIFIED
Julie V ChuiIndiaIvan Magalhaes RENEWAL
Claire P SlusarskiCanadaAmy Elsner QUALIFIED
Deepesh Q CaldareraBrazilStephen Shaw QUALIFIED
James F IturbideFranceStephen Shaw QUALIFIED
James S WaycottFranceStephen Shaw QUALIFIED
Claire S CampainBrazilAnna Fali RENEWAL
Ashley V MarrierGermanyAmy Elsner NEW
Adams N NickaFranceIoni Bowcher PROPOSAL
Adams A AlbaresSpainBernardo Dominic QUALIFIED
Clifford T MaletItalyStephen Shaw PROPOSAL
James Q DarakjyGermanyAmy Elsner NEW
Kadeem G VocelkaCanadaAnna Fali RENEWAL
Juan N GauchoSpainIoni Bowcher PROPOSAL
Julie O GauchoIndiaIvan Magalhaes NEGOTIATION
Juan J OldroydRussiaElwin Sharvill QUALIFIED
Ricardo R PerinArgentinaXuxue Feng NEW
Alejandro M CampainIndiaIvan Magalhaes RENEWAL
Juan U MacleadItalyIvan Magalhaes UNQUALIFIED
Ashley P SaylorsItalyOnyama Limba NEGOTIATION
Frozen Columns
Name
Deepesh V Perin
James H Gillian
Cody T Perin
Jefferson T Morasca
Emily B Ferencz
Smith O Doe
Chavez A Campain
Claire D Kolmetz
Maria M Nicka
Munro A Ferencz
Jeanfrancois W Caudy
Johnson W Albares
Kaitlin K Slusarski
Stacey J Albares
Costa H Bowley
Mayumi U Malet
Ricardo Y Rim
Smith B Butt
Wickens G Oldroyd
Costa D Wieser
Rodrigues V Saylors
Greenwood Z Malet
Mayumi A Stockham
Jones H Perin
Silvio N Wieser
David D Ferencz
Johnson T Ferencz
Chavez C Ostrosky
Deepesh Y Malet
Ashley Y Garufi
Antonio I Poquette
Rodrigues P Whobrey
Juan N Rim
Emily H Wieser
Kadeem Q Shinko
Izzy Q Schemmer
Ashley X Ostrosky
Tony X Rim
Maria Z Darakjy
Faith Z Caudy
Chavez X Stenseth
Wickens G Campain
Aika D Ferencz
Tony O Foller
Ashley X Gaucho
Octavia H Wieser
Nicolas X Gaucho
Kaitlin X Waycott
Kaitlin O Garufi
Clifford F Darakjy
IdCountryDate
1000Brazil2024-06-18
1001Germany2024-06-17
1002Brazil2024-06-08
1003France2024-06-20
1004Australia2024-06-06
1005Germany2024-06-13
1006United Kingdom2024-06-06
1007Japan2024-06-01
1008Canada2024-06-13
1009Argentina2024-06-06
1010Australia2024-05-25
1011Argentina2024-06-08
1012India2024-06-15
1013Brazil2024-06-02
1014France2024-06-04
1015Japan2024-06-17
1016United Kingdom2024-06-08
1017India2024-05-25
1018Japan2024-05-31
1019United Kingdom2024-06-22
1020United Kingdom2024-06-02
1021Canada2024-06-09
1022Canada2024-06-09
1023France2024-06-16
1024Canada2024-06-09
1025India2024-06-18
1026United Kingdom2024-06-03
1027Japan2024-06-11
1028Russia2024-06-13
1029Australia2024-05-26
1030Argentina2024-05-30
1031Australia2024-05-31
1032Japan2024-06-17
1033Italy2024-06-13
1034Australia2024-06-20
1035Germany2024-06-15
1036Argentina2024-06-13
1037Australia2024-06-06
1038United Kingdom2024-06-22
1039United Kingdom2024-06-17
1040India2024-06-02
1041Japan2024-06-08
1042India2024-06-18
1043Argentina2024-06-12
1044India2024-06-18
1045Brazil2024-06-23
1046India2024-06-06
1047Italy2024-06-03
1048Russia2024-06-16
1049France2024-06-18

On-Demand Data

NameIdCountryDate
Chavez U Rulapaugh1000Japan2024-06-20
Jefferson T Venere1001United Kingdom2024-06-13
Munro S Nestle1002Italy2024-05-30
Tony I Ferencz1003Australia2024-06-14
Juan S Marrier1004India2024-06-19
Emily L Shinko1005France2024-06-09
Claire R Venere1006France2024-06-11
Costa A Garufi1007Australia2024-05-30
Maisha U Doe1008Germany2024-06-18
Antonio B Darakjy1009Spain2024-06-22
Isabel P Wieser1010Russia2024-05-31
Ivar M Chui1011Italy2024-06-23
Claire G Marrier1012Spain2024-06-17
Jones I Foller1013Germany2024-06-20
Cody V Nicka1014Italy2024-05-30
Maria T Shinko1015India2024-06-17
Deepesh T Ruta1016Italy2024-06-05
Maisha U Marrier1017Germany2024-06-11
Tony A Marrier1018India2024-05-27
Jones F Waycott1019Canada2024-06-12
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Cody L FerenczFranceIoni Bowcher PROPOSAL
Ashley I MacleadRussiaElwin Sharvill NEW
David B StensethItalyAnna Fali NEGOTIATION
Kaitlin L WaycottItalyStephen Shaw UNQUALIFIED
Mujtaba E SaylorsArgentinaBernardo Dominic NEW
Antonio J PaprockiJapanElwin Sharvill PROPOSAL
Wickens H BologniaJapanIvan Magalhaes UNQUALIFIED
Aruna H MorascaGermanyBernardo Dominic PROPOSAL
James L GarufiCanadaAmy Elsner RENEWAL
Ivar T DoeIndiaXuxue Feng UNQUALIFIED
Julie H DilliardFranceStephen Shaw NEGOTIATION
Kaitlin Z RutaBrazilAsiya Javayant PROPOSAL
Sinclair P PoquetteRussiaIoni Bowcher NEGOTIATION
Faith E PerinSpainAmy Elsner RENEWAL
Rodrigues E PerinRussiaIoni Bowcher NEW
Antonio M MaletFranceIoni Bowcher NEGOTIATION
Stacey A GarufiAustraliaBernardo Dominic PROPOSAL
Ricardo E PoquetteItalyIvan Magalhaes NEW
James Z MaletGermanyAmy Elsner QUALIFIED
Aika J RutaGermanyAmy Elsner PROPOSAL
Juan T GarufiFranceAsiya Javayant PROPOSAL
Rodrigues R BowleySpainElwin Sharvill UNQUALIFIED
Ivar Q MaletItalyElwin Sharvill NEGOTIATION
Cody Q MaletArgentinaBernardo Dominic QUALIFIED
Munro C GillianItalyElwin Sharvill NEW
Rodrigues P DilliardUnited KingdomXuxue Feng PROPOSAL
Costa G DarakjyIndiaXuxue Feng NEGOTIATION
Ricardo K KuskoRussiaBernardo Dominic NEGOTIATION
Arvin N WaycottItalyIoni Bowcher RENEWAL
Arvin V GillianGermanyOnyama Limba NEW
Francesco G CaudyUnited KingdomXuxue Feng PROPOSAL
Greenwood Q KuskoAustraliaIvan Magalhaes NEGOTIATION
Isabel T PaprockiBrazilXuxue Feng UNQUALIFIED
Tony I OldroydAustraliaBernardo Dominic NEW
Maria T RimAustraliaElwin Sharvill NEGOTIATION
Isabel T FollerItalyAsiya Javayant RENEWAL
Alejandro U CaudyArgentinaIoni Bowcher QUALIFIED
Ashley I IturbideAustraliaIvan Magalhaes QUALIFIED
Juan K CaldareraGermanyBernardo Dominic RENEWAL
Jeanfrancois T AmigonArgentinaOnyama Limba RENEWAL

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