SlideShare a Scribd company logo
1 of 1
Download to read offline
Structure [execution order]
root/
        common/
                layouts/
                        default.cfm [15]
        subsystem/
                controllers/
                        section.cfc
                               init(fw) [3] *
                               before(rc) [4]
                               startitem(rc) [5]
                                                 †
                               item(rc) [6]
                               enditem(rc) [9] ‡
                               after(rc) [10]
                layouts/                                                       action = subsystem:section.item
                       section/
                               item.cfm [12]
                       section.cfm [13]
                       default.cfm [14]                     a lightweight, convention over configuration,
                services/                                   MVC application framework for ColdFusion / CFML
                       section.cfc
                               item() [7]
                       … (any other service calls initiated) … [8]
                views/
                       section/
                               item.cfm [11]
        Application.cfc [1] extends the framework.cfc
                setupApplication(), setupSession(), setupRequest(), setupSubsystem()
        index.cfm
        corfield/org/framework.cfc [2]                     * only runs when section.cfc is instantiated
                                                          † executes for controller() queued items then for action=item
                                                          ‡ executes action=item then controller() queued items

 Controller                                                          View/Layout
 commonly used functions                                             commonly used functions /variables
 variables.fw.populate()                                             view()                      body
 variables.fw.redirect()                                             buildURL()                  rc[]
 variables.fw.service()                                              layout()                    local[]
 variables.fw.setView()                                              getBeanFactory()            framework[]
 variables.fw.customizeViewOrLayoutPath()                                                        request.layout


  Configuration
variables.framework = {
  action = 'action',
  // base = omitted so that the framework calculates a sensible default
  usingSubsystems = false,
  defaultSubsystem = 'home',
  defaultSection = 'main',
  defaultItem = 'default',
  subsystemDelimiter = ':'.
  siteWideLayoutSubsystem = 'common',
  home = 'main.default', // defaultSection & '.' & defaultItem
  // or: defaultSection & subsystemDelimiter & defaultSection & '.' & defaultItem
  error = 'main.error', // defaultSection & '.error'
  // or: defaultSection & subsystemDelimiter & defaultSection & '.error'
  reload = 'reload',
  password = 'true',
  reloadApplicationOnEveryRequest = false,
  preserveKeyURLKey = 'fw1pk',
  maxNumContextsPreserved = 10,
  baseURL = 'useCgiScriptName',
  generateSES = false,                                 Links
  SESOmitIndex = false,                               Project home: http://fw1.riaforge.org
  applicationKey = 'org.corfield.framework',
  unhandledExtensions = 'cfc',                        Documentation wiki: http://wiki.github.com/seancorfield/fw1/
  unhandledPaths = '/flex2gateway'                    Blog: http://corfield.org/blog/archives.cfm/category/fw1
};                                                    Support: http://groups.google.com/group/framework-one/

More Related Content

What's hot

SenchaCon 2016: Develop, Test & Deploy with Docker - Jonas Schwabe
SenchaCon 2016: Develop, Test & Deploy with Docker - Jonas Schwabe SenchaCon 2016: Develop, Test & Deploy with Docker - Jonas Schwabe
SenchaCon 2016: Develop, Test & Deploy with Docker - Jonas Schwabe Sencha
 
Learning ASP.NET 5 and MVC 6
Learning ASP.NET 5 and MVC 6Learning ASP.NET 5 and MVC 6
Learning ASP.NET 5 and MVC 6Ido Flatow
 
One daytalk hbraun_oct2011
One daytalk hbraun_oct2011One daytalk hbraun_oct2011
One daytalk hbraun_oct2011hbraun
 
Managing an OSGi Framework with Apache Felix Web Console
Managing an OSGi Framework with  Apache Felix Web ConsoleManaging an OSGi Framework with  Apache Felix Web Console
Managing an OSGi Framework with Apache Felix Web ConsoleFelix Meschberger
 
