You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@struts.apache.org by Niall Pemberton <ni...@btInternet.com> on 2001/03/04 20:55:30 UTC

You make the decision Velocity/Turbine vs. Struts/JSP

Jon,

http://jakarta.apache.org/velocity/ymtd/ymtd.html

I read your comparison of Turbine/Velocity and Struts/JSP and although you
state it your aim to be "fair and unbiased", I think you failed since most
of your examples, although sytanctically correct, were poor examples of the
use of Struts and Jsp. I only started getting into Jsp & Struts a couple of
weeks ago but below are my comments on your article. I also copy this to the
struts mailing list as I am sure more experienced people may be able to
comment better.


In your first example "Saying Hello" there is not need whatsoever in Jsp to
have any "out.println" statements. The example you gave could have been
coded in the following way:

<html>
<head><title>Hello</title></head>
<body>
<h1>
<% if (request.getParameter("name") == null) %>
          Hello World
<% else %>
          Hello, <% request.getParameter("name") %>
</h1>
</body></html>


On the subject of "Generation", I don't believe this is a big issue, since
1) its automatically handled by the servlet container and therefore not a
big issue to developers and 2) the performance issue is only relevant when
you change the application, its not like it happens every time you run the
jsp.

On the subject of "Error Handling", you are comparing Velocity only with
Jsp - the idea of Struts is that, it takes the need for Scriptlets out of
Jsp by providing custom tags (java classes) to deal with those situations.
What you quote here from Jason's books is only relevant to Scriptlets, not
well written Struts applications. The issues stated there are exactly why a
framework such as Struts was developed and an argument for using Struts.

Again in the section of "JavaBeans" you are not comparing like-with-like.
Velocity/Turbine will have the same issues of "Scope" that any Web
Application has and from what I see of your Velocity/Turbine example, you
have just hidden this from the Web Designer. The same can be done in a
Struts application with Struts tags rather than the "<jsp:useBean>" tag.
Again your quote from Jason's book relates solely to Jsp and is not a fair
comparison to Struts.

I'll ignore the sample app section, again its Jsp not Struts.

The "Taglibs" section is the first serious section which deals with Struts
and you start with cheap points about "cutting edge of a broken wheel" - so
tell me how is Velocity cutting edge then? - yet another scripting language
to handle presentation that a Web Designer needs to get to grips with. The
idea with Jsp/Struts is that it extends HTML in the same "style" to what Web
Designers are used to.

I would be the first to say the Struts documentation could be better but the
two examples that you listed from the Struts documentation were small
examples used to illustrate specific Struts features and not the best way to
develop Struts applications on the Model 2 architecture. The first example
using the <logic:equal> tag is poor because it encapsulates the "business
logic" (I know its simple) of the app in the presentation and therefore
shouldn't have been in the Jsp. Complex logic shouldn't be in the
presentation layer and so their use should be limited. The "if. . . .else"
logic of Velocity looks good to me, as a programmer, but I think a Web
Designer would be more at home with the Tag Style they are used to.

In your second example from the Struts document which uses a Scriptlet to
define an ArrayList - this has clearly been done to make the example simple
(a point I seem to remember being made in the document, though I couldn't
find the example again) - it is a break from the MVC architecture but its
not how Struts should be used, this collection would have been created in
the "logic" java end and put into scope ready for a Web Designer to use
through Struts tags - as simple or simpler than the Velocity example.

And finally - the example from "Jason Hunters" book which you say has been
entirely implemented as a Struts app - this is awful and is a complete abuse
of everything that Struts is about - why not get a decent Struts developer
(not me!) of giving you a good example - also where is the Velocity
equivalent for fair comparison - nowhere to be seen!

I was hoping for an article which would help me make an informed decision
but your portrayal of Struts didn't show it in the way it should be used or
explain what else it could do, such as Internationalization. I understand
(but not like) commercial software vendors going to any means to disparage a
competitors product but I am shocked that one Open Source project has done
it to another when they both come under the same Apache umbrella.

Niall

Taking the plunge

Posted by Kurt Olsen <ko...@get2hawaii.com>.
Aloha,

