On Mon, 2006-01-16 at 12:27 -0800, Craig McClanahan wrote:
> On 1/16/06, Werner Punz <[EMAIL PROTECTED]> wrote:
> 
> [snip]
> 
>         Well from the small project I have done, you basically can
>         take all your
>         JSF knowledge with you, Seam is an extension which simplifies
>         many
>         things in JSF.
> 
> Yep ... like Shale, Seam is a layer of additional functionality built
> on top of JSF, not a separate framework that just happens to coexist
> with it. 
> 
> 
>         For instance you do not define any backing beans in xml
>         anymore, just a class which you then annotation as session
>         bean etc...
> 
> If you like that idea, but for some reason don't want to buy in to the
> whole Seam stack, Shale can do this now as well (in nightly builds)
> when you add the shale-tiger.jar library to your project.  See the
> overall description of the Shale Tiger extensions[1], and the javadocs
> for annotated managed beans[2] for more info. 
> 
Wow: shale-tiger and annotated viewController :-) Thanks for your
effort.

I will soon find some time to get back to Shale-MyFaces-Facelets. I want
to change our work currently on Shale + MyFaces tilesViewHandler into
Shale + MyFaces + Facelets.

I have looked at Seam and decided to stick to Jsf standard and Shale to
tackle the issues of validation and state management. Here is my reason:

For validation, Seam tries to consolidate standard Jsf user input
validation and business validation (besides standard Ejb3 data model
constraints) by forcing user to use Hibernate Validation Framework. For
state management, Seam creates its own context framework. Using Shale
viewController and CoR context, our requestResponse framework is
flexible and work out very nicely. Our business validation is basically
a ruleFilter (Chain Filter) which is different from standard Jsf
validation.

For state management, i use viewController and actionListener to hook
backing beans with its corresponding data table (Seam calls this
bi-directional injection). This can be done with POJO as i am doing now,
and later with Ejb3. It is a nice state management at the presentation
level. For state management at the enterprise business level, i rather
stick to standards such as Jbi and conversational web services rather
than using Seam state management which bypasses user session and try to
consolidate both user state management and process state management into
one piece.

Question for Craig: What would be the best practice and its use cases to
hook backing bean with its corresponding data table? When Jsf or Spring
IoC inject a managed bean in with its settings, which phase of the jsf
life cycle the bean is available or the whole bean is available at the
point of injection. For example, Shale viewController (a backing bean)
associated with a page has its init(), preprocess(), destroy() so you
can have fine control of how data in the database should be interacted
with Jsf state management. 

BaTien
DBGROUPS

> 
>         The hardest part of seam is to get the project structure and
>         deployment
>         in place the rest is "seamless" 
>         
> 
> 
> :-)
> 
> Craig
> 
> [1]
> http://struts.apache.org/struts-shale/features-tiger-extensions.html
> [2]
> http://struts.apache.org/struts-shale/shale-tiger/apidocs/org/apache/shale/tiger/managed/package-summary.html
> 

Reply via email to