You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@struts.apache.org by "Vu, Thai" <Th...@parsons.com> on 2006/02/10 17:57:23 UTC

With a new project, what technologies should I use?

Hello everybody,

Could you give me some advices?

Assume that I know how to use Struts, Hibernate, iBATIS and know nothing
about Spring, JSF (but willing to learn :) ). Now what should I use if I
have to write a new web application? And correct me if I'm wrong
anywhere please.

I heard that Spring helps us write less code (by declaring beans with
their own names in xml files, whenever we need a bean, just call that
name) and helps us in transactions (I don't know exactly if we use
Spring for transaction management what we can get. Could someone write a
few words here?)

I heard that JSF is best used for the view tier in the MVC model (I've
just read an article by Craig McClanahan named `The Best of Both Worlds:
Integrating JSF with Struts in Your J2EE Applications on Oracle website,
but it seems to me that that article applies to existing Struts
applications, not new ones). And if I should use JSF, which JSF
implementation should I use? Sun Reference Implementation or MyFaces or
Oracle ADF? I also heard that ADF provides the most components among
those 3 and it's just gone open-source (i.e. we can use it for free). Or
Shale (as far as I know, it is a mixture of Struts and JSF. Am I
right?)?

Awaiting for your advices.

Sincerely.

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: With a new project, what technologies should I use?

Posted by Laurie Harper <la...@holoweb.net>.
Vu, Thai wrote:
> Hello everybody,
> 
> Could you give me some advices?
> 
> [...]
> I heard that Spring helps us write less code (by declaring beans with
> their own names in xml files, whenever we need a bean, just call that
> name) and helps us in transactions (I don't know exactly if we use
> Spring for transaction management what we can get. Could someone write a
> few words here?)

That's a topic for the Spring lists, but briefly: spring allows you to 
configure transactional behaviour declarative and will automatically 
manage transactions for you -- meaning it'll transparently 
start/commit/rollback transactions as needed, regardless of what 
underlying database access and transaction APIs you're using.

> I heard that JSF is best used for the view tier in the MVC model (I've
> just read an article by Craig McClanahan named `The Best of Both Worlds:
> Integrating JSF with Struts in Your J2EE Applications on Oracle website,
> but it seems to me that that article applies to existing Struts
> applications, not new ones). And if I should use JSF, which JSF
> implementation should I use? Sun Reference Implementation or MyFaces or
> Oracle ADF? I also heard that ADF provides the most components among
> those 3 and it's just gone open-source (i.e. we can use it for free). Or


Oracle's ADF Faces is a component libarary, not a JavaServer Faces 
implementation. It can be used with either the JSF RI or MyFaces, but 
does not replace either. It *is* a very nice set of components, though, 
and is now open source.

> Shale (as far as I know, it is a mixture of Struts and JSF. Am I
> right?)?

No, Shale is an application framework which extends JSF. It is entirely 
separate from Struts Action (the new name for the framework previously 
known as just 'Struts'). The two frameworks are both developed within 
the Apache Struts project, and share a community. Otherwise, they are 
distinct.

HTH,

L.


---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: With a new project, what technologies should I use?

Posted by "Frank W. Zammetti" <fz...@omnytex.com>.
<jokingly>
Wow Ted, that was just about the most cliche-ridden post I've seen in a
while :)  If that's what you were going for, mission accomplished! LOL
</jokingly>

Of course, every single cliche you used is completely true and applicable
here, so no one minds I'm sure :)

-- 
Frank W. Zammetti
Founder and Chief Software Architect
Omnytex Technologies
http://www.omnytex.com
AIM: fzammetti
Yahoo: fzammetti
MSN: fzammetti@hotmail.com

On Fri, February 10, 2006 4:17 pm, Ted Husted said:
> On 2/10/06, Vu, Thai <Th...@parsons.com> wrote:
>>. Now what should I use if I
>> have to write a new web application? And correct me if I'm wrong
>> anywhere please.
>
> It's a little bit like asking a building contractor: "What materials
> should I use to build a new structure?"
>
> Just to pose a few rhetoric questions: Are you a sole developer
> building a five page application next week, or leading a team of ten
> developers building a five hundred application over the next year or
> two? Is the primary purpose of the application database access or
> something else? How important is look and feel? Are the java
> developers doing the markup, or is there a second team of HTML
> designers? Are you expected to use prepared statements, code your own
> SQL, or have it generated? Will the site be static or have a number of
> dynamic elements? How soon before the site needs to be updated (if
> ever)? Are the requirement stable, or are the business people still
> figuring out what they want? Will the site need to maintained and
> extended as business needs change, or would you start from scratch
> with a new site?
>
> Now some vendors want you to believe that no matter how you answer any
> of these questions, and a hundred more, there is only one true answer:
> Whatever product they want to sell you!
>
> One size fits all is a myth. We don't have a unified theory of
> relativity, and we don't have a unified framework for web development
> at all scales. Some things work better for small applications
> (Quantum). Somethings work better for larger application (Relativity).
> There is a tipping point when you need to shift gears from
> quick-and-easy to extensible-and-robust.
>
> It's one thing to build a bike-shed; it's another to build a skyscraper.
>
> A professional chooses the right tool for the job. To a PHB, every
> application is a nail.
>
> My best advice is to pick the smallest possible part of your
> application and try that part with a couple of likely technologies.
> Then, choose the one that best suits the application, your team, and
> you.
>
> If  it is not worth the trouble of doing even a small part more than
> once, then the job is  probably a small enough job that you can snag
> Java Studio Enterprise and do it with JSF out of the box.
>
> *
> http://developers.sun.com/prodtech/javatools/jsenterprise/reference/techart/whatis.html
>
> HTH, Ted.
>
> http://husted.com/blog/ted/
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
>


---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: With a new project, what technologies should I use?

Posted by Ted Husted <te...@gmail.com>.
On 2/10/06, Vu, Thai <Th...@parsons.com> wrote:
>. Now what should I use if I
> have to write a new web application? And correct me if I'm wrong
> anywhere please.

It's a little bit like asking a building contractor: "What materials
should I use to build a new structure?"

Just to pose a few rhetoric questions: Are you a sole developer
building a five page application next week, or leading a team of ten
developers building a five hundred application over the next year or
two? Is the primary purpose of the application database access or
something else? How important is look and feel? Are the java
developers doing the markup, or is there a second team of HTML
designers? Are you expected to use prepared statements, code your own
SQL, or have it generated? Will the site be static or have a number of
dynamic elements? How soon before the site needs to be updated (if
ever)? Are the requirement stable, or are the business people still
figuring out what they want? Will the site need to maintained and
extended as business needs change, or would you start from scratch
with a new site?

Now some vendors want you to believe that no matter how you answer any
of these questions, and a hundred more, there is only one true answer:
Whatever product they want to sell you!

One size fits all is a myth. We don't have a unified theory of
relativity, and we don't have a unified framework for web development
at all scales. Some things work better for small applications
(Quantum). Somethings work better for larger application (Relativity).
There is a tipping point when you need to shift gears from
quick-and-easy to extensible-and-robust.

It's one thing to build a bike-shed; it's another to build a skyscraper.

A professional chooses the right tool for the job. To a PHB, every
application is a nail.

My best advice is to pick the smallest possible part of your
application and try that part with a couple of likely technologies.
Then, choose the one that best suits the application, your team, and
you.

If  it is not worth the trouble of doing even a small part more than
once, then the job is  probably a small enough job that you can snag
Java Studio Enterprise and do it with JSF out of the box.

* http://developers.sun.com/prodtech/javatools/jsenterprise/reference/techart/whatis.html

HTH, Ted.

http://husted.com/blog/ted/

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: [OT] Re: With a new project, what technologies should I use?

Posted by Larry Meadors <lm...@apache.org>.
By "knows", I mean the basics (insert/update/delete) and at least how
to do sub-selects and how to use "group by".

I do not expect *everyone* to be a stored procedure stud, but they
need to know when and how to use them if they need to, and be able to
say "I don't know, can you help me?" when needed.

If they do not have that degree of knowledge and security, the
interview is over (unless they make *really* good coffee and offer to
bring donuts every day).

IMO, a solid knowledge of  HQL is worth about 3/26th of the alphabet. ;-)

Larry


On 2/10/06, Dave Newton <ne...@pingsite.com> wrote:
> Larry Meadors wrote:
> >  - iBATIS because HQL sucks, and every coder worth *paying* knows SQL
> >
> I'd actually disagree with this... unless we're using different
> definition of "knows". Many (most?) developers might have the basics of
> SQL down, but becoming an expert in SQL is the same as in any other
> language: it's non-trivial.
>
> Dave
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


[OT] Re: With a new project, what technologies should I use?

Posted by Dave Newton <ne...@pingsite.com>.
Larry Meadors wrote:
>  - iBATIS because HQL sucks, and every coder worth *paying* knows SQL
>   
I'd actually disagree with this... unless we're using different
definition of "knows". Many (most?) developers might have the basics of
SQL down, but becoming an expert in SQL is the same as in any other
language: it's non-trivial.

Dave



---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


RE: With a new project, what technologies should I use?

Posted by Tom Ansley <to...@gmail.com>.
"because HQL sucks" - sounds very scientific

Could you explain that please? 

-----Original Message-----
From: larry.meadors@gmail.com [mailto:larry.meadors@gmail.com] On Behalf Of
Larry Meadors
Sent: Friday, February 10, 2006 11:27 AM
To: Struts Users Mailing List
Subject: Re: With a new project, what technologies should I use?

I have to agree w/ Simon on this: it really does depend on the project, but
tried and true is key - use what you know you can succeed with. Don't
experiment with real projects.

Learning new stuff is great, but getting paid is great, too. :)

I started a project in December, and went with:
 - JDK5 because generics rock
 - Spring because IoC makes testing painless
 - iBATIS because HQL sucks, and every coder worth *paying* knows SQL
 - Struts because I can find people to work on it easily
 - Tomcat5.5 because i like my ${el}

For the dev side, I am using:
 - JUnit
 - Emma
 - StrutsTestCase
 - DbUnit

With this stack, you can very quickly build apps that perform like Java
should, and are 100% unit tested.

Larry


On 2/10/06, Simon Chappell <si...@gmail.com> wrote:
> The answer is "it depends".
>
> I love playing with new stuff, but when my back's against the wall 
> (corporate deadlines, gotta love 'em) I stick with the tried and 
> tested. I'm leading a small project right now that we started in 
> December and we're using Struts. There are a number of reasons for
> this:
>
> 1. It works.
> 2. We know it.
> 3. There are plenty of books available.
> 4. The programmers that will come after us will either know it or be 
> easily able to learn it. (hence concern about book availability) 5. It 
> already has corporate approval.
> 6. We can use already completed projects as sources (no pun intended) 
> of example code.
>
> This is not a slam on any other framework. But, if I have not used 
> them, then I'm not betting my career on them. Struts *will* get the 
> job done. The other frameworks might be bigger, better, faster, more 
> buzzword complient *and* make a cup of tea for me in the morning, but 
> that doesn't mean that Struts doesn't work.
>
> I will learn JSF and Shale as time permits, but until then Struts 
> rocks my world! :-)
>
>
>
> On 2/10/06, Vu, Thai <Th...@parsons.com> wrote:
> > Hello everybody,
> >
> > Could you give me some advices?
> >
> > Assume that I know how to use Struts, Hibernate, iBATIS and know 
> > nothing about Spring, JSF (but willing to learn :) ). Now what 
> > should I use if I have to write a new web application? And correct 
> > me if I'm wrong anywhere please.
> >
> > I heard that Spring helps us write less code (by declaring beans 
> > with their own names in xml files, whenever we need a bean, just 
> > call that
> > name) and helps us in transactions (I don't know exactly if we use 
> > Spring for transaction management what we can get. Could someone 
> > write a few words here?)
> >
> > I heard that JSF is best used for the view tier in the MVC model 
> > (I've just read an article by Craig McClanahan named `The Best of Both
Worlds:
> > Integrating JSF with Struts in Your J2EE Applications on Oracle 
> > website, but it seems to me that that article applies to existing 
> > Struts applications, not new ones). And if I should use JSF, which 
> > JSF implementation should I use? Sun Reference Implementation or 
> > MyFaces or Oracle ADF? I also heard that ADF provides the most 
> > components among those 3 and it's just gone open-source (i.e. we can 
> > use it for free). Or Shale (as far as I know, it is a mixture of 
> > Struts and JSF. Am I right?)?
> >
> > Awaiting for your advices.
> >
> > Sincerely.
> >
> > --------------------------------------------------------------------
> > - To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> > For additional commands, e-mail: user-help@struts.apache.org
> >
> >
>
>
> --
> www.simonpeter.org
> uab.blogspot.com
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: With a new project, what technologies should I use?

Posted by Larry Meadors <lm...@apache.org>.
I have to agree w/ Simon on this: it really does depend on the
project, but tried and true is key - use what you know you can succeed
with. Don't experiment with real projects.

Learning new stuff is great, but getting paid is great, too. :)

I started a project in December, and went with:
 - JDK5 because generics rock
 - Spring because IoC makes testing painless
 - iBATIS because HQL sucks, and every coder worth *paying* knows SQL
 - Struts because I can find people to work on it easily
 - Tomcat5.5 because i like my ${el}

For the dev side, I am using:
 - JUnit
 - Emma
 - StrutsTestCase
 - DbUnit

With this stack, you can very quickly build apps that perform like
Java should, and are 100% unit tested.

Larry


On 2/10/06, Simon Chappell <si...@gmail.com> wrote:
> The answer is "it depends".
>
> I love playing with new stuff, but when my back's against the wall
> (corporate deadlines, gotta love 'em) I stick with the tried and
> tested. I'm leading a small project right now that we started in
> December and we're using Struts. There are a number of reasons for
> this:
>
> 1. It works.
> 2. We know it.
> 3. There are plenty of books available.
> 4. The programmers that will come after us will either know it or be
> easily able to learn it. (hence concern about book availability)
> 5. It already has corporate approval.
> 6. We can use already completed projects as sources (no pun intended)
> of example code.
>
> This is not a slam on any other framework. But, if I have not used
> them, then I'm not betting my career on them. Struts *will* get the
> job done. The other frameworks might be bigger, better, faster, more
> buzzword complient *and* make a cup of tea for me in the morning, but
> that doesn't mean that Struts doesn't work.
>
> I will learn JSF and Shale as time permits, but until then Struts
> rocks my world! :-)
>
>
>
> On 2/10/06, Vu, Thai <Th...@parsons.com> wrote:
> > Hello everybody,
> >
> > Could you give me some advices?
> >
> > Assume that I know how to use Struts, Hibernate, iBATIS and know nothing
> > about Spring, JSF (but willing to learn :) ). Now what should I use if I
> > have to write a new web application? And correct me if I'm wrong
> > anywhere please.
> >
> > I heard that Spring helps us write less code (by declaring beans with
> > their own names in xml files, whenever we need a bean, just call that
> > name) and helps us in transactions (I don't know exactly if we use
> > Spring for transaction management what we can get. Could someone write a
> > few words here?)
> >
> > I heard that JSF is best used for the view tier in the MVC model (I've
> > just read an article by Craig McClanahan named `The Best of Both Worlds:
> > Integrating JSF with Struts in Your J2EE Applications on Oracle website,
> > but it seems to me that that article applies to existing Struts
> > applications, not new ones). And if I should use JSF, which JSF
> > implementation should I use? Sun Reference Implementation or MyFaces or
> > Oracle ADF? I also heard that ADF provides the most components among
> > those 3 and it's just gone open-source (i.e. we can use it for free). Or
> > Shale (as far as I know, it is a mixture of Struts and JSF. Am I
> > right?)?
> >
> > Awaiting for your advices.
> >
> > Sincerely.
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> > For additional commands, e-mail: user-help@struts.apache.org
> >
> >
>
>
> --
> www.simonpeter.org
> uab.blogspot.com
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: With a new project, what technologies should I use?

Posted by Simon Chappell <si...@gmail.com>.
The answer is "it depends".

I love playing with new stuff, but when my back's against the wall
(corporate deadlines, gotta love 'em) I stick with the tried and
tested. I'm leading a small project right now that we started in
December and we're using Struts. There are a number of reasons for
this:

1. It works.
2. We know it.
3. There are plenty of books available.
4. The programmers that will come after us will either know it or be
easily able to learn it. (hence concern about book availability)
5. It already has corporate approval.
6. We can use already completed projects as sources (no pun intended)
of example code.

This is not a slam on any other framework. But, if I have not used
them, then I'm not betting my career on them. Struts *will* get the
job done. The other frameworks might be bigger, better, faster, more
buzzword complient *and* make a cup of tea for me in the morning, but
that doesn't mean that Struts doesn't work.

I will learn JSF and Shale as time permits, but until then Struts
rocks my world! :-)



On 2/10/06, Vu, Thai <Th...@parsons.com> wrote:
> Hello everybody,
>
> Could you give me some advices?
>
> Assume that I know how to use Struts, Hibernate, iBATIS and know nothing
> about Spring, JSF (but willing to learn :) ). Now what should I use if I
> have to write a new web application? And correct me if I'm wrong
> anywhere please.
>
> I heard that Spring helps us write less code (by declaring beans with
> their own names in xml files, whenever we need a bean, just call that
> name) and helps us in transactions (I don't know exactly if we use
> Spring for transaction management what we can get. Could someone write a
> few words here?)
>
> I heard that JSF is best used for the view tier in the MVC model (I've
> just read an article by Craig McClanahan named `The Best of Both Worlds:
> Integrating JSF with Struts in Your J2EE Applications on Oracle website,
> but it seems to me that that article applies to existing Struts
> applications, not new ones). And if I should use JSF, which JSF
> implementation should I use? Sun Reference Implementation or MyFaces or
> Oracle ADF? I also heard that ADF provides the most components among
> those 3 and it's just gone open-source (i.e. we can use it for free). Or
> Shale (as far as I know, it is a mixture of Struts and JSF. Am I
> right?)?
>
> Awaiting for your advices.
>
> Sincerely.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
>


--
www.simonpeter.org
uab.blogspot.com

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org