November Deals: Limited Coupons Available! 🎁 Claim Your Coupon

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
Bangla
Bosnian
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
Uzbek
Vietnamese
Chinese
Chinese

Input Style

Themes

PrimeOne
Saga Blue Saga Blue
Vela Blue Vela Blue
Arya Blue Arya Blue
Bootstrap
Bootstrap Blue Light Bootstrap Blue Light
Bootstrap Purple Light Bootstrap Purple Light
Bootstrap Blue Dark Bootstrap Blue Dark
Bootstrap Purple Dark Bootstrap Purple Dark
Material Design
Material Indigo Light Material Indigo Light
Material Deep Purple Light Material Deep Purple Light
Material Indigo Dark Material Indigo Dark
Material Deep Purple Dark Material Deep Purple Dark
Material Design Compact
Material Compact Indigo Light Material Compact Indigo Light
Material Compact Deep Purple Light Material Compact Deep Purple Light
Material Compact Indigo Dark Material Compact Indigo Dark
Material Compact Deep Purple Dark Material Compact Deep Purple Dark
Legacy
Nova Light Nova Light
Nova Dark Nova Dark
Nova Colored Nova Colored
Luna Amber Luna Amber
Luna Blue Luna Blue
Luna Green Luna Green
Luna Pink Luna Pink

DataTable Scroll

Both vertical and horizontal scrolling of the data is supported with optional frozen rows-columns and on-demand loading features.

