PrimeFaces Brings Excel to JSF

PrimeFaces Brings Excel to JSF

New Component of PrimeFaces called Sheet brings excel to JavaServer Faces, it is a component that mimics the core functionality of spreadsheet desktop applications like excel and openoffice. Notable features are;

  • Incell editing
  • Multiple selection support via meta/shift keys
  • Bulk Updating
  • Frozen headers
  • Vertical/Horizontal Scrolling
  • Global editor
  • Resizable Columns
  • Ajax Sorting
  • Keyboard navigation
  • Theme Aware
Beta Demos are available at PrimeFaces Labs. Note that sheet is designed to be a lightweight component, although we have plans to add new features like fx support, excel-odp export, a feature like multisheet is out of scope since it can be implemented by placing sheets inside tabview.

Always bet on PrimeFaces!

  • Oleg
    20 July 2011 at 11:10

    Definitely an useful new componen (although I don’t have any idea where I can use it :-)). Looks robust, solid and good.

    One question. Should a click on any cell in the first column (numbered as 1,2,3…) not select the entire row (line)? This is how Excel behaves. Otherwise why do we need these cells then? A click on such cell only shows “null” at the left top area at the moment.

    Many thanks.

  • Daniel
    20 July 2011 at 11:12


    Looks great ,


    It seems not possible to copy cells data (unless i edit it) so it impossible to copy multiple cells data? so What is the Multiple selection good for?

    Will it be possible to use some basic Formulas? like sum and etc?

    And is it possible to add “Insert Line”? or how can i add more rows from the client?

    Keep it up !:)


  • Theo
    20 July 2011 at 13:17

    Cagatay, I’d love to see a PrimeFaces version that is production ready. The PF team has been constantly throwing features and components to the library for quite a while now. Please focus on bugs and features requested by the community. While the new sheet component is neat, I can’t think of any use cases now.

    Keep up the great work.

  • Chris
    20 July 2011 at 14:19

    Easy guys… it’s still a milestone component implementation. Help out Cagatay and implement it in a test project then post your questions/feedback. The Rome wasn’t built in a day!

  • cagataycivici
    20 July 2011 at 14:41

    We actually try to balance features/maintenance, for example M3 is planned to be developed around 6 weeks in total, 3 weeks on new stuff, 3 weeks on bug fixes. If you see what has been done so far at;

    You’ll realize that there are implementations of various most voted features. Once we are done with the new features, we’ll focus on bug fixes for M3.

    I believe there must be a balance like this to respond to Community requirements effectively.

  • samy omar
    20 July 2011 at 15:28

    First thanks so much its really a useful component,
    But it still missing 2 is-a-must features
    1- export to excel file (at least)
    2- import excel file (by uploading an excel then showing its content using your sheet component)

    Note that Google already implemented these features.

  • Clément
    20 July 2011 at 16:08

    Seems great, once again.
    Even if I have no idea about the use that I can do of that component!

    Great job Cagatay, I’m waiting for the 3.0 version and the community knows the job that you’re doing.

  • Theo
    20 July 2011 at 16:58

    @Chris Don’t get me wrong. The PF team is doing awesome work. I’ve been testing and supporting PF for a while now (I also bought the PF Guide :). But there is no single version with JSF 2.0 support that is production ready. Version 2.2.1 is maybe 5 months old and doesn’t get any bug fixes. And it doesn’t look like that there’ll be a maintenance release. Bottom line is: I would prefer stability and robustness in favor of features. A half product is better than a half-assed product.

    Is anybody actually using PF in production?

    @Cagatay I wouldn’t implement every single user’s requests (which I don’t think you do). Especially not to requests like the one from samy. PF is a component library, not a spreadsheet application.

    Best, Theo

  • cagataycivici
    20 July 2011 at 19:06

    “Is anybody actually using PF in production?”

    Now that’s a weird question.

    Thousands. (Banks, Financial Institutions, Insurance Companies, Software Companies, Defense Contractors, GPU Manufacturers, Tyre-Automative Manufacturers, WareHouse Club Chains, Global Grocery Chains, Universities and me).

    I wish I can reveal the big brands who use PrimeFaces but we have privacy agremeents. Some are;

  • Baybora
    20 July 2011 at 20:06

    Good! keep working.

  • Theo
    20 July 2011 at 21:18

    I don’t wanna hear big brands. Just wanted to know whether PF 2.x is ready for production. I get the feeling it’s not. Why is that a weird question?

  • cagataycivici
    20 July 2011 at 21:26

    I heard this saying from a friend today, interesting coincidence.

    “If you want progress.. avoid negatively minded people…”

  • Theo
    20 July 2011 at 21:49

    I’m sorry if my feedback is negatively perceived. Didn’t want to offend you.

  • Chris
    20 July 2011 at 23:38


    FYI… I have an enterprise app utilizing PF 2.2.0 that is in first round UAT at a major pharma company. You are correct for pointing out that PF needs stabilization before introducing new components/features. However, one can author an app with PF and support it in production. With that said I need to point out that this is an intranet environment, not the open web. So I only have to maintain compatibility with FF 2+, IE 7+ and Safari 4+. I would be hesitant to deploy on the open web until additional bug fixes/compatibility/hardening is done. Possibly 3.3? Cagatay could better provide guidance here but this is IMO. Peace…

  • moonblade.wolf
    21 July 2011 at 03:46

    Marvelous ! Primefaces team is full of spirit and very inspiring for me !
    Keep up the good work !

  • cagataycivici
    21 July 2011 at 05:22

    PrimeFaces 3.0 will be the implementation of our vision for PrimeFaces and things are planned to be rock solid starting from 3.0.

  • rodakr
    21 July 2011 at 21:28

    Hi Civic

    Congratulation, hope you guys can take more often hollidays.. 🙂
    So many new futures in shortes time.

  • Anonymous
    27 July 2011 at 19:18

    Cagatay…great work i must confess. Keep the good work up. i downloaded the PF 3.0M1 and M2 jar and tried to use the sheet…<p:sheet component library does not exist but i can see its in the META-INF space. Am i missing out any configuration?

  • raphael
    3 August 2011 at 14:19

    hey cagatay
    the sheet component is da hot shiiiit 🙂
    keep up the cool stuff!

    without all the new features and all the components PF wouldn’t have that market share and that popularity!
    it was the first component library ready for JSF2 and in my opinion it’s still the only choice for modern web apps that look and feel is state of the art (in the field of jsf component libraries).

    my company uses it in production(JSF2) (no intranet) in the sector of education.
    it’s true there are (many/some) bugs and things you wouldn’t think that they are working like they do or behave that way, but i think this holds for many java EE 6 libraries.
    at the end of the day the good things outweigh the bugs.
    with no constant innovation it ends

    just my 2cents
    kr raphael

  • abdlquadri
    4 August 2011 at 13:31

    I have tried many other libraries… no go area. All other libraries team should just support PF and stop beating about the bush…

    Resistance to PF is exercise futility.

    Thanks for not sleeping so I can sleep a little more.

Post a Comment