Our company, Get2Hawaii Inc. has made the decision to use Struts for our
web-tier.
We simply must have our beta done by the end of the month and there is a TON
of
work to be done. So, I wanted to say hello and thanks in advance for answers
to my questions etc. I'm sure I'll be asking them.

I'll contribute what I can this month but my timeline is tight so I'll most
likely
be more interactive in April. We have a lot riding on our beta and there is
no
way I could meet my deadline without struts.

Mahalo (thanks) to everyone involved in bringing this project to a point
where
I can safely stake my job on Struts.

Kurt Olsen
kolsen@get2hawaii.com




-----Original Message-----
From: Incze Lajos [mailto:incze@mail.matav.hu]
Sent: Tuesday, March 06, 2001 10:34 AM
To: struts-user@jakarta.apache.org
Subject: Re: You make the decision Velocity/Turbine vs. Struts/JSP


On Tue, Mar 06, 2001 at 01:15:34AM -0800, Wong Kok Wai wrote:
> So far, the arguments have been based on whether it is
> better for the page designer or Java developer. How
> about performance? IHMO, it would be interesting to
> find out the timing for each of the three approaches.
> I would agree with the Velocity's author that JSP
> taglibs is no much better than ColdFusion tags if
> performance is not addressed.
>
The elder I am the more tend to think that runtime
performance is the very last issue and communicability
of the design tend to climb up to the first place.
And XML is a special animal as it is defined mainly
for machine to machine communication (I mean it is SGML
without the lightenings targeted for human authors but
made the parsers more complicated).

I wrote:
>
> I think the "canonical" solution in JSP is something
> like this:
>
> ---
> <jsp:usebean id="name" scope="request"
> type="java.lang.String">
>   <jsp:setProperty name="name" value="Word" />
> </jsp:usebean>
>
> <html>
> <head><title>Hello</title></head>
> <body>
> <h1>
> Hello <%= name %>
> </h1>
> </body></html>
> ---
>
> On the other hand I do share Jon Stevens' views that
> this syntax is really not for page design people.
>       incze
>

The "canonical solution" is wrong, jsp:setproperty needs a property
attribute as well. (Q.e.d syntax is tough. It is becoming harder and
harder working from heart or simply I'm too old and my brain does not
serve as needed.) Sorry for that.                             incze


Re: You make the decision Velocity/Turbine vs. Struts/JSP

Posted by Incze Lajos <in...@mail.matav.hu>.
On Tue, Mar 06, 2001 at 01:15:34AM -0800, Wong Kok Wai wrote:
> So far, the arguments have been based on whether it is
> better for the page designer or Java developer. How
> about performance? IHMO, it would be interesting to
> find out the timing for each of the three approaches.
> I would agree with the Velocity's author that JSP
> taglibs is no much better than ColdFusion tags if
> performance is not addressed.
>
The elder I am the more tend to think that runtime
performance is the very last issue and communicability
of the design tend to climb up to the first place.
And XML is a special animal as it is defined mainly
for machine to machine communication (I mean it is SGML
without the lightenings targeted for human authors but
made the parsers more complicated).

I wrote:
>
> I think the "canonical" solution in JSP is something
> like this:
>
> ---
> <jsp:usebean id="name" scope="request"
> type="java.lang.String">
>   <jsp:setProperty name="name" value="Word" />
> </jsp:usebean>
>
> <html>
> <head><title>Hello</title></head>
> <body>
> <h1>
> Hello <%= name %>
> </h1>
> </body></html>
> ---
>
> On the other hand I do share Jon Stevens' views that
> this syntax is really not for page design people.
>       incze
>

The "canonical solution" is wrong, jsp:setproperty needs a property
attribute as well. (Q.e.d syntax is tough. It is becoming harder and
harder working from heart or simply I'm too old and my brain does not
serve as needed.) Sorry for that.                             incze


Re: You make the decision Velocity/Turbine vs. Struts/JSP

Posted by Wong Kok Wai <wo...@yahoo.com>.
So far, the arguments have been based on whether it is
better for the page designer or Java developer. How
about performance? IHMO, it would be interesting to
find out the timing for each of the three approaches.
I would agree with the Velocity's author that JSP
taglibs is no much better than ColdFusion tags if
performance is not addressed.