Vertical
NameCountryRepresentativeStatus
Alejandro F CaldareraItalyOnyama Limba QUALIFIED
Greenwood H VenereFranceStephen Shaw QUALIFIED
Chavez Y CaudyCanadaAsiya Javayant RENEWAL
Leja V MorascaCanadaAnna Fali QUALIFIED
Izzy W ButtCanadaAnna Fali QUALIFIED
Stacey F ShinkoBrazilBernardo Dominic UNQUALIFIED
Greenwood X PoquetteAustraliaElwin Sharvill NEGOTIATION
Ricardo A CaldareraRussiaElwin Sharvill NEW
Aruna J MorascaSpainAsiya Javayant RENEWAL
Rodrigues T WaycottAustraliaIoni Bowcher PROPOSAL
Kaitlin V GillianSpainIvan Magalhaes RENEWAL
Maisha A KolmetzIndiaAmy Elsner NEGOTIATION
Jefferson Q FigeroaRussiaBernardo Dominic UNQUALIFIED
Darci J NestleAustraliaOnyama Limba RENEWAL
Jeanfrancois E CampainAustraliaOnyama Limba NEW
Faith G KolmetzIndiaAsiya Javayant NEGOTIATION
Munro C VocelkaAustraliaAsiya Javayant UNQUALIFIED
Silvio Z PaprockiArgentinaBernardo Dominic PROPOSAL
Alejandro Q StensethJapanElwin Sharvill NEGOTIATION
Isabel E WhobreyRussiaOnyama Limba RENEWAL
Izzy R ButtCanadaBernardo Dominic PROPOSAL
Munro N FerenczItalyIvan Magalhaes NEW
Aditya I SergiBrazilStephen Shaw NEGOTIATION
Clifford H FerenczIndiaAnna Fali RENEWAL
Mujtaba V GauchoSpainIoni Bowcher NEW
Tony J DilliardUnited KingdomBernardo Dominic QUALIFIED
Claire H PerinJapanIoni Bowcher RENEWAL
Leja U KolmetzUnited KingdomIvan Magalhaes NEW
Jennifer C MorascaRussiaStephen Shaw UNQUALIFIED
Johnson H AlbaresSpainXuxue Feng QUALIFIED
Munro T BologniaGermanyAnna Fali NEW
Claire F MarrierArgentinaAnna Fali PROPOSAL
Smith Y WaycottItalyElwin Sharvill RENEWAL
Munro T SaylorsAustraliaIvan Magalhaes UNQUALIFIED
Wickens B PaprockiFranceStephen Shaw RENEWAL
Leja N OstroskyCanadaOnyama Limba NEGOTIATION
James T MorascaCanadaIvan Magalhaes RENEWAL
Clifford B TollnerRussiaAsiya Javayant NEW
Smith V ButtRussiaAsiya Javayant UNQUALIFIED
Silvio B BologniaGermanyElwin Sharvill NEW
Maisha E CampainJapanAmy Elsner QUALIFIED
Munro V BowleyArgentinaOnyama Limba QUALIFIED
Leja Z SaylorsRussiaAnna Fali PROPOSAL
Johnson Y WaycottAustraliaIvan Magalhaes RENEWAL
Aruna O CaldareraUnited KingdomOnyama Limba QUALIFIED
Mujtaba Q StensethSpainIvan Magalhaes RENEWAL
Kadeem B FlosiItalyAsiya Javayant RENEWAL
Jefferson Y GarufiArgentinaBernardo Dominic UNQUALIFIED
Leon O ChuiJapanIvan Magalhaes NEGOTIATION
Aruna I KuskoAustraliaOnyama Limba NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Salvatore K StockhamAustraliaStephen Shaw PROPOSAL
Emily Y AlbaresSpainAsiya Javayant PROPOSAL
Adams E OstroskyJapanStephen Shaw UNQUALIFIED
Misaki I ShinkoCanadaAmy Elsner NEW
Ricardo H SaylorsItalyXuxue Feng UNQUALIFIED
Wickens P SergiIndiaIoni Bowcher PROPOSAL
Octavia V AmigonRussiaAnna Fali UNQUALIFIED
Wickens Q DarakjyRussiaAnna Fali NEGOTIATION
Munro D KolmetzGermanyXuxue Feng NEGOTIATION
Izzy A DarakjyFranceIvan Magalhaes PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Johnson C SaylorsIndia2026-09-06Morlong Associates NEW35Amy Elsner
1001Maisha G RimBrazil2026-09-24Buckley Miller Wright NEW9Asiya Javayant
1002Rodrigues A AlbaresUnited Kingdom2026-08-26Dorl, James J Esq RENEWAL2Anna Fali
1003Johnson L FerenczBrazil2026-09-04Commercial Press NEGOTIATION6Bernardo Dominic
1004Adams E MarrierItaly2026-09-14King, Christopher A Esq UNQUALIFIED76Ivan Magalhaes
1005Adams Q InouyeJapan2026-08-29Dorl, James J Esq QUALIFIED14Xuxue Feng
1006Rodrigues D WieserJapan2026-09-09Morlong Associates QUALIFIED0Stephen Shaw
1007Rodrigues M SlusarskiCanada2026-09-10Chanay, Jeffrey A Esq QUALIFIED4Onyama Limba
1008Mujtaba X NestleItaly2026-09-16Buckley Miller Wright UNQUALIFIED81Onyama Limba
1009Munro W AlbaresAustralia2026-09-20Printing Dimensions UNQUALIFIED11Ioni Bowcher
1010Morrow G WieserSpain2026-09-23Buckley Miller Wright NEW33Asiya Javayant
1011Kaitlin B PerinItaly2026-09-10Commercial Press UNQUALIFIED71Ivan Magalhaes
1012Stacey I StensethGermany2026-09-02Chapman, Ross E Esq QUALIFIED71Onyama Limba
1013Claire P KolmetzArgentina2026-09-12Morlong Associates PROPOSAL28Amy Elsner
1014Tony Z ShinkoAustralia2026-09-18Rangoni Of Florence PROPOSAL62Amy Elsner
1015Darci I MacleadItaly2026-08-26King, Christopher A Esq NEGOTIATION86Elwin Sharvill
1016Julie T StensethUnited Kingdom2026-08-30Benton, John B Jr NEGOTIATION13Ioni Bowcher
1017Aika S SergiBrazil2026-09-21Benton, John B Jr NEGOTIATION59Stephen Shaw
1018Clifford B OldroydJapan2026-09-12Feltz Printing Service PROPOSAL1Onyama Limba
1019Misaki V NestleFrance2026-09-24Truhlar And Truhlar Attys PROPOSAL52Ivan Magalhaes
1020Arvin T MorascaItaly2026-09-04Printing Dimensions PROPOSAL37Onyama Limba
1021David G CaudyFrance2026-09-14Dorl, James J Esq QUALIFIED91Ioni Bowcher
1022David C SchemmerAustralia2026-09-09Morlong Associates NEW7Ioni Bowcher
1023Mayumi B WhobreyItaly2026-09-02Rangoni Of Florence NEGOTIATION23Xuxue Feng
1024Darci Z KuskoBrazil2026-09-14Feiner Bros RENEWAL90Ioni Bowcher
1025Arvin H NestleJapan2026-09-06Chanay, Jeffrey A Esq PROPOSAL81Bernardo Dominic
1026Jefferson B VocelkaRussia2026-09-07Chemel, James L Cpa QUALIFIED75Stephen Shaw
1027Leja R AmigonUnited Kingdom2026-09-22Truhlar And Truhlar Attys NEW29Anna Fali
1028Julie J NestleItaly2026-09-15Chemel, James L Cpa PROPOSAL16Bernardo Dominic
1029Aika L SergiAustralia2026-09-16Morlong Associates RENEWAL83Onyama Limba
1030Ricardo J RimIndia2026-09-07Chanay, Jeffrey A Esq NEW0Bernardo Dominic
1031James N MacleadFrance2026-09-07Chapman, Ross E Esq RENEWAL63Amy Elsner
1032Darci G MacleadItaly2026-09-11Commercial Press RENEWAL99Ioni Bowcher
1033Leon K DilliardUnited Kingdom2026-09-13Printing Dimensions PROPOSAL1Onyama Limba
1034Maisha X BowleyRussia2026-09-01Chemel, James L Cpa UNQUALIFIED76Anna Fali
1035Ricardo B WaycottJapan2026-09-18Morlong Associates UNQUALIFIED64Asiya Javayant
1036Mayumi K TollnerSpain2026-09-08Chanay, Jeffrey A Esq QUALIFIED1Anna Fali
1037Izzy A VocelkaCanada2026-09-02Rousseaux, Michael Esq UNQUALIFIED17Elwin Sharvill
1038Munro Y GarufiIndia2026-08-31Feiner Bros UNQUALIFIED5Amy Elsner
1039David S KolmetzJapan2026-09-09Rousseaux, Michael Esq RENEWAL43Amy Elsner
1040Salvatore S IturbideUnited Kingdom2026-09-10Printing Dimensions RENEWAL16Ioni Bowcher
1041Kadeem B InouyeIndia2026-09-09King, Christopher A Esq QUALIFIED64Xuxue Feng
1042Wickens N DoeRussia2026-08-28Truhlar And Truhlar Attys UNQUALIFIED4Amy Elsner
1043Munro J KuskoArgentina2026-09-19Printing Dimensions NEGOTIATION97Elwin Sharvill
1044Aditya D ButtGermany2026-09-13Dorl, James J Esq NEGOTIATION64Stephen Shaw
1045Chavez Q GarufiBrazil2026-09-09Chanay, Jeffrey A Esq NEW93Ioni Bowcher
1046Jeanfrancois U OldroydCanada2026-09-07Feiner Bros QUALIFIED73Xuxue Feng
1047Claire Z PerinSpain2026-09-16Feiner Bros RENEWAL26Amy Elsner
1048James E SlusarskiCanada2026-09-04Dorl, James J Esq UNQUALIFIED41Amy Elsner
1049Ivar J WieserBrazil2026-09-07Dorl, James J Esq PROPOSAL59Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Mujtaba M FlosiGermanyIvan Magalhaes UNQUALIFIED
Alejandro W WieserSpainStephen Shaw RENEWAL
David C SchemmerJapanOnyama Limba RENEWAL
Isabel U MaletUnited KingdomBernardo Dominic RENEWAL
Ashley G ButtGermanyAsiya Javayant PROPOSAL
Jeanfrancois X TollnerIndiaAsiya Javayant QUALIFIED
Jefferson G MorascaItalyAnna Fali NEGOTIATION
Smith Z StensethBrazilIvan Magalhaes NEW
Ricardo R NickaIndiaAnna Fali PROPOSAL
Tony Z AmigonFranceOnyama Limba NEGOTIATION
Claire S MarrierIndiaBernardo Dominic NEW
Misaki F FollerJapanIvan Magalhaes NEGOTIATION
Jennifer F ButtSpainAmy Elsner RENEWAL
Nicolas Z KolmetzFranceElwin Sharvill NEGOTIATION
Ricardo V WieserJapanIvan Magalhaes QUALIFIED
Ashley D GlickGermanyXuxue Feng QUALIFIED
Chavez R WhobreyFranceAmy Elsner PROPOSAL
Jeanfrancois H MacleadRussiaIvan Magalhaes NEW
Faith L OstroskyUnited KingdomXuxue Feng UNQUALIFIED
Jefferson J ButtJapanIvan Magalhaes NEW
Maisha S SchemmerIndiaIoni Bowcher NEW
Ashley F FollerArgentinaIvan Magalhaes PROPOSAL
Maisha D SaylorsArgentinaIvan Magalhaes NEGOTIATION
Arvin V PerinSpainAnna Fali RENEWAL
Johnson S ButtItalyBernardo Dominic RENEWAL
Sinclair R ShinkoSpainAsiya Javayant RENEWAL
Cody R PoquetteSpainAmy Elsner UNQUALIFIED
Julie J RutaSpainAnna Fali NEW
Smith S ChuiAustraliaAsiya Javayant NEGOTIATION
Murillo K VocelkaSpainAnna Fali RENEWAL
Cody E PaprockiItalyIvan Magalhaes NEW
Juan V BriddickIndiaBernardo Dominic NEGOTIATION
Jennifer C BowleyJapanOnyama Limba UNQUALIFIED
Aditya L WieserJapanBernardo Dominic RENEWAL
Faith W FlosiGermanyAsiya Javayant NEW
Aditya Z PaprockiItalyOnyama Limba UNQUALIFIED
Izzy E CaldareraJapanBernardo Dominic NEGOTIATION
James N GlickUnited KingdomIvan Magalhaes NEGOTIATION
James E FigeroaBrazilIoni Bowcher NEW
Jefferson R FigeroaIndiaElwin Sharvill PROPOSAL
Jones K StensethIndiaAmy Elsner NEGOTIATION
Jennifer M KolmetzGermanyAsiya Javayant PROPOSAL
Aika X RimSpainAnna Fali NEGOTIATION
Octavia D RoysterBrazilBernardo Dominic UNQUALIFIED
Mayumi R DarakjyAustraliaIvan Magalhaes PROPOSAL
Cody S ShinkoItalyBernardo Dominic PROPOSAL
James C PoquetteBrazilStephen Shaw QUALIFIED
Silvio V FigeroaItalyElwin Sharvill NEGOTIATION
Ashley D RimGermanyBernardo Dominic UNQUALIFIED
Munro E MaletIndiaStephen Shaw UNQUALIFIED
Frozen Columns
Name
Leon B Stenseth
Misaki U Caudy
Silvio I Stenseth
Isabel X Slusarski
Murillo L Royster
Adams A Malet
Arvin Q Kusko
Isabel F Venere
Faith F Morasca
Alejandro D Figeroa
Leja F Briddick
Cody E Caudy
Smith Y Kusko
Silvio M Saylors
Julie B Rulapaugh
Leja M Flosi
Clifford R Bowley
Wickens A Poquette
Chavez B Briddick
Cody V Doe
Aika T Inouye
Nicolas G Chui
Julie D Saylors
Silvio B Gaucho
David G Kusko
Ashley E Ostrosky
Octavia T Nestle
Johnson L Figeroa
Sinclair I Doe
Kadeem M Glick
Munro K Royster
Antonio O Stenseth
Sinclair W Gaucho
Claire E Malet
Antonio J Butt
Aditya D Ruta
Deepesh F Chui
Misaki P Stockham
Smith Y Vocelka
Clifford B Caudy
Smith U Vocelka
Ivar M Gaucho
Salvatore X Caudy
Cody W Oldroyd
Izzy X Briddick
Octavia C Saylors
Leon A Chui
Johnson T Amigon
Wickens P Butt
Leja P Garufi
IdCountryDate
1000United Kingdom2026-09-16
1001Spain2026-09-02
1002Russia2026-09-03
1003India2026-08-26
1004Argentina2026-09-13
1005Spain2026-09-08
1006Russia2026-08-27
1007Italy2026-09-07
1008Russia2026-09-17
1009France2026-09-19
1010India2026-09-15
1011Spain2026-09-14
1012Japan2026-09-15
1013Japan2026-09-07
1014Italy2026-09-15
1015Argentina2026-08-28
1016France2026-09-14
1017Spain2026-09-11
1018India2026-08-29
1019France2026-09-08
1020Spain2026-09-04
1021Spain2026-09-09
1022Germany2026-09-24
1023Argentina2026-09-15
1024Spain2026-09-09
1025United Kingdom2026-08-29
1026Italy2026-09-04
1027Argentina2026-09-18
1028United Kingdom2026-09-18
1029Russia2026-09-18
1030Brazil2026-09-14
1031France2026-09-22
1032Argentina2026-09-04
1033India2026-09-15
1034Brazil2026-09-05
1035Australia2026-08-30
1036United Kingdom2026-09-16
1037Brazil2026-09-02
1038Italy2026-09-19
1039Brazil2026-09-10
1040Spain2026-09-23
1041Spain2026-09-12
1042United Kingdom2026-09-05
1043France2026-09-14
1044France2026-09-13
1045India2026-09-06
1046Brazil2026-08-27
1047India2026-09-10
1048Spain2026-09-22
1049Canada2026-09-07

