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
Greenwood Z MaletUnited KingdomElwin Sharvill RENEWAL
Maisha H DarakjyIndiaElwin Sharvill QUALIFIED
Ricardo C StensethUnited KingdomStephen Shaw NEW
Rodrigues A PoquetteBrazilAnna Fali RENEWAL
Octavia I ChuiFranceAmy Elsner UNQUALIFIED
Aruna O FerenczFranceBernardo Dominic NEW
Cody C WaycottCanadaAnna Fali UNQUALIFIED
Greenwood L MorascaFranceAnna Fali PROPOSAL
Cody E VenereAustraliaAsiya Javayant QUALIFIED
Cody W MacleadIndiaOnyama Limba NEW
Maria N MaletItalyBernardo Dominic RENEWAL
Octavia W MacleadFranceAsiya Javayant PROPOSAL
Cody L FerenczGermanyXuxue Feng QUALIFIED
Cody F CaudySpainElwin Sharvill NEW
Misaki H RimFranceAnna Fali RENEWAL
Jennifer B WieserJapanIvan Magalhaes PROPOSAL
Isabel S FlosiIndiaStephen Shaw RENEWAL
Costa P RulapaughAustraliaOnyama Limba RENEWAL
Costa B CaudyFranceBernardo Dominic NEW
Jones U MarrierFranceOnyama Limba NEW
Leja H FollerJapanAnna Fali RENEWAL
Aruna V ButtUnited KingdomBernardo Dominic RENEWAL
Tony F RutaGermanyXuxue Feng QUALIFIED
Aditya K StockhamSpainIvan Magalhaes PROPOSAL
Octavia S FlosiJapanBernardo Dominic NEW
Rodrigues F BologniaIndiaIvan Magalhaes QUALIFIED
Murillo Y StockhamSpainAsiya Javayant NEW
Arvin R PaprockiFranceOnyama Limba NEW
Antonio E GillianAustraliaIoni Bowcher NEW
Izzy K OstroskyBrazilIoni Bowcher NEGOTIATION
Octavia V IturbideFranceAmy Elsner UNQUALIFIED
Kaitlin N NickaSpainAmy Elsner PROPOSAL
Kaitlin G VenereRussiaXuxue Feng NEGOTIATION
Smith J BriddickBrazilStephen Shaw QUALIFIED
Nicolas M BowleyBrazilOnyama Limba NEGOTIATION
Alejandro Z VocelkaItalyBernardo Dominic UNQUALIFIED
Clifford B NickaArgentinaXuxue Feng PROPOSAL
Jefferson I GauchoUnited KingdomIvan Magalhaes UNQUALIFIED
Kaitlin H DarakjyJapanIoni Bowcher NEW
Juan Q SergiBrazilAmy Elsner QUALIFIED
Darci P MorascaSpainIvan Magalhaes NEGOTIATION
Kadeem I FigeroaItalyAnna Fali NEW
Chavez B RulapaughSpainStephen Shaw QUALIFIED
Jefferson F RoysterItalyOnyama Limba PROPOSAL
Adams S RoysterFranceXuxue Feng UNQUALIFIED
Chavez S DilliardCanadaIvan Magalhaes PROPOSAL
Aruna C StockhamSpainAnna Fali NEW
Deepesh O WhobreyGermanyBernardo Dominic NEW
Clifford X OldroydRussiaIoni Bowcher RENEWAL
Darci R FollerArgentinaIoni Bowcher PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Silvio V KolmetzItalyIvan Magalhaes PROPOSAL
Munro O DarakjyBrazilOnyama Limba NEGOTIATION
Rodrigues Z MarrierGermanyAsiya Javayant PROPOSAL
Izzy C MaletFranceElwin Sharvill PROPOSAL
Maisha X AmigonGermanyAmy Elsner PROPOSAL
Ashley S StensethCanadaAnna Fali PROPOSAL
James S CaudyJapanAnna Fali NEGOTIATION
Aruna J WaycottJapanIvan Magalhaes UNQUALIFIED
Leja J BologniaGermanyXuxue Feng QUALIFIED
Aditya O FollerRussiaStephen Shaw NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ivar T RimGermany2024-06-11Dorl, James J Esq NEW60Elwin Sharvill
1001Smith Y MorascaRussia2024-06-04King, Christopher A Esq UNQUALIFIED43Asiya Javayant
1002Antonio W DilliardBrazil2024-05-26Chemel, James L Cpa UNQUALIFIED74Stephen Shaw
1003Salvatore N MaletBrazil2024-06-09King, Christopher A Esq NEW41Xuxue Feng
1004James H NickaUnited Kingdom2024-06-11Rousseaux, Michael Esq QUALIFIED1Onyama Limba
1005Jeanfrancois Y GarufiItaly2024-06-22Chapman, Ross E Esq NEW28Stephen Shaw
1006Johnson H ButtBrazil2024-05-30Feiner Bros NEGOTIATION87Ioni Bowcher
1007Maria D MaletArgentina2024-06-09Commercial Press PROPOSAL39Onyama Limba
1008Leja S TollnerAustralia2024-05-30Rousseaux, Michael Esq QUALIFIED47Xuxue Feng
1009David H FerenczIndia2024-06-10Feltz Printing Service NEW28Elwin Sharvill
1010Kadeem W WieserIndia2024-06-10Chapman, Ross E Esq UNQUALIFIED80Bernardo Dominic
1011Faith O FerenczArgentina2024-06-05Commercial Press RENEWAL62Bernardo Dominic
1012Greenwood N BologniaJapan2024-06-12King, Christopher A Esq NEGOTIATION18Ioni Bowcher
1013Kadeem Q VocelkaBrazil2024-06-06Rousseaux, Michael Esq UNQUALIFIED71Stephen Shaw
1014Munro S MacleadGermany2024-05-26Chemel, James L Cpa PROPOSAL60Anna Fali
1015Morrow V PerinItaly2024-06-09Chanay, Jeffrey A Esq UNQUALIFIED34Xuxue Feng
1016Deepesh C MacleadSpain2024-06-07Chapman, Ross E Esq RENEWAL32Ivan Magalhaes
1017Arvin Y OstroskyItaly2024-06-12Printing Dimensions UNQUALIFIED36Ioni Bowcher
1018Aditya N CaldareraFrance2024-06-20Feiner Bros NEGOTIATION82Xuxue Feng
1019James B VenereCanada2024-06-18Truhlar And Truhlar Attys NEW93Bernardo Dominic
1020Wickens Z MarrierIndia2024-06-09Benton, John B Jr RENEWAL87Stephen Shaw
1021Leja F CaudyRussia2024-06-13Dorl, James J Esq NEW66Elwin Sharvill
1022Jennifer A TollnerSpain2024-06-22Rousseaux, Michael Esq RENEWAL9Bernardo Dominic
1023Maria B SlusarskiItaly2024-05-26Rousseaux, Michael Esq PROPOSAL55Elwin Sharvill
1024Greenwood B WaycottItaly2024-06-09Rangoni Of Florence PROPOSAL78Elwin Sharvill
1025Kaitlin V StockhamFrance2024-06-04Truhlar And Truhlar Attys RENEWAL65Asiya Javayant
1026Morrow X PerinArgentina2024-06-02Truhlar And Truhlar Attys PROPOSAL30Ioni Bowcher
1027Jennifer Z BologniaItaly2024-06-02Printing Dimensions NEGOTIATION38Bernardo Dominic
1028Sinclair F MaletUnited Kingdom2024-06-13King, Christopher A Esq RENEWAL69Bernardo Dominic
1029Kadeem R RimIndia2024-05-30King, Christopher A Esq RENEWAL89Anna Fali
1030James O FollerUnited Kingdom2024-05-29Chapman, Ross E Esq PROPOSAL77Ioni Bowcher
1031Leja X BologniaJapan2024-05-30Chapman, Ross E Esq PROPOSAL67Ioni Bowcher
1032Kaitlin M MaletFrance2024-06-03Buckley Miller Wright RENEWAL8Anna Fali
1033Mujtaba S IturbideSpain2024-06-04Chemel, James L Cpa PROPOSAL94Ioni Bowcher
1034Misaki Z MacleadRussia2024-06-17Commercial Press NEGOTIATION63Ioni Bowcher
1035Leon N StockhamRussia2024-06-01Benton, John B Jr NEGOTIATION23Xuxue Feng
1036Rodrigues U DilliardSpain2024-06-20Benton, John B Jr PROPOSAL2Ivan Magalhaes
1037Morrow L BriddickJapan2024-06-18King, Christopher A Esq UNQUALIFIED9Ioni Bowcher
1038Ivar Z MarrierBrazil2024-05-31Chapman, Ross E Esq QUALIFIED26Elwin Sharvill
1039Greenwood E PoquetteSpain2024-06-07Dorl, James J Esq PROPOSAL47Asiya Javayant
1040David P KuskoGermany2024-06-16Truhlar And Truhlar Attys QUALIFIED53Anna Fali
1041Cody R StockhamAustralia2024-06-16King, Christopher A Esq UNQUALIFIED67Xuxue Feng
1042Sinclair Q AmigonFrance2024-06-20Benton, John B Jr UNQUALIFIED28Xuxue Feng
1043Ricardo C InouyeUnited Kingdom2024-06-02King, Christopher A Esq NEGOTIATION78Stephen Shaw
1044Antonio A SlusarskiUnited Kingdom2024-05-30Truhlar And Truhlar Attys RENEWAL20Xuxue Feng
1045Clifford H FigeroaGermany2024-06-05Dorl, James J Esq NEW97Ioni Bowcher
1046Chavez H PerinBrazil2024-06-08Buckley Miller Wright PROPOSAL14Ivan Magalhaes
1047Adams N TollnerUnited Kingdom2024-06-01Printing Dimensions NEGOTIATION41Amy Elsner
1048Sinclair L StockhamJapan2024-06-02Commercial Press UNQUALIFIED41Anna Fali
1049Mujtaba D SaylorsAustralia2024-06-22Buckley Miller Wright RENEWAL21Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Misaki B RoysterFranceBernardo Dominic UNQUALIFIED
Juan S DarakjyArgentinaOnyama Limba PROPOSAL
Murillo W KuskoCanadaXuxue Feng NEW
Aruna C TollnerArgentinaElwin Sharvill NEW
Izzy G FollerUnited KingdomStephen Shaw UNQUALIFIED
Aditya D VocelkaBrazilAmy Elsner RENEWAL
Faith Q AlbaresGermanyAsiya Javayant NEGOTIATION
Ricardo K GillianSpainElwin Sharvill QUALIFIED
Nicolas W NestleFranceOnyama Limba PROPOSAL
Mujtaba X WhobreySpainIoni Bowcher NEGOTIATION
Francesco E KuskoBrazilIvan Magalhaes NEW
Nicolas R FollerRussiaOnyama Limba QUALIFIED
David Q ChuiCanadaXuxue Feng PROPOSAL
Antonio P CampainBrazilBernardo Dominic UNQUALIFIED
Isabel Y MaletIndiaAnna Fali RENEWAL
Jefferson L PaprockiAustraliaIoni Bowcher RENEWAL
Arvin E CaudySpainStephen Shaw PROPOSAL
Jennifer S VocelkaFranceXuxue Feng UNQUALIFIED
Greenwood G GauchoArgentinaIoni Bowcher UNQUALIFIED
Darci L BologniaAustraliaIoni Bowcher UNQUALIFIED
Faith R MaletItalyIoni Bowcher PROPOSAL
Greenwood Z DilliardIndiaIoni Bowcher QUALIFIED
Greenwood H PoquetteCanadaXuxue Feng RENEWAL
Emily B KuskoItalyXuxue Feng QUALIFIED
Salvatore L GarufiFranceIvan Magalhaes RENEWAL
Isabel M KolmetzFranceAmy Elsner UNQUALIFIED
Maisha J FlosiRussiaXuxue Feng NEGOTIATION
Leon D WhobreyIndiaOnyama Limba NEW
Nicolas V KuskoCanadaXuxue Feng RENEWAL
Kaitlin Z RimAustraliaStephen Shaw NEGOTIATION
Aruna H GauchoAustraliaXuxue Feng RENEWAL
Leja S RimRussiaBernardo Dominic RENEWAL
Adams K RimJapanAsiya Javayant NEW
Leon H PerinGermanyBernardo Dominic PROPOSAL
Munro Z SlusarskiItalyBernardo Dominic NEGOTIATION
Maisha L OldroydCanadaXuxue Feng RENEWAL
Costa E BologniaSpainElwin Sharvill PROPOSAL
Murillo R FlosiArgentinaXuxue Feng UNQUALIFIED
Jennifer O FlosiSpainStephen Shaw PROPOSAL
Misaki I MarrierGermanyStephen Shaw QUALIFIED
Juan P CaldareraUnited KingdomOnyama Limba UNQUALIFIED
David P DoeGermanyElwin Sharvill QUALIFIED
Misaki I SaylorsFranceIoni Bowcher UNQUALIFIED
Kaitlin D FollerSpainAsiya Javayant RENEWAL
Nicolas Y StensethArgentinaXuxue Feng PROPOSAL
Julie J WieserBrazilOnyama Limba NEGOTIATION
Murillo V MarrierArgentinaXuxue Feng QUALIFIED
Munro L MaletAustraliaAmy Elsner UNQUALIFIED
Sinclair E GauchoFranceElwin Sharvill PROPOSAL
Leja R TollnerJapanAsiya Javayant PROPOSAL
Frozen Columns
Name
Izzy F Foller
Julie C Dilliard
Nicolas D Caldarera
Jones U Briddick
Sinclair B Vocelka
Maisha U Ostrosky
Leja U Whobrey
Juan R Malet
Sinclair N Tollner
Isabel E Maclead
Costa Y Chui
Claire D Gaucho
Morrow W Glick
Aika E Ostrosky
Adams X Inouye
Sinclair C Sergi
Tony F Maclead
Greenwood Z Inouye
Costa B Venere
Munro O Saylors
Aruna T Ruta
Jones E Bolognia
Darci N Butt
Juan Z Albares
Misaki L Stenseth
Adams Q Briddick
Deepesh R Briddick
Murillo P Ostrosky
Izzy H Darakjy
Clifford G Briddick
Greenwood H Garufi
Jones O Ostrosky
Chavez C Darakjy
Ashley N Dilliard
Arvin T Sergi
Nicolas C Dilliard
Sinclair F Marrier
Faith C Sergi
Mayumi D Caudy
Juan H Stockham
Maisha T Butt
Izzy Q Kusko
Munro R Kusko
Smith W Slusarski
Mayumi M Kolmetz
Stacey J Nestle
Octavia Q Flosi
Arvin N Amigon
Mujtaba C Bolognia
Salvatore E Whobrey
IdCountryDate
1000Italy2024-05-28
1001Canada2024-06-13
1002United Kingdom2024-06-04
1003India2024-06-03
1004United Kingdom2024-06-18
1005France2024-06-09
1006Australia2024-06-21
1007Japan2024-06-03
1008Australia2024-06-23
1009Canada2024-06-04
1010Spain2024-06-22
1011Spain2024-06-19
1012Brazil2024-06-08
1013Japan2024-06-05
1014Japan2024-06-15
1015Australia2024-05-30
1016India2024-06-11
1017Canada2024-05-31
1018France2024-06-04
1019Brazil2024-06-03
1020Italy2024-06-02
1021United Kingdom2024-06-20
1022France2024-05-30
1023Italy2024-06-17
1024India2024-05-27
1025Australia2024-06-04
1026India2024-06-18
1027Japan2024-06-08
1028India2024-06-12
1029Canada2024-06-06
1030Australia2024-06-17
1031Japan2024-05-30
1032India2024-06-21
1033United Kingdom2024-06-19
1034Canada2024-06-14
1035Japan2024-06-06
1036Germany2024-05-30
1037Canada2024-06-10
1038France2024-06-03
1039Canada2024-06-02
1040Spain2024-06-01
1041United Kingdom2024-06-23
1042Italy2024-06-15
1043Argentina2024-06-05
1044Brazil2024-05-25
1045Canada2024-06-20
1046Spain2024-06-14
1047France2024-06-10
1048Russia2024-06-03
1049Argentina2024-06-06