Server-side OSGi with Apache Sling (Jazoon 2010)
Server-side OSGi with Apache Sling (Jazoon 2010)Server-side OSGi with Apache Sling (Jazoon 2010)
Server-side OSGi with Apache Sling (Jazoon 2010)Felix Meschberger
 
RESTful web service with JBoss Fuse
RESTful web service with JBoss FuseRESTful web service with JBoss Fuse
RESTful web service with JBoss Fuseejlp12
 
Implementing portlets using Web Scripts
Implementing portlets using Web ScriptsImplementing portlets using Web Scripts
Implementing portlets using Web ScriptsPiergiorgio Lucidi
 
Alfresco Summit 2014 - Crafter CMS - Case European Bank
Alfresco Summit 2014 - Crafter CMS - Case European BankAlfresco Summit 2014 - Crafter CMS - Case European Bank
Alfresco Summit 2014 - Crafter CMS - Case European BankPiergiorgio Lucidi
 
Seda与Java并行编程点滴
Seda与Java并行编程点滴Seda与Java并行编程点滴
Seda与Java并行编程点滴Benjamin Tan
 
Server-side OSGi with Apache Sling
Server-side OSGi with Apache SlingServer-side OSGi with Apache Sling
Server-side OSGi with Apache SlingFelix Meschberger
 
In The Trenches With Tomster, Upgrading Ember.js & Ember Data
In The Trenches With Tomster, Upgrading Ember.js & Ember DataIn The Trenches With Tomster, Upgrading Ember.js & Ember Data
In The Trenches With Tomster, Upgrading Ember.js & Ember DataStacy London
 
WSO2 API Manager Reference Architecture for Pivotal Cloud Foundry
WSO2 API Manager Reference Architecture for Pivotal Cloud FoundryWSO2 API Manager Reference Architecture for Pivotal Cloud Foundry
WSO2 API Manager Reference Architecture for Pivotal Cloud FoundryImesh Gunaratne
 
Introduction to ASP.NET 5
Introduction to ASP.NET 5Introduction to ASP.NET 5
Introduction to ASP.NET 5mbaric
 
MuleSoft ESB Filtering data instead of Looping
MuleSoft ESB Filtering data instead of LoopingMuleSoft ESB Filtering data instead of Looping
MuleSoft ESB Filtering data instead of Loopingakashdprajapati
 
Laravel introduction
Laravel introductionLaravel introduction
Laravel introductionSimon Funk
 
Advance java session 2
Advance java session 2Advance java session 2
Advance java session 2Smita B Kumar
 

What's hot (20)

SenchaCon 2016: Develop, Test & Deploy with Docker - Jonas Schwabe
SenchaCon 2016: Develop, Test & Deploy with Docker - Jonas Schwabe SenchaCon 2016: Develop, Test & Deploy with Docker - Jonas Schwabe
SenchaCon 2016: Develop, Test & Deploy with Docker - Jonas Schwabe
 
Learning ASP.NET 5 and MVC 6
Learning ASP.NET 5 and MVC 6Learning ASP.NET 5 and MVC 6
Learning ASP.NET 5 and MVC 6
 
One daytalk hbraun_oct2011
One daytalk hbraun_oct2011One daytalk hbraun_oct2011
One daytalk hbraun_oct2011
 
Managing an OSGi Framework with Apache Felix Web Console
Managing an OSGi Framework with  Apache Felix Web ConsoleManaging an OSGi Framework with  Apache Felix Web Console
Managing an OSGi Framework with Apache Felix Web Console
 
Server-side OSGi with Apache Sling (Jazoon 2010)
Server-side OSGi with Apache Sling (Jazoon 2010)Server-side OSGi with Apache Sling (Jazoon 2010)
Server-side OSGi with Apache Sling (Jazoon 2010)
 
RESTful web service with JBoss Fuse
RESTful web service with JBoss FuseRESTful web service with JBoss Fuse
RESTful web service with JBoss Fuse
 
