35

What are the advantages and dis­advantages of frameworks Lift, Play and Wicket? What characteristics are best or only supported by each?

Thanks

BobbyShaftoe
  • 28,337
  • 7
  • 52
  • 74
adelarsq
  • 3,718
  • 4
  • 37
  • 47
  • 1
    Do you want a framework with scala-support? – niels Oct 24 '10 at 11:21
  • @niels Yes Another feature, besides those cited in the question, is enabling a good separation of the layers of the system. The framework that I liked was the Wicket. If necessary I will make a custom bracket to use it with Scala. – adelarsq Oct 24 '10 at 13:05

4 Answers4

60

Play:

Lightweight Java-based framework, with Scala support available as an extra.

very good for rapid prototyping, fast-feedback-loop kind of work. Embeds the compiler, so you just edit source code in place and pages get immediately updated. Learning curve is shallow.

Wicket:

Stateful Java-based framework, with Scala support available as an extra.

Shallower learning curve into Scala, especially if you already have wicket experience. Good separation of concerns, POJO-based model. Arguably one of the best Java web frameworks currently available.

Lift:

Stateful native-Scala framework. Deep Scala integration, so no need to generate bean setter/getter methods or worry about interop between Java/Scala collections. Fully embraces functional-programming concepts, such as immutability and closures.

Also the steepest learning-curve of the three. One common piece of advice is therefore to learn the Scala language before getting started with Lift, especially if you come from a Java background.

Others:

There are also other Scala-based frameworks available (such as Scalatra and Pinky) for web development, though not as well-known as Lift. It wouldn't hurt to check these out as well!

For more information, see this question: What Scala web-frameworks are available?

Community
  • 1
  • 1
Kevin Wright
  • 49,540
  • 9
  • 105
  • 155
12

There are many threads that compares these web frameworks for Scala. See

Which is better framework Java/GWT or Scala/Lift?

Lift / Wicket here: Which is better framework Java/GWT or Scala/Lift?

For my next project, a web-app, should use scala+wicket or scala+lift?

How do the Scala based frameworks stack up for a complete Scala newbie - Lift, Play, Circumflex, etc

Community
  • 1
  • 1
olle kullberg
  • 6,249
  • 2
  • 20
  • 31
3

Talking about the advantages of Lift, one should mention Seven Things where Lift really excels. In short:

  • Lazy Loading
  • Parallel page rendering
  • Comet and Ajax
  • Wiring -- declare interdepencies between page elements
  • Designer friendly templates
  • Wizard -- multipage input screens with full back-button support
  • Security

Just visit the linked page for more details - these features really make Lift unique among competitors.

Kristof Jozsa
  • 6,612
  • 4
  • 28
  • 32
2

See also:

https://vaadin.com/ - Stateful Java-based framework for desktop-like applications (GWT based, but server-side, no javascript, no html).

http://click.apache.org/ - stateless Java-based framework for light web applications.

Both have excellent documentation and are easy to learn.

Andrej Fink
  • 350
  • 2
  • 5