Ps:eScript Framework for Developing Browser-based Applications Matt Verrinder Progress Software UK Internet & Integration Technologies.

Slides:



Advertisements
Similar presentations
Lecture plan Information retrieval (from week 11)
Advertisements

Java Script Session1 INTRODUCTION.
Apache Struts Technology
 Copyright Wipro Technologies JSP Ver 1.0 Page 1 Talent Transformation Java Server Pages.
ARCH-13 Developing WebSpeed  Applications Chris Skeldon Principal Consultant.
ARCH-13: Multiple "Views" with WebSpeed® Chris Skeldon Principal Consultant.
Copyright © 2004 ProsoftTraining, All Rights Reserved. Lesson 10: GUI HTML Editors.
DEV-04 Building OpenEdge® Reference Architecture Applications with WebSpeed® Chris Skeldon Principal Consultant.
Copyright 2004 Monash University IMS5401 Web-based Systems Development Topic 2: Elements of the Web (g) Interactivity.
Project 1 Introduction to HTML.
Building Enterprise Applications Using Visual Studio ®.NET Enterprise Architect.
XHTML Presenters : Jarkko Lunnas Sakari Laaksonen.
DT228/3 Web Development JSP: Directives and Scripting elements.
Application Architectures Vijayan Sugumaran Department of DIS Oakland University.
1 The World Wide Web. 2  Web Fundamentals  Pages are defined by the Hypertext Markup Language (HTML) and contain text, graphics, audio, video and software.
1st Project Introduction to HTML.
HTML 1 Introduction to HTML. 2 Objectives Describe the Internet and its associated key terms Describe the World Wide Web and its associated key terms.
Chapter ONE Introduction to HTML.
UNIT-V The MVC architecture and Struts Framework.
The Easiest Way to Write Web Applications Jordi Sastre IT Architect, PSC May 2012.
Overview of JSP Technology. The need of JSP With servlets, it is easy to – Read form data – Read HTTP request headers – Set HTTP status codes and response.
Sys Prog & Scripting - HW Univ1 Systems Programming & Scripting Lecture 15: PHP Introduction.
Web Development Challenges and How They are Solved in ps:eScript Matt Verrinder Progress Software UK Internet & Integration Technologies.
Windows.Net Programming Series Preview. Course Schedule CourseDate Microsoft.Net Fundamentals 01/13/2014 Microsoft Windows/Web Fundamentals 01/20/2014.
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 4 Web technologies: HTTP, CGI, PHP,Java applets)
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
Joel Bapaga on Web Design Strategies Technologies Commercial Value.
CIS 375—Web App Dev II ASP.NET 2 Introducing Web Forms.
Copyright © cs-tutorial.com. Introduction to Web Development In 1990 and 1991,Tim Berners-Lee created the World Wide Web at the European Laboratory for.
Chapter 1 Understanding the Web Design Environment Principles of Web Design, 4 th Edition.
Week 1 Understanding the Web Design Environment. 1-2 HTML: Then and Now HTML is an application of the Standard Generalized Markup Language Intended to.
1 © Netskills Quality Internet Training, University of Newcastle Introducing XML © Netskills, Quality Internet Training University.
ITCS 6010 SALT. Speech Application Language Tags (SALT) Speech interface markup language Extension of HTML and other markup languages Adds speech and.
Content Management Systems Week 14 LBSC 671 Creating Information Infrastructures.
JSF Introduction Copyright © Liferay, Inc. All Rights Reserved. No material may be reproduced electronically or in print without written permission.
Chapter 8 Cookies And Security JavaScript, Third Edition.
Lecturer: Prof. Piero Fraternali, Teaching Assistant: Alessandro Bozzon, Advanced Web Technologies: Struts–
DEV-5: Introduction to WebSpeed ® Stephen Ferguson Sr. Training Program Manager.
Oracle Application Express Security. © 2009 Oracle Corporation Authentication Out-of-the-Box Pre-Configured Schemes LDAP Directory credentials Oracle.
WEB BASED DATA TRANSFORMATION USING XML, JAVA Group members: Darius Balarashti & Matt Smith.
ARCH-4: The Presentation Layer in the OpenEdge® Reference Architecture Frank Beusenberg Senior Technical Consultant.
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
Session: 1. © Aptech Ltd. 2Introduction to the Web / Session 1  Explain the evolution of HTML  Explain the page structure used by HTML  List the drawbacks.
WEP Presentation for non-IT Steps and roles in software development 2. Skills developed in 1 st year 3. What can do a student in 1 st internship.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
1 Copyright © 2004, Oracle. All rights reserved. Oracle Application Development Framework.
Date : 3/04/2010 Web Technology Solutions Class: PHP Web Application Frameworks.
HTML Concepts and Techniques Fifth Edition Chapter 1 Introduction to HTML.
ASP-2-1 SERVER AND CLIENT SIDE SCRITPING Colorado Technical University IT420 Tim Peterson.
ARCH-5: Service Interfaces in Practice Christian Stiller Technical Architect.
 An essential supporting structure of any thing  A Software Framework  Has layered structure ▪ What kind of functions and how they interrelate  Has.