On-Demand Data

NameIdCountryDate
Aika V Whobrey1000Germany2026-09-16
Jones E Oldroyd1001Spain2026-09-07
Rodrigues W Gillian1002India2026-09-17
Mayumi K Rulapaugh1003Italy2026-09-04
Chavez T Marrier1004Brazil2026-08-29
Mujtaba R Kusko1005France2026-09-02
Costa V Gaucho1006Germany2026-09-15
Rodrigues V Iturbide1007India2026-09-22
Wickens O Briddick1008Japan2026-09-14
Faith B Wieser1009Argentina2026-09-03
Morrow Q Kusko1010Russia2026-09-18
Tony Y Inouye1011Russia2026-09-01
Kaitlin Q Briddick1012Argentina2026-09-02
Leon C Rim1013India2026-09-10
Morrow P Royster1014India2026-09-13
Munro M Gillian1015Spain2026-08-30
Jefferson E Paprocki1016Germany2026-09-10
Sinclair C Stenseth1017India2026-09-09
Izzy P Kolmetz1018Russia2026-08-30
Darci X Darakjy1019Russia2026-09-04
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Costa I AmigonUnited KingdomIvan Magalhaes PROPOSAL
Murillo N CaudyRussiaStephen Shaw RENEWAL
Emily Y FigeroaIndiaElwin Sharvill PROPOSAL
Isabel G RoysterItalyXuxue Feng QUALIFIED
Mayumi S IturbideArgentinaElwin Sharvill RENEWAL
Cody F GlickAustraliaXuxue Feng NEGOTIATION
Clifford L BologniaGermanyAnna Fali NEGOTIATION
Jefferson J GlickUnited KingdomAmy Elsner NEW
Cody W GlickArgentinaElwin Sharvill NEW
Stacey K SlusarskiJapanIvan Magalhaes UNQUALIFIED
Jennifer I GillianSpainXuxue Feng UNQUALIFIED
Murillo Z WhobreyIndiaXuxue Feng RENEWAL
Octavia C OstroskyUnited KingdomAsiya Javayant UNQUALIFIED
Adams Y CampainIndiaAmy Elsner NEW
Murillo N WaycottGermanyIoni Bowcher NEW
Chavez B StockhamBrazilElwin Sharvill NEW
Ashley L DilliardSpainAmy Elsner NEGOTIATION
Arvin B AlbaresCanadaIvan Magalhaes NEGOTIATION
Stacey P AmigonArgentinaIvan Magalhaes UNQUALIFIED
Ashley B VocelkaAustraliaAnna Fali RENEWAL
Cody C SchemmerItalyStephen Shaw QUALIFIED
Leja R AlbaresSpainElwin Sharvill PROPOSAL
Leja T MorascaGermanyElwin Sharvill QUALIFIED
Isabel W ButtUnited KingdomAmy Elsner QUALIFIED
Greenwood O WaycottUnited KingdomAsiya Javayant NEW
Johnson O MacleadGermanyXuxue Feng RENEWAL
Smith P RimRussiaIoni Bowcher QUALIFIED
Jefferson T CampainRussiaBernardo Dominic NEGOTIATION
Chavez N FollerJapanElwin Sharvill NEW
Wickens S OldroydArgentinaBernardo Dominic QUALIFIED
Aditya X PaprockiRussiaIoni Bowcher UNQUALIFIED
Jefferson G StockhamSpainOnyama Limba RENEWAL
Francesco Q BologniaBrazilIvan Magalhaes PROPOSAL
Silvio D CaudyItalyIoni Bowcher QUALIFIED
David C ShinkoJapanXuxue Feng UNQUALIFIED
Faith B RimFranceIvan Magalhaes NEGOTIATION
Julie C GlickArgentinaAnna Fali NEW
Tony D FigeroaAustraliaBernardo Dominic NEW
Rodrigues Z WaycottRussiaBernardo Dominic PROPOSAL
Kaitlin P SlusarskiSpainAmy Elsner 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" frozenColumnsAlignment="left">
            <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>