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.
Tracking change and innovation in the enterprise software development community
Posted by Floyd Marinescu on Jul 02, 2007 12:39 PM
Spring Web Flow (SWF) is a framework for modelling and controlling the execution of multi-step work flows in web applications. Flows often execute across HTTP requests, have state, exhibit transactional characteristics, and may be dynamic and/or long-running in nature. In this interview, SWF co-lead Keith Donald talks about how Spring Web Flow works, the abstractions modelled in Web Flow, support for the back button, continuations, how state is saved across web requests, how an existing app may be refactored to use web flows, and how Web Flow interact with web frameworks like Struts, Spring MVC, and JSF at runtime.What we offer is a controller framework that allows you to develop these modules or flow definitions that are definitions of tasks that the user can participate in; representing things like applying for a loan, booking a flight, searching encyclopedia; any kind of use case that the web application can perform can be captured in a flow definition and we have a dedicated flow dedication language which provides a higher level abstract, almost a DSL for developing and writing UI flows, modeling dialogues.
This abstraction, this language provides that up-one level from the low level http building blocks world and provides an abstraction that allows developers to write their controller logic, test that controller logic without any dependency on any other technology because it is a very self-contained framework. Once that controller logic has been tested and you know your rules, your navigation logic for applying for a loan is sound, that logic can then be deployed and executed inside a servlet engine like Tomcat as part of a web application. Spring Web Flow ties into your most popular MVC framework like Spring MVC, Struts; we also have JSF integration.
It basically provides an environment for folks to model user interactions in a dedicated definition language, test those interactions and then think about plugging those in to their favorite web framework and we’ve seen productivity benefits there and the testability that our Web Flow enables and we've also seen leverage that our users got because once you got these workflow definitions they can run and execute these definitions in a variety of environments from Struts, Spring MVC, but also portlets as well. The same flow definition once built can be deployed within a server environment, in a portlet environment without any change.
Spring Web Flow is being used by Orbitz (I spoke to them at The Spring Experience), United States Portal Service, and the European Patents office, among others. This interview was recorded at The Spring Experience this past December.
Download the Free Adobe® Flex® Builder 3 Trial
Adobe® Rich Internet Application Project Portal
Performance Management and Diagnostics in Distributed Java and .NET Applications
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.
This article explores the use of JBoss and jBPM to implement design solutions that effectively address the issue of orchestrating long running activities.
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.
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.
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.
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.
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.
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.
No comments
Watch Thread Reply