Java Programming: Advanced Topics 1 Building Web Applications Chapter 13.
Securing Web Applications Lesson 4B / Slide 1 of 34 J2EE Web Components Pre-assessment Questions 1. Identify the correct return type returned by the doStartTag()
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.
1 Middle East Users Group 2008 Self-Service Engine & Process Rules Engine Presented by: Ryan Flemming Friday 11th at 9am - 9:45 am.
HTML PROJECT #1 Project 1 Introduction to HTML. HTML Project 1: Introduction to HTML 2 Project Objectives 1.Describe the Internet and its associated key.
ArcGIS for Server Security: Advanced
Web Technology Solutions
Architecture Review 10/11/2004
Building Enterprise Applications Using Visual Studio®
Web Technologies Computing Science Thompson Rivers University
Project 1 Introduction to HTML.
Chapter 1 Introduction to HTML.
MVC Architecture, Symfony Framework for PHP Web Apps
Project 1 Introduction to HTML.
ARCH-13 Developing WebSpeed Applications
Lecture 1: Multi-tier Architecture Overview
An Introduction to JavaScript
Web Technologies Computing Science Thompson Rivers University
Presentation transcript:

ps:eScript Framework for Developing Browser-based Applications Matt Verrinder Progress Software UK Internet & Integration Technologies

© 2004 Progress Software Ltd 2 Simplify your business Agenda n Separating Presentation Layer in Browser- based Applications n Dynamic Page Generation and Customisation n Standards-based User Interface n ps:eScript Framework –Continued tomorrow

© 2004 Progress Software Ltd 3 Simplify your business Developing Browser-based Applications n Uses multiple skill sets: –Design & create: (X)HTML/CSS/JavaScript –Programming: database/4GL n User-interface subject to design changes throughout development and beyond n Support for multiple browser versions often specified n Ability to alter pages by site, language, etc. often required

© 2004 Progress Software Ltd 4 Simplify your business eScript approach n No restrictions on the type of site/application that can be created –Take any site from web n Separates HTML from 4GL code –Allows HTML and 4GL to be changed independently –HTML can be changed without recompilation of 4GL code n Business logic agnostic –Non-prescriptive

© 2004 Progress Software Ltd 5 Simplify your business Model 2 Architecture n Based on Model-View-Controller design pattern –Economical support multiple interfaces n Model 1 (page-centric) for simple, static applications n Model 2 recommended for medium, large or complex applications

© 2004 Progress Software Ltd 6 Simplify your business Model-View-Controller n Model –Data and business logic independent of interface n View –Display contents of the model n Controller –Translates interactions from the user into actions to be performed against the model

