Over a million developers have joined DZone.

Choosing a Framework for the Enterprise

DZone 's Guide to

Choosing a Framework for the Enterprise

· Java Zone ·
Free Resource
My company has just created an architecture team to help standardize our programming tools and application design. It’s a small but growing financial company and we have 50 or so developers on staff. Most of our Java apps are built using Struts 1.x with a custom ORM and hibernate handling the data. Recently it was decided to add Spring MVC to the mix but nothing much has been developed using it. We tried once before to agree on a web framework but could only agree to allow Flex to be used for some apps. Since then, we’ve built 2 Flex apps, with another one in development. We also have some .Net apps that use the entire MS data stack SSRS, SSAS, SQL Server and the Telerik controls.  

Our architecture team has proposed a json web service model utitlizing jQuery and JSPs for constructing the view. ExtJS is also being considered but currently not approved. This model makes the server side framework less important and takes us toward writing more JavaScript on the client side.

I should add that some of the apps we are creating and maintaining have been around for as long as 10 years or so and are expected to be around indefinitely. Also, we’re mostly talking about internal web applications.

The opposition to the architecture team's proposal contends that the jQuery and JSPs are not a comparable replacement for Flex and not even ExtJs is a comparable replacement. What’s being asked for is Flex for applications needing rich UIs and a full stack framework (Grails, Play, Stripes, Struts2 , etc, pick one) when Flex is not a good fit  or a full stack framework with a rich component library and component model - something like Seam or Vaadin. There are additional concerns about maintaining large codebases of JavaScript and the debugging and profiling of JavaScript heavy applications - as compared to something like ActionScript and Flex, or a JSF based component model.

I have a few questions that I’d like to get feedback on.

Is jQuery (and all of its plugins) a comparable replacement for a component library (and component model) provided via something like JSF, Vaadin or the components available in Flex ?

Secondly, have you adopted the restful model w/an ajax frontend for large internal projects ? If so, how did it go ?  Is this model well suited for enterprise development ?

What would you propose for an organization with demands for all type of applications: large, small, reporting, charting, dashboarding, some needing really quick turn arounds, others needing a high level of testing, some needing rich responsive UIs, some having short lives, while some could be around for many years.

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}