coldfusion 9 and railo
TRANSCRIPT
http://qld.cfug.org.au
Coldfusion 9& RailoBy Gareth Edwards
http://qld.cfug.org.au
Coldfusion 8
● Shipped Mid 2007
● 8.01 Released Early 2008
● OSX, Win 2008, Linux 64bit Support
● Library Updates
● Minor Enhancements
● Rich Text Editor Updated to work in AIR / Safari
● Doing Very Well
http://qld.cfug.org.au
Coldfusion 9
● Currently in Development
● Expected 2009
● More Information in November @ MAX
● Flex driving more Developers to Coldfusion
● Coldfusion is an Critical product with a future
● Early Planning Internally for CF 10
● Talking about CF 11
http://qld.cfug.org.au
Coldfusion Licensing
● Lack of Available Developers
● Impacting Organizations Using Coldfusion
● Not good for Coldfusion Business
● Plans to improve developer experience in CF 9
● Still in talks over pricing model
● Free unrestricted Enterprise Version for Education
● For teaching purposes only
● Includes Tools & Curriculum
● Why Free Version?
● Become part of the RIA Momentum
http://qld.cfug.org.au
CF Open Process Initiative
● Public Bug Database
● Public enhancement request system
● Customer Advisory Boards
● Enterprise Developers & Community Leaders
● Focused Committees
– CFML Language
– RIA
– Frameworks
– More
● Early access to Alpha / Beta releases
http://qld.cfug.org.au
CFML Language Advisory Committee
● Will Help Define the rules and guidelines around the use and evolution of CFML
● Committee Members
● Sean Corfield ( Lead )
● Ben Forta ( Adobe )
● Sanjeev Kumar ( Adobe )
● Gert Franz ( Railo )
● Ray Camden ( CF Jedi )
● Rob Brooks-Bilson
http://qld.cfug.org.au
CF 9 Discussions Disclaimer
● Features may not make it into the final CF 9 Product
● Information based on information from Adobe
● May contain my own interpretations, ideas and opinions
● Currently further implementation information is not available
http://qld.cfug.org.au
CF 9 Language Enhancements 1
● Create UDFs and CFC functions using <CFSCRIPT>
http://qld.cfug.org.au
CF 9 Language Enhancements 2
● Explicit LOCAL scope keeps local variables local
● <cfset var count = 1>
– Will go into LOCAL.count● <cfset LOCAL.count = 1>
● LOCAL and Var be defined and used anywhere within the function
● Default scope for CFC can be set
● <cfset count = 1>
● Could be put into VARIABLES.count or LOCAL.count by default.
http://qld.cfug.org.au
CF 9 Language Enhancements 3
● <CFFINALLY>
● Used at the End of <CFTRY>
– Code to always execute after a try catch
● <CFCONTINUE>
● Used within a <CFLOOP> to exit the current iteration and move onto the next
http://qld.cfug.org.au
CF 9 Language Enhancements 4
● Component “new” and “import” keywords
● Implicit Component Constructors
● <cfcomponent init=””>
● Method named init()
● Method with the same name as the component
http://qld.cfug.org.au
CF 9 Language Enhancements 5
● Implicit getters and setters
● <cfproperty />
● Will respect custom getters and setters
● Not generated code
– But functions created as part of a custom CFC with Properties
http://qld.cfug.org.au
CF 9 Server Events
● New Server.cfc
● OnServerStart
● OnServerEnd
– Will not run on server crash
● Define Server Server.cfc in CF Administrator
http://qld.cfug.org.au
CF 9 & Rich Internet Applications
● Improved AIR / LCDS Integration
● Online / Offline Sync
http://qld.cfug.org.au
CF 9 ORM – Object Relational Mapper
● Java Hibernate
● Uses the same config as Java Hibernate
● Will respect use of Queries
● Will allow multi directional workflows
● CFC Config File→● Config File CFC→
http://qld.cfug.org.au
ORM Component
● Uses CFC Name for Table Name
● Additional Component and Property attributes
http://qld.cfug.org.au
ORM / Hibernate Config
● Config can be modified or generated by the CFC
● CFC can be modified or generated by the Config
● The XML Configuration is a Hibernate Config file
http://qld.cfug.org.au
ORM Use
● Getter and Setter Functions are Automatically created
● Hibernate Object can be interacted with
http://qld.cfug.org.au
CF 9 Tooling
● Better tooling
● Adobe confirmed it would be a good idea for them to look at a Code Centric IDE
– Not Dreamweaver
● More Information at MAX 08
● Sigh
http://qld.cfug.org.au
Railo
● In partnership with Jboss
● Opensourcing Core Product
● Working with Adobe
● Watch Railo 3 Features for possible Adobe Coldfusion Features
http://qld.cfug.org.au
Opensource Railo & JBoss
● Will be part of the Opensource Jboss community portal
● Will be part of the Jboss Application Server (AS)
● Jboss have an genuine interest in CFML
● And not in Converting Coldfusion Coders to Jboss / Java
● Genuine Interest in Feedback and the CFML Community
● Only features that use 3rd party libraries will not be in the Opensource version
http://qld.cfug.org.au
Railo 3 Features
● CFVideo Tags
● For embedding video
● Coldfusion 8 support
● Not 100% at this stage
● Hibernate ORM Support
● Talked about before Adobe CF9 announcements
● CLUSTER scope
● Scope shared between Software Clustered Servers
● Definition of CF constants
http://qld.cfug.org.au
Resources
● http://www.railo.ch/
● http://www.kaffien.com/blog/