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!


21 Responses to PrimeFaces Brings Excel to JSF

  1. Oleg says:

    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.

  2. Daniel says:


    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 !:)


  3. Theo says:

    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.

  4. Chris says:

    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!

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

  6. samy omar says:

    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.

  7. Clément says:

    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.

  8. Theo says:

    @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

  9. “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;

  10. Baybora says:

    Good! keep working.

  11. Theo says:

    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?

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

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

  13. Theo says:

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

  14. Chris says:


    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…

  15. moonblade.wolf says:

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

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

  17. rodakr says:

    Hi Civic

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

  18. Anonymous says:

    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?

  19. raphael says:

    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

  20. abdlquadri says:

    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.

  21. teknow says:

    does this component have customizable UI like row columns to fit two dimensional array data?
    I am desperately looking for one.

%d bloggers like this: