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
Juan Q SergiCanadaAnna Fali RENEWAL
Rodrigues K DoeAustraliaIoni Bowcher PROPOSAL
Deepesh O RimFranceAsiya Javayant QUALIFIED
Leja R RoysterUnited KingdomElwin Sharvill UNQUALIFIED
Emily Q KolmetzAustraliaAmy Elsner NEGOTIATION
Costa B MaletFranceElwin Sharvill NEGOTIATION
Misaki J StensethSpainElwin Sharvill PROPOSAL
Murillo U DarakjyFranceAnna Fali PROPOSAL
Emily R PerinCanadaAnna Fali QUALIFIED
Ivar T CampainSpainElwin Sharvill QUALIFIED
Rodrigues T GillianRussiaAmy Elsner NEW
Ivar Z FollerUnited KingdomAsiya Javayant PROPOSAL
Jones H GillianFranceIvan Magalhaes RENEWAL
David K RulapaughFranceOnyama Limba QUALIFIED
Antonio U BowleyCanadaStephen Shaw NEW
Maisha Q GarufiFranceOnyama Limba PROPOSAL
Aruna F StockhamGermanyIvan Magalhaes PROPOSAL
Kaitlin E AmigonSpainIoni Bowcher UNQUALIFIED
Deepesh K FollerAustraliaAsiya Javayant RENEWAL
Johnson W SergiGermanyStephen Shaw UNQUALIFIED
Johnson W SaylorsJapanOnyama Limba NEW
Wickens C GillianCanadaIoni Bowcher PROPOSAL
Kaitlin C RoysterItalyStephen Shaw QUALIFIED
Juan Y PaprockiFranceXuxue Feng QUALIFIED
Emily J WaycottArgentinaOnyama Limba UNQUALIFIED
James L KolmetzAustraliaAsiya Javayant NEGOTIATION
Rodrigues H OldroydCanadaIvan Magalhaes QUALIFIED
Alejandro N MacleadIndiaAsiya Javayant QUALIFIED
Mayumi N RimItalyElwin Sharvill NEGOTIATION
Greenwood R ButtAustraliaAnna Fali NEGOTIATION
Munro L WaycottItalyBernardo Dominic QUALIFIED
Leja E BowleyBrazilIvan Magalhaes PROPOSAL
Costa C FollerAustraliaElwin Sharvill UNQUALIFIED
Jennifer V CaldareraItalyAsiya Javayant NEW
Jefferson Z KuskoArgentinaBernardo Dominic RENEWAL
Sinclair M NickaCanadaXuxue Feng NEGOTIATION
Leon Z SaylorsUnited KingdomAsiya Javayant NEW
Murillo N WieserUnited KingdomBernardo Dominic NEGOTIATION
Silvio F OldroydAustraliaAmy Elsner UNQUALIFIED
Alejandro E CampainSpainOnyama Limba RENEWAL
Arvin L FerenczAustraliaAsiya Javayant NEW
Rodrigues M VocelkaArgentinaOnyama Limba QUALIFIED
Aruna V KuskoUnited KingdomStephen Shaw UNQUALIFIED
Mayumi S CaudySpainIoni Bowcher NEW
Leja X GauchoItalyBernardo Dominic PROPOSAL
Izzy X RoysterFranceIoni Bowcher PROPOSAL
Deepesh L ChuiSpainAsiya Javayant QUALIFIED
Costa J AlbaresIndiaAsiya Javayant NEGOTIATION
Leja O CampainIndiaAmy Elsner UNQUALIFIED
Aditya S MaletFranceIoni Bowcher QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Darci B PoquetteCanadaAmy Elsner UNQUALIFIED
Silvio V VocelkaRussiaElwin Sharvill QUALIFIED
Cody A ShinkoUnited KingdomAmy Elsner QUALIFIED
Emily O WaycottArgentinaAmy Elsner NEW
Faith R PerinItalyElwin Sharvill NEGOTIATION
James M ShinkoGermanyOnyama Limba UNQUALIFIED
Misaki F PoquetteRussiaAsiya Javayant NEGOTIATION
Kadeem Z OstroskyJapanStephen Shaw UNQUALIFIED
Juan V PaprockiAustraliaOnyama Limba NEGOTIATION
Alejandro L NickaGermanyXuxue Feng NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Costa L OldroydRussia2024-06-21Buckley Miller Wright RENEWAL76Onyama Limba
1001Greenwood J MacleadRussia2024-06-12Chanay, Jeffrey A Esq PROPOSAL16Anna Fali
1002Chavez U MacleadUnited Kingdom2024-06-12Commercial Press RENEWAL11Xuxue Feng
1003Leon G PoquetteFrance2024-06-05Chemel, James L Cpa UNQUALIFIED2Bernardo Dominic
1004Juan T NickaCanada2024-06-03Rangoni Of Florence QUALIFIED16Anna Fali
1005Aruna O SergiBrazil2024-06-09Morlong Associates RENEWAL48Anna Fali
1006Stacey C ButtGermany2024-05-29Feiner Bros UNQUALIFIED27Asiya Javayant
1007Isabel P GarufiRussia2024-05-25Feiner Bros NEGOTIATION8Bernardo Dominic
1008Mujtaba D KolmetzRussia2024-06-14Feltz Printing Service UNQUALIFIED81Stephen Shaw
1009Sinclair P CampainRussia2024-06-21Morlong Associates UNQUALIFIED89Bernardo Dominic
1010James S PerinJapan2024-05-25Feltz Printing Service NEGOTIATION40Ivan Magalhaes
1011Stacey W DoeFrance2024-06-03Benton, John B Jr RENEWAL32Anna Fali
1012Wickens X CaudySpain2024-06-09Truhlar And Truhlar Attys UNQUALIFIED4Amy Elsner
1013Francesco F DoeRussia2024-06-01Benton, John B Jr RENEWAL41Stephen Shaw
1014Tony A PerinIndia2024-06-07Benton, John B Jr PROPOSAL36Asiya Javayant
1015James R KolmetzAustralia2024-06-07Buckley Miller Wright NEGOTIATION65Bernardo Dominic
1016Morrow G GlickBrazil2024-05-26Chapman, Ross E Esq NEGOTIATION81Bernardo Dominic
1017Leon D StockhamFrance2024-06-16Feltz Printing Service UNQUALIFIED23Stephen Shaw
1018Ricardo X ChuiAustralia2024-06-16Chapman, Ross E Esq RENEWAL24Onyama Limba
1019Antonio L VenereCanada2024-05-25Chapman, Ross E Esq QUALIFIED67Onyama Limba
1020Faith C RutaAustralia2024-06-02King, Christopher A Esq QUALIFIED50Elwin Sharvill
1021Adams X RulapaughRussia2024-05-26Dorl, James J Esq UNQUALIFIED87Elwin Sharvill
1022Francesco Z WaycottArgentina2024-05-25King, Christopher A Esq NEGOTIATION20Ivan Magalhaes
1023Claire H IturbideArgentina2024-05-30Buckley Miller Wright NEGOTIATION62Amy Elsner
1024Cody C CampainItaly2024-05-26Feltz Printing Service RENEWAL13Ioni Bowcher
1025Morrow X OstroskyUnited Kingdom2024-06-11King, Christopher A Esq PROPOSAL5Anna Fali
1026Darci F NickaFrance2024-06-04Chanay, Jeffrey A Esq QUALIFIED53Anna Fali
1027Silvio Y ButtArgentina2024-06-17Feltz Printing Service UNQUALIFIED74Xuxue Feng
1028Julie U RoysterAustralia2024-06-20Morlong Associates NEW81Amy Elsner
1029Darci J MacleadJapan2024-05-25Rangoni Of Florence PROPOSAL85Ioni Bowcher
1030James W SlusarskiIndia2024-05-30Morlong Associates NEW9Bernardo Dominic
1031David B RimBrazil2024-06-04Morlong Associates RENEWAL55Bernardo Dominic
1032Octavia T BriddickCanada2024-06-22Rousseaux, Michael Esq NEW54Xuxue Feng
1033Emily N BowleyUnited Kingdom2024-06-23Feltz Printing Service UNQUALIFIED89Stephen Shaw
1034Maria X CaudyArgentina2024-06-15Rangoni Of Florence RENEWAL74Bernardo Dominic
1035Ivar C TollnerArgentina2024-06-23Rousseaux, Michael Esq RENEWAL21Ioni Bowcher
1036Clifford Q GillianSpain2024-06-11Benton, John B Jr UNQUALIFIED77Bernardo Dominic
1037Stacey I FerenczUnited Kingdom2024-06-12Benton, John B Jr QUALIFIED94Asiya Javayant
1038Johnson F WhobreyFrance2024-06-19Truhlar And Truhlar Attys RENEWAL16Ivan Magalhaes
1039Julie F MaletGermany2024-06-09Chemel, James L Cpa NEGOTIATION36Onyama Limba
1040Deepesh Q DarakjySpain2024-06-20Commercial Press NEW8Amy Elsner
1041Silvio W BriddickItaly2024-06-18Feltz Printing Service NEW38Onyama Limba
1042Wickens T GarufiIndia2024-06-23Chemel, James L Cpa QUALIFIED75Ivan Magalhaes
1043Morrow Q DoeRussia2024-06-10Rangoni Of Florence NEW37Ioni Bowcher
1044Claire U VenereArgentina2024-06-13Rangoni Of Florence QUALIFIED4Asiya Javayant
1045Darci S GillianBrazil2024-06-01Printing Dimensions UNQUALIFIED89Ivan Magalhaes
1046Antonio B AlbaresJapan2024-06-02Dorl, James J Esq QUALIFIED94Asiya Javayant
1047Kadeem E PaprockiUnited Kingdom2024-06-06Morlong Associates RENEWAL58Elwin Sharvill
1048James N DoeArgentina2024-06-20Morlong Associates RENEWAL76Asiya Javayant
1049Darci S VocelkaGermany2024-05-26Rangoni Of Florence PROPOSAL44Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Alejandro P WhobreyBrazilElwin Sharvill RENEWAL
Emily F RulapaughGermanyStephen Shaw QUALIFIED
Jefferson A SergiUnited KingdomOnyama Limba UNQUALIFIED
Isabel U StockhamGermanyBernardo Dominic UNQUALIFIED
Stacey I FigeroaCanadaStephen Shaw NEGOTIATION
Murillo T ShinkoIndiaElwin Sharvill PROPOSAL
Costa R DarakjyIndiaXuxue Feng RENEWAL
Kadeem Y SchemmerFranceXuxue Feng QUALIFIED
Maria E DarakjyIndiaStephen Shaw RENEWAL
Wickens T FollerUnited KingdomXuxue Feng NEGOTIATION
Leja M DilliardGermanyAnna Fali PROPOSAL
Kaitlin R BowleyGermanyIoni Bowcher UNQUALIFIED
Jones U VenereSpainStephen Shaw QUALIFIED
Alejandro H GillianAustraliaXuxue Feng PROPOSAL
Antonio U WaycottAustraliaAnna Fali NEW
Rodrigues E RimGermanyOnyama Limba NEW
Rodrigues O WhobreyAustraliaStephen Shaw NEGOTIATION
Francesco Y GillianIndiaIvan Magalhaes QUALIFIED
Greenwood Y StockhamGermanyBernardo Dominic QUALIFIED
Izzy Q GillianRussiaAnna Fali NEW
James O RoysterCanadaAnna Fali RENEWAL
Arvin V RutaItalyElwin Sharvill UNQUALIFIED
Claire C SergiSpainBernardo Dominic NEGOTIATION
Jeanfrancois Z NickaCanadaElwin Sharvill RENEWAL
Silvio M AmigonAustraliaIoni Bowcher NEW
Ashley Z MarrierUnited KingdomIvan Magalhaes NEGOTIATION
Alejandro V DilliardAustraliaStephen Shaw NEGOTIATION
Isabel C RoysterBrazilAsiya Javayant RENEWAL
Aditya D TollnerBrazilAnna Fali UNQUALIFIED
Clifford Y BologniaGermanyAnna Fali UNQUALIFIED
Greenwood B DoeFranceStephen Shaw NEW
Morrow C CampainSpainOnyama Limba PROPOSAL
Stacey S SaylorsJapanOnyama Limba QUALIFIED
Francesco A SchemmerIndiaOnyama Limba PROPOSAL
Maisha R AmigonIndiaAmy Elsner PROPOSAL
Juan X AlbaresBrazilElwin Sharvill QUALIFIED
Darci G DilliardArgentinaElwin Sharvill RENEWAL
Tony Q ChuiIndiaStephen Shaw QUALIFIED
Misaki J CaldareraGermanyStephen Shaw RENEWAL
Arvin M MorascaFranceElwin Sharvill RENEWAL
Francesco M GillianJapanIvan Magalhaes RENEWAL
Claire T RulapaughUnited KingdomBernardo Dominic PROPOSAL
Adams G AlbaresArgentinaAnna Fali NEW
Jeanfrancois S MarrierGermanyIvan Magalhaes NEGOTIATION
Jones I GillianGermanyAnna Fali RENEWAL
Emily W VocelkaAustraliaXuxue Feng PROPOSAL
Aika B StensethIndiaBernardo Dominic PROPOSAL
Tony W KuskoGermanyBernardo Dominic UNQUALIFIED
Adams K IturbideUnited KingdomAmy Elsner QUALIFIED
Jones O RoysterAustraliaOnyama Limba UNQUALIFIED
Frozen Columns
Name
Tony Z Marrier
Stacey D Shinko
Emily E Ostrosky
Emily R Chui
Adams V Schemmer
Morrow P Malet
Silvio W Rulapaugh
Rodrigues X Figeroa
Adams X Slusarski
Arvin P Waycott
Jefferson I Morasca
Leja M Caldarera
Mayumi N Kusko
Antonio S Flosi
Juan W Perin
Munro Y Saylors
Isabel U Paprocki
Ricardo A Rim
Ashley V Gaucho
Adams Y Chui
Juan Q Wieser
Sinclair Q Shinko
Costa K Malet
Aika R Amigon
Misaki D Chui
Leja K Darakjy
Greenwood R Nicka
Maisha G Oldroyd
Julie P Venere
Juan D Campain
Kaitlin P Darakjy
Kaitlin V Venere
Darci F Gaucho
Leon I Sergi
Munro M Nestle
Ricardo X Tollner
Arvin M Waycott
Kadeem J Ostrosky
Julie L Malet
Faith P Waycott
Maria J Bolognia
Stacey N Paprocki
David Z Dilliard
Emily S Whobrey
Kaitlin C Wieser
Deepesh Q Caldarera
Maria W Campain
James S Schemmer
Arvin Z Doe
Kadeem B Whobrey
IdCountryDate
1000Italy2024-06-15
1001Russia2024-06-03
1002Russia2024-06-11
1003Argentina2024-06-06
1004Argentina2024-06-08
1005Australia2024-06-20
1006France2024-05-26
1007Canada2024-06-12
1008Germany2024-06-14
1009Canada2024-06-11
1010United Kingdom2024-06-15
1011Italy2024-06-20
1012Russia2024-06-10
1013Russia2024-06-12
1014Russia2024-06-17
1015France2024-05-29
1016Brazil2024-06-06
1017Canada2024-06-07
1018Australia2024-06-05
1019Spain2024-05-31
1020United Kingdom2024-06-17
1021United Kingdom2024-05-30
1022France2024-06-05
1023Brazil2024-06-03
1024Germany2024-05-27
1025Spain2024-06-05
1026Germany2024-06-05
1027Russia2024-06-18
1028Australia2024-06-13
1029Japan2024-05-30
1030Italy2024-05-31
1031Spain2024-06-10
1032Japan2024-05-25
1033Germany2024-05-29
1034Brazil2024-06-04
1035Canada2024-06-16
1036Canada2024-06-07
1037Canada2024-05-30
1038India2024-06-08
1039United Kingdom2024-06-22
1040Argentina2024-06-11
1041Brazil2024-06-20
1042Japan2024-06-23
1043Australia2024-05-30
1044Spain2024-06-17
1045Italy2024-06-23
1046Australia2024-06-19
1047Argentina2024-06-14
1048Russia2024-06-05
1049Brazil2024-06-23

