Web tier: servlets, JSP, Web frameworks: What is a suitable web framework?

  1. What is a suitable web framework? (1 messages)

    Hi, I am planning to build an online web application that will be hosted using a 3rd party cloud service provider. At this stage I am deciding on which Java web framework to use to build this application. I know that there a lot of popular java based web frameworks out there such as Spring, Struts 2, Stripes, Wicket, Tapestry, etc... I am considering various factors such as a) Learning curve and the amount of code to write b) Books and learning material on the subject c) Scalability d) Size of the community e) ORM facility f) AJAX support I would appreciate any advise or links that you can provide. Thanks
  2. It is easy to give recommendations on Framework to use for projects. It would however be based on individual experience and bias. Furthermore you must recognize that there is no framework that could satisfy all needs. For instance if you want a lot of client side validations and scripting; this could be for many reasons, including removing some activities from the server to the client. You would simply find out that some component based architectures are not client scripting friendly. If your application is page oriented, with user interaction events and post back, you would discover that this requires a lot of work on request/response or non-component based platform. Whereas, this is the main stay of the component based frameworks. One perspective that would serve you well is the concentration on what business solution you are trying to build first, and then worry about the framework that could deliver this solution. One way available to achieve this, is by capturing the specification with dWebSpec. Once the requirement is captured, you could then evaluate how it translates to various platforms using the dictionary. Some of the criteria that you already set could easily be discerned through this process. Learning Curve and Amount of Code to Write By flipping through the dictionary you could verify the implementation for the various platforms. Verifying the ease of implementation, and whether there are in-built facilities for items in your specification, or whether simple or extensive custom code would be needed. AJAX The support for AJAX could also be verified, either the retrieval of JASON, XML, etc data, or simple partial page refresh. There is no doubt that making a commitment on which framework to invest in is not easy. Furthermore, making subsequent changes could be expensive. However, utilizing the specification and definition of the problem domain would buy insurance for the success of this process. First, you have the benefit of platform independent specification. Then is the concrete means of platform evaluation.