Catching the Web Flow Have you got the Flow? Björn Beskow.

Slides:



Advertisements
Similar presentations
3 Copyright © 2005, Oracle. All rights reserved. Designing J2EE Applications.
Advertisements

COM vs. CORBA.
Chapter 13 Review Questions
Web Development with Karsten Schulz Terp-Nielsen Master Principal Sales Consultant Oracle Denmark.
Apache Struts Technology
Objectives In this session, you will learn to:
Aspect-Oriented Programming In Eclipse ® Aspect-Oriented Programming in Eclipse with AspectJ Dr Helen Hawkins and Sian January.
Sapana Mehta (CS-6V81) Overview Of J2EE & JBoss Sapana Mehta.
Fundamentals, Design, and Implementation, 9/e Chapter 14 JDBC, Java Server Pages, and MySQL.
CS 290C: Formal Models for Web Software Lecture 10: Language Based Modeling and Analysis of Navigation Errors Instructor: Tevfik Bultan.
©Silberschatz, Korth and Sudarshan1.1Database System Concepts Chapter 1: Introduction Purpose of Database Systems View of Data Data Models Data Definition.
Software Architecture Patterns (2). what is architecture? (recap) o an overall blueprint/model describing the structures and properties of a "system"
Application Architectures Vijayan Sugumaran Department of DIS Oakland University.
Reuse Activities Selecting Design Patterns and Components
Apache Struts Technology A MVC Framework for Java Web Applications.
Session-01. Layers Struts 2 Framework The struts 2 framework is used to develop MVC-based web application. Struts 1.0 was released in June The.
Spring Web Flow.
Stateful Web Application Development with Spring Web Flow John Case Senior Consultant Centare Group, Ltd.
UNIT-V The MVC architecture and Struts Framework.
Web Applications Harry R. Erwin, PhD University of Sunderland CIT304/CSE301.
Pittsburgh Java User Group– Dec Java PureFaces: A JSF Framework Extension.
Peter Hinrichsen TechInsite Pty Ltd Rolling your own Object Persistence Framework (OPF) Please consider the following questions:
Copyright © 2012 Accenture All Rights Reserved.Copyright © 2012 Accenture All Rights Reserved. Accenture, its logo, and High Performance Delivered are.
Copyright © 2012 Accenture All Rights Reserved.Copyright © 2012 Accenture All Rights Reserved. Accenture, its logo, and High Performance Delivered are.
Struts Portlet Redirect Copyright © Liferay, Inc. All Rights Reserved. No material may be reproduced electronically or in print without written.
JDeveloper 10g and JavaServer Faces: High-Performance UIs on the Web Avrom Roy-Faderman Senior Programmer May, 2006.
Building Web Sites with ASP.NET MVC Framework Noam King CTO Sela College
WEB 304 An Overview of ASP.NET and Windows Workflow Foundation Kashif Alam Program Manager Developer Division Microsoft Corporation.
J2EE Structure & Definitions Catie Welsh CSE 432
Apache Struts RIFE Ruby on Rails Harry R. Erwin, PhD University of Sunderland CIT304/CSE301.
ASP.NET.. ASP.NET Environment ASP.NET is Microsoft's programming framework that enables the development of Web applications and services. It is an easy.
JSF Introduction Copyright © Liferay, Inc. All Rights Reserved. No material may be reproduced electronically or in print without written permission.
CHEF II / Sakai Architecture. CHEF II Changes uPortal replaces Jetspeed –jsr 168 portlet, servlet compliant Spring replaces Turbine component framework.
Lecturer: Prof. Piero Fraternali, Teaching Assistant: Alessandro Bozzon, Advanced Web Technologies: Struts–
Chapter 1 : Introduction §Purpose of Database Systems §View of Data §Data Models §Data Definition Language §Data Manipulation Language §Transaction Management.
Presentation. Recap A multi layer architecture powered by Spring Framework, ExtJS, Spring Security and Hibernate. Taken advantage of Spring’s multi layer.
JavaEE Seams Easy JBoss Seam: A Web Application Component Framework for EJB3, JPA, JSF and AJAX.
©Silberschatz, Korth and Sudarshan1.1Database System Concepts Chapter 1: Introduction Purpose of Database Systems View of Data Data Models Data Definition.
Drools Sofia Jonsson CADEC2006, Drools, Slide 2 Copyright 2006, Callista Enterprise AB Agenda Rule Engines - History/Background.
Java Web Development with NetBeans IDE -- Kai Qian Chapter 5 JavaServer Faces (JSF) Technology.
Encapsule Systems Reducing Software Development Costs.
Use Your Favourite Program Editor Duong Tran – Independent Contractor, London, UK Use Your Favourite Program Editor Duong Tran – Independent Contractor,
Database Web.xml load: spring applicationContext and frontcontroller – servlet mappings: *.jsp -> dispatchServlet ApplicationController formController.
Copyright © 2002 ProsoftTraining. All rights reserved. JavaServer Pages.
1 Ch. 1: Software Development (Read) 5 Phases of Software Life Cycle: Problem Analysis and Specification Design Implementation (Coding) Testing, Execution.
Enterprise Integration Patterns CS3300 Fall 2015.
AJAX The new hot technology for building Rich Internet Applications? Mikael Hammarlund.
Model View Controller Architecture of Java Web Applications Dr. M V S Peri Sastry, Ph.D.[BITS-Pilani]
HTML5 AND THE FUTURE JAVASCRIPT PLATFORM Marcelo Lopez Ruiz Senior Software Design Engineer Microsoft Corporation.
Computing System Fundamentals 3.1 Language Translators.
Quick overview of ASP.NET Ajax Ajax deep-dive Cover some key real-world problems Discuss solutions, patterns, opportunities Lots of demos And more of.
Web dialogs as drop-in components Håkan Dahl, Callista Enterprise AB Killing the monolithic webapp.
Software Development Problem Analysis and Specification Design Implementation (Coding) Testing, Execution and Debugging Maintenance.
Callista Enterprise Test Driven ESB Development Sofia Jonsson
1 Copyright © 2004, Oracle. All rights reserved. Oracle Application Development Framework.
Copyright 2007 SpringSource. Copying, publishing or distributing without express written permission is prohibited. Introduction to Data Access with Spring.
Introduction to EJB. What is an EJB ?  An enterprise java bean is a server-side component that encapsulates the business logic of an application. By.
Agile prototyping using Naked Objects Ola Deibitsch Callista Enterprise AB.
Copyright 2007 SpringSource. Copying, publishing or distributing without express written permission is prohibited. Overview of the Spring Framework Introducing.
Web Technology (NCS-504) Prepared By Mr. Abhishek Kesharwani Assistant Professor,UCER Naini,Allahabad.
Tools for Navigating and Analysis of Provenance Information Vikas Deora, Arnaud Contes and Omer Rana.
Navigation Framework using CF Architecture for a Client-Server Application using the open standards of the Web presented by Kedar Desai Differential Technologies,
Copyright 2007 SpringSource. Copying, publishing or distributing without express written permission is prohibited. Introduction to Spring Web Flow An Overview.
Introduction to ASP.NET development. Background ASP released in 1996 ASP supported for a minimum 10 years from Windows 8 release ASP.Net 1.0 released.
Apache Struts Technology A MVC Framework for Java Web Applications.
9/20/2018 Advantage:Gen An Overview.
Architectural Roadmap
The Model Layer What is Model?
JavaServer Faces: The Fundamentals
SO-Architectural Roadmap
Presentation transcript:

