struts-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From David Graham <>
Subject RE: what the webwork guys say about struts
Date Wed, 16 Jul 2003 13:44:29 GMT
--- Andrew Hill <> wrote:
> <snip src="">
> WebWork’s pros include being a smaller, simpler framework, not having to
> build ActionForm beans, 

DynaActionForms anyone?

> making it very simple to test your Actions,
> having
> multiple well-supported view technologies, simpler views with less JSP
> tags
> and a more powerful expression language, 

Who cares?  IMO, JSTL has the best Java expression language and
implementing anything further in a non-standard framework is a waste of

> not having to make your Actions
> thread-safe, 

You can override one method in the RequestProcessor to create a new Action
on each request so they don't have to be thread safe.

> not having your Actions tied to the web

Struts 2 is likely to be uncoupled from the Servlet API to allow use in
Portals but we'll see...

The only advantage I see in WebWork is that Actions and ActionForms are
one idea/class but JSF allows this as well.

I don't know enough about WebWork to critique it but it's disappointing
when people get the facts wrong about Struts when comparing the two.


> and not being part
> of
> Jakarta J. WebWork2 also adds many new features such as Interceptors,
> packages, IoC, etc. WebWork’s cons include being a smaller project with
> fewer books and less tool support, having less standards support for
> specs
> like JSTL and JSF, and not being part of Jakarta
> </snip>
> Fair enough to a point, but Id definately disagree about struts not
> providing good support for using other views. There is nothing in struts
> that specifically makes it hard to support other view technologies - the
> taglibs that come with struts are purely a convienience for the majority
> who
> use JSP (theres a good argument to make them a seperate download imho) -
> but
> theres nothing anything to stop you using other things. Many people use
> velocity with struts - its a good fit from what I hear, and you could
> use
> pretty much any other technology too so long as that technology doesnt
> depend on some proprietary framework to be used with it (which would
> affect
> WW also). All the struts config objects are accessible from the servlet
> context and there are even toolkits for technologies such as velocity...
> I
> personally use my own homebrew rendering technology (which basically is
> just
> leveraging DOM and xhtml) and found that struts didnt get in the way and
> indeed meshed nicely in many cases.
> What I saw in the good 2 minutes or so I looked at WW just now that
> _did_
> get me excited was the idea of it making it much easier to seperate
> classes
> from dependancies on the servlet api thus becoming easier to test. One
> can
> always test struts with things like StrutsTestCase or cactus doing mock
> object or in container tests, but learning how is a daunting task, which
> Id
> imagine has put off many people from trying. (I know Ive never bothered
> to
> work out how to do it - but hey, my codes so good it doesnt need testing
> right? ;->) If it could easily test my stuff in good old Junit using
> j2se...
> that would be sweet mate...
> <snip>
> The mapping from HTTP Request to Actions is really cohesive. You have a
> form with fields, you have an action with corresponding fields.
> </snip>
> Yes - theres a lot to be said for the idea of merging the actionform and
> the
> action and instantiating a new instance for each request (or reusing one
> from the session). Ive never fully grokked why struts was so keen to use
> the
> singleton pattern for actions. Tis true that servlets do this - and
> actions
> resemble servlets (after all they are in the end just the bit of the
> ActionServlet that does the specific work!) , but I and others have oft
> debated the merits of relaxing the threadsafety rule on actions and
> instantiating new ones each time - and merging the actionform into the
> same
> object so that you have a sort of 'component' perhaps follows on from
> this?
> hmmm... Can anyone think of some good reasons not to make Action an
> interface?
> -----Original Message-----
> From: Butt, Dudley []
> Sent: Wednesday, 16 July 2003 17:08
> To:
> Subject: what the webwork guys say about struts
> =====================================
> Check out the docs on the Wiki (,
> especially
> 2 - migrating from Struts to WebWork2
> And the article I just posted:
> bWork2 which is a general overview of WebWork2.
> For your specific questions, WebWork is better than Struts because it is
> a simpler framework, with less ties to the web and in genral less
> useless contracts for your code to implement. Being less coupled makes
> things easier to test, which is always better. With WebWork2, we've
> added some very powerful features. Check the docs I listed for the
> overview.
> For the view, you can use Velocity as well as JSP, FreeMarker,
> JasperReports, and XML/XSLT. Velocity and JSP are the most common, and
> the best supported, but all are first class citizens in WW, unlike Stuts
> where anything but JSP is difficult.
> ================================================================
> I use Webwork in my 'Enterprise Java' clases, largely because it is
> incredibly simple. One reason for this is it let's us deal JSP as a
> single presentation tier, which reduces the learning curve (and you can
> always move to something else at a later stage).
> The mapping from HTTP Request to Actions is really cohesive. You have a
> form with fields, you have an action with corresponding fields. Data
> gets populated and the Action is executed.
> It really is that simple to get started.
> Testing is really nice, you can run all your Actions through JUnit
> without being tied to the Web Container. This speeds development time as
> you don't need to package and deploy every time you make a change and it
> makes debugging much simpler.
> And WW2 rocks.
> This message contains privileged and confidential information intended
> only for the person or entity to which it is addressed.
> Any review, retransmission, dissemination, copy or other use of, or
> taking of any action in reliance upon this information by persons or
> entities other than the intended recipient, is prohibited.
> If you received this message in error, please notify the sender
> immediately by e-mail, facsimile or telephone and thereafter delete the
> material from any computer.
> The New Africa Capital Group, its subsidiaries or associates do not
> accept liability for any personal views expressed in this message.
> ---------------------------------------------------------------------
> To unsubscribe, e-mail:
> For additional commands, e-mail:
> ---------------------------------------------------------------------
> To unsubscribe, e-mail:
> For additional commands, e-mail:

Do you Yahoo!?
SBC Yahoo! DSL - Now only $29.95 per month!

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message