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
Darci M SlusarskiUnited KingdomAnna Fali PROPOSAL
Izzy T WaycottIndiaAmy Elsner UNQUALIFIED
Tony T AlbaresItalyIoni Bowcher RENEWAL
Maisha G VenereArgentinaAmy Elsner NEW
Morrow P StockhamAustraliaXuxue Feng QUALIFIED
Maria K InouyeIndiaIvan Magalhaes UNQUALIFIED
Greenwood J DarakjyIndiaAsiya Javayant PROPOSAL
Leon G SaylorsAustraliaElwin Sharvill NEGOTIATION
David Y NickaRussiaIvan Magalhaes NEGOTIATION
Rodrigues E ChuiGermanyXuxue Feng UNQUALIFIED
Leja C KuskoGermanyIoni Bowcher RENEWAL
Aika C MacleadBrazilStephen Shaw PROPOSAL
Alejandro R PaprockiItalyIoni Bowcher UNQUALIFIED
Munro X MaletUnited KingdomStephen Shaw PROPOSAL
Aditya U SaylorsSpainAnna Fali PROPOSAL
Costa C SchemmerItalyElwin Sharvill NEGOTIATION
Kadeem E WhobreyIndiaAsiya Javayant UNQUALIFIED
Isabel N MorascaAustraliaOnyama Limba RENEWAL
Jeanfrancois J PaprockiItalyIoni Bowcher PROPOSAL
Ivar V GillianSpainXuxue Feng QUALIFIED
Isabel J MorascaBrazilBernardo Dominic RENEWAL
Chavez I SlusarskiItalyXuxue Feng NEW
Stacey X SchemmerSpainXuxue Feng PROPOSAL
Tony J RulapaughGermanyAsiya Javayant UNQUALIFIED
Jennifer T MarrierBrazilAsiya Javayant QUALIFIED
Jones U PaprockiUnited KingdomOnyama Limba PROPOSAL
Faith R RutaRussiaElwin Sharvill RENEWAL
Faith I FerenczArgentinaIvan Magalhaes RENEWAL
Darci E WieserGermanyBernardo Dominic QUALIFIED
Murillo G TollnerJapanOnyama Limba PROPOSAL
Munro P CaldareraGermanyAsiya Javayant RENEWAL
Tony B RoysterBrazilAnna Fali NEW
David T IturbideCanadaAsiya Javayant PROPOSAL
Ashley G MacleadFranceOnyama Limba PROPOSAL
Izzy W InouyeRussiaStephen Shaw NEGOTIATION
Julie B InouyeSpainBernardo Dominic RENEWAL
Jones T AmigonFranceBernardo Dominic NEGOTIATION
Wickens C SaylorsBrazilXuxue Feng PROPOSAL
Faith I BowleyItalyElwin Sharvill NEW
Cody I SergiSpainAsiya Javayant NEW
Kaitlin J WieserUnited KingdomElwin Sharvill NEGOTIATION
Wickens S SchemmerJapanIoni Bowcher NEGOTIATION
Munro B ChuiBrazilElwin Sharvill QUALIFIED
Izzy U PerinIndiaStephen Shaw RENEWAL
Octavia P DilliardGermanyStephen Shaw QUALIFIED
Claire Q SaylorsIndiaBernardo Dominic RENEWAL
Munro R ButtFranceIoni Bowcher NEGOTIATION
Morrow N MaletArgentinaOnyama Limba RENEWAL
James B MaletIndiaOnyama Limba QUALIFIED
Leja Y CaudyCanadaIoni Bowcher PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Misaki F MaletFranceIoni Bowcher RENEWAL
Francesco X CampainGermanyIvan Magalhaes UNQUALIFIED
Costa I MorascaSpainIvan Magalhaes NEGOTIATION
Munro F ChuiItalyAmy Elsner UNQUALIFIED
Chavez R SaylorsArgentinaAsiya Javayant PROPOSAL
David R SchemmerCanadaIoni Bowcher UNQUALIFIED
Jones H IturbideAustraliaElwin Sharvill QUALIFIED
Octavia O SlusarskiArgentinaIvan Magalhaes NEW
Greenwood J TollnerFranceAmy Elsner QUALIFIED
Costa U ButtIndiaIoni Bowcher UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maria A GauchoItaly2024-06-05Feiner Bros NEGOTIATION81Ioni Bowcher
1001Cody W MaletUnited Kingdom2024-06-18Rangoni Of Florence NEW4Elwin Sharvill
1002Octavia G PoquetteCanada2024-06-20Printing Dimensions RENEWAL4Onyama Limba
1003Kaitlin R CampainBrazil2024-06-12Feiner Bros QUALIFIED83Bernardo Dominic
1004Leon I KuskoItaly2024-05-26Benton, John B Jr NEGOTIATION95Bernardo Dominic
1005David X PaprockiFrance2024-06-23Rangoni Of Florence UNQUALIFIED30Elwin Sharvill
1006Chavez Y RulapaughItaly2024-06-15Chanay, Jeffrey A Esq PROPOSAL59Asiya Javayant
1007Maisha Q WieserRussia2024-06-10Buckley Miller Wright UNQUALIFIED54Bernardo Dominic
1008Jefferson L MacleadGermany2024-06-01Truhlar And Truhlar Attys RENEWAL66Onyama Limba
1009Cody H AlbaresAustralia2024-06-10Buckley Miller Wright NEW31Ioni Bowcher
1010Jeanfrancois T ShinkoBrazil2024-05-26Truhlar And Truhlar Attys NEW81Anna Fali
1011Jones H ChuiJapan2024-06-18Printing Dimensions NEGOTIATION15Asiya Javayant
1012Julie G MorascaItaly2024-05-26Printing Dimensions RENEWAL16Asiya Javayant
1013Alejandro T RoysterIndia2024-06-15Chemel, James L Cpa PROPOSAL23Bernardo Dominic
1014Adams L MacleadArgentina2024-05-26Feltz Printing Service UNQUALIFIED95Xuxue Feng
1015Salvatore J WieserSpain2024-06-05Buckley Miller Wright NEW92Stephen Shaw
1016Deepesh N WhobreyFrance2024-05-29Commercial Press RENEWAL26Stephen Shaw
1017Aruna H CaudyArgentina2024-06-09Buckley Miller Wright QUALIFIED89Onyama Limba
1018Salvatore D CampainGermany2024-05-31Chapman, Ross E Esq RENEWAL21Bernardo Dominic
1019Mujtaba T AmigonArgentina2024-06-18Buckley Miller Wright QUALIFIED64Ioni Bowcher
1020Tony O NickaFrance2024-05-26Morlong Associates NEGOTIATION79Bernardo Dominic
1021Antonio I DilliardJapan2024-06-07Benton, John B Jr NEGOTIATION81Stephen Shaw
1022Antonio W KuskoArgentina2024-05-31Rousseaux, Michael Esq QUALIFIED59Ivan Magalhaes
1023Costa M SlusarskiJapan2024-06-21Feltz Printing Service NEW10Elwin Sharvill
1024Isabel C RimItaly2024-05-26Feltz Printing Service PROPOSAL62Anna Fali
1025Mayumi Q VenereBrazil2024-05-28Feltz Printing Service RENEWAL3Ioni Bowcher
1026Wickens U ButtCanada2024-05-30Chemel, James L Cpa NEGOTIATION58Elwin Sharvill
1027Kadeem L SlusarskiIndia2024-06-09Buckley Miller Wright PROPOSAL39Elwin Sharvill
1028Arvin X GarufiIndia2024-06-01Chemel, James L Cpa RENEWAL70Bernardo Dominic
1029Aika R BriddickFrance2024-06-16King, Christopher A Esq RENEWAL98Anna Fali
1030Munro G MacleadJapan2024-06-16Printing Dimensions NEW93Xuxue Feng
1031Cody N CaudyCanada2024-06-05Chanay, Jeffrey A Esq NEGOTIATION60Xuxue Feng
1032Juan O ShinkoJapan2024-06-22Commercial Press UNQUALIFIED35Elwin Sharvill
1033Wickens J KolmetzJapan2024-06-11Commercial Press UNQUALIFIED5Amy Elsner
1034Greenwood J ChuiGermany2024-06-08King, Christopher A Esq PROPOSAL86Anna Fali
1035Aika O ShinkoSpain2024-06-13Benton, John B Jr NEW97Ioni Bowcher
1036Darci V SchemmerRussia2024-06-02Rangoni Of Florence NEGOTIATION9Elwin Sharvill
1037Francesco L DoeGermany2024-06-12Printing Dimensions NEGOTIATION2Amy Elsner
1038Leon L FerenczGermany2024-05-30Morlong Associates PROPOSAL77Elwin Sharvill
1039David U BologniaJapan2024-06-09Commercial Press UNQUALIFIED62Elwin Sharvill
1040Maria Y VocelkaUnited Kingdom2024-06-02Rangoni Of Florence NEW33Amy Elsner
1041Rodrigues C MaletJapan2024-06-05Feiner Bros QUALIFIED64Elwin Sharvill
1042Leon N RulapaughUnited Kingdom2024-06-21Rangoni Of Florence RENEWAL95Asiya Javayant
1043Smith B NestleRussia2024-06-23Printing Dimensions QUALIFIED38Asiya Javayant
1044Morrow E InouyeBrazil2024-05-31Buckley Miller Wright UNQUALIFIED79Ioni Bowcher
1045Nicolas E TollnerAustralia2024-05-25Benton, John B Jr PROPOSAL5Elwin Sharvill
1046Leon H PerinBrazil2024-06-01Dorl, James J Esq UNQUALIFIED23Asiya Javayant
1047Munro G KuskoGermany2024-06-06Feiner Bros QUALIFIED66Onyama Limba
1048Antonio Z BowleyAustralia2024-06-01Feltz Printing Service QUALIFIED77Asiya Javayant
1049Ricardo Q AlbaresJapan2024-06-13Rangoni Of Florence PROPOSAL34Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Smith T RimArgentinaStephen Shaw NEGOTIATION
Jeanfrancois E FollerCanadaXuxue Feng NEGOTIATION
Mayumi L RimAustraliaOnyama Limba PROPOSAL
Julie H DoeRussiaAsiya Javayant PROPOSAL
Aika N ChuiBrazilAsiya Javayant NEGOTIATION
Mujtaba H SergiIndiaOnyama Limba RENEWAL
Greenwood Q GillianJapanIoni Bowcher RENEWAL
Mujtaba R CampainBrazilIoni Bowcher NEGOTIATION
Deepesh X OstroskyRussiaIoni Bowcher NEW
Arvin T PerinCanadaAnna Fali NEW
Aditya H RutaIndiaOnyama Limba NEGOTIATION
Izzy R WaycottGermanyBernardo Dominic NEW
Costa Z FerenczJapanAnna Fali QUALIFIED
Sinclair L MaletAustraliaXuxue Feng QUALIFIED
Salvatore Q PerinFranceElwin Sharvill RENEWAL
Salvatore T OldroydBrazilAsiya Javayant NEGOTIATION
Faith F ChuiBrazilAmy Elsner NEW
Johnson H OstroskyFranceAnna Fali PROPOSAL
Maria T DoeBrazilXuxue Feng PROPOSAL
Claire F RutaCanadaAmy Elsner UNQUALIFIED
Mayumi P RimArgentinaStephen Shaw RENEWAL
Kadeem H BologniaBrazilIoni Bowcher UNQUALIFIED
Isabel W FerenczArgentinaElwin Sharvill RENEWAL
Isabel U BologniaItalyOnyama Limba NEW
Murillo Q SchemmerUnited KingdomStephen Shaw UNQUALIFIED
Kaitlin M VenereFranceOnyama Limba NEGOTIATION
Ricardo Y MacleadRussiaElwin Sharvill QUALIFIED
Nicolas N CampainRussiaStephen Shaw UNQUALIFIED
Jefferson S SlusarskiAustraliaElwin Sharvill NEW
Chavez P RulapaughGermanyAsiya Javayant NEGOTIATION
Ricardo F SaylorsBrazilElwin Sharvill UNQUALIFIED
Izzy I AmigonJapanBernardo Dominic RENEWAL
Clifford Q FerenczAustraliaXuxue Feng PROPOSAL
Jefferson H CaudyArgentinaIoni Bowcher QUALIFIED
Isabel V AmigonGermanyBernardo Dominic RENEWAL
Julie M KolmetzGermanyIvan Magalhaes NEW
Salvatore E AlbaresJapanAnna Fali NEGOTIATION
Octavia B BriddickItalyAnna Fali PROPOSAL
Ricardo F KolmetzUnited KingdomAnna Fali QUALIFIED
Kaitlin D SchemmerBrazilAmy Elsner QUALIFIED
Jennifer D BowleyAustraliaElwin Sharvill NEW
Stacey S FerenczRussiaStephen Shaw QUALIFIED
Wickens Y RoysterJapanStephen Shaw NEGOTIATION
Aruna W BowleyJapanIvan Magalhaes NEGOTIATION
Leon C BowleyRussiaIvan Magalhaes UNQUALIFIED
Faith K BologniaGermanyAnna Fali RENEWAL
Emily T StensethSpainAnna Fali PROPOSAL
Arvin Z ChuiCanadaAmy Elsner UNQUALIFIED
Aditya G VocelkaCanadaElwin Sharvill QUALIFIED
Munro Y IturbideItalyAmy Elsner NEW
Frozen Columns
Name
Mujtaba Q Nicka
Jennifer T Gillian
Clifford T Flosi
Octavia Q Nestle
Sinclair X Marrier
Arvin A Malet
Mujtaba N Maclead
Jefferson W Sergi
Julie S Stenseth
Deepesh H Paprocki
Silvio D Kolmetz
Wickens D Royster
Izzy W Caldarera
Maria T Darakjy
Juan N Paprocki
Wickens A Stenseth
Jones D Foller
Chavez F Nestle
Mayumi F Slusarski
Cody F Perin
Salvatore J Amigon
Greenwood F Iturbide
Claire T Rim
Alejandro W Ostrosky
Claire Z Gillian
Arvin R Bowley
Jeanfrancois M Vocelka
Jeanfrancois J Rim
Ricardo W Butt
Costa R Malet
Kadeem W Shinko
Clifford B Gaucho
Francesco G Wieser
Greenwood L Glick
Deepesh I Kusko
Salvatore K Wieser
Costa R Malet
Mujtaba E Butt
Aditya I Whobrey
Aditya F Perin
Aruna B Sergi
Munro V Flosi
Mayumi H Malet
Munro K Saylors
Greenwood G Wieser
Claire E Stockham
Mayumi G Ferencz
Adams I Caldarera
Clifford H Rulapaugh
Leon B Rim
IdCountryDate
1000Japan2024-05-29
1001India2024-06-10
1002Spain2024-06-23
1003Spain2024-06-17
1004Brazil2024-06-10
1005Canada2024-06-09
1006Japan2024-05-29
1007United Kingdom2024-06-16
1008Japan2024-05-30
1009France2024-05-31
1010Russia2024-05-29
1011Spain2024-06-04
1012Brazil2024-06-20
1013Japan2024-06-19
1014Argentina2024-06-06
1015India2024-06-10
1016Germany2024-06-06
1017Russia2024-06-08
1018United Kingdom2024-06-17
1019Australia2024-06-22
1020United Kingdom2024-06-07
1021Japan2024-06-08
1022Canada2024-06-08
1023Italy2024-06-20
1024Germany2024-06-05
1025Australia2024-06-09
1026India2024-06-19
1027Brazil2024-06-03
1028France2024-06-22
1029Canada2024-06-04
1030Italy2024-05-25
1031India2024-05-27
1032Germany2024-06-06
1033Spain2024-06-17
1034Brazil2024-06-11
1035Spain2024-06-01
1036Argentina2024-06-18
1037Canada2024-06-08
1038Brazil2024-05-28
1039United Kingdom2024-06-16
1040Italy2024-06-14
1041Japan2024-05-31
1042Russia2024-06-09
1043Japan2024-06-18
1044Spain2024-06-20
1045United Kingdom2024-06-16
1046Russia2024-06-18
1047India2024-06-01
1048Russia2024-06-02
1049France2024-06-01

