Which Java web framework best accommodates web des

2019-05-06 23:32发布

Which Java web framework best supports the "web UI designer" role? That is, which framework lets you:

  • Use popular web design tools (XHTML validators, CSS editors, &c.) on your views/pages
  • View changes without running on a server
  • Rapidly prototype different UI options
  • Supports a (somewhat) clean separation between "developer" and "designer" (terminology intentionally vague)

I, like many others, have found these capabilities sorely lacking in my large, legacy Struts 1.x apps that use lots of JSP fragments and includes.

I've decided to port my apps to a JSR-168/268 portal environment, but have not decided on what Java web framework will power the portlets. I'm open to any kind (action-based, component-based, etc) and a key criterion is how well it supports the role described above.

I'm intrigued by Tapestry, which claims that its views are XHTML-compliant pages (that simply have extra Tapestry-specific attributes added onto them to be processed at runtime). This sounds like it would play well with a web UI designer's toolkit. However, I'd like to know if this is what actually happens in the real world, or if compromises are necessary.

Of course, if there's something much better than Tapestry, I'd love to hear about it!

7条回答
对你真心纯属浪费
2楼-- · 2019-05-06 23:54

I've had pretty good luck with JSPs using JSTL and CSS, Spring, and SiteMesh. SiteMesh in particular is terrific, because it allows you to compose pages without includes. It uses the Decorator and Composite patterns to good advantage.

Web designers created pages using Dreamweaver using HTML and CSS. Developers would take those and add in the dynamic bits using JSTL. Headers, footers, and the rest were added in using SiteMesh. The separation of concerns meshed well.

查看更多
再贱就再见
3楼-- · 2019-05-06 23:57

If your enterprise computing requirements are complex, the fact that Tapestry has a built-in IoC container really helps out. However, this also contributes to Tapestry's high learning curve if you are not familiar with this type of programming. Changing a pure HTML page into a Tapestry page is easy, since Tapestry tags are as non-intrusive as it gets. Check out Jumpstart for examples.

查看更多
你好瞎i
4楼-- · 2019-05-07 00:00

Try Wicket. It has all you need.

查看更多
叼着烟拽天下
5楼-- · 2019-05-07 00:08

I lately tried and I'm very happy with RichFaces, wich you can look how presents here, connected with facelets. Works good for me ;)

查看更多
SAY GOODBYE
6楼-- · 2019-05-07 00:09

I think Spring MVC is better choice for you. It will be familiar for you (it is action framework), and it supports all you need.

If you want to try OO/component framework, try Apache Click. Click is Tapestry-like, but much more easy than Tapestry and Wicket.

查看更多
Root(大扎)
7楼-- · 2019-05-07 00:18

You might consider ZK with JSPs: http://zkoss.org/ It's all about rapid-prototyping. Many things are design-y and really easy, BUT extending widgets is hard. Also, giant webapps may develop a performance problem if you don't know exactly what you're doing.

查看更多
登录 后发表回答