13 Replies Latest reply on Mar 8, 2007 9:49 AM by Fabricio Lemos

    JSF IDE support

    Spencer Uresk Newbie

      I've been using JSF and JPA/Hibernate for several years now, and really like these technologies, despite a few pain points involved in using them. Seam has solved most of them, except for one big one: IDE Support.

      I'm not necessarily interested in GUI layout or drag-and-drop support for JSF, but I'm really interested in two things:

      1) Auto-complete

      This may seem silly and lazy, but I lose a fair amount of time switching back and forth between my Java objects and my xhtml pages, trying to figure out what everything is named. I also make stupid typos, which is really embarrassing when trying to show off JSF and JPA in front of other people :)

      I guess it is more of an annoyance than anything, but it would save a fair amount of time.

      2) Refactoring

      This is the big one, in my book. In my opinion, refactoring is an important part of software development, yet the way we use JSF and JPA together, it is very difficult to refactor with confidence. And, since JSF pages aren't compiled, you don't find out you've messed something up until you try to use that page - and even then, it may take the proper combination of variables to see the problem. A 100% comprehensive set of web tests would fix this, but on a decent-sized project, those could take quite a while to run.

      I realize that IDE tools are probably outside the scope of Seam, but this is right down the alley of using JSF and JPA together, so I thought I'd pose the question here. So, I'm wondering a few things:

      1) What things have other people done to alleviate this problems?

      2) Are there any ongoing IDE projects anyone is aware of?

      3) Is this (#2) exactly why we shouldn't be using entity objects in the view layer? I like a lot of the benefits you get from not creating DTOs everywhere, but other developers I work with have expressed concerns about the idea. The larger our project gets, the more I start to see their side of it.