Re: Custom or pre-packaged.



On Tue, 29 Nov 2005 21:11:30 -0800, anita1766 wrote:

> Its been a while since I've done java programming. EJB's weren't so
> prevelant when I stopped, so I'm not really up-to-date all the options.
> Here is what I want to do:
> Make a sort of portal for information, with 1)forums, 2) users and
> personalization 3) news (generated by the website itself), user activity
> tracking 4) database
>
> I've done all this before using servlets and jsp and using some commercial
> platforms as a development environment and appservers were just taking
> off. But, of late, I've been finding that many of these things are done
> by using out-of-the-box products free or otherwise.
>
> So these are my questions to all you people.
>
> How would you go about making such a site ? any products that you'd
> customize out of the box ? How customizable are they ?
>
> It appears that out-of-box solutions take care of most things that I was
> doing custom development for ? So what kind of things are being done that
> do custom development ?
>
> EJB's seem a little heavy, besides I am worried that managed hosting
> providers wont support it.
>
> Would you use EJB's to do what I need to do, I understand how they work
> etc., but I'm not sure of the deployment aspects and WHERE exactly they
> are used ? If left to me, I'd do it with just servlets, but I rather learn
> from other's experiences than spend tons of time doing something that I
> should have done differently.
>
> One more question: If you had to design a content management system from
> ground up what approach would you take. I'd love to hear your opinions
> Thanks
> anita

There are free frameworks for most of the problems you are grappling with.
Start with Spring, then Hibernate, and then go from there. Uportal may be
a framework to help you too. I'm not familiar with it but we are currently
investigating it at work. Stay away from EJBs whereever possible. I say
this with some reservation because there is something to be said for
staying with established standards but most of the time EJBs functionality
can be implemented with much simpler tools.

Persistence is taken care of by Hibernate and Spring will give you a good
web framework as well as force you into an introduction of where things
are moving in the Java community (Take a look at the what's driving the
new EJB spec.) Once you investigate Spring, a lot of things will become
much clearer. Spring will work with anything you want to use. It's pretty
flexible.

For database stuff, use HSQLDB (used to be called Hypersonic SQL) and for
the view, consider velocity. There are many good options for all of these
but the wonderful thing is that whatever you choose, even just Servlets
and JSPs, you can integrate them easily with Spring.

Since you've been gone for a while, I would consider a build tool for like
Ant or Maven. And also JUnit for your unit testing. JUnit can be run
with Ant so your tests can be run with the build process. Ant has become
a sort of standard build tool for projects but Maven is really good too.

Everything I've mentioned is free. Hope this was somewhat helpful. You
will invest a lot of up front energy in learning these things but I
guarantee it will pay off.

Good luck! Sounds like a great project;-)

--
R. Scott Smith
Slackware on the job, at home, everywhere!

.