On-Demand Data

NameIdCountryDate
Silvio F Oldroyd1000Spain2024-06-08
Clifford H Paprocki1001Japan2024-05-29
Alejandro R Whobrey1002Russia2024-05-31
Leon J Paprocki1003France2024-06-04
Murillo R Paprocki1004Spain2024-06-11
Misaki N Stockham1005Argentina2024-06-06
Adams N Ferencz1006United Kingdom2024-05-30
Clifford K Morasca1007Germany2024-05-29
Sinclair F Caldarera1008Australia2024-06-15
Jones K Stenseth1009Russia2024-06-02
Nicolas L Waycott1010Australia2024-06-06
Mayumi M Nicka1011Argentina2024-06-09
Jeanfrancois F Marrier1012India2024-05-25
Faith T Glick1013India2024-06-03
Smith X Briddick1014United Kingdom2024-06-20
Maria I Kolmetz1015Germany2024-06-20
Juan Y Campain1016Spain2024-06-19
Ricardo Y Nestle1017Argentina2024-06-01
Misaki W Darakjy1018United Kingdom2024-06-16
Costa T Gillian1019United Kingdom2024-06-12
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
David Y OldroydAustraliaIoni Bowcher QUALIFIED
Francesco J NestleSpainAnna Fali NEW
Aika G StensethArgentinaOnyama Limba PROPOSAL
Maria Y ShinkoBrazilIvan Magalhaes QUALIFIED
Munro M VocelkaBrazilElwin Sharvill QUALIFIED
Antonio O WaycottUnited KingdomOnyama Limba PROPOSAL
Greenwood D FerenczIndiaBernardo Dominic QUALIFIED
Izzy M ButtUnited KingdomOnyama Limba UNQUALIFIED
Juan S MaletUnited KingdomBernardo Dominic PROPOSAL
Izzy X StockhamJapanIvan Magalhaes UNQUALIFIED
Ashley T MaletSpainOnyama Limba RENEWAL
Deepesh R CaudyGermanyBernardo Dominic QUALIFIED
Rodrigues D MaletUnited KingdomAnna Fali PROPOSAL
Adams S ButtArgentinaIvan Magalhaes RENEWAL
Sinclair X PaprockiRussiaAsiya Javayant NEGOTIATION
Aika Y AlbaresSpainIvan Magalhaes NEGOTIATION
Kaitlin M IturbideRussiaElwin Sharvill NEGOTIATION
Misaki M SchemmerAustraliaOnyama Limba QUALIFIED
Aditya T GlickCanadaStephen Shaw QUALIFIED
Stacey I ChuiRussiaAmy Elsner UNQUALIFIED
Kadeem X PaprockiSpainBernardo Dominic QUALIFIED
Antonio E BologniaUnited KingdomIoni Bowcher NEW
Ivar Z SaylorsCanadaBernardo Dominic QUALIFIED
Costa B PoquetteSpainElwin Sharvill RENEWAL
Antonio I AmigonAustraliaAnna Fali PROPOSAL
Rodrigues L ButtItalyElwin Sharvill RENEWAL
Julie N GarufiGermanyOnyama Limba QUALIFIED
James R BriddickJapanXuxue Feng PROPOSAL
Jennifer L SaylorsIndiaXuxue Feng UNQUALIFIED
Rodrigues X TollnerSpainIvan Magalhaes RENEWAL
Stacey I SlusarskiJapanAsiya Javayant RENEWAL
Silvio Q SaylorsAustraliaStephen Shaw RENEWAL
Arvin I FollerBrazilBernardo Dominic NEW
Rodrigues W WaycottJapanXuxue Feng NEGOTIATION
Chavez H AlbaresCanadaBernardo Dominic RENEWAL
Claire V OldroydFranceAsiya Javayant RENEWAL
Ricardo L WhobreyItalyAmy Elsner NEW
Greenwood X SaylorsAustraliaIvan Magalhaes NEW
Isabel H FollerRussiaAsiya Javayant NEW
Emily W RutaAustraliaIvan Magalhaes QUALIFIED

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