2 MIN READ

Java/JEE software development frameworks

In the past decade, investments in IT solutions based on Java technology have been counted in billions, and it is certain that in the coming years this trend will not be changed. If we consider that the major players in the IT market have recognized Java as the “de-facto” standard for enterprise scale product development, that Oracle got Java in the recent acquisition of SUN, that IBM made a huge investment in WebSphere middleware, and that Java middleware is the fastest-growing business of JBoss, it sounds unreasonable to start with development of new solutions and not think about Java as a candidate platform for development. So what about Java development on enterprise scale level? Are there any available “add-ons” (frameworks) that can help us in development process?

If you are in the process of developing a new IT solution, one of your first steps should probably be a choice of technology. Choosing Java as a technology platform sounds like a wise decision. Still, there are several buts. Java / JEE development is not easy; there is a large number of technologies, specifications, standards, design patterns, and many other things that you have to use with Java. All these items ask for specific knowledge and skills and comprise a greatly complicated development process.

Although JEE defines a large set of components that hides low level stuff and make our life easier, still there are a lot of things that move focus from the solution’s business domain, and slow down our developmental process. Currently there are lots of frameworks built on top of Java / JEE that can improve our developmental process. Several are proprietary frameworks (commercial) such as Oracle ADF, and there are many frameworks (Spring, Seam) that are free to use. A majority of them also offer additional commercial support.

Below we will give a brief description of the currently most important development frameworks that would be worth considering, and in upcoming blogs we will try to give more detailed analysis of development frameworks listed below.

ADF

Oracle Application Development Framework (ADF) is Java framework for building enterprise applications. It is an end-to-end Java EE framework that simplifies application development by providing out of the box infrastructure services as well as visual and declarative development experience. It significantly accelerates the development process by minimizing the need to write code that implements the application’s infrastructure, allowing developers to focus on the features of the actual application. Oracle started with the ADF development in late nineties, and in that time ADF has been called BC4J (Business Components for Java). Until today, a large number of versions have appeared, and ADF became mature and robust technology. As for disadvantages, ADF is criticized in areas of maintenance, GUI customization, and heavy use of XML configuration.

Main ADF characteristics:

  • Simplified database access
  • End to end framework
  • Rich User interface
  • Easy data bindings
  • Extended page flow
  • Visual and declarative development
  • Free to use on Oracle Application servers (WebLogic)
Skip to content