On-Demand Data

NameIdCountryDate
Cody L Waycott1000Canada2024-06-12
Costa Y Royster1001Argentina2024-05-30
Leon B Caldarera1002Russia2024-06-14
Mujtaba R Shinko1003Russia2024-06-16
Aditya G Schemmer1004Italy2024-06-21
Nicolas N Poquette1005France2024-06-05
Nicolas S Iturbide1006Canada2024-05-29
Greenwood X Shinko1007Japan2024-06-07
Mayumi O Tollner1008Russia2024-05-25
Izzy G Malet1009Australia2024-06-20
Antonio E Doe1010Germany2024-06-10
Morrow Z Slusarski1011Spain2024-05-25
Leon V Butt1012United Kingdom2024-06-07
Isabel C Royster1013Spain2024-06-15
Nicolas Q Poquette1014Argentina2024-06-04
Claire Y Kolmetz1015Australia2024-06-14
Stacey A Nestle1016Spain2024-06-21
Deepesh A Chui1017Spain2024-05-28
Tony S Ostrosky1018Germany2024-05-25
Ivar T Figeroa1019United Kingdom2024-06-04
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
James S PerinSpainElwin Sharvill NEGOTIATION
Wickens I SaylorsItalyAsiya Javayant PROPOSAL
Cody M WieserCanadaXuxue Feng RENEWAL
Morrow L AlbaresIndiaIoni Bowcher RENEWAL
Alejandro S RulapaughSpainIoni Bowcher RENEWAL
Johnson G WhobreyFranceAsiya Javayant RENEWAL
Salvatore H GarufiArgentinaOnyama Limba NEW
Salvatore Q FerenczAustraliaStephen Shaw RENEWAL
Aika G WieserItalyElwin Sharvill NEGOTIATION
Tony V AmigonCanadaAsiya Javayant NEGOTIATION
Arvin G KuskoGermanyAmy Elsner UNQUALIFIED
Kadeem J PoquetteGermanyAmy Elsner NEW
Maria A FerenczIndiaAsiya Javayant NEW
Smith E RimIndiaAnna Fali NEGOTIATION
Deepesh H PoquetteArgentinaBernardo Dominic PROPOSAL
Leon D OldroydUnited KingdomAsiya Javayant NEW
Emily L MaletAustraliaXuxue Feng RENEWAL
Rodrigues O SaylorsBrazilStephen Shaw UNQUALIFIED
Adams J WieserArgentinaIvan Magalhaes UNQUALIFIED
Smith T CampainGermanyIvan Magalhaes PROPOSAL
Deepesh F GlickArgentinaAmy Elsner NEGOTIATION
Ashley Z OstroskyGermanyIvan Magalhaes PROPOSAL
Deepesh V InouyeBrazilElwin Sharvill PROPOSAL
Nicolas J WaycottCanadaStephen Shaw PROPOSAL
Ashley U KuskoBrazilIvan Magalhaes QUALIFIED
Jones E MaletIndiaAmy Elsner PROPOSAL
Francesco S CampainItalyStephen Shaw NEGOTIATION
Jennifer K WaycottFranceBernardo Dominic UNQUALIFIED
Mujtaba D DilliardArgentinaAmy Elsner UNQUALIFIED
Nicolas Z SergiFranceBernardo Dominic UNQUALIFIED
Ricardo F GlickUnited KingdomAsiya Javayant NEGOTIATION
Clifford M FigeroaRussiaOnyama Limba RENEWAL
Tony H FerenczJapanAnna Fali NEW
Jefferson A WaycottRussiaStephen Shaw NEGOTIATION
Ivar Z GillianCanadaBernardo Dominic QUALIFIED
Jones F DoeArgentinaIoni Bowcher UNQUALIFIED
James L PaprockiFranceXuxue Feng RENEWAL
Leon Y WhobreyRussiaElwin Sharvill PROPOSAL
Morrow T VenereRussiaAnna Fali NEGOTIATION
Johnson Z OstroskyArgentinaBernardo Dominic 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>