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
Smith U RimUnited KingdomAnna Fali NEGOTIATION
Faith W RutaIndiaAmy Elsner RENEWAL
Emily L GauchoAustraliaIvan Magalhaes NEGOTIATION
Arvin U PaprockiCanadaAmy Elsner UNQUALIFIED
Smith U IturbideJapanOnyama Limba UNQUALIFIED
Johnson E DoeSpainElwin Sharvill PROPOSAL
Munro S RimIndiaAsiya Javayant UNQUALIFIED
Clifford H VenereItalyIvan Magalhaes NEGOTIATION
Aruna D RimCanadaOnyama Limba QUALIFIED
Cody F GlickGermanyOnyama Limba NEGOTIATION
Julie W PoquetteGermanyIvan Magalhaes UNQUALIFIED
Nicolas Y WhobreyItalyIvan Magalhaes RENEWAL
Ashley J SlusarskiIndiaXuxue Feng NEW
Claire Y RoysterBrazilStephen Shaw NEW
Cody T WhobreyRussiaAnna Fali NEW
Kaitlin B NestleArgentinaOnyama Limba NEGOTIATION
Jeanfrancois I SaylorsGermanyOnyama Limba PROPOSAL
Wickens E DoeItalyBernardo Dominic QUALIFIED
Izzy W FerenczJapanStephen Shaw RENEWAL
Aika E FigeroaGermanyXuxue Feng UNQUALIFIED
Claire I FigeroaSpainAsiya Javayant NEGOTIATION
Stacey H BologniaArgentinaIoni Bowcher UNQUALIFIED
Sinclair G OstroskyFranceOnyama Limba NEGOTIATION
Jennifer S InouyeRussiaOnyama Limba PROPOSAL
James N OstroskyAustraliaIoni Bowcher PROPOSAL
Antonio R InouyeFranceIvan Magalhaes NEW
Alejandro H GillianUnited KingdomAnna Fali RENEWAL
Aruna L WieserCanadaXuxue Feng NEGOTIATION
Jones W GlickUnited KingdomIoni Bowcher UNQUALIFIED
Maisha H InouyeFranceOnyama Limba RENEWAL
James B SlusarskiArgentinaAsiya Javayant NEW
Deepesh H FigeroaAustraliaIoni Bowcher QUALIFIED
Ricardo E AlbaresAustraliaAnna Fali NEGOTIATION
David E PerinCanadaAsiya Javayant QUALIFIED
Arvin D FigeroaIndiaStephen Shaw RENEWAL
James X PaprockiCanadaAnna Fali UNQUALIFIED
Chavez S FollerFranceAnna Fali UNQUALIFIED
Morrow Y OldroydAustraliaStephen Shaw RENEWAL
Sinclair X OldroydUnited KingdomAnna Fali RENEWAL
Izzy V BowleyArgentinaAsiya Javayant RENEWAL
Alejandro X WaycottItalyElwin Sharvill QUALIFIED
Wickens S RutaItalyAmy Elsner NEW
Maria B MaletArgentinaXuxue Feng NEGOTIATION
Maisha O StensethRussiaIvan Magalhaes NEW
Jones Z RoysterGermanyAsiya Javayant RENEWAL
Stacey X GillianItalyAnna Fali RENEWAL
Adams Y ChuiJapanAsiya Javayant RENEWAL
Murillo M CaldareraAustraliaBernardo Dominic RENEWAL
Misaki K SlusarskiUnited KingdomBernardo Dominic UNQUALIFIED
Mayumi Y AlbaresAustraliaAsiya Javayant RENEWAL
Horizontal
NameCountryRepresentativeStatus
Aruna P FollerFranceAnna Fali QUALIFIED
Misaki C MarrierSpainElwin Sharvill NEW
Kaitlin A ButtFranceAsiya Javayant NEW
Salvatore J ShinkoArgentinaIvan Magalhaes RENEWAL
David H RimIndiaAsiya Javayant NEGOTIATION
Ivar F AmigonSpainElwin Sharvill NEW
Arvin O NestleRussiaElwin Sharvill NEGOTIATION
Chavez M RutaIndiaIvan Magalhaes PROPOSAL
Clifford O AlbaresItalyAnna Fali QUALIFIED
Costa T BowleySpainAmy Elsner PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Stacey V CaudyCanada2024-06-05King, Christopher A Esq RENEWAL82Stephen Shaw
1001Juan X RulapaughAustralia2024-06-03Printing Dimensions UNQUALIFIED15Bernardo Dominic
1002Nicolas C AlbaresSpain2024-06-20Rangoni Of Florence UNQUALIFIED43Amy Elsner
1003Sinclair V GillianGermany2024-05-29Printing Dimensions PROPOSAL9Elwin Sharvill
1004Arvin Q StockhamRussia2024-06-12Dorl, James J Esq QUALIFIED60Bernardo Dominic
1005Stacey X FollerFrance2024-06-08King, Christopher A Esq PROPOSAL29Onyama Limba
1006Arvin J SergiRussia2024-06-17Commercial Press PROPOSAL56Ivan Magalhaes
1007Maria O VenereIndia2024-06-13Truhlar And Truhlar Attys NEGOTIATION52Ivan Magalhaes
1008Jennifer C OldroydAustralia2024-05-27King, Christopher A Esq UNQUALIFIED58Ioni Bowcher
1009Leon U SergiCanada2024-06-10Feiner Bros UNQUALIFIED29Asiya Javayant
1010Wickens D PaprockiGermany2024-06-01Chemel, James L Cpa NEGOTIATION91Ioni Bowcher
1011Cody N BowleySpain2024-06-08Chemel, James L Cpa UNQUALIFIED93Xuxue Feng
1012Rodrigues Z VenereCanada2024-06-19Feltz Printing Service UNQUALIFIED70Ioni Bowcher
1013Jeanfrancois H CaudyItaly2024-06-06Chemel, James L Cpa PROPOSAL80Stephen Shaw
1014Izzy A BriddickCanada2024-06-19Feltz Printing Service RENEWAL96Asiya Javayant
1015Johnson F CaudyIndia2024-06-17Chanay, Jeffrey A Esq PROPOSAL51Xuxue Feng
1016Greenwood I RoysterUnited Kingdom2024-05-27Commercial Press RENEWAL61Onyama Limba
1017Arvin W PaprockiRussia2024-06-10Chemel, James L Cpa RENEWAL11Elwin Sharvill
1018Deepesh R WieserBrazil2024-06-02Rousseaux, Michael Esq RENEWAL19Asiya Javayant
1019Morrow O SlusarskiSpain2024-06-04Chanay, Jeffrey A Esq RENEWAL13Bernardo Dominic
1020Aruna L CaldareraBrazil2024-05-30Chanay, Jeffrey A Esq PROPOSAL33Ioni Bowcher
1021Cody C SlusarskiBrazil2024-05-26King, Christopher A Esq NEGOTIATION50Bernardo Dominic
1022Jennifer C ChuiSpain2024-05-30Printing Dimensions NEGOTIATION93Stephen Shaw
1023Aruna A FigeroaItaly2024-06-11Feiner Bros NEGOTIATION76Xuxue Feng
1024Octavia M SlusarskiRussia2024-06-15Feiner Bros NEGOTIATION66Amy Elsner
1025Stacey T OstroskyItaly2024-05-29King, Christopher A Esq QUALIFIED74Ioni Bowcher
1026Murillo W WaycottIndia2024-06-16Chapman, Ross E Esq UNQUALIFIED48Asiya Javayant
1027Tony A RimCanada2024-06-17Rousseaux, Michael Esq UNQUALIFIED69Ioni Bowcher
1028Octavia N NickaRussia2024-05-27Chanay, Jeffrey A Esq RENEWAL90Bernardo Dominic
1029Deepesh Y TollnerIndia2024-06-17Rousseaux, Michael Esq NEGOTIATION97Bernardo Dominic
1030Mayumi M MacleadArgentina2024-06-13Buckley Miller Wright NEGOTIATION93Onyama Limba
1031Isabel C AmigonRussia2024-06-06Truhlar And Truhlar Attys NEW90Stephen Shaw
1032Morrow I StensethAustralia2024-05-29Truhlar And Truhlar Attys NEW83Bernardo Dominic
1033Wickens R MaletFrance2024-06-08Chanay, Jeffrey A Esq UNQUALIFIED79Asiya Javayant
1034Nicolas A OldroydArgentina2024-06-13Rousseaux, Michael Esq PROPOSAL8Anna Fali
1035Misaki J GlickItaly2024-06-07Chapman, Ross E Esq NEW39Elwin Sharvill
1036Juan L WaycottCanada2024-05-30Benton, John B Jr RENEWAL51Amy Elsner
1037Deepesh N RutaAustralia2024-06-16Printing Dimensions UNQUALIFIED11Xuxue Feng
1038Darci B MaletAustralia2024-06-05Truhlar And Truhlar Attys UNQUALIFIED75Elwin Sharvill
1039Morrow R MarrierItaly2024-05-30Rangoni Of Florence RENEWAL22Elwin Sharvill
1040Francesco N BologniaJapan2024-06-01Benton, John B Jr RENEWAL43Stephen Shaw
1041Mayumi F MaletCanada2024-05-26Commercial Press NEGOTIATION31Ivan Magalhaes
1042Aika G PaprockiCanada2024-05-29Chanay, Jeffrey A Esq PROPOSAL57Bernardo Dominic
1043Leon S GauchoAustralia2024-06-09Benton, John B Jr RENEWAL35Bernardo Dominic
1044Jones Y RulapaughBrazil2024-06-06Morlong Associates NEW60Xuxue Feng
1045Ivar X PerinIndia2024-05-27Benton, John B Jr QUALIFIED79Asiya Javayant
1046Isabel P BologniaSpain2024-06-16Chapman, Ross E Esq QUALIFIED77Onyama Limba
1047Leon X GarufiFrance2024-05-24King, Christopher A Esq NEW0Elwin Sharvill
1048Smith U BologniaSpain2024-06-02Benton, John B Jr NEW55Asiya Javayant
1049Johnson G TollnerRussia2024-05-28Truhlar And Truhlar Attys RENEWAL84Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Clifford Y SchemmerAustraliaElwin Sharvill PROPOSAL
Leja B WhobreyItalyAmy Elsner UNQUALIFIED
Mayumi U MarrierRussiaIoni Bowcher RENEWAL
Emily G AlbaresIndiaStephen Shaw NEW
Jennifer X BowleyRussiaIvan Magalhaes NEGOTIATION
Misaki S SaylorsRussiaElwin Sharvill PROPOSAL
Deepesh G KolmetzFranceBernardo Dominic NEGOTIATION
Jefferson J CaudyBrazilStephen Shaw NEW
Rodrigues G KolmetzRussiaIoni Bowcher NEGOTIATION
Ivar F MaletArgentinaAmy Elsner RENEWAL
Antonio Q CaldareraJapanElwin Sharvill RENEWAL
Jennifer D CaudyGermanyAnna Fali NEGOTIATION
Isabel C FerenczFranceIvan Magalhaes NEW
Adams L MorascaIndiaOnyama Limba QUALIFIED
Rodrigues A KolmetzCanadaXuxue Feng QUALIFIED
Chavez Q PoquetteAustraliaOnyama Limba UNQUALIFIED
Jeanfrancois X ButtBrazilAsiya Javayant UNQUALIFIED
Clifford M PoquetteFranceElwin Sharvill NEW
Jones H KolmetzBrazilAnna Fali UNQUALIFIED
Juan F MarrierGermanyIoni Bowcher NEW
Maisha G BriddickBrazilOnyama Limba NEW
Claire K ShinkoCanadaElwin Sharvill PROPOSAL
Juan D DarakjyCanadaBernardo Dominic UNQUALIFIED
Deepesh I FerenczFranceAnna Fali UNQUALIFIED
Juan I MorascaArgentinaIvan Magalhaes RENEWAL
Antonio N MacleadIndiaStephen Shaw RENEWAL
Wickens A SchemmerUnited KingdomElwin Sharvill NEGOTIATION
Antonio N WaycottAustraliaElwin Sharvill PROPOSAL
Kaitlin X TollnerBrazilAnna Fali PROPOSAL
Juan G KolmetzGermanyXuxue Feng PROPOSAL
Tony F DoeIndiaAnna Fali PROPOSAL
Tony O FlosiFranceXuxue Feng QUALIFIED
Stacey U WieserJapanIoni Bowcher PROPOSAL
Darci P MaletGermanyBernardo Dominic NEGOTIATION
Izzy Z PaprockiItalyAnna Fali UNQUALIFIED
Ashley A KuskoArgentinaIvan Magalhaes UNQUALIFIED
Maria K KuskoFranceAnna Fali UNQUALIFIED
Maisha T NickaGermanyStephen Shaw UNQUALIFIED
Julie N StensethFranceAmy Elsner NEGOTIATION
Faith P KuskoAustraliaAsiya Javayant PROPOSAL
James G KuskoItalyElwin Sharvill QUALIFIED
Kaitlin H FlosiBrazilBernardo Dominic NEGOTIATION
Francesco Q WhobreyIndiaAnna Fali QUALIFIED
Smith S AmigonGermanyBernardo Dominic UNQUALIFIED
Leon N CaudyIndiaIvan Magalhaes QUALIFIED
Jefferson Y StockhamRussiaAsiya Javayant NEW
Greenwood M SergiJapanAmy Elsner RENEWAL
Murillo L DoeCanadaOnyama Limba NEW
Morrow V OldroydGermanyStephen Shaw NEW
Greenwood X RimGermanyIvan Magalhaes NEGOTIATION
Frozen Columns
Name
Alejandro U Schemmer
Jeanfrancois Q Kusko
Julie R Maclead
Emily F Caudy
Ashley O Whobrey
Ricardo P Waycott
Adams Z Perin
Stacey W Iturbide
Ashley G Tollner
Francesco E Chui
Maisha R Paprocki
Johnson B Maclead
Johnson R Waycott
Stacey S Stenseth
Jennifer Q Vocelka
Aruna Y Bowley
Francesco C Vocelka
Isabel S Marrier
Murillo Q Bowley
Adams S Malet
James F Sergi
Jefferson M Inouye
Aruna P Dilliard
Arvin K Campain
Jefferson M Chui
Claire R Whobrey
Jeanfrancois W Tollner
Silvio H Maclead
Ivar D Albares
Francesco J Malet
Octavia A Sergi
Ricardo X Albares
Julie K Ferencz
Rodrigues V Saylors
Smith M Nestle
Maisha V Gaucho
Rodrigues F Bolognia
Claire M Doe
Munro I Amigon
Tony P Chui
Jones S Tollner
Nicolas P Albares
Faith L Briddick
Isabel M Whobrey
Silvio P Albares
Adams E Kolmetz
Aika C Marrier
Julie G Tollner
Jones Z Paprocki
Alejandro Q Glick
IdCountryDate
1000United Kingdom2024-05-27
1001Germany2024-06-03
1002United Kingdom2024-05-30
1003United Kingdom2024-06-20
1004India2024-06-02
1005Argentina2024-06-21
1006France2024-05-28
1007Canada2024-05-29
1008Italy2024-06-18
1009Italy2024-06-14
1010Australia2024-06-08
1011Australia2024-05-24
1012Japan2024-06-11
1013United Kingdom2024-05-27
1014Australia2024-06-07
1015Germany2024-06-04
1016Brazil2024-06-11
1017India2024-05-25
1018Germany2024-06-13
1019Argentina2024-06-19
1020Spain2024-05-28
1021India2024-05-26
1022Italy2024-05-26
1023Japan2024-06-09
1024Brazil2024-05-24
1025Canada2024-06-02
1026Japan2024-06-12
1027Russia2024-06-13
1028Russia2024-06-19
1029Germany2024-05-30
1030Argentina2024-06-12
1031Germany2024-06-17
1032Canada2024-06-10
1033Canada2024-06-07
1034Japan2024-06-09
1035Australia2024-05-24
1036United Kingdom2024-06-10
1037Argentina2024-05-24
1038Italy2024-06-06
1039Japan2024-05-28
1040Italy2024-06-13
1041Japan2024-06-05
1042Brazil2024-05-26
1043Italy2024-06-05
1044Australia2024-06-14
1045Japan2024-05-28
1046France2024-06-07
1047Japan2024-06-15
1048Spain2024-06-22
1049Russia2024-06-21

