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
Cody W DoeBrazilElwin Sharvill NEW
Chavez D CampainSpainOnyama Limba NEGOTIATION
Costa O StockhamJapanStephen Shaw RENEWAL
Emily M BriddickCanadaBernardo Dominic UNQUALIFIED
Adams N RoysterCanadaElwin Sharvill NEW
Maisha P SlusarskiCanadaBernardo Dominic NEGOTIATION
Clifford F BriddickCanadaOnyama Limba PROPOSAL
Deepesh G GillianUnited KingdomBernardo Dominic PROPOSAL
Faith F OldroydUnited KingdomXuxue Feng UNQUALIFIED
James M KuskoIndiaOnyama Limba RENEWAL
Isabel I DarakjyArgentinaElwin Sharvill NEGOTIATION
Ashley C GauchoUnited KingdomIvan Magalhaes PROPOSAL
Morrow M DoeBrazilAsiya Javayant PROPOSAL
Emily E MaletUnited KingdomAnna Fali NEGOTIATION
Jennifer H DarakjyArgentinaAmy Elsner NEGOTIATION
Aruna N GauchoFranceBernardo Dominic NEGOTIATION
Silvio K MarrierBrazilXuxue Feng NEGOTIATION
Salvatore Z NickaIndiaBernardo Dominic PROPOSAL
Jones O NestleUnited KingdomXuxue Feng NEW
Salvatore G CaldareraAustraliaOnyama Limba UNQUALIFIED
Costa D ChuiItalyAnna Fali QUALIFIED
Alejandro E FigeroaCanadaIvan Magalhaes QUALIFIED
Antonio N CampainCanadaBernardo Dominic NEGOTIATION
Faith I StockhamIndiaStephen Shaw PROPOSAL
Ivar X WaycottUnited KingdomIvan Magalhaes UNQUALIFIED
Kadeem V GillianUnited KingdomAsiya Javayant NEW
Morrow C WaycottGermanyIoni Bowcher RENEWAL
Octavia T CampainAustraliaBernardo Dominic NEGOTIATION
Ivar B StensethUnited KingdomAmy Elsner UNQUALIFIED
David V SchemmerFranceAsiya Javayant NEGOTIATION
Octavia R CaldareraCanadaAmy Elsner PROPOSAL
Silvio E GauchoIndiaIoni Bowcher UNQUALIFIED
Francesco I ShinkoIndiaIoni Bowcher UNQUALIFIED
Jeanfrancois G PerinIndiaAnna Fali QUALIFIED
Octavia O OldroydJapanAnna Fali NEW
Salvatore J OstroskyIndiaElwin Sharvill NEGOTIATION
Greenwood I FigeroaIndiaElwin Sharvill NEGOTIATION
Stacey Y MorascaAustraliaAnna Fali QUALIFIED
Jefferson C MaletJapanStephen Shaw QUALIFIED
Ricardo G WhobreyAustraliaAnna Fali UNQUALIFIED
Octavia M GarufiRussiaXuxue Feng PROPOSAL
Isabel W MorascaJapanBernardo Dominic UNQUALIFIED
David E ShinkoCanadaAnna Fali RENEWAL
Mayumi L GarufiAustraliaAmy Elsner PROPOSAL
Clifford W SchemmerRussiaXuxue Feng UNQUALIFIED
Cody R AmigonItalyIvan Magalhaes UNQUALIFIED
Claire U BriddickGermanyOnyama Limba RENEWAL
Deepesh V GlickUnited KingdomAnna Fali PROPOSAL
James T ButtSpainStephen Shaw QUALIFIED
Johnson X FerenczRussiaAsiya Javayant UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Chavez K BologniaArgentinaBernardo Dominic RENEWAL
Sinclair C MarrierUnited KingdomIvan Magalhaes NEGOTIATION
Adams Y BriddickGermanyAmy Elsner QUALIFIED
Greenwood Z GillianRussiaAnna Fali NEW
Izzy Z MaletRussiaBernardo Dominic NEGOTIATION
Ashley I RulapaughCanadaIoni Bowcher NEGOTIATION
Mayumi O CampainFranceOnyama Limba RENEWAL
Emily B NickaFranceXuxue Feng NEW
Jennifer J StensethIndiaXuxue Feng RENEWAL
Leon L CaudyFranceIvan Magalhaes PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000David T FigeroaArgentina2024-06-12Morlong Associates NEGOTIATION50Asiya Javayant
1001Kaitlin H MorascaFrance2024-06-02Commercial Press NEW38Ioni Bowcher
1002Aditya Q KolmetzFrance2024-06-07Chemel, James L Cpa QUALIFIED30Xuxue Feng
1003Sinclair P SaylorsIndia2024-06-05Chapman, Ross E Esq UNQUALIFIED69Asiya Javayant
1004Alejandro D InouyeCanada2024-06-16Rangoni Of Florence NEW11Amy Elsner
1005Murillo S AlbaresItaly2024-05-31Truhlar And Truhlar Attys RENEWAL48Xuxue Feng
1006Greenwood Y MaletIndia2024-06-18Chanay, Jeffrey A Esq RENEWAL41Xuxue Feng
1007Aditya E SchemmerUnited Kingdom2024-06-04Buckley Miller Wright QUALIFIED14Ivan Magalhaes
1008Morrow K KolmetzJapan2024-06-07Chapman, Ross E Esq UNQUALIFIED72Onyama Limba
1009Deepesh E SaylorsGermany2024-06-08Buckley Miller Wright RENEWAL7Bernardo Dominic
1010Smith D FlosiGermany2024-06-18Commercial Press UNQUALIFIED6Bernardo Dominic
1011Maria G BriddickAustralia2024-06-09Truhlar And Truhlar Attys RENEWAL30Bernardo Dominic
1012Jones Y FerenczFrance2024-06-11Truhlar And Truhlar Attys RENEWAL12Stephen Shaw
1013Arvin D PerinJapan2024-06-07King, Christopher A Esq RENEWAL55Ivan Magalhaes
1014Claire Q PaprockiFrance2024-06-02Rousseaux, Michael Esq RENEWAL86Stephen Shaw
1015Munro F SaylorsGermany2024-06-16Feltz Printing Service QUALIFIED27Asiya Javayant
1016Murillo T AlbaresSpain2024-06-21Rangoni Of Florence UNQUALIFIED57Elwin Sharvill
1017Smith M MaletJapan2024-05-24Chanay, Jeffrey A Esq PROPOSAL16Bernardo Dominic
1018Deepesh R AlbaresJapan2024-06-01Morlong Associates PROPOSAL72Asiya Javayant
1019Costa R WhobreyItaly2024-05-23Printing Dimensions QUALIFIED97Stephen Shaw
1020Misaki Y NickaSpain2024-06-07Chapman, Ross E Esq UNQUALIFIED45Bernardo Dominic
1021Wickens O RoysterAustralia2024-05-26Printing Dimensions NEGOTIATION77Ivan Magalhaes
1022Alejandro L NestleIndia2024-06-09Printing Dimensions PROPOSAL9Stephen Shaw
1023Wickens F GarufiFrance2024-06-07Chemel, James L Cpa PROPOSAL58Onyama Limba
1024James E ButtIndia2024-06-20Commercial Press NEGOTIATION20Ioni Bowcher
1025Francesco M StockhamBrazil2024-06-04Feltz Printing Service NEGOTIATION22Asiya Javayant
1026Jefferson O TollnerSpain2024-05-30King, Christopher A Esq NEGOTIATION65Asiya Javayant
1027Octavia U GarufiAustralia2024-06-05Dorl, James J Esq NEGOTIATION71Xuxue Feng
1028Jefferson Y RimRussia2024-06-03Rousseaux, Michael Esq UNQUALIFIED59Anna Fali
1029Nicolas J MacleadIndia2024-06-17Dorl, James J Esq RENEWAL90Ivan Magalhaes
1030Costa Z AmigonCanada2024-05-29Chapman, Ross E Esq UNQUALIFIED56Elwin Sharvill
1031Juan W RulapaughIndia2024-06-18Rousseaux, Michael Esq QUALIFIED99Onyama Limba
1032Adams M PerinArgentina2024-06-11Dorl, James J Esq RENEWAL0Bernardo Dominic
1033Kaitlin S NestleSpain2024-05-24Rangoni Of Florence NEW90Amy Elsner
1034Juan T ButtItaly2024-05-24Printing Dimensions PROPOSAL40Xuxue Feng
1035Greenwood I VocelkaCanada2024-05-23Commercial Press QUALIFIED7Anna Fali
1036Aika R DarakjyCanada2024-06-12Benton, John B Jr NEGOTIATION25Anna Fali
1037Morrow A DilliardSpain2024-06-08Morlong Associates NEW75Asiya Javayant
1038Munro T OstroskyGermany2024-06-18Feiner Bros NEW94Bernardo Dominic
1039James E ButtItaly2024-05-28Chanay, Jeffrey A Esq RENEWAL15Onyama Limba
1040Clifford S MaletSpain2024-05-28Feiner Bros UNQUALIFIED22Amy Elsner
1041Jones D CaldareraSpain2024-06-08Printing Dimensions NEGOTIATION48Xuxue Feng
1042Alejandro U GarufiArgentina2024-06-11King, Christopher A Esq QUALIFIED37Asiya Javayant
1043Ivar Y PaprockiItaly2024-05-23Truhlar And Truhlar Attys UNQUALIFIED1Ivan Magalhaes
1044Arvin X KolmetzItaly2024-06-20Morlong Associates PROPOSAL67Elwin Sharvill
1045Jefferson H FigeroaJapan2024-06-09Commercial Press RENEWAL45Xuxue Feng
1046Antonio T GillianJapan2024-06-19Printing Dimensions NEGOTIATION37Asiya Javayant
1047David P DoeRussia2024-06-02King, Christopher A Esq NEW86Asiya Javayant
1048Salvatore R FerenczJapan2024-06-05Commercial Press NEW2Ivan Magalhaes
1049Jones I StockhamUnited Kingdom2024-06-07Benton, John B Jr PROPOSAL38Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Leja J GauchoArgentinaAsiya Javayant QUALIFIED
David C SergiGermanyIoni Bowcher QUALIFIED
Isabel R RoysterGermanyOnyama Limba RENEWAL
Kadeem R WieserSpainIoni Bowcher NEW
Leon W FollerBrazilIvan Magalhaes QUALIFIED
Leon G WhobreyUnited KingdomElwin Sharvill RENEWAL
Cody S InouyeAustraliaAnna Fali PROPOSAL
Aruna N SaylorsBrazilXuxue Feng PROPOSAL
Alejandro E NestleFranceElwin Sharvill RENEWAL
Mayumi V BriddickGermanyXuxue Feng PROPOSAL
Aruna B BologniaItalyBernardo Dominic UNQUALIFIED
Ricardo R KuskoFranceAsiya Javayant RENEWAL
Rodrigues A RimAustraliaOnyama Limba PROPOSAL
Murillo W SaylorsRussiaElwin Sharvill NEGOTIATION
Aruna S FerenczUnited KingdomAnna Fali PROPOSAL
Darci U OstroskyCanadaElwin Sharvill UNQUALIFIED
Misaki X NickaAustraliaAnna Fali UNQUALIFIED
Ricardo G TollnerItalyAmy Elsner UNQUALIFIED
Deepesh B AlbaresAustraliaIoni Bowcher NEGOTIATION
Francesco B PoquetteCanadaXuxue Feng PROPOSAL
Jones L TollnerJapanStephen Shaw NEGOTIATION
Morrow B NestleFranceIvan Magalhaes QUALIFIED
Maisha B BriddickJapanAnna Fali QUALIFIED
Francesco Q BowleyBrazilElwin Sharvill NEW
Wickens B PoquetteSpainAsiya Javayant NEW
Izzy V PoquetteItalyAnna Fali NEGOTIATION
Faith F NestleAustraliaAmy Elsner NEGOTIATION
Adams N AlbaresCanadaStephen Shaw NEGOTIATION
Aika E CampainGermanyStephen Shaw UNQUALIFIED
Rodrigues V GlickJapanAnna Fali RENEWAL
Ashley M StockhamArgentinaAsiya Javayant NEW
Faith L GlickJapanIoni Bowcher PROPOSAL
Darci V WhobreyJapanOnyama Limba UNQUALIFIED
Maisha A VenereJapanAmy Elsner RENEWAL
Misaki L AmigonArgentinaAmy Elsner UNQUALIFIED
Isabel Q DarakjyRussiaAsiya Javayant NEW
Mujtaba Y WaycottRussiaOnyama Limba UNQUALIFIED
Stacey I KolmetzIndiaXuxue Feng UNQUALIFIED
Aruna M SergiBrazilElwin Sharvill UNQUALIFIED
Mujtaba H FlosiJapanAnna Fali RENEWAL
Izzy U DilliardItalyElwin Sharvill RENEWAL
Adams B IturbideAustraliaIvan Magalhaes QUALIFIED
Francesco E NickaSpainIoni Bowcher PROPOSAL
Costa M KolmetzSpainBernardo Dominic NEGOTIATION
Greenwood J BriddickJapanXuxue Feng NEGOTIATION
Jones S FerenczJapanElwin Sharvill QUALIFIED
Emily N GarufiIndiaAmy Elsner UNQUALIFIED
Maria Q PerinItalyXuxue Feng UNQUALIFIED
Antonio V CampainAustraliaOnyama Limba NEW
Sinclair T ShinkoRussiaStephen Shaw NEGOTIATION
Frozen Columns
Name
Leon O Oldroyd
Mayumi S Shinko
Rodrigues L Iturbide
Adams I Stenseth
Arvin H Darakjy
Cody C Schemmer
Morrow E Caudy
Isabel H Waycott
Izzy C Albares
Alejandro F Whobrey
Ivar Q Slusarski
Julie K Bowley
Smith V Ostrosky
Juan H Doe
Darci E Sergi
Kadeem C Tollner
Murillo I Gillian
Mujtaba X Maclead
Claire J Figeroa
Leja M Ferencz
Leja F Darakjy
Cody U Iturbide
Jones W Tollner
Leja E Malet
Arvin G Poquette
Emily G Marrier
Jones K Stockham
Costa R Doe
Arvin Y Albares
Sinclair A Ostrosky
Jennifer H Poquette
Mayumi O Tollner
Ricardo T Royster
Chavez K Caudy
Cody M Glick
James Q Foller
Stacey J Sergi
Aditya V Oldroyd
Rodrigues X Rim
Tony J Stockham
Johnson K Bolognia
Johnson F Shinko
Leon T Ferencz
Jennifer P Malet
Silvio C Figeroa
Greenwood N Stenseth
Claire Q Kusko
Isabel U Darakjy
Kadeem H Perin
Murillo M Ostrosky
IdCountryDate
1000Russia2024-06-06
1001Italy2024-06-12
1002Italy2024-06-20
1003Spain2024-06-11
1004Australia2024-06-10
1005Russia2024-05-23
1006Russia2024-06-10
1007Italy2024-06-11
1008Canada2024-06-02
1009Spain2024-06-06
1010Brazil2024-06-12
1011India2024-05-27
1012Germany2024-05-23
1013Russia2024-06-16
1014Argentina2024-05-31
1015United Kingdom2024-05-30
1016Argentina2024-06-17
1017Japan2024-06-08
1018France2024-05-23
1019Italy2024-05-26
1020Italy2024-05-24
1021Russia2024-06-11
1022Japan2024-06-10
1023Spain2024-06-08
1024United Kingdom2024-06-12
1025Spain2024-06-01
1026Canada2024-05-30
1027United Kingdom2024-06-01
1028India2024-06-04
1029United Kingdom2024-06-05
1030France2024-06-09
1031Germany2024-06-02
1032Japan2024-05-29
1033Brazil2024-06-02
1034Argentina2024-06-18
1035France2024-06-07
1036Argentina2024-05-31
1037Spain2024-06-08
1038Brazil2024-06-15
1039Australia2024-06-05
1040Australia2024-05-28
1041France2024-06-07
1042Canada2024-06-20
1043Spain2024-06-15
1044India2024-06-03
1045Japan2024-06-10
1046India2024-05-28
1047United Kingdom2024-06-09
1048Argentina2024-06-05
1049France2024-06-10

