How to build large Web-Applications?
stefankuhn Dec 21, 2006 4:16 AMI'm develloping a mid range JBoss based web application facing that it's
darn heavy work, before you can go online.
During this work, i have asked myselve offen...isn't there a tool based
approach to this or at leased part of this work?
I mean...what do they do, who devellop web apps with hundreds of JSP Pages and enterprise beans?
By the way, this isn't my first JBoss based web app...
In the past i had a glance at some tools, but it's always the same.
There is alwas a major drawback.
Take a look at this tool i.e.. The "Java Studio Creator" from SUN.
http://developers.sun.com/prodtech/javatools/jscreator/index.jsp
At the first glance it looks like a great tool.
When looking closer at it - always with your model-viel-controler and
your enterprise beans in mind - you begin to suspect...
"Hey that's not the clean architecture that you want".
You want a modular, scalable, 4-tier architecture.
Not an architecture where the database sticks to the view or an
overload of (more or less useles) tags in the JPS-Page.
It's almost releaving reading a "Java Studio Creator" product rating like this:
http://developers.sun.com/prodtech/javatools/jscreator/community/ratings.jsp?pageId=588beeb8-3462-4ac5-8210-0fac4d862408
Ok for prototyping, not for production
By Java web application development expert from Leiden, the Netherlands on 11/21/2006
Pros:Good Value
Cons:Poor Features
Best Uses:Prototyping a GUI
Nice for mocking up a GUI to show to your client when eliciting requirements,
or for building a simple throwaway web page.
But don't use this for building production quality systems.
Why?
After just having been involved with the maintainance of a JSC created application,
I conclude:
The web layer code generated by the tool
(especially when using the "rave" ui components) is :
- not web standards compliant; for instance inline styles are all
over the place in your html (jsp) page
- just too much : Why generate (and bind to) a member object in a JSF backing bean,
including getters and setters, for just about every element on the page? 99% of them are never used.
- connecting ui controls directly to (database) data provider
components to get data on the screen. This might look handy,
but generates code which really hard to maintain.
There is no clear modularization of gui, business logic and data access functionality.
If your database schema changes, you'll find yourself changing code all over the place.
These factors result in applications which run sluggish (to say the best),
can not easily be given a different look and feel, and in general are
unnecessarily hard to maintain. Not what you want in any serious web application.
Has anyone worked on a large application server based, web application project?
What architecture was used?
Was al the stuff hand coded (from an army of HTML/JSP/Java programmers)?
I mean, this topic isn't complete uninteresting!
Writing these lines i came up thinking of the artificial intelligence (AI) hype in the 80's.
I don't know hwo, but those days some company was stating they had "real world AI solutions".
And that's all it about: "Real world solutions".
You might get a kick of a fancy shrink wrapped software, but when you get down to do the work, you want a modular, high scalably, 4-tier architecture ... fast.
Or am i asking too much?
I would appreciate if the pro's among us, shared theire experience with us.
Thank you!