struts-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dave Newton <>
Subject Re: Very confusing documentation
Date Tue, 20 Sep 2016 01:09:06 GMT
On Mon, Sep 19, 2016 at 8:34 PM, Joseph B Cotton <> wrote:

> "... and they're more or less in the right order. ..."
> Not really.  But thank you for the nice reply.  The issue here is that my
> understanding is no better with your explanation.

I think the disconnect is that you're viewing the S2 documentation hoping
for an MVC tutorial, which this isn't. Entire books have been written about
MVC. One part of "jargon" is serving as a common communication model. The
description is presented as a description of S2, not MVC in general.

It is curious that the introductory explanation for beginners is full
> of specialized and undefined jargon.

The introductory explanation of S2 is just that; not a tutorial of MVC, for
which there are better, and more extensive, tutorials.

(As an aside, note there are multiple interpretations of what "MVC"
actually *is*, as most web-based MVC frameworks, especially prior to fairly
recently, are quite a bit different than when the pattern was first
identified and implemented.)

YMMV, but I'd rather pick specialized documentation that addresses specific

Regarding the rewrite: it's adequate as far as it goes, but misses some
fairly important points (e.g., control *is* forwarded back through the
controller). Think of it this way: the request is always "moving forward"
through the process. But it moves "back through" the controller, because
that's just how filters work.

The view layer doesn't transmit the reply message to the user (nor is it
necessarily HTML). The view layer creates the output of the request,
whatever that happens to be. But it isn't the view layer's responsibility
to get that representation back to the user.

The "model" (an action in S2) essentially does a data transform between the
request and what is required by the view layer. The view layer does a data
transform between what is given to it and what is sent back to the client.
(Noting that some of this may not be written by the app developer but can
be hidden within the framework, e.g., automatic JSON transformation.)

> There!!! See?  No jargon.  The jargon can be defined later, in the
> tutorial.

I'd only reiterate that there are a large number of concepts involved in a
back-end framework. IMO neither a primer nor a *framework* tutorial are the
place to address those concepts directly. This is why links are provided
that go in to much more detail. Other people, smarter than me, have spent a
lot of energy explaining the details of the concepts that S2 implements. I,
at least, would defer to their better grasp of both concept and language,
and keep the S2 docs concise, and use jargon common to the field. Again,
YMMV, and other S2 contributors may have different opinions--I'm speaking
only for myself.


  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message