InfoQ

News

Presentation: WebWork (Struts 2) In Action

Posted by Floyd Marinescu on Apr 26, 2007 09:03 AM

Community
Java
Topics
Web Frameworks
Tags
Struts
Patrick Lightbody overviews WebWork and the Struts merger, comparing to other web frameworks and explaining how to achieve rapid development with WebWork/Struts 2.

Watch WebWork (Struts 2) In Action (48:28 min)

The presentation was recorded last year as the merger was well underway.  Since then, Struts 2 (WebWork) was released at the end of February, and the WebWork project released it's final version 2.2.5 a couple of weeks ago. The WebWork team wanted to do a big effort to bring in as many optimizations and bug fixes into the last release of WebWork as possible before shifting focus entirely to Struts 2.  See also InfoQ's Struts content.

Patrick Lightbody is one one of the leads on the WebWork project and leads product management for QA solutions at Gomez Inc. Prior to joining Gomez, Lightbody launched Autoriginate, the creator of a hosted QA solution, and managed the professional services team at collaboration software provider Jive Software. Lightbody also serves as the CEO and Chairman of OpenSymphony Group. 
very nice by Mittal Bhiogade Posted Apr 26, 2007 6:04 PM
Re: very nice by Floyd Marinescu Posted Apr 27, 2007 8:36 AM
Re: very nice by Philip Wilkinson Posted Apr 28, 2007 1:03 PM
Re: very nice by Mittal Bhiogade Posted Apr 30, 2007 6:00 PM
Re: very nice by Mittal Bhiogade Posted Apr 30, 2007 6:21 PM
Nice one by Toby Jee Posted Apr 27, 2007 12:03 AM
Struts 2.x book !!! by Mittal Bhiogade Posted Apr 30, 2007 6:02 PM
Struts 2: XSLT-View by m f Posted Jul 4, 2007 10:37 AM
Animated Tutorial for Struts2 by Mohammad SeyedAlavi Posted Sep 3, 2007 1:22 PM
  1. Back to top

    very nice

    Apr 26, 2007 6:04 PM by Mittal Bhiogade

    neat presentation.. we are in process of starting new app development and have selected struts2.x as a web framework after bitter experience of tap4.x

  2. Back to top

    Nice one

    Apr 27, 2007 12:03 AM by Toby Jee

    Nice one Pat. :-)

  3. Back to top

    Re: very nice

    Apr 27, 2007 8:36 AM by Floyd Marinescu

    Mittal would you tell us more about your experiences and choice to switch?

  4. Back to top

    Re: very nice

    Apr 28, 2007 1:03 PM by Philip Wilkinson

    Mittal, At the risk of going off-topic, I'd love to hear about your experience with Tapestry 4, as I'm sure to would the developers of that framework. Also I'm curious as to whether Tapestry 5 will address your issues.

  5. Back to top

    Re: very nice

    Apr 30, 2007 6:00 PM by Mittal Bhiogade

    Philip, Here are some of the reasons which made me thinking, - all page classes are abstract, no DI via spring possible. I think Tap5 takes care of this one. - null handling for individual and nested properties. We had to implement additional interface called "NullHandler" and register all our objects instead of writing not null checks cluttered around views. - AJAX integration was pain with Tacos and Dojo but got it working. - No roadmap for migration from Tap4 to Tap5. These were some of compelling factors at least to get thinking about alternative framework. On other hand, ramp-up time for Tapestry wasnt that much may be 2 days to get it up and running and kicking off project development Thanks Mittal

  6. Back to top

    Struts 2.x book !!!

    Apr 30, 2007 6:02 PM by Mittal Bhiogade

    Is there second edition for WW or Struts 2.x coming up ?

  7. Back to top

    Re: very nice

    Apr 30, 2007 6:21 PM by Mittal Bhiogade

    Philip, Here are some of the reasons which made me thinking, - all page classes are abstract, no DI via spring possible. I think Tap5 takes care of this one. - null handling for individual and nested properties. We had to implement additional interface called "NullHandler" and register all our objects instead of writing not null checks cluttered around views. - AJAX integration was pain with Tacos and Dojo but got it working. - No roadmap for migration from Tap4 to Tap5. - This is a classic one, if there are any html controls within tap form by default it puts focus on first control it finds and to prevent it one has to set a property to false. I received some QA bugs related to this issue. These were some of compelling factors at least to get thinking about alternative framework. On other hand, ramp-up time for Tapestry wasnt that much may be 2 days to get it up and running and kicking off project development whereas it seems there's FUD about steep ramp-up time for tapestry Thanks Mittal

  8. Back to top

    Struts 2: XSLT-View

    Jul 4, 2007 10:37 AM by m f

    I'm trying out S2. Being familiar with S1 I find the new S2 features that came through the framework wedding very thrilling. It is important for us that the framework supports XSLT which it obviously does and it was really easy to get a simple example working. However I struggle with custom adapters that produce custom XML other than what is created by the standard adapters. The Javadoc says I can register my custom adapter with registerAdapter method of AdapterFactory. But where do I call this method? Where in my code do I have access to the AdapterFactory instance so I can register my adapter? It also tells me to look at the examples but I cannot find any concerning custom adapters... Any help is greatly appreciated! If there really is an example can you tell me where to find it?

  9. Back to top

    Animated Tutorial for Struts2

    Sep 3, 2007 1:22 PM by Mohammad SeyedAlavi

    Dear all, In order to better understanding and using of Struts2, I have created the Animated Tutorial for Struts2 that shows how does struts work. My goal for creating this document was to show basic primitives such as request scope value stack, action classes and objects to someone who wants to select between web frameworks such as Struts, JSF, Tapestry and etc. link to download: http://khorshid.ut.ac.ir/~m.s.alavi/Tutorial.zip First of all you must read the readme.pdf and then start with first scenario. Any opinion about this tutorial is appreciated. I'm looking for your helpful opinions. --kind regards Mohammad SeyedAlavi

Educational Content

Bindings, Platforms, and Innovation

This presentation focuses on the Internet and separating myth from fact, history from the future, and the mundane from the imaginative. Bob Frankston presents a vision of what could and should be.

Orchestrating Long Running Activities with JBoss / JBPM

This article explores the use of JBoss and jBPM to implement design solutions that effectively address the issue of orchestrating long running activities.

Neo4j - The Benefits of Graph Databases

This presentation covers the use of graph databases as an optimal solution for data that is difficult to fit in static tables, rapidly evolving data or data that has a lot of optional attributes.

Realistic about Risk: Software development with Real Options

This session introduces Real Options and shows how it can help in running your project. Real Options is a decision-making process that can be used to manage risk.

Communication Flexibility Using Bindings

This article discusses the use of bindings on services and references (including the instance of non-configured bindings) as the means to implement SCA communications in a Web and SOA environment.

Writing DSLs in Groovy

After a short introduction to DSLs, Scott Davis plays with the keyboard showing how to approach the creation of a DSL by typing working snippets of Groovy code that get executed.

Scaling Agile with C/ALM (Collaborative Application Lifecycle Management)

IBM Rational and InfoQ present, Scaling Agile with C/ALM, an eBook showing organizations how to become “finely tuned software delivery machines” by enabling team integration and scaling.

Concurrent Programming with Microsoft F#

Amanda Laucher presents a real life enterprise application written in F#. She shows actual code snippets, explaining design decisions and suggesting how to use some of the F# constructs.