coldfusion 10

44
ColdFusion 10 Raymond Camden

Upload: raymond-camden

Post on 05-Dec-2014

6.491 views

Category:

Technology


5 download

DESCRIPTION

An introduction to ColdFusion 10, currently in beta.

TRANSCRIPT

Page 1: ColdFusion 10

ColdFusion 10 Raymond Camden

Page 2: ColdFusion 10

This Guy

Developer Evangelist for Adobe Blog: www.raymondcamden.com Email: [email protected] Twitter: cfjedimaster

Page 3: ColdFusion 10

So what’s next in Zeus?

ZEUS! aka: ColdFusion 10

Page 4: ColdFusion 10

ColdFusion 10

Currently in public beta Along with an update to ColdFusion

Builder NOT TALKING ABOUT:

Release Dates (spoiler: not today)

Prices

Editions

All of the above is way over my pay grade.

Page 5: ColdFusion 10

ALL FEATURES NOT FINAL!

(but darn close…)

Page 6: ColdFusion 10

Getting the bits + providing feedback

Download http://labs.adobe.com/technologies/coldfusion10

Discuss http://forums.adobe.com/community/labs/coldfusion10

http://forums.adobe.com/community/labs/coldfusion10/coldfusionbuilder201/

Denounce! (ok, not really…) https://bugbase.adobe.com

Page 7: ColdFusion 10

ColdFusion 10 Features/Changes

Server level Admin Improvements Security out the Ying Yang Language Improvements Solr Improvements Java Integration REST HTML5 Web Sockets Charting Scheduling Web Service Microsoft Exchange 2010 Caching Updates

Page 8: ColdFusion 10

Saying goodbye…

No more JRun No more Verity

Page 9: ColdFusion 10

Server level

Tomcat replaces JRun

Various internal libraries updated (Hibernate, Axis, Solr, etc)

Security improved

Lazy loading for ORM and Flex

Page 10: ColdFusion 10

Admin Improvements

Hot Fix Installer Template Cache – By Folder Clear Query Cache File Browser IP Addresses for Admin Multiple new pages/fields related to other

features

Page 11: ColdFusion 10

Demos

Page 12: ColdFusion 10

Security Enhancements

XSS/CSRF Protection Session Improvements Hash HMAC (Hash-based Message

Authentication Code) File Type Mime Checks And more…

Mail CRLF protection, cflogin strengthened, other services improved

Page 13: ColdFusion 10

XSS Protection

Cross-site Scripting Open Web Application Security Project's

(OWASP) Enterprise Security API New functions:

encodeForHTML encodeForHTMLAttribute encodeForJavaScript encodeForCSS encodeForURL canonicalize

Page 14: ColdFusion 10

Demos

/demos/security/xss

Page 15: ColdFusion 10

CSRF Protection

Cross-Site Request Forgery New functions:

CSRFGenerateToken

CSRFVerifyToken

Page 16: ColdFusion 10

Demos

/demos/security/csrf/csrftoken.cfm

Page 17: ColdFusion 10

Session Improvements

httpOnly on by default Secure (default is false) Domain Timeout (days, -1 for killing session when

browser closes) sessionInvalidate and sessionRotate

Page 18: ColdFusion 10

Example

this.sessioncookie.httponly="true";

this.sessioncookie.secure="true";

this.sessioncookie.domain="value";

this.sessioncookie.timeout="value";

Page 19: ColdFusion 10

Hash

Hash can now be told to iterate N times: hash(input, "sha", 4)

Page 20: ColdFusion 10

Demo

/demos/security/hash.cfm

Page 21: ColdFusion 10

Mime Type Checking

cffile upload getFileMimeType

Page 22: ColdFusion 10

Demos

/demos/security/fileupload.cfm and filemimetype.cfm

Page 23: ColdFusion 10

Language Improvements

Page 24: ColdFusion 10

In no particular order… Cookie via Script

For-in for Queries

Append to file with content

Call Stack

Application Metadata

Disk Space/CPU

App-specific VFS

CFC implicit constructors, method chaining, implicit notation

XPath2

VFS supports app-specific, Zip, HTTP, FTP

dateTimeFormat

cfinclude runonce

Application.cfc - onAbort

cfloop/group

cfpop/secure

JSON support for implicit CFML variables

queryAddRow/queryNew easier!

Oh, and….

Page 25: ColdFusion 10

CLOSURES!

Page 26: ColdFusion 10

Demos

/demos/lang

Page 27: ColdFusion 10

CFC Syntax Sugar…

Implicit constructor

Method chaining

Implicit notation (setting) this.invokeImplicitAccessor = true;

Page 28: ColdFusion 10

Demo

/demos/cfcs

Page 29: ColdFusion 10

Solr

Dynamic custom fields (as many as you want, even up to 11!)

ORM based search Data Import Handler (no more cfquery) Other misc things… (more languages for

example)

Page 30: ColdFusion 10

Demos

Custom Fields demo ORM Search demo

Page 31: ColdFusion 10

Java Integration

Ability to load Java libraries JavaLoader RIP

Java access to CFC files: CFCProxy myCFC = new CFCProxy(cfcPath,

true);

Page 32: ColdFusion 10

Demo

/demos/java

Page 33: ColdFusion 10

REST

RESTful web services are built to work best on the Web. Representational State Transfer (REST) is an architectural style that specifies constraints, such as the uniform interface, that if applied to a web service induce desirable properties, such as performance, scalability, and modifiability, that enable services to work best on the Web. In the REST architectural style, data and functionality are considered resources and are accessed using Uniform Resource Identifiers (URIs), typically links on the Web. The resources are acted upon by using a set of simple, well-defined operations. The REST architectural style constrains an architecture to a client/server architecture and is designed to use a stateless communication protocol, typically HTTP. In the REST architecture style, clients and servers exchange representations of resources by using a standardized interface and protocol.

From: http://download.oracle.com/javaee/6/tutorial/doc/gijqy.html

Page 34: ColdFusion 10

REST

Who cares what it is – we make it easy! (Btw – I'm kidding. Mostly.)

Extensions to component, function, argument, application.cfc, and the Admin

Page 35: ColdFusion 10

Demos

/demos/rest

Page 36: ColdFusion 10

HTML5

CFMAP CFMEDIAPLAYER cfinput won't barf on new items (like

type=range)

Page 37: ColdFusion 10

Demos

/demos/cfmap /demos/testinput.cfm Oh and the video one too…

Page 38: ColdFusion 10

Web Sockets

Bidirectional communication One client to all the rest

Server to all clients

Front end support via <cfwebsocket> Back end support for defining listeners

Page 39: ColdFusion 10

Demo

Page 40: ColdFusion 10

Charting

All new charting engine Styles are JSON objects Deeper configuration via JSON Lots of new features

Page 41: ColdFusion 10

Demo

Page 42: ColdFusion 10

And more…

Page 43: ColdFusion 10

What next?

You downloaded it already, right? I mean, it's a virtual presentation, you don’t have to pretend to pay attention, so I know you downloaded the bits while I spoke along with doing some mining in World of Warcraft and a bit of client work. Get to it!

Lots of blog entries: www.coldfusionbloggers.org

Page 44: ColdFusion 10

Questions?