Fat client-web based application architecture Design Help????

Hellow experts

i have recently joined a java project
which is a fat client-web based application.
clients can work from any location or place using the internet
they will connect to the web server which will be provide the data
to the clients application

i am working on the improvement of architecture n design of the project
pls help me in deciding the best and the fastest way to develop this application further.

i am designing a framework based on my experience and
am also doing some research on whats latest which can accelerate
and improve the development process.
here's what i have and want to know what u think abt it.
pls suggest some new good frameworks if you are aware of.

Technologies to be used
Fat client front end :  Java Swings
Web server : Tomcat,Struts
Database : Mysql


Client side
XXXView.Java(is the GUI layer) (where xxx is any module specific name)
XXXWebHandle.java(this java file will have the code to
connect to the webserver using the apache httpclient)
it will call a struts action file specifically
the data collected from the gui components will be transformed
into xml and sent to the struts action file.

Server Side
xxxaction.java(this file will parse the xml data from client side
and save it to the datbase using jdbc statements
it will also retrive data and metadata from database using jdbc queries
and convert it into xml and send it back as http response to the XXXwebhandle.java
which then parses back the xml data and puts it on the GUI components of XXXview.java files.

THe Problems
1)  the conversion of database query resultset to xml at server and the xml back to fields data
takes a lot of time and is cumbersome to code as we need code the xml
defination pattern for every data exchange between server and client.

we need to remove XML   .................is it possible???? can we send data back to client as java objects.
2) right now we are making JDBC calls to mysql database using a common Utility class file
created for handling all kinds of  sql statements and return the data via a hashtable object.

We need to use a ORM tool here............dont know which to use and how to use.
heard of hibernate and EJB.pls suggest which  one to use

Overall i would appreciate if someone can suggest me good architecture.
is there any framework readily available for developing these kinda apps
pls guide or give me links where i can get info abt this.

Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

You might consider SPRING framework  (spring.org).


Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Leo EikelmanDirector, IT and Business DevelopmentCommented:
How are you building the xml from the result set?

You should be using a DOM Document.  Take a look at this


specifically, implementing the DOM API for Databases

You will have no problem passing java objects between the server and client, if the client is a java client.  If you are going to do this and you are going to send XML then I suggest using XML Beans and send document objects.

You can


hope this helps,

OK for me.

Leo EikelmanDirector, IT and Business DevelopmentCommented:
thats fine

(:<]      ....  (:>}
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today

From novice to tech pro — start learning today.