3/10/11

How to build a web based application

Hello,

recently I took over a project and was puzzled with all available technologies for several weeks.
I am concentrating on java and free open source technologies and after reading and testing all available frameworks and tools I finally decided to use the following.
Please note that the versions are important as these the versions that work. This means that previous versions had problems or didn't provide full support for some of the technologies I am about to use.

  • IDE
  • GUI framework
  • Application Server
  • RDBMS
  • Authentication
IDE
I compared two IDEs Eclise and NetBeans. Even though both are very mature products with many plugins, I found Eclipse much more complicated and error prone in combination with application servers. NetBeans is the perfect IDE tool and the only thing missing is a WEB GUI builder similar the one it had in previous releases before Oracle bought SUN and removed this functionality from NetBeans, probably in order to promote their JDeveloper which works though only with their commercial application server.
So, IDE NetBeans 7.0 (currently in beta but works perfect with Glassfish 3.1)

GUI Framework
Here I had to choose between the obsolete JSP with some combination of struts etc. or JSF with facelets. The choice is straightforward JSF 2.0 with facelets it is.

Application Server
Glassfish vs Tomcat. After doing several tests I decide to go with glassfish. Both products have suport for cluster load balancing etc but Glassfish supports beans and was less error prone. The only problem is the lack of proper documentation. You have to do extensive search on the web for every single configuration and code examples, most of which are outdated.
Glassfish 3.1 it is.

RDBMS
The choise here was easier to make as I have been using all three for many years and have extensive experience as developer on Oracle, MySQL and PostgreSQL. Oracle is certainly a RDBMS which has everything but it is so expensive that you need the BNP of a small country to buy licenses. MySQL has certainly been evolving alot the last years, but I found PosgreSQL to have most of the features that Oracle has for free.
PostgrSQL 9.x

Authentication
Initially I was planning to use my own db schema for authentication but Glassfish requires its own schema so I finally decided to go for an LDAP solution. Even though it is still unclear to me how I can setup roles and groups on LDAP but no worries, I will post everything as I find solutions.














No comments:

Post a Comment