On-Demand Data

NameIdCountryDate
Leon F Iturbide1000Italy2024-06-04
Isabel S Rulapaugh1001India2024-06-13
Arvin V Venere1002France2024-06-22
Maria F Stockham1003Spain2024-06-17
Deepesh I Maclead1004United Kingdom2024-05-24
Clifford U Rulapaugh1005Germany2024-05-31
Izzy I Amigon1006Canada2024-06-22
Rodrigues N Briddick1007France2024-05-24
Stacey C Shinko1008Japan2024-05-26
Munro F Bolognia1009Brazil2024-06-17
Adams C Stenseth1010Spain2024-06-20
Maisha F Doe1011India2024-06-01
Isabel F Glick1012India2024-06-12
Rodrigues H Venere1013Russia2024-05-26
Jeanfrancois W Poquette1014Spain2024-06-19
Nicolas D Marrier1015Russia2024-06-12
Octavia C Briddick1016Spain2024-06-14
Adams C Iturbide1017United Kingdom2024-06-13
Tony R Oldroyd1018Spain2024-06-14
Silvio W Malet1019Spain2024-06-06
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Isabel R SaylorsBrazilElwin Sharvill QUALIFIED
Clifford C RulapaughGermanyStephen Shaw QUALIFIED
Greenwood M FollerRussiaStephen Shaw NEGOTIATION
Ashley V OldroydAustraliaElwin Sharvill QUALIFIED
Mujtaba Y StensethCanadaBernardo Dominic QUALIFIED
Mayumi Q SlusarskiBrazilIoni Bowcher NEGOTIATION
Ricardo Q GarufiFranceAnna Fali UNQUALIFIED
Mayumi D PoquetteIndiaXuxue Feng UNQUALIFIED
Murillo A RulapaughArgentinaIvan Magalhaes NEGOTIATION
Julie I WhobreyArgentinaAsiya Javayant UNQUALIFIED
Maisha B MaletArgentinaIvan Magalhaes NEGOTIATION
Salvatore B SchemmerAustraliaStephen Shaw PROPOSAL
Murillo G GillianArgentinaXuxue Feng UNQUALIFIED
David I CaldareraFranceAsiya Javayant RENEWAL
Julie R MaletAustraliaBernardo Dominic PROPOSAL
Salvatore O MaletSpainStephen Shaw PROPOSAL
Maria Z InouyeUnited KingdomOnyama Limba UNQUALIFIED
Ashley J KuskoBrazilXuxue Feng NEW
Maisha R CaldareraSpainIvan Magalhaes RENEWAL
Kaitlin Q GauchoAustraliaXuxue Feng PROPOSAL
Ivar V FollerSpainOnyama Limba PROPOSAL
Faith R KolmetzJapanStephen Shaw NEW
Ricardo S WaycottAustraliaAsiya Javayant NEGOTIATION
Ricardo N AlbaresRussiaAnna Fali NEGOTIATION
Faith S SaylorsIndiaBernardo Dominic NEW
Kaitlin O FigeroaFranceIoni Bowcher NEW
Ivar R AlbaresSpainIvan Magalhaes NEW
Mayumi V MarrierRussiaAnna Fali UNQUALIFIED
Morrow A GauchoCanadaAnna Fali QUALIFIED
Octavia X VocelkaUnited KingdomAsiya Javayant NEGOTIATION
Wickens F GlickArgentinaAsiya Javayant RENEWAL
Leon W CampainUnited KingdomAnna Fali RENEWAL
Clifford I RutaBrazilIvan Magalhaes NEW
Aruna T PerinSpainOnyama Limba RENEWAL
Maria F KuskoGermanyIvan Magalhaes QUALIFIED
Izzy H CampainItalyIoni Bowcher NEW
Kaitlin W RutaBrazilStephen Shaw NEW
Kaitlin Q IturbideCanadaXuxue Feng RENEWAL
Jefferson Y CaldareraBrazilBernardo Dominic QUALIFIED
Julie G BologniaRussiaAmy Elsner 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>