© 2004 Progress Software Ltd 7 Simplify your business change state query Model-View-Controller (MVC) Model View Controller user-interactions data & business logic show contents of model receive interaction, invoke model action

© 2004 Progress Software Ltd 8 Simplify your business Model-View-Controller for WebSpeed Presentation Data Business logic ps:eScript WebObject Interface specific code Presentation Model ControllerView

© 2004 Progress Software Ltd 9 Simplify your business OpenEdge Reference Architecture - Components UI Components UI Controllers Service Interface and Environment Utilities Business Workflows Business Tasks Business Entities Data Access Services Persistent Storage Services Managed Data Store Unmanaged Data Store Users Enterprise Services Enterprise Service Bus Integration Adapters Admin, Business Modeling, Management and Monitoring ps:eScript

© 2004 Progress Software Ltd 10 Simplify your business Implementation n New eScript WebObject –ADM2 Class –Super-procedure –Template n Can be used with standard WebSpeed –WebSpeed 3.1D and 3.1E –OpenEdge 10.x

© 2004 Progress Software Ltd 11 Simplify your business ps:eScript WebObject How it works… Business Logic Application Database ps:eScript Processor ps:eScript Database processMarkup ( customer.html ) Read customer.html Process customer.html include discard fetch data loop branch getData ( Customer.Name ) Response Request

© 2004 Progress Software Ltd 12 Simplify your business eScript tags n ASP-like syntax n Function calls n If… else… end n While.. end n Include n Discard n Call

© 2004 Progress Software Ltd 13 Simplify your business eScript tags – function call n n Used insert data into page n 4GL function invoked in web object n Function return value included in the page n n Used to pass information from the HTML to the 4GL program n Function return value ignored

© 2004 Progress Software Ltd 14 Simplify your business eScript tags – if … else … n … … n Enables HTML to be conditionally output n Function returns TRUE if HTML is to be output n Supports NOT operator (!)

© 2004 Progress Software Ltd 15 Simplify your business eScript tags - while n … n Enables a section of HTML to be output between 0 and n times n Function returns TRUE if HTML is to be output n After output function called again n Supports NOT operator (!)

© 2004 Progress Software Ltd 16 Simplify your business eScript tags – include n n Mergres additional HTML into page –Accepts arguments n HTML passed through eScript processor n Allows HTML to be componentised

© 2004 Progress Software Ltd 17 Simplify your business eScript tags - discard n … n Enclosed HTML not processed and not sent to client n Useful for removing example data

© 2004 Progress Software Ltd 18 Simplify your business eScript tags - call n … n Enclosed HTML passed into function as parameter n Function return value output into page n Minimise use –Requires HTML knowledge in 4GL

Demo 1 Dynamic Page Generation – Item List

© 2004 Progress Software Ltd 20 Simplify your business ps:eScript Framework

© 2004 Progress Software Ltd 21 Simplify your business ps:eScript Framework n Allows multiple versions of the same piece of XHTML or text n Automatically selects XHTML and text –based on user’s language (or browser preferences) –based on user’s browser or device –based on application defined criteria –based on activation date/time

Demo 2 Page Customisation – Multilanguage

© 2004 Progress Software Ltd 23 Simplify your business 4GL is Not Enough n Poor UI can hide a great 4GL application n Great UI attracts people to application/site n Great UI needs: –design – presentation & usability –technical - XHTML, CSS, JavaScript Got all these skills?

© 2004 Progress Software Ltd 24 Simplify your business Delivering the UI n WebSpeed developers need some XHTML, CSS and JavaScript n Design experts create templates –Small effort <10 n 4GL developers apply across application

© 2004 Progress Software Ltd 25 Simplify your business 4GL Developer vs HTML Designer

© 2004 Progress Software Ltd 26 Simplify your business 4GL Developer vs HTML Designer