On-Demand Data

NameIdCountryDate
Jeanfrancois S Iturbide1000India2024-06-06
Misaki I Gillian1001Brazil2024-05-28
Emily Y Ostrosky1002Japan2024-05-25
Maisha M Nestle1003Brazil2024-06-07
Maisha Q Saylors1004France2024-06-01
Juan I Perin1005Japan2024-06-17
Greenwood W Gaucho1006France2024-05-30
Silvio F Garufi1007France2024-06-06
Ivar X Saylors1008Italy2024-06-17
Sinclair J Dilliard1009Australia2024-05-24
Juan X Albares1010Russia2024-06-18
Chavez H Kusko1011Italy2024-06-15
Jones I Nicka1012United Kingdom2024-06-10
Smith P Schemmer1013India2024-06-10
Stacey Z Amigon1014Germany2024-06-15
Juan E Morasca1015Spain2024-06-11
Greenwood A Paprocki1016Australia2024-06-03
Munro O Stenseth1017Brazil2024-06-18
Ashley R Kolmetz1018Japan2024-06-14
Francesco J Maclead1019France2024-06-20
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Arvin S SergiRussiaBernardo Dominic UNQUALIFIED
Chavez W InouyeBrazilXuxue Feng QUALIFIED
Mayumi K TollnerAustraliaIvan Magalhaes NEW
Aditya F CampainCanadaAmy Elsner RENEWAL
Jefferson T KuskoBrazilXuxue Feng NEW
Clifford J VenereRussiaBernardo Dominic NEW
Claire S SchemmerFranceAsiya Javayant NEGOTIATION
Izzy H NestleIndiaAsiya Javayant NEW
Izzy N SlusarskiAustraliaAsiya Javayant NEW
Rodrigues D VocelkaRussiaIvan Magalhaes QUALIFIED
Salvatore O DoeAustraliaOnyama Limba RENEWAL
Alejandro J FerenczSpainIvan Magalhaes QUALIFIED
Izzy Z InouyeGermanyAnna Fali UNQUALIFIED
Salvatore K FigeroaArgentinaAsiya Javayant NEGOTIATION
Arvin D FerenczBrazilIvan Magalhaes UNQUALIFIED
David W FlosiRussiaIoni Bowcher PROPOSAL
Mujtaba I WieserUnited KingdomIvan Magalhaes NEW
Morrow Q StensethUnited KingdomAmy Elsner RENEWAL
Julie N MaletFranceIoni Bowcher QUALIFIED
Johnson Q CaldareraUnited KingdomAsiya Javayant NEGOTIATION
Alejandro O NestleRussiaAmy Elsner RENEWAL
Alejandro V RimIndiaXuxue Feng PROPOSAL
Julie N CaldareraGermanyStephen Shaw UNQUALIFIED
Johnson A DoeItalyIoni Bowcher QUALIFIED
Deepesh L AmigonAustraliaXuxue Feng RENEWAL
Murillo K NickaCanadaOnyama Limba UNQUALIFIED
Julie D MaletAustraliaAmy Elsner PROPOSAL
Leja D WieserCanadaOnyama Limba RENEWAL
Mayumi F GarufiUnited KingdomAnna Fali PROPOSAL
David D FerenczSpainAsiya Javayant NEGOTIATION
Jennifer R TollnerSpainAnna Fali PROPOSAL
Julie J RoysterGermanyAnna Fali UNQUALIFIED
Wickens K SaylorsItalyElwin Sharvill RENEWAL
Rodrigues T StensethIndiaAmy Elsner NEW
Jennifer W KuskoAustraliaBernardo Dominic QUALIFIED
Maria U GillianFranceOnyama Limba NEGOTIATION
Ivar H BologniaCanadaStephen Shaw RENEWAL
Juan U MaletJapanAnna Fali RENEWAL
Mujtaba K TollnerFranceAnna Fali UNQUALIFIED
Costa A VenereUnited KingdomIvan Magalhaes 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>