Implementing portlets using Web Scripts
Implementing portlets using Web ScriptsImplementing portlets using Web Scripts
Implementing portlets using Web Scripts
 
Alfresco Summit 2014 - Crafter CMS - Case European Bank
Alfresco Summit 2014 - Crafter CMS - Case European BankAlfresco Summit 2014 - Crafter CMS - Case European Bank
Alfresco Summit 2014 - Crafter CMS - Case European Bank
 
Apache Felix Web Console
Apache Felix Web ConsoleApache Felix Web Console
Apache Felix Web Console
 
Seda与Java并行编程点滴
Seda与Java并行编程点滴Seda与Java并行编程点滴
Seda与Java并行编程点滴
 
Server-side OSGi with Apache Sling
Server-side OSGi with Apache SlingServer-side OSGi with Apache Sling
Server-side OSGi with Apache Sling
 
Weblogic - clustering failover, and load balancing
Weblogic - clustering failover, and load balancingWeblogic - clustering failover, and load balancing
Weblogic - clustering failover, and load balancing
 
In The Trenches With Tomster, Upgrading Ember.js & Ember Data
In The Trenches With Tomster, Upgrading Ember.js & Ember DataIn The Trenches With Tomster, Upgrading Ember.js & Ember Data
In The Trenches With Tomster, Upgrading Ember.js & Ember Data
 
WSO2 API Manager Reference Architecture for Pivotal Cloud Foundry
WSO2 API Manager Reference Architecture for Pivotal Cloud FoundryWSO2 API Manager Reference Architecture for Pivotal Cloud Foundry
WSO2 API Manager Reference Architecture for Pivotal Cloud Foundry
 
Introduction to ASP.NET 5
Introduction to ASP.NET 5Introduction to ASP.NET 5
Introduction to ASP.NET 5
 
Hidden gems in cf2016
Hidden gems in cf2016Hidden gems in cf2016
Hidden gems in cf2016
 
This is how we REST
This is how we RESTThis is how we REST
This is how we REST
 
MuleSoft ESB Filtering data instead of Looping
MuleSoft ESB Filtering data instead of LoopingMuleSoft ESB Filtering data instead of Looping
MuleSoft ESB Filtering data instead of Looping
 
Laravel introduction
Laravel introductionLaravel introduction
Laravel introduction
 
Advance java session 2
Advance java session 2Advance java session 2
Advance java session 2
 

Similar to Fw1

NHibernate Configuration Patterns
NHibernate Configuration PatternsNHibernate Configuration Patterns
NHibernate Configuration PatternsLuca Milan
 
Head First Zend Framework - Part 1 Project & Application
Head First Zend Framework - Part 1 Project & ApplicationHead First Zend Framework - Part 1 Project & Application
Head First Zend Framework - Part 1 Project & ApplicationJace Ju
 
Introduction to Zend framework
Introduction to Zend framework Introduction to Zend framework
Introduction to Zend framework Matteo Magni
 
Foundations of Zend Framework
Foundations of Zend FrameworkFoundations of Zend Framework
Foundations of Zend FrameworkAdam Culp
 
symfony on action - WebTech 207
symfony on action - WebTech 207symfony on action - WebTech 207
symfony on action - WebTech 207patter
 
How and why i roll my own node.js framework
How and why i roll my own node.js frameworkHow and why i roll my own node.js framework
How and why i roll my own node.js frameworkBen Lin
 
Zend Framework 1.9 Setup & Using Zend_Tool
Zend Framework 1.9 Setup & Using Zend_ToolZend Framework 1.9 Setup & Using Zend_Tool
Zend Framework 1.9 Setup & Using Zend_ToolGordon Forsythe
 