--- Incze Lajos <in...@mail.matav.hu> wrote:
> On Sun, Mar 04, 2001 at 08:11:31PM -0800, Martin
> Cooper wrote:
> > Niall's revised example is *almost* right. Here's
> a fixed version of it:
> > 
> > <html>
> > <head><title>Hello</title></head>
> > <body>
> > <h1>
> > <% if (request.getParameter("name") == null) %>
> >           Hello World
> > <% else %>
> >           Hello, <%= request.getParameter("name")
> %>
> > </h1>
> > </body></html>
> > 
> > The difference is that in order to print out the
> name parameter, you need to
> > use an expression rather than a scriptlet (i.e.
> <%= ... %> rather than <%
> > ... %>).
> > 
> > Of course, with Struts, you could write this
> without scriptlets altogether:
> > 
> > <html>
> > <head><title>Hello</title></head>
> > <body>
> > <h1>
> > <logic:notPresent parameter="name">
> >           Hello World
> > </logic:notPresent>
> > <logic:present parameter="name">
> >           <bean:parameter id="name" name="name"/>
> >           Hello, <bean:write name="name"/>
> > </logic:present>
> > </h1>
> > </body></html>
> > 
> > Hope this helps.
> > 
> > --
> > Martin Cooper
> 
> 
> I think the "canonical" solution in JSP is something
> like this:
> 
> ---
> <jsp:usebean id="name" scope="request"
> type="java.lang.String">
>   <jsp:setProperty name="name" value="Word" />
> </jsp:usebean>
> 
> <html>
> <head><title>Hello</title></head>
> <body>
> <h1>
> Hello <%= name %>
> </h1>
> </body></html>
> ---
> 
> On the other hand I do share Jon Stevens' views that
> this syntax
> is really not for page design people.               
>       incze


__________________________________________________
Do You Yahoo!?
Get email at your own domain with Yahoo! Mail. 
http://personal.mail.yahoo.com/

Re: You make the decision Velocity/Turbine vs. Struts/JSP

Posted by Incze Lajos <in...@mail.matav.hu>.
On Sun, Mar 04, 2001 at 08:11:31PM -0800, Martin Cooper wrote:
> Niall's revised example is *almost* right. Here's a fixed version of it:
> 
> <html>
> <head><title>Hello</title></head>
> <body>
> <h1>
> <% if (request.getParameter("name") == null) %>
>           Hello World
> <% else %>
>           Hello, <%= request.getParameter("name") %>
> </h1>
> </body></html>
> 
> The difference is that in order to print out the name parameter, you need to
> use an expression rather than a scriptlet (i.e. <%= ... %> rather than <%
> ... %>).
> 
> Of course, with Struts, you could write this without scriptlets altogether:
> 
> <html>
> <head><title>Hello</title></head>
> <body>
> <h1>
> <logic:notPresent parameter="name">
>           Hello World
> </logic:notPresent>
> <logic:present parameter="name">
>           <bean:parameter id="name" name="name"/>
>           Hello, <bean:write name="name"/>
> </logic:present>
> </h1>
> </body></html>
> 
> Hope this helps.
> 
> --
> Martin Cooper


I think the "canonical" solution in JSP is something like this:

---
<jsp:usebean id="name" scope="request" type="java.lang.String">
  <jsp:setProperty name="name" value="Word" />
</jsp:usebean>

<html>
<head><title>Hello</title></head>
<body>
<h1>
Hello <%= name %>
</h1>
</body></html>
---

On the other hand I do share Jon Stevens' views that this syntax
is really not for page design people.                      incze

Re: You make the decision Velocity/Turbine vs. Struts/JSP

Posted by Martin Cooper <ma...@tumbleweed.com>.
Niall's revised example is *almost* right. Here's a fixed version of it:

<html>
<head><title>Hello</title></head>
<body>
<h1>
<% if (request.getParameter("name") == null) %>
          Hello World
<% else %>
          Hello, <%= request.getParameter("name") %>
</h1>
</body></html>

The difference is that in order to print out the name parameter, you need to
use an expression rather than a scriptlet (i.e. <%= ... %> rather than <%
... %>).

Of course, with Struts, you could write this without scriptlets altogether:

