InfoQ

InfoQ

News

My Bookmarks

Login or Register to enable bookmarks for unlimited time.

The content has been bookmarked!

There was an error bookmarking this content! Please retry.

Presentation: WebWork (Struts 2) In Action

Posted by Floyd Marinescu on Apr 26, 2007

Sections
Development
Topics
Web Frameworks ,
Java
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
Re: very nice by Floyd Marinescu Posted
Re: very nice by Philip Wilkinson Posted
Re: very nice by Mittal Bhiogade Posted
Re: very nice by Mittal Bhiogade Posted
Nice one by Toby Jee Posted
Struts 2.x book !!! by Mittal Bhiogade Posted
Struts 2: XSLT-View by m f Posted
Animated Tutorial for Struts2 by Mohammad SeyedAlavi Posted
  1. Back to top

    very nice

    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

    by Toby Jee

    Nice one Pat. :-)

  3. Back to top

    Re: very nice

    by Floyd Marinescu

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

  4. Back to top

    Re: very nice

    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

    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 !!!

    by Mittal Bhiogade

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

  7. Back to top

    Re: very nice

    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

    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

    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:
    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

New-age Transactional Systems - Not Your Grandpa's OLTP

John Hugg discusses high volume transaction processing applications with high and low frequency profiles, and how VoltDB can be used for that purpose.

Cool Code

Kevlin Henney examines code samples to see what can be learned from them starting from the premise that one won’t write great code unless he knows how to read it.

Collaboration: At the Extremities of Extreme

Jason Ayers share the observations he made watching a team of developers collaborating in real time on the same code base, pushing XP, pair programming and continuous integration to their extremes.

Yesod Web Framework

Michael Snoyman presents Yesod, a web framework written in Haskell and containing a web server, templating, ORM, libraries (templating, gravatar, etc.).

Transactions without Transactions

Richard Kreuter and Kyle Banker on how to avoid classical RDBMS transactional systems by using compensation mechanisms, transactional messaging or transactional procedures.

Attila Szegedi on JVM and GC Performance Tuning at Twitter

Attila Szegedi talks about performance tuning Java and Scala programs at Twitter: how to approach GC problems, the importance of asynchronous I/O, when to use MySQL/Cassandra/Redis, and much more.

10 tips on how to prevent business value risk

One category of risk that project teams need to ensure they address is business value failure – delivering a product that fails to provide value for the business investor.

Interview: Software Systems Architecture: Working With Stakeholders Using Viewpoints and Perspectives

InfoQ spoke to the authors of Software Systems Architecture on a couple of new topics, the System Context viewpoint and Agile, which have been added to the second edition.