Date: 2004-11-27T07:17:13
Editor: DakotaJack <[EMAIL PROTECTED]>
Wiki: Apache Struts Wiki
Page: StrutsState
URL: http://wiki.apache.org/struts/StrutsState
no comment
Change Log:
------------------------------------------------------------------------------
@@ -1,18 +1,25 @@
##language:en
== Struts 2.0 and StrutsJerichoFaces: an addendum to StrutsJericho ==
-The MVC pattern in Struts is, we can say, "webMVC" or:
- CONTROLLER ==> VIEW APP (JSP, Velocity) ==> (response) VIEW (request) ==>
CONTROLLER <==> MODEL <==> MODEL DATA
-
-or, more simply:
+Let us consider ==> and <== and <==> to be bivalent operators such that A <==>
B means that A is somehow bound to B and B is somehow bound to A.
+The MVC design achitecture (not pattern) in Struts is, let us say, "webMVC",
which will mean that contiguous and continguous parts of the architecture alone
are bound together, or:
+{{{
VIEW <==> CONTROLLER <==> MODEL <==> MODEL DATA
+}}}
+
+This "picture" considers the "VIEW" to be JSP, Velocity, etc. rather than the
HTML, which is the real "VIEW".
One of the difficulties with writing web apps is that the app storage is never
quite right, i.e. the scopes request, page, session, and application do not fit
app needs. What is more, lacking any reasonable facade for these scopes, there
is a lot of extremely repetitive hard coding relating to them that makes
taglibs over complicated and workflows rather mysterious. What is needed, I
suspect, is a storage unit for app state relating to the view. Something like:
+{{{
+ VIEW <==> STATE <==> MODEL
+}}}
- VIEW <==> VIEW DATA (STATE) <==> CONTROLLER <==> MODEL <==> MODEL DATA
+"STATE" here are classes which are accessible from the VIEW and communicate
with the MODEL. In this architecture, SCOPES, e.g. request, page, session,
application, should be considered to be an element, like VIEW, CONTROLLER,
MODEL, MODEL DATA and STATE. Likewise, the HTML should be considered to be
"one with" (aum) the RESPONSE. So, "VIEW", remember, is the dynamic view app,
such as JSP or Velocity.
-Below is a snapshot of what I have in mind. I have been doing some things
like this for a while. If anyone else is interested, I will consider finding a
spot we can work together on this.
+Below is a snapshot of what I have in mind. I have been doing some things
like this for a while.
+
+If anyone else is interested, I will consider finding a spot we can work
together on this.
I have also considered creating a !JerichoFaces for the chaining. But, that
is later, for now, and much more ambitious! ;-)
@@ -20,3 +27,10 @@
== Snapshot ==
[http://131.191.32.112:8080 Snapshot of this Idea]
+
+== Involved Developers (everyone welcome -- this is a working community open
to fundamental suggestions) ==
+
+
+Dakota Jack
+
+Amanpreet Singh
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]