<html>
<head><title>Hello</title></head>
<body>
<h1>
<logic:notPresent parameter="name">
          Hello World
</logic:notPresent>
<logic:present parameter="name">
          <bean:parameter id="name" name="name"/>
          Hello, <bean:write name="name"/>
</logic:present>
</h1>
</body></html>

Hope this helps.

--
Martin Cooper


----- Original Message -----
From: "Niall Pemberton" <ni...@btInternet.com>
To: <jo...@apache.org>
Cc: <st...@jakarta.apache.org>
Sent: Sunday, March 04, 2001 11:55 AM
Subject: You make the decision Velocity/Turbine vs. Struts/JSP


> Jon,
>
> http://jakarta.apache.org/velocity/ymtd/ymtd.html
>
> I read your comparison of Turbine/Velocity and Struts/JSP and although
> you state it your aim to be "fair and unbiased", I think you failed
> since most of your examples, although sytanctically correct, were poor
> examples of the use of Struts and Jsp. I only started getting into Jsp &
> Struts a couple of weeks ago but below are my comments on your article.
> I also copy this to the struts mailing list as I am sure more
> experienced people may be able to comment better.
>
>
> In your first example "Saying Hello" there is not need whatsoever in Jsp
> to have any "out.println" statements. The example you gave could have
> been coded in the following way:
>
> <html>
> <head><title>Hello</title></head>
> <body>
> <h1>
> <% if (request.getParameter("name") == null) %>
>           Hello World
> <% else %>
>           Hello, <% request.getParameter("name") %>
> </h1>
> </body></html>
>
>
> On the subject of "Generation", I don't believe this is a big issue,
> since 1) its automatically handled by the servlet container and
> therefore not a big issue to developers and 2) the performance issue is
> only relevant when you change the application, its not like it happens
> every time you run the jsp.
>
> On the subject of "Error Handling", you are comparing Velocity only with
> Jsp - the idea of Struts is that, it takes the need for Scriptlets out
> of Jsp by providing custom tags (java classes) to deal with those
> situations. What you quote here from Jason's books is only relevant to
> Scriptlets, not well written Struts applications. The issues stated
> there are exactly why a framework such as Struts was developed and an
> argument for using Struts.
>
> Again in the section of "JavaBeans" you are not comparing
> like-with-like. Velocity/Turbine will have the same issues of "Scope"
> that any Web Application has and from what I see of your
> Velocity/Turbine example, you have just hidden this from the Web
> Designer. The same can be done in a Struts application with Struts tags
> rather than the "<jsp:useBean>" tag. Again your quote from Jason's book
> relates solely to Jsp and is not a fair comparison to Struts.
>
> I'll ignore the sample app section, again its Jsp not Struts.
>
> The "Taglibs" section is the first serious section which deals with
> Struts and you start with cheap points about "cutting edge of a broken
> wheel" - so tell me how is Velocity cutting edge then? - yet another
> scripting language to handle presentation that a Web Designer needs to
> get to grips with. The idea with Jsp/Struts is that it extends HTML in
> the same "style" to what Web Designers are used to.
>
> I would be the first to say the Struts documentation could be better but
> the two examples that you listed from the Struts documentation were
> small examples used to illustrate specific Struts features and not the
> best way to develop Struts applications on the Model 2 architecture. The
> first example using the <logic:equal> tag is poor because it
> encapsulates the "business logic" (I know its simple) of the app in the
> presentation and therefore shouldn't have been in the Jsp. Complex logic
> shouldn't be in the presentation layer and so their use should be
> limited. The "if. . . .else" logic of Velocity looks good to me, as a
> programmer, but I think a Web Designer would be more at home with the
> Tag Style they are used to.
>
> In your second example from the Struts document which uses a Scriptlet
> to define an ArrayList - this has clearly been done to make the example
> simple (a point I seem to remember being made in the document, though I
> couldn't find the example again) - it is a break from the MVC
> architecture but its not how Struts should be used, this collection
> would have been created in the "logic" java end and put into scope ready
> for a Web Designer to use through Struts tags - as simple or simpler
> than the Velocity example.
>
> And finally - the example from "Jason Hunters" book which you say has
> been entirely implemented as a Struts app - this is awful and is a
> complete abuse of everything that Struts is about - why not get a decent
> Struts developer (not me!) of giving you a good example - also where is
> the Velocity equivalent for fair comparison - nowhere to be seen!
>
> I was hoping for an article which would help me make an informed
> decision but your portrayal of Struts didn't show it in the way it
> should be used or explain what else it could do, such as
> Internationalization. I understand (but not like) commercial software
> vendors going to any means to disparage a competitors product but I am
> shocked that one Open Source project has done it to another when they
> both come under the same Apache umbrella.
>
> Niall



RE: You make the decision Velocity/Turbine vs. Struts/JSP

Posted by Joerg Beekmann <jb...@attglobal.net>.
>
> But, the point of what I am trying to say (and I will try to
> clarify it
> further in the document) is that by using Struts and JSP there is *NO*
> enforcement that requires you to not use scriptlets.
>
[snip]
> Putting Struts on top of JSP doesn't fix the warts in JSP. It
> simply hides
> them until your developers find them.
>
Jon; if I read you correctly a JSP engine would be better for having its
scriptlets capability disabled. Or less radically allow the it to be
specified in the web.xml file that scriptlets are not allowed for a given
web-app. I think I buy that. In retrospect I even wish I had been able to do
that on a few JSP projects past.

Joerg Beekmann
jbeekmann@attglobal.net


Re: You make the decision Velocity/Turbine vs. Struts/JSP

Posted by Jon Stevens <jo...@latchkey.com>.
Niall,

This is *excellent* feedback. I really appreciate it and look forward to
working with you on this. My replies are included below. I hope you enjoy.

I am currently queuing up a bunch of responses so that I can go through and
update the document with feedback like yours.

on 3/4/01 11:55 AM, "Niall Pemberton" <ni...@btInternet.com>
wrote:

> Jon,
> 
> http://jakarta.apache.org/velocity/ymtd/ymtd.html
> 
> I read your comparison of Turbine/Velocity and Struts/JSP and although you
> state it your aim to be "fair and unbiased", I think you failed since most
> of your examples, although sytanctically correct, were poor examples of the
> use of Struts and Jsp. I only started getting into Jsp & Struts a couple of
> weeks ago but below are my comments on your article. I also copy this to the
> struts mailing list as I am sure more experienced people may be able to
> comment better.

Yes, I think I should clarify the "fair and unbiased". I will do so.

> In your first example "Saying Hello" there is not need whatsoever in Jsp to
> have any "out.println" statements. The example you gave could have been
> coded in the following way:
> 
> <html>
> <head><title>Hello</title></head>
> <body>
> <h1>
> <% if (request.getParameter("name") == null) %>
> Hello World
> <% else %>
> Hello, <% request.getParameter("name") %>
> </h1>
> </body></html>

Thanks! I will update the current "right" example on the page to show your
code above.

> On the subject of "Generation", I don't believe this is a big issue, since
> 1) its automatically handled by the servlet container and therefore not a
> big issue to developers and 2) the performance issue is only relevant when
> you change the application, its not like it happens every time you run the
> jsp.