Andy Postnikov - Drupal 7 vs Drupal 8: от бутстрапа до рендера
Andy Postnikov - Drupal 7 vs Drupal 8: от бутстрапа до рендераAndy Postnikov - Drupal 7 vs Drupal 8: от бутстрапа до рендера
Andy Postnikov - Drupal 7 vs Drupal 8: от бутстрапа до рендераLEDC 2016
 
はじめて Phantom と遭遇して、闇雲に闘いを挑んでみた話 #kbkz_tech
はじめて Phantom と遭遇して、闇雲に闘いを挑んでみた話 #kbkz_techはじめて Phantom と遭遇して、闇雲に闘いを挑んでみた話 #kbkz_tech
はじめて Phantom と遭遇して、闇雲に闘いを挑んでみた話 #kbkz_techTomohiro Kumagai
 
Workshop 23: ReactJS, React & Redux testing
Workshop 23: ReactJS, React & Redux testingWorkshop 23: ReactJS, React & Redux testing
Workshop 23: ReactJS, React & Redux testingVisual Engineering
 
Codeigniter : Two Step View - Concept Implementation
Codeigniter : Two Step View - Concept ImplementationCodeigniter : Two Step View - Concept Implementation
Codeigniter : Two Step View - Concept ImplementationAbdul Malik Ikhsan
 
Lviv 2013 d7 vs d8
Lviv 2013 d7 vs d8Lviv 2013 d7 vs d8
Lviv 2013 d7 vs d8Skilld
 
WPF and Prism 4.1 Workshop at BASTA Austria
WPF and Prism 4.1 Workshop at BASTA AustriaWPF and Prism 4.1 Workshop at BASTA Austria
WPF and Prism 4.1 Workshop at BASTA AustriaRainer Stropek
 

Similar to Fw1 (20)

NHibernate Configuration Patterns
NHibernate Configuration PatternsNHibernate Configuration Patterns
NHibernate Configuration Patterns
 
Head First Zend Framework - Part 1 Project & Application
Head First Zend Framework - Part 1 Project & ApplicationHead First Zend Framework - Part 1 Project & Application
Head First Zend Framework - Part 1 Project & Application
 
C++11 Multithreading - Futures
C++11 Multithreading - FuturesC++11 Multithreading - Futures
C++11 Multithreading - Futures
 
Introduction to Zend framework
Introduction to Zend framework Introduction to Zend framework
Introduction to Zend framework
 
h-ubu - CDI in JavaScript
h-ubu - CDI in JavaScripth-ubu - CDI in JavaScript
h-ubu - CDI in JavaScript
 
Foundations of Zend Framework
Foundations of Zend FrameworkFoundations of Zend Framework
Foundations of Zend Framework
 
h-ubu : CDI in JavaScript
h-ubu : CDI in JavaScripth-ubu : CDI in JavaScript
h-ubu : CDI in JavaScript
 
symfony on action - WebTech 207
symfony on action - WebTech 207symfony on action - WebTech 207
symfony on action - WebTech 207
 
How and why i roll my own node.js framework
How and why i roll my own node.js frameworkHow and why i roll my own node.js framework
How and why i roll my own node.js framework
 
Zend Framework 1.9 Setup & Using Zend_Tool
Zend Framework 1.9 Setup & Using Zend_ToolZend Framework 1.9 Setup & Using Zend_Tool
Zend Framework 1.9 Setup & Using Zend_Tool
 
Andy Postnikov - Drupal 7 vs Drupal 8: от бутстрапа до рендера
Andy Postnikov - Drupal 7 vs Drupal 8: от бутстрапа до рендераAndy Postnikov - Drupal 7 vs Drupal 8: от бутстрапа до рендера
Andy Postnikov - Drupal 7 vs Drupal 8: от бутстрапа до рендера
 
Lviv 2013 d7 vs d8
Lviv 2013   d7 vs d8Lviv 2013   d7 vs d8
Lviv 2013 d7 vs d8
 