On-Demand Data

NameIdCountryDate
Sinclair Z Bolognia1000United Kingdom2024-06-04
Antonio G Malet1001Germany2024-06-02
Costa E Gaucho1002United Kingdom2024-05-31
Juan I Caudy1003Japan2024-06-09
Mayumi H Stenseth1004France2024-06-09
Clifford V Ferencz1005Spain2024-06-18
Faith E Sergi1006Italy2024-06-20
Tony O Saylors1007France2024-06-16
Misaki D Shinko1008Canada2024-06-01
Faith L Amigon1009France2024-06-10
Juan C Rulapaugh1010Argentina2024-06-19
Munro M Waycott1011Russia2024-06-03
Murillo G Oldroyd1012Australia2024-06-15
Aika L Garufi1013India2024-06-20
Sinclair B Ruta1014Italy2024-06-10
Nicolas S Darakjy1015France2024-06-09
Leon B Caldarera1016Australia2024-05-26
Juan Q Ruta1017India2024-06-13
David J Glick1018India2024-06-08
Maria B Nestle1019Canada2024-06-09
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Greenwood H TollnerGermanyIoni Bowcher UNQUALIFIED
Antonio B CaudyCanadaBernardo Dominic RENEWAL
Jefferson D OstroskyArgentinaAnna Fali NEGOTIATION
Faith A AlbaresItalyAsiya Javayant NEGOTIATION
Smith W MaletAustraliaXuxue Feng UNQUALIFIED
Maria O GlickUnited KingdomAsiya Javayant NEGOTIATION
Jeanfrancois F StockhamJapanOnyama Limba NEGOTIATION
Johnson V VenereArgentinaAsiya Javayant RENEWAL
Maria H MaletIndiaIvan Magalhaes NEW
Isabel W NickaFranceOnyama Limba NEW
Aruna R DoeIndiaAnna Fali RENEWAL
Clifford I NickaRussiaOnyama Limba QUALIFIED
Deepesh S NestleAustraliaXuxue Feng PROPOSAL
Aruna M StockhamUnited KingdomIvan Magalhaes QUALIFIED
Adams U VenereFranceXuxue Feng PROPOSAL
Ivar R SergiAustraliaElwin Sharvill PROPOSAL
Maisha M RoysterArgentinaIvan Magalhaes UNQUALIFIED
Greenwood C PaprockiJapanXuxue Feng QUALIFIED
David Z ChuiAustraliaAsiya Javayant UNQUALIFIED
Alejandro G WaycottRussiaAmy Elsner QUALIFIED
Aruna U PaprockiArgentinaAmy Elsner UNQUALIFIED
Kadeem V BologniaRussiaElwin Sharvill PROPOSAL
Clifford N PerinJapanAnna Fali QUALIFIED
Mayumi L KuskoSpainStephen Shaw RENEWAL
Murillo J OldroydSpainIvan Magalhaes QUALIFIED
Tony Y StockhamAustraliaOnyama Limba NEW
Maisha M GlickBrazilStephen Shaw QUALIFIED
Ashley P VenereRussiaElwin Sharvill PROPOSAL
Munro F SchemmerCanadaAsiya Javayant QUALIFIED
Emily V WhobreyUnited KingdomAnna Fali NEW
Salvatore E VenereFranceAsiya Javayant UNQUALIFIED
Misaki V MarrierGermanyIoni Bowcher QUALIFIED
Silvio N FollerUnited KingdomAnna Fali NEW
Ricardo I FerenczJapanIoni Bowcher NEW
Ivar Q CampainJapanXuxue Feng UNQUALIFIED
Murillo O CaudyAustraliaStephen Shaw RENEWAL
Aditya M StensethIndiaOnyama Limba QUALIFIED
Adams G WaycottRussiaAmy Elsner NEW
Clifford P FollerRussiaAmy Elsner RENEWAL
Tony P SchemmerRussiaBernardo 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>