I specifically addressed your points #1 and #2 on that page by actually
agreeing with you. I think you missed the point of what I was trying to say.
I'm not saying that because of generation the system is slower or that it is
a big issue to have the servlet container do the work for you.

Sometimes, it takes explaining how the underlying system works in order to
explain the issues that are involved. In other words, as you go on to read
in the essay, quite a lot of the errors involved with working with or even
developing JSP are a result of the fact that JSP uses Generation in the
first place. The simple conclusion is that if you don't use Generation, you
don't have those issues.

Regardless of whether or not they are a "big issue" or not, they are still
an Issue and I see them come up quite a bit on the mailing lists.

(Note: My day job is to develop an Issue Tracking System, so I think I have
a pretty good understanding of what an Issue is. <smile>)

> On the subject of "Error Handling", you are comparing Velocity only with
> Jsp - the idea of Struts is that, it takes the need for Scriptlets out of
> Jsp by providing custom tags (java classes) to deal with those situations.
> What you quote here from Jason's books is only relevant to Scriptlets, not
> well written Struts applications. The issues stated there are exactly why a
> framework such as Struts was developed and an argument for using Struts.

100% True! I'm not suggesting otherwise. I have *always* said that if you
are going to use JSP, you should use Struts. Without Struts, JSP would be
even worse!