2007 Zend Con Mvc Edited Irmantas
2007 Zend Con Mvc Edited Irmantas2007 Zend Con Mvc Edited Irmantas
2007 Zend Con Mvc Edited Irmantas
 
はじめて Phantom と遭遇して、闇雲に闘いを挑んでみた話 #kbkz_tech
はじめて Phantom と遭遇して、闇雲に闘いを挑んでみた話 #kbkz_techはじめて Phantom と遭遇して、闇雲に闘いを挑んでみた話 #kbkz_tech
はじめて Phantom と遭遇して、闇雲に闘いを挑んでみた話 #kbkz_tech
 
Workshop 23: ReactJS, React & Redux testing
Workshop 23: ReactJS, React & Redux testingWorkshop 23: ReactJS, React & Redux testing
Workshop 23: ReactJS, React & Redux testing
 
Red5 - PHUG Workshops
Red5 - PHUG WorkshopsRed5 - PHUG Workshops
Red5 - PHUG Workshops
 
Codeigniter : Two Step View - Concept Implementation
Codeigniter : Two Step View - Concept ImplementationCodeigniter : Two Step View - Concept Implementation
Codeigniter : Two Step View - Concept Implementation
 
Lviv 2013 d7 vs d8
Lviv 2013 d7 vs d8Lviv 2013 d7 vs d8
Lviv 2013 d7 vs d8
 
Centos config
Centos configCentos config
Centos config
 
WPF and Prism 4.1 Workshop at BASTA Austria
WPF and Prism 4.1 Workshop at BASTA AustriaWPF and Prism 4.1 Workshop at BASTA Austria
WPF and Prism 4.1 Workshop at BASTA Austria
 

Fw1

  • 1. Structure [execution order] root/ common/ layouts/ default.cfm [15] subsystem/ controllers/ section.cfc init(fw) [3] * before(rc) [4] startitem(rc) [5] † item(rc) [6] enditem(rc) [9] ‡ after(rc) [10] layouts/ action = subsystem:section.item section/ item.cfm [12] section.cfm [13] default.cfm [14] a lightweight, convention over configuration, services/ MVC application framework for ColdFusion / CFML section.cfc item() [7] … (any other service calls initiated) … [8] views/ section/ item.cfm [11] Application.cfc [1] extends the framework.cfc setupApplication(), setupSession(), setupRequest(), setupSubsystem() index.cfm corfield/org/framework.cfc [2] * only runs when section.cfc is instantiated † executes for controller() queued items then for action=item ‡ executes action=item then controller() queued items Controller View/Layout commonly used functions commonly used functions /variables variables.fw.populate() view() body variables.fw.redirect() buildURL() rc[] variables.fw.service() layout() local[] variables.fw.setView() getBeanFactory() framework[] variables.fw.customizeViewOrLayoutPath() request.layout Configuration variables.framework = { action = 'action', // base = omitted so that the framework calculates a sensible default usingSubsystems = false, defaultSubsystem = 'home', defaultSection = 'main', defaultItem = 'default', subsystemDelimiter = ':'. siteWideLayoutSubsystem = 'common', home = 'main.default', // defaultSection & '.' & defaultItem // or: defaultSection & subsystemDelimiter & defaultSection & '.' & defaultItem error = 'main.error', // defaultSection & '.error' // or: defaultSection & subsystemDelimiter & defaultSection & '.error' reload = 'reload', password = 'true', reloadApplicationOnEveryRequest = false, preserveKeyURLKey = 'fw1pk', maxNumContextsPreserved = 10, baseURL = 'useCgiScriptName', generateSES = false, Links SESOmitIndex = false, Project home: http://fw1.riaforge.org applicationKey = 'org.corfield.framework', unhandledExtensions = 'cfc', Documentation wiki: http://wiki.github.com/seancorfield/fw1/ unhandledPaths = '/flex2gateway' Blog: http://corfield.org/blog/archives.cfm/category/fw1 }; Support: http://groups.google.com/group/framework-one/