views:

68

answers:

3

We are trying to find a java framework that requires the fewest changes to html/xhtml when we get it from the designer. So far to me it seems Sitebricks is the least intrusive, but it is still in alpha it seems and has been that way for a long time. Wicket seems to come in a pretty close 2nd. JSF, Stripes, and Struts requires a lot, what are we missing.

+1  A: 

What changes exactly require Struts, Spring MVC, JSP? (not familiar with Stripes/JSF) The only required change I can think of is changing file extension from 'html' to 'jsp'. That's all.

Of course, different frameworks require different amount of configuration (which sometimes can be confusing), but that doesn't involve changing html.

Nikita Rybak
With struts and spring you have to use a specialized tag to get info from a form. Sitebricks you can just name the html/xhtml field a certain name example: <input name="newBlog.subject" type="text"/>.
arinte
@arinte You don't have to. 'Specialized tags' are supposed to help with generating html, but you're not obliged to use them. You can have html-only form which will submit request parameters in standard way (which you will read in controller).
Nikita Rybak
@nikita But I am lazy and I want the convenience of the params getting auto-magically resolved. Is there some resolver in spring that I can implement that will help me to resolve the request params?
arinte
@arinte I would check what kind of html helpers generate (input name is probably the only attribute making difference for them). For example, in Rails input element for 'subject' field of 'blog' object would have name 'blog[subject]'. Then I could put this name in html manually (without Rails helper), but still read parameters automatically on server side (_blog.update_attributes(params["blog"])_). I've not been working with struts for a long time, but I bet technique is generally the same.
Nikita Rybak
+1  A: 

Tapestry has always had "very-native" html templates, from what I can remember - I haven't looked at the new version, but I don't expect that to have changed drastically.

crowne
+1  A: 

Tapestry and Wicket are the least html-invasive. They both have the same idea of adding annotations into the html, but not butchering it through replacing every html element with taglibs.

Another framework that featured logic-less html templates was RIFE. I think it stopped being developed a couple years ago, though.

Nathan Hughes
Yes, I want something no one works on anymore. J/K, but I will consider Wicket although we need better urls, Tapestry not my cup of tea.
arinte