But, the point of what I am trying to say (and I will try to clarify it
further in the document) is that by using Struts and JSP there is *NO*
enforcement that requires you to not use scriptlets.

This goes back to the argument that says that embedding Java code in your
page is a bad thing. Of course it is! However, the fact of the matter is
that even in Struts own documentation, there is Java code embedded in the
page. If you go read the articles at Javaworld.com that talks about JSP,
each and every one of them does *something* wrong and it is actually
*harder* to code a page correctly than it is to do it incorrectly.

The final point being that I feel that developers (and users) should not
have to jump through hoops to do things correctly. Struts and JSP makes
people jump through hoops.

> Again in the section of "JavaBeans" you are not comparing like-with-like.
> Velocity/Turbine will have the same issues of "Scope" that any Web
> Application has and from what I see of your Velocity/Turbine example, you
> have just hidden this from the Web Designer.

YES! That is the *POINT*! Hide the hard parts from the web designer!

:-)

> The same can be done in a
> Struts application with Struts tags rather than the "<jsp:useBean>" tag.
> Again your quote from Jason's book relates solely to Jsp and is not a fair
> comparison to Struts.

In my opinion JSP == Struts (keep reading).

> I'll ignore the sample app section, again its Jsp not Struts.

Again, how can you take a technology and build on top of it and then ignore
the foundations for which it is built upon? Especially given that there is
nothing truly hiding that foundation or preventing you from using it?

You extend a class to add functionality to the base class. The publicly
available methods in the base class are still available to the classes that
extend it.

Putting Struts on top of JSP doesn't fix the warts in JSP. It simply hides
them until your developers find them.

> The "Taglibs" section is the first serious section which deals with Struts
> and you start with cheap points about "cutting edge of a broken wheel" - so
> tell me how is Velocity cutting edge then? - yet another scripting language
> to handle presentation that a Web Designer needs to get to grips with.

Ah. That is the difference that you haven't figured out yet. :-) Velocity
isn't a scripting language. It is a template language that has a *few* tags
that are well known and easy to use. That is why it is called Velocity
Template Language instead of Velocity Scripting Language. :-)

The core of the entire Velocity Template Language is:

#if
#else
#elseif
#foreach
#set

A scripting language is more like PHP which is more difficult to learn and
master (note, I have been using PHP since it's 1.0 days).

Velocity can be picked up (and mastered) in just a few hours.

> The idea with Jsp/Struts is that it extends HTML in the same "style" to what
> Web Designers are used to.

Infinitely extending HTML is better than a simple core set of 5 tags?

Also, as I pointed out in my "Implementation" page, Velocity is much more
than just a HTML generation system.

It can be used to auto generate dynamic email. It can be used to output SQL.
etc...

> I would be the first to say the Struts documentation could be better but the
> two examples that you listed from the Struts documentation were small
> examples used to illustrate specific Struts features and not the best way to
> develop Struts applications on the Model 2 architecture.

Leading by example is the only way.

> The first example
> using the <logic:equal> tag is poor because it encapsulates the "business
> logic" (I know its simple) of the app in the presentation and therefore
> shouldn't have been in the Jsp. Complex logic shouldn't be in the
> presentation layer and so their use should be limited. The "if. . . .else"
> logic of Velocity looks good to me, as a programmer, but I think a Web
> Designer would be more at home with the Tag Style they are used to.

Thank you for your opinion.

> In your second example from the Struts document which uses a Scriptlet to
> define an ArrayList - this has clearly been done to make the example simple
> (a point I seem to remember being made in the document, though I couldn't
> find the example again) - it is a break from the MVC architecture but its
> not how Struts should be used, this collection would have been created in
> the "logic" java end and put into scope ready for a Web Designer to use
> through Struts tags - as simple or simpler than the Velocity example.

If it isn't how Struts should be used, then it shouldn't be in the
documentation. Right?

> And finally - the example from "Jason Hunters" book which you say has been
> entirely implemented as a Struts app - this is awful and is a complete abuse
> of everything that Struts is about - why not get a decent Struts developer
> (not me!) of giving you a good example - also where is the Velocity
> equivalent for fair comparison - nowhere to be seen!

Ok. That made me laugh really hard.

Craig (who I'm assuming you think is a decent Struts developer given that he
wrote it) was the one who approved the examples that are going to be
published into the book!

:-)