Catching the Web Flow Have you got the Flow? Björn Beskow

CADEC2006, Spring Web Flow, Slide 2 Copyright 2006, Callista Enterprise AB The Problem Web Development is still messy –Request-centric, low-level –Difficult to express overall structure –“Application transactions” that spans several steps are particularly difficult –Browser issues a pain –Reuse is a pain

CADEC2006, Spring Web Flow, Slide 3 Copyright 2006, Callista Enterprise AB The “BackOffice” Flow Definition

CADEC2006, Spring Web Flow, Slide 4 Copyright 2006, Callista Enterprise AB Current, Struts-based approach /step1.do Controller 1 HTTP Session storeForm page1 /step2.do Controller 2 page2 updateForm /lastStep.do Controller 3 confirmationPage processTx Business Service

CADEC2006, Spring Web Flow, Slide 5 Copyright 2006, Callista Enterprise AB Consequences Many lines of custom code are written to capture the interaction As an application grows more complex maintainability breaks down Fundamentally, a key abstraction is missing: the Flow A Flow is typically longer than a single request but shorter than a session, i.e. a conversation

CADEC2006, Spring Web Flow, Slide 6 Copyright 2006, Callista Enterprise AB Spring Web Flow Spring sub-project founded in 2005, based on Ervacon Web Flows Adds the missing abstraction: The Flow

CADEC2006, Spring Web Flow, Slide 7 Copyright 2006, Callista Enterprise AB Spring WebFlow approach start “backOffice” Flow Execution Storage store firstPage “BackOffice” FlowExecution submit nextPage submit confirmationPage load

CADEC2006, Spring Web Flow, Slide 8 Copyright 2006, Callista Enterprise AB Demo

CADEC2006, Spring Web Flow, Slide 9 Copyright 2006, Callista Enterprise AB Advantages The logical flow is clearly defined, readable Navigation rules are encapsulated in one place Navigation is strictly enforced State management is automatic Controller logic is clearly decoupled from command logic HTTP independent No dependency on any request URLs

CADEC2006, Spring Web Flow, Slide 10 Copyright 2006, Callista Enterprise AB Integration with Web frameworks Integrating into other environments –Create a specialized FlowController for that environment The FlowAction for Struts The FlowNavigationHandler for JSF The PortletFlowController for Portlets Spring Web Flow is not tightly coupled with any web framework

CADEC2006, Spring Web Flow, Slide 11 Copyright 2006, Callista Enterprise AB Spring WebFlow Road Map First official release for production use scheduled for Q Version 1.x enhancements –Tighter JSF integration –JMX-enabled flow management –Ajax support (Asynchronous View State Actions)

CADEC2006, Spring Web Flow, Slide 12 Copyright 2006, Callista Enterprise AB Time for Questions!