© 2004 Progress Software Ltd 27 Simplify your business UI Implementation n Standards based approach recommended –Quicker and more consistent rendering –Make re-skinning easier n HTML is dead. Long live XHTML! –HTML 4.01 December 1999 –XHTML 1.0 January 2000 n Reformulation of HTML as XML –XHTML 1.1 May 2001 n Modularisation of XHTML –XHTML 2.0 ?

© 2004 Progress Software Ltd 28 Simplify your business Standards – W3C n XHTML –Valid XML –Conforms to a DTD –Defines structure of a page n Cascading style sheets –presentation n ECMA Script –Standard scripting language based on JavaScript –Makes pages more dynamic

© 2004 Progress Software Ltd 29 Simplify your business Valid XHTML n Well-formed XML –Correctly nested –All tags must be closed –Lower-case element and attribute names –Quoted attribute values –No attribute minimisation n Must conform to a DTD –Check generated pages, not templates

Demo 3 Nice HTML!

© 2004 Progress Software Ltd 31 Simplify your business ps:eScript Benefits n Reduces initial development time –Encapsulates Professional Services’ experience (estimated >40 man-years!) –Provides many of the facilities need for browser based applications –Allows user-interface and logic to be developed in parallel by different teams

© 2004 Progress Software Ltd 32 Simplify your business ps:eScript Benefits n Minimises on going develop and support costs for diverse range of users through –Modularisation of pages –Customisation by exception - allow pages, or parts of a page, to be selected based on context (user, browser type, organisation, language, etc.) –Supports activation of pages, or parts of pages, by date and time –Allow different skill sets to work separately

© 2004 Progress Software Ltd 33 Simplify your business ps:eScript Features - Context n Supports context management, with and without login n Context management without cookies n Context API for developers n Automatically selects text/(X)HTML –based on user’s language (or browser preferences) –based on user’s browser or device –based on application defined criteria –based on activation date/time

© 2004 Progress Software Ltd 34 Simplify your business ps:eScript Features - Application n Query and paging through results n Automatic transfer of data from page and data-type checking n Error handling with ‘rich’ error messages n Exception handling for critical errors n Event logging & site usage tracking n Transformation of generated documents (e.g. encryption, PDF)

© 2004 Progress Software Ltd 35 Simplify your business ps:eScript Features - Security n Definition of users and user groups n Password management – expiry, validation rules, reuse n Login/logout mechanism n Token based security model n Can prohibit access to pages that the user does not have access to n Menus and menu security n Spoof protection n Database auditing & trigger generation

© 2004 Progress Software Ltd 36 Simplify your business ps:eScript Features - Configuration n Parameter driven system configuration n Developer API to system parameters n Links changed without recompilation n Hosts changed for all or part of an application without recompilation n Supports mixed HTTP and HTTPS sites

© 2004 Progress Software Ltd 37 Simplify your business ps:eScript Features n Progress v9.1d and OpenEdge 10 n Module based deployment n Service model for stateless AppServers n Generic 4GL object for static pages n –SMTP 4GL client for sending –POP3 4GL client for receiving n Streaming of files from disk n XML utilities

© 2004 Progress Software Ltd 38 Simplify your business ps:eScript Tools n Browser & GUI tools for maintenance of framework including text and (X)HTML n GUI tools integrated into AppBuilder –Templates for WebObject and Service procedures –Search and Detail/Update templates –Can run standalone n Additional browser-based utilities –Application compiler –Session viewer –Event Log viewer

Demo 4 Search Service

© 2004 Progress Software Ltd 40 Simplify your business Summary n Good browser-based applications require new skills n Separating HTML and 4GL allows parallel development and UI changes without recompilation/redeployment of r-code n eScript provides a Model 2-complient architecture for building applications n ps:eScript provides everything you need to start building browser-based applications, including easy customisation of user-interface by language, device, etc.

© 2004 Progress Software Ltd 41 Simplify your business Questions