> I was hoping for an article which would help me make an informed decision
> but your portrayal of Struts didn't show it in the way it should be used

Then *show* me how it should be used or even better, on the very first page,
I explain that this is a work in progress and that this document is a live
piece that is not only checked into CVS, but you can send me diff's that
improve on it!

I simply took the examples of how Struts documentation said it should be
used, just like a regular user would.

> or
> explain what else it could do, such as Internationalization.

There are a million cases out there that I could spend a 100 pages
explaining.

> I understand
> (but not like) commercial software vendors going to any means to disparage a
> competitors product but I am shocked that one Open Source project has done
> it to another when they both come under the same Apache umbrella.

The idea is not to disparage, the idea is to encourage you to make your own
decisions about things. That is why the title of the Essay is "You make the
decision."

There are *many* people (including myself) who have to go up to their boss
and explain why they choose to use a certain technology over another one.
This essay is a round of ammunition for these people. It gives them
something to point to when they tell their boss why they made their
decision.

thanks,

-jon

-- 
If you come from a Perl or PHP background, JSP is a way to take
your pain to new levels. --Anonymous
<http://jakarta.apache.org/velocity/ymtd/ymtd.html>


Re: You make the decision Velocity/Turbine vs. Struts/JSP

Posted by Jon Stevens <jo...@latchkey.com>.
Yea! Great feedback!

I will reply in more detail soon.

-jon

-- 
If you come from a Perl or PHP background, JSP is a way to take
your pain to new levels. --Anonymous
<http://jakarta.apache.org/velocity/ymtd/ymtd.html>


RE: You make the decision Velocity/Turbine vs. Struts/JSP

Posted by Niall Pemberton <ni...@btInternet.com>.
Your're right, my mistake, but I'm wasn't criticising your aim, just the
acutal guts of the comparison, the aim's a good one :-)

Niall


> -----Original Message-----
> From: Jon Stevens [mailto:jon@latchkey.com]
> Sent: 04 March 2001 21:47
> To: Niall Pemberton
> Cc: struts-user@jakarta.apache.org
> Subject: Re: You make the decision Velocity/Turbine vs. Struts/JSP
>
>
> I'm going through the document and making some changes based on yours (and
> others) suggestions and I have a question:
>
> on 3/4/01 11:55 AM, "Niall Pemberton" <ni...@btInternet.com>
> wrote:
>
> > I read your comparison of Turbine/Velocity and Struts/JSP and
> although you
> > state it your aim to be "fair and unbiased"
>
> Where exactly do I state that?
>
> I see:
>
> "Therefore, a lot of effort has gone into this essay to state things as
> fairly and accurately as possible."
>
> Which is true and I don't think that should change. But, I don't
> see where I
> said "unbiased".
>
> :-)
>
> -jon
>
> --
> If you come from a Perl or PHP background, JSP is a way to take
> your pain to new levels. --Anonymous
> <http://jakarta.apache.org/velocity/ymtd/ymtd.html>
>
>


Re: You make the decision Velocity/Turbine vs. Struts/JSP

Posted by Jon Stevens <jo...@latchkey.com>.
I'm going through the document and making some changes based on yours (and
others) suggestions and I have a question:

on 3/4/01 11:55 AM, "Niall Pemberton" <ni...@btInternet.com>
wrote:

> I read your comparison of Turbine/Velocity and Struts/JSP and although you
> state it your aim to be "fair and unbiased"

Where exactly do I state that?

I see:

"Therefore, a lot of effort has gone into this essay to state things as
fairly and accurately as possible."

Which is true and I don't think that should change. But, I don't see where I
said "unbiased".

:-)

-jon

-- 
If you come from a Perl or PHP background, JSP is a way to take
your pain to new levels. --Anonymous
<http://jakarta.apache.org/velocity/ymtd/ymtd.html>