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
Izzy V GillianUnited KingdomAnna Fali QUALIFIED
Silvio B GauchoUnited KingdomOnyama Limba NEW
Arvin M WaycottCanadaStephen Shaw QUALIFIED
Jennifer X StensethGermanyIoni Bowcher RENEWAL
Darci X AlbaresSpainIoni Bowcher QUALIFIED
Ivar C GlickArgentinaAnna Fali NEGOTIATION
Tony W WhobreyIndiaAmy Elsner NEW
Ashley L InouyeBrazilAmy Elsner PROPOSAL
Isabel H MaletItalyOnyama Limba PROPOSAL
Johnson X SlusarskiGermanyIvan Magalhaes QUALIFIED
Sinclair D TollnerJapanAnna Fali NEGOTIATION
Jeanfrancois U WieserUnited KingdomStephen Shaw QUALIFIED
Morrow A CampainSpainAmy Elsner RENEWAL
Smith G DarakjyUnited KingdomIoni Bowcher NEW
James Z MaletIndiaAsiya Javayant NEW
Misaki G SlusarskiFranceStephen Shaw QUALIFIED
Ashley T ButtArgentinaStephen Shaw RENEWAL
Munro D AlbaresCanadaAnna Fali UNQUALIFIED
Leja H VocelkaRussiaAmy Elsner NEW
Darci X StockhamCanadaIvan Magalhaes QUALIFIED
Julie X KuskoArgentinaBernardo Dominic NEGOTIATION
Juan B SaylorsUnited KingdomBernardo Dominic QUALIFIED
Maisha Z CaldareraUnited KingdomAmy Elsner PROPOSAL
Aditya I RulapaughJapanBernardo Dominic NEW
Maisha L VocelkaCanadaBernardo Dominic QUALIFIED
Kaitlin N CaudySpainIvan Magalhaes PROPOSAL
Smith F WhobreyUnited KingdomIoni Bowcher NEW
James M WhobreySpainIvan Magalhaes NEW
Arvin S GlickCanadaElwin Sharvill PROPOSAL
James J BriddickJapanStephen Shaw QUALIFIED
Clifford F RoysterItalyStephen Shaw NEW
Silvio E VenereUnited KingdomAsiya Javayant NEGOTIATION
Misaki C RimIndiaIoni Bowcher QUALIFIED
Aditya F GarufiRussiaIoni Bowcher UNQUALIFIED
Kaitlin J SergiUnited KingdomAnna Fali PROPOSAL
Sinclair H AlbaresGermanyIoni Bowcher NEGOTIATION
Smith Z SaylorsSpainStephen Shaw RENEWAL
Mayumi N PerinGermanyOnyama Limba UNQUALIFIED
Ricardo H CaldareraItalyAsiya Javayant QUALIFIED
Jefferson E CampainFranceAmy Elsner RENEWAL
Stacey Q MacleadIndiaAnna Fali NEGOTIATION
Wickens Q VocelkaIndiaIoni Bowcher UNQUALIFIED
Kaitlin C DarakjyAustraliaAsiya Javayant QUALIFIED
Sinclair A GillianBrazilAnna Fali QUALIFIED
Rodrigues T NickaAustraliaStephen Shaw NEW
Jennifer R MorascaItalyBernardo Dominic NEW
Sinclair F GarufiArgentinaOnyama Limba UNQUALIFIED
Aditya L CaudyFranceBernardo Dominic QUALIFIED
Misaki E ShinkoJapanXuxue Feng NEGOTIATION
James N MaletIndiaIvan Magalhaes NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Kadeem T ChuiArgentinaElwin Sharvill PROPOSAL
Greenwood H KuskoFranceAnna Fali UNQUALIFIED
Octavia D AlbaresRussiaAnna Fali PROPOSAL
Cody D BriddickUnited KingdomIoni Bowcher NEGOTIATION
Juan V ChuiUnited KingdomBernardo Dominic QUALIFIED
Chavez O SlusarskiSpainAsiya Javayant RENEWAL
Aditya W VenereItalyAnna Fali NEGOTIATION
Maria C MacleadBrazilOnyama Limba NEGOTIATION
Stacey S KolmetzAustraliaOnyama Limba PROPOSAL
Smith L StensethFranceIvan Magalhaes NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Tony H BriddickFrance2024-05-25Benton, John B Jr NEW0Elwin Sharvill
1001Aruna R OldroydAustralia2024-06-07Chanay, Jeffrey A Esq PROPOSAL33Ivan Magalhaes
1002Leja F NickaBrazil2024-05-31Benton, John B Jr PROPOSAL29Asiya Javayant
1003Faith U ShinkoItaly2024-06-17King, Christopher A Esq PROPOSAL73Ioni Bowcher
1004Mujtaba O SergiGermany2024-06-01Commercial Press RENEWAL53Asiya Javayant
1005Maria C MaletRussia2024-05-25Feiner Bros RENEWAL45Anna Fali
1006David A BologniaBrazil2024-06-15Benton, John B Jr UNQUALIFIED56Ivan Magalhaes
1007Isabel N NickaItaly2024-06-20Rangoni Of Florence NEW19Stephen Shaw
1008Stacey C PoquetteRussia2024-05-27Rangoni Of Florence RENEWAL96Bernardo Dominic
1009Deepesh J KolmetzFrance2024-06-08Truhlar And Truhlar Attys PROPOSAL0Onyama Limba
1010Silvio M ShinkoSpain2024-06-17Rousseaux, Michael Esq NEGOTIATION26Onyama Limba
1011Kaitlin X MaletUnited Kingdom2024-06-16King, Christopher A Esq NEGOTIATION76Stephen Shaw
1012Chavez L MaletArgentina2024-06-02Dorl, James J Esq UNQUALIFIED76Ivan Magalhaes
1013Mayumi G GillianCanada2024-05-30Chapman, Ross E Esq NEGOTIATION54Anna Fali
1014Wickens Y SergiArgentina2024-06-10Truhlar And Truhlar Attys NEW31Amy Elsner
1015Ivar X DoeIndia2024-05-25Truhlar And Truhlar Attys UNQUALIFIED24Xuxue Feng
1016Salvatore I MaletRussia2024-05-25Rousseaux, Michael Esq QUALIFIED36Ioni Bowcher
1017Arvin R PerinItaly2024-06-10King, Christopher A Esq PROPOSAL68Amy Elsner
1018Aruna X AlbaresGermany2024-06-19Chanay, Jeffrey A Esq PROPOSAL16Amy Elsner
1019Jennifer R BriddickBrazil2024-06-16Chapman, Ross E Esq NEW48Amy Elsner
1020Claire M FlosiFrance2024-05-29Chapman, Ross E Esq QUALIFIED53Amy Elsner
1021James U ChuiRussia2024-06-03Commercial Press RENEWAL76Asiya Javayant
1022Salvatore O NestleGermany2024-05-31Feltz Printing Service NEGOTIATION46Stephen Shaw
1023Jones Y FerenczJapan2024-06-12Chanay, Jeffrey A Esq QUALIFIED93Ivan Magalhaes
1024Ivar E MaletUnited Kingdom2024-06-01Morlong Associates UNQUALIFIED17Ivan Magalhaes
1025Kaitlin K RoysterItaly2024-05-29Buckley Miller Wright NEW87Elwin Sharvill
1026Arvin E MorascaFrance2024-06-20Chemel, James L Cpa RENEWAL94Amy Elsner
1027Munro E BriddickSpain2024-06-14Morlong Associates NEW12Ivan Magalhaes
1028Maisha V DarakjyFrance2024-06-21Benton, John B Jr NEGOTIATION88Asiya Javayant
1029Claire N PerinUnited Kingdom2024-06-07Buckley Miller Wright PROPOSAL15Stephen Shaw
1030Stacey Y StockhamItaly2024-05-25Feltz Printing Service NEGOTIATION24Amy Elsner
1031Silvio F GillianJapan2024-05-30Feiner Bros NEGOTIATION13Stephen Shaw
1032Claire X WhobreyBrazil2024-06-11Chemel, James L Cpa QUALIFIED45Ioni Bowcher
1033Mayumi I GauchoSpain2024-05-29Chanay, Jeffrey A Esq QUALIFIED60Xuxue Feng
1034Kadeem D PerinBrazil2024-06-14Chapman, Ross E Esq QUALIFIED39Stephen Shaw
1035Emily Q MaletArgentina2024-06-14Rangoni Of Florence NEGOTIATION60Stephen Shaw
1036Antonio V RutaRussia2024-05-24Rousseaux, Michael Esq RENEWAL33Ioni Bowcher
1037Jeanfrancois X AmigonFrance2024-05-24Chemel, James L Cpa RENEWAL39Ioni Bowcher
1038Leon C SaylorsUnited Kingdom2024-06-07Commercial Press NEGOTIATION46Onyama Limba
1039Morrow Z GauchoGermany2024-06-21Chemel, James L Cpa RENEWAL59Stephen Shaw
1040Chavez P ButtItaly2024-06-14King, Christopher A Esq NEGOTIATION73Anna Fali
1041Ashley E KuskoSpain2024-06-20Benton, John B Jr NEW14Asiya Javayant
1042Sinclair E NickaItaly2024-06-12Commercial Press NEGOTIATION90Bernardo Dominic
1043Maria V DarakjyAustralia2024-06-10Chemel, James L Cpa QUALIFIED89Stephen Shaw
1044Claire Y StockhamItaly2024-06-11King, Christopher A Esq NEW5Bernardo Dominic
1045Murillo S GillianBrazil2024-06-16Printing Dimensions NEGOTIATION0Stephen Shaw
1046Francesco F FigeroaIndia2024-06-04Dorl, James J Esq UNQUALIFIED13Bernardo Dominic
1047Jennifer F SchemmerBrazil2024-06-10Chemel, James L Cpa QUALIFIED97Ioni Bowcher
1048Leja P MorascaJapan2024-06-08Feltz Printing Service PROPOSAL36Amy Elsner
1049Mujtaba O KuskoGermany2024-05-26Buckley Miller Wright QUALIFIED59Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Leon Y MaletItalyAmy Elsner UNQUALIFIED
Ricardo Q FerenczAustraliaStephen Shaw PROPOSAL
Juan G InouyeAustraliaAnna Fali UNQUALIFIED
Jeanfrancois A KolmetzJapanIoni Bowcher RENEWAL
Smith Q OldroydAustraliaBernardo Dominic QUALIFIED
Silvio F ChuiAustraliaAmy Elsner NEGOTIATION
James T VocelkaSpainAnna Fali RENEWAL
Izzy G IturbideAustraliaIoni Bowcher NEGOTIATION
Aruna Y RoysterArgentinaStephen Shaw PROPOSAL
Ivar C FlosiCanadaBernardo Dominic PROPOSAL
Mayumi I CaudyIndiaAnna Fali PROPOSAL
Cody K PoquetteGermanyXuxue Feng RENEWAL
Izzy T FlosiJapanAnna Fali NEW
Murillo A FollerFranceAnna Fali UNQUALIFIED
David F SchemmerGermanyElwin Sharvill PROPOSAL
Alejandro J BriddickSpainAnna Fali NEW
Faith O ButtAustraliaIoni Bowcher NEGOTIATION
Smith S DilliardUnited KingdomStephen Shaw UNQUALIFIED
Johnson P MaletCanadaElwin Sharvill UNQUALIFIED
Costa F CaldareraUnited KingdomIoni Bowcher RENEWAL
Kadeem X CaudyJapanAmy Elsner NEW
Jefferson B MacleadJapanAsiya Javayant NEW
Leon B GlickCanadaAnna Fali NEW
Misaki V MaletSpainAnna Fali UNQUALIFIED
Johnson R VenereJapanIoni Bowcher RENEWAL
Tony T RoysterArgentinaStephen Shaw PROPOSAL
Ivar N CaudyBrazilIoni Bowcher NEGOTIATION
Clifford A RulapaughUnited KingdomXuxue Feng NEW
Jeanfrancois S IturbideRussiaOnyama Limba QUALIFIED
Jones L VenereBrazilElwin Sharvill QUALIFIED
Leja O AlbaresRussiaIvan Magalhaes UNQUALIFIED
Kaitlin J GauchoCanadaIvan Magalhaes UNQUALIFIED
Silvio R FlosiAustraliaXuxue Feng NEW
Aditya L SchemmerArgentinaXuxue Feng NEGOTIATION
Juan M InouyeJapanOnyama Limba RENEWAL
Adams L StockhamArgentinaAmy Elsner RENEWAL
Misaki Y FigeroaUnited KingdomAmy Elsner PROPOSAL
Adams D RimIndiaAmy Elsner QUALIFIED
Darci S SlusarskiFranceIvan Magalhaes RENEWAL
Munro G AlbaresAustraliaAnna Fali NEGOTIATION
Misaki G RutaFranceBernardo Dominic NEW
Adams T SchemmerRussiaStephen Shaw UNQUALIFIED
Claire U AlbaresAustraliaBernardo Dominic QUALIFIED
Faith Y BowleyFranceXuxue Feng NEW
Juan I SergiRussiaElwin Sharvill RENEWAL
Deepesh J RoysterJapanAnna Fali QUALIFIED
Murillo L SlusarskiItalyOnyama Limba PROPOSAL
Greenwood K BriddickUnited KingdomElwin Sharvill QUALIFIED
Kadeem R RimGermanyIvan Magalhaes QUALIFIED
Silvio Y MacleadAustraliaStephen Shaw NEGOTIATION
Frozen Columns
Name
Smith L Rim
Isabel W Glick
Maria Y Figeroa
Wickens Q Slusarski
Juan J Venere
Isabel T Caudy
Nicolas I Paprocki
James D Kusko
Kaitlin I Butt
Juan T Ferencz
Costa O Ostrosky
Arvin K Stockham
Tony U Gillian
Antonio O Wieser
Johnson C Nicka
Alejandro X Briddick
Jones Q Inouye
Antonio K Amigon
Silvio S Kusko
Ricardo D Paprocki
Antonio C Inouye
Maisha I Royster
Leja W Poquette
Mujtaba U Paprocki
Emily M Gaucho
Deepesh T Foller
Nicolas C Darakjy
Ricardo A Perin
Misaki G Dilliard
Ashley G Venere
Jones J Kusko
Francesco T Inouye
Mujtaba G Iturbide
Johnson H Iturbide
Cody R Tollner
Maisha A Rulapaugh
Aika C Perin
Nicolas Q Garufi
Maisha E Darakjy
Faith I Butt
Alejandro Z Ostrosky
Silvio H Bowley
Maria O Maclead
Ricardo Y Figeroa
Leon R Foller
Stacey T Royster
Leja O Slusarski
Morrow A Malet
Jennifer P Venere
Murillo Q Stenseth
IdCountryDate
1000Brazil2024-06-07
1001Russia2024-06-06
1002France2024-06-03
1003Japan2024-06-19
1004United Kingdom2024-06-03
1005United Kingdom2024-05-31
1006Argentina2024-06-18
1007Canada2024-05-31
1008Brazil2024-05-25
1009Russia2024-05-25
1010Argentina2024-05-27
1011Spain2024-06-11
1012Italy2024-06-16
1013Spain2024-06-16
1014Germany2024-06-14
1015Brazil2024-06-18
1016Spain2024-06-01
1017France2024-06-18
1018Argentina2024-05-29
1019India2024-06-18
1020Japan2024-05-30
1021Canada2024-06-22
1022Australia2024-06-20
1023Brazil2024-05-26
1024Brazil2024-06-07
1025Japan2024-06-01
1026Japan2024-06-13
1027France2024-05-27
1028Italy2024-06-02
1029Germany2024-06-02
1030Italy2024-05-26
1031Argentina2024-06-18
1032United Kingdom2024-06-15
1033Spain2024-05-31
1034Canada2024-06-11
1035Italy2024-06-09
1036Italy2024-06-22
1037United Kingdom2024-06-08
1038Italy2024-06-04
1039Italy2024-06-05
1040United Kingdom2024-06-09
1041Japan2024-06-12
1042United Kingdom2024-05-29
1043France2024-06-09
1044Spain2024-05-28
1045Italy2024-06-01
1046Australia2024-05-28
1047Australia2024-06-10
1048Italy2024-06-17
1049Canada2024-06-05

On-Demand Data

NameIdCountryDate
Leon C Garufi1000Australia2024-06-15
Izzy Z Wieser1001Spain2024-06-09
Costa U Sergi1002Spain2024-06-18
Octavia L Kolmetz1003Spain2024-06-14
Ivar O Kusko1004India2024-06-21
Octavia P Saylors1005Germany2024-06-18
Claire V Schemmer1006Brazil2024-06-12
Aditya J Schemmer1007Australia2024-06-07
Maisha O Whobrey1008Italy2024-06-09
Mujtaba U Schemmer1009Japan2024-06-11
Kadeem B Malet1010United Kingdom2024-06-13
Greenwood V Maclead1011France2024-06-12
Clifford K Nicka1012Argentina2024-05-31
Misaki B Gaucho1013Australia2024-06-21
Darci J Vocelka1014Argentina2024-06-08
Izzy U Dilliard1015Canada2024-06-09
Rodrigues D Doe1016Argentina2024-06-20
Jennifer Z Whobrey1017France2024-06-17
Wickens U Perin1018France2024-06-17
Cody T Bolognia1019Japan2024-06-14
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Francesco Q RimIndiaAnna Fali UNQUALIFIED
Stacey Z RulapaughItalyOnyama Limba RENEWAL
Emily U RimItalyOnyama Limba QUALIFIED
Mujtaba G NestleSpainAsiya Javayant NEW
Maisha F GarufiFranceAsiya Javayant RENEWAL
Sinclair Y FigeroaIndiaAsiya Javayant NEGOTIATION
Adams Q WhobreyGermanyBernardo Dominic QUALIFIED
Ricardo Y FigeroaFranceIvan Magalhaes PROPOSAL
Deepesh R CaldareraUnited KingdomAsiya Javayant NEGOTIATION
Alejandro H GarufiGermanyElwin Sharvill UNQUALIFIED
Mayumi O GillianGermanyAnna Fali PROPOSAL
Silvio U CaldareraIndiaIvan Magalhaes QUALIFIED
Isabel V RulapaughSpainXuxue Feng PROPOSAL
Costa F SergiJapanXuxue Feng PROPOSAL
Darci N KuskoGermanyAnna Fali PROPOSAL
Sinclair F FollerSpainBernardo Dominic UNQUALIFIED
Salvatore T GillianGermanyIvan Magalhaes NEW
Cody M CampainGermanyXuxue Feng NEGOTIATION
Mujtaba O NickaJapanStephen Shaw RENEWAL
Juan S MacleadBrazilOnyama Limba RENEWAL
Emily T NickaArgentinaIoni Bowcher NEW
Ricardo D NestleFranceBernardo Dominic NEGOTIATION
Octavia Y ChuiItalyBernardo Dominic RENEWAL
Maria U FerenczGermanyOnyama Limba NEW
Clifford R DilliardItalyIvan Magalhaes NEW
Greenwood H CaudyBrazilXuxue Feng QUALIFIED
Nicolas T DoeAustraliaOnyama Limba NEGOTIATION
Leja C InouyeBrazilOnyama Limba PROPOSAL
Kadeem Z GarufiGermanyIoni Bowcher QUALIFIED
Sinclair Y GarufiIndiaAnna Fali NEW
Deepesh U MorascaItalyBernardo Dominic RENEWAL
Tony E StockhamRussiaAmy Elsner UNQUALIFIED
David W PoquetteJapanAnna Fali NEW
Jennifer I RimArgentinaAnna Fali NEGOTIATION
Ivar X CaldareraItalyXuxue Feng QUALIFIED
Smith P AmigonAustraliaIoni Bowcher NEGOTIATION
Leon I GauchoRussiaAsiya Javayant NEGOTIATION
Ashley D StensethAustraliaStephen Shaw NEGOTIATION
Nicolas W VenereFranceOnyama Limba RENEWAL
Sinclair O GlickBrazilXuxue Feng NEGOTIATION

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