struts-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From BaTien Duong <>
Subject Re: "Use Cases" Example Webapp for the Shale proposal
Date Tue, 04 Jan 2005 16:48:32 GMT
Hello Craig:

Good work. Thanks for your effort. We always wish to have more than 24 
hours a day. I wish to have some spare time to get back to this.

One quick question about the framework: What is the appropriate tool to 
use for configuration in different tiers? I thought Jsf is appropriate 
in the presentation tier. The business tier and integration tier can 
live in different servers separate from the server of the presentation 
tier. (I currently use Spring IoC for the configuration of these tiers). 
>From a glance at your javadoc, you make Jsf as *the* configuration tool 
for DAO layer. Should it be appropriate to use chain of request/response 
framework to connect the tiers?



Craig McClanahan wrote:

>(Cross posting because this topic has come up on all of the lists in
>the last couple weeks.)
>I just committed into the Struts SVN repository a new example
>application (struts-shale-usecases) that illustrate's the different
>take that Shale has on how an application framework can be built
>around JSF, including support for "dialog scope" (longer than a
>request, but shorter than a session).  I've updated the Shale wiki
>page to contain pointers to the latest API documentation for both
>Shale and the example app:
>and nightly builds of the example app will be available starting
>tonight (pointer is on the Wiki page above).
>The commit message was over the max size allowed, so here's the
>descriptive text:
>Initial commit of an example application for Shale, illustrating more
>interesting features than one sees with MailReader.  In particular:
>* Use of application level "controller" features to filter out
>  direct requests for JSP and JSPF (JSP fragment) resources, since
>  they should only be accessed via *.faces URLs.
>  See "src/web/WEB-INF/chain-config.xml" for configuration of
>  this application's additions to the standard Shale processing chain.
>* Use of DialogController for a sophisticated workflow with multiple
>  entries and exits:  logon dialog for a portal-type site that supports
>  creating new profiles (with or without an email confirmation), plus
>  "remember me" cookies.
>  See the javadocs for package "org.apache.shale.usecases.logon" for
>  an overview of this functionality, plus an activity diagram describing
>  the state transitions.  (The diagram was produced with Poseidon for UML
>  Community Edition, version 3.0, and the Poseidon project file is
>  also checked in).
>* Use of standard JSF facilities to support a language picker, based on
>  the supported locales for the application.  (NOTE - at present switching
>  languages does not appear to do anything, but that is because I only
>  checked in the default (English) properties file -- if someone would
>  like to translate "src/java/org/apache/shale/usecases/view/"
>  into other languages, I'd be happy to check it in.
>  See "src/web/locale/select.jsp" for the JSP page that does this,
>  and "src/java/org/apache/shale/usecases/locale/" for
>  the corresponding backing bean.
>* Use of <managed-property> elements to configure the properties of a
>  newly created managed bean, using either literal values or expressions
>  (essentially an example of IoC with setter injection).
>  In this example, such properties are used to:
>  - Configure the DAO object that is used by the business logic of
>    the application, using
>  - Configure the functionality of the DialogController instance,
>    describing whether email confirmations and remember me cookies
>    should be enabled or not.
>  See "src/web/WEB-INF/faces-config.xml" for configuration of this feature.
>* General purpose "domains" object (cached in application scope the first
>  time it is accessed) to provide localized lists of SelectItem value/label
>  pairs (these provide the content for dropdown lists etc.).
>  See "src/java/org/apache/shale/usecases/util/"
>The Javadocs for this application will be published soon, with a pointer on
>the Wiki, and nightly builds will commence this evening.
>To unsubscribe, e-mail:
>For additional commands, e-mail:

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

View raw message