SlideShare a Scribd company logo
Hidden Gems in CF2016
Charlie Arehart, Independent Consultant
CF Server Troubleshooter
charlie@carehart.org
@carehart (Tw, Fb, Li)
Updated Oct 10, 2016
@carehart charlie@carehart.org
Topics
• Major features of CF2016 (quick overview)
• Hidden gems in many areas
• Installation, configuration, administration, web server config
• New/changed features, new language constructs, new member functions
• New/changed CFML functions, tags
• As well as other topics:
• Updates to underlying libraries’ version numbers
• Deprecated/obsoleted features
• What’s new in Standard vs Enterprise
• Pricing, licensing, end of life support
• And lots more
• Slides will be offered by Adobe, and at carehart.org/presentations
@carehart charlie@carehart.org
About me
• I’ve been a speaker at nearly every CF conference, and all 4 CF Summits
• Focus on CF server troubleshooting, as an independent consultant
• Assist organizations of all sizes, experience levels
• Work remotely 99% of the time, safe, secure, easy (shared desktop)
• Focus is not just solving problems but educating you
• Love to share info, with my clients and the community
• Active blogger
• Contributor to/creator of many CF community resources
• Online CFMeetup, CF411.com, UGTV, cf911.com, and more
@carehart
charlie@carehart.org
Some intro questions for you
• How many have started using CF2016 in prod? In dev?
• Have at least seen resources about it?
• Not surprised if few: people often wait
• Anyone “waiting for first point release”?
• Have been 3 updates already
• How many likely won't use it until next release comes out (CF2018, or whatever)?
• I do these talks, not just for those making the move now, soon, or have already
• But also those who may see it in future 
• Anyone know when I started doing hidden gems in CF?
• 4.0.1 in 1999
• So, let’s look first at the major new features (only brief overview)
@carehart charlie@carehart.org
Major features of CF2016
• API Manager
• Security Code Analyzer
• PDF Improvements (redaction, sanitization, more)
• CFML language improvements (tags, functions, and more)
• Security improvements (especially more NTLM support)
• Performance improvements
• More about some of these later
• Now, on to the more “hidden” gems!
@carehart
charlie@carehart.org
Installation gems
• Removal of Akamai Download Manager!
• Previously, when downloading CF installer from Adobe, we were forced to use this
• Now just generally a better experience (I suppose some may miss it)
• carehart.org/blog/client/index.cfm/2016/2/19/cf2016_download_no_longer_requires_Akamai_DL_mgr
• Unfortunately, CF install has gotten huge because of API Manager
• Especially tragic if you’ll be using CF Standard: by license can’t use API Mgr
• This is “to be fixed” (bugbase.adobe.com/index.cfm?event=bug&id=4155910)
• During installation, you’re asked whether/how to install API Manager
• And whether to implement it within JVM or as own service
@carehart charlie@carehart.org
Configuration gems
• CFscripts folder now moved to its own directory, not in CFIDE!
• Great move for security, administration
• New folder called cf_scripts, found in the cfusion wwwroot
• Pointed to as a virtual directory in IIS, Apache, etc.
• Related to this…
• CF Admin now available only via internal web server by default
• This is another very good thing, for security
• You REALLY should not try to override this, but I discuss options in my blog post below
• Let’s move on to gems WITHIN the CF Admin…
@carehart charlie@carehart.org
Administration gems
• CF Admin option to store CF sessions in redis (cache) rather than heap
memory
• helpx.adobe.com/content/help/en/coldfusion/2016/external-session-storage.html
• Gotcha: works only with CF sessions, not “J2EE sessions”
• Those using “j2ee sessions” could modify Tomcat (underlying CF) on their own
• blog.svajlenka.com/post/125784752315/redis-and-coldfusion-because-why-not
• New admin setting to disable “REST discovery” by API Manager
• See Settings page, last setting
• For more on these admin and config changes, see
• carehart.org/blog/client/index.cfm/2016/2/23/cf2016_CF_Admin_changes
@carehart charlie@carehart.org
Web server config tool (wsconfig) gems
• Many new improvements related to the web server config tool
• Fixed: no longer any need to manually reconfigure connectors after update!
• CF Update mechanism handles this for us automatically now
• WSConfig offers new “upgrade” option, if ever needed
• Fixed: for those using multiple instances (in CF Enterprise/Trial/Dev)
• Wsconfig UI finally offers option to pick instance name to connect to (like <= CF9)!
• In CF10/11, we had to start wsconfig in instance’s runtimebin to connect site to it
• Fixed: if you open wsconfig UI while already open, you no longer get blanks
• You get warning that you may already have it open
• …
@carehart charlie@carehart.org
Web server config tool (wsconfig) gems (cont.)
• WSConfig UI now tracks number of sites in web server configured or not
• Now offers both an "all" option (for all sites) and an "all - individually“
• Which instead creates a new connector for each site (using the selected settings)
• Appears only if you do have more than 1 web site in web server
• Wsconfig UI now offers option to all 3 connector tuning args
• Found under “advanced settings”
• Previously only offered connection_pool_timeout, max_reuse_connection
• Now offers allows configuration of connection_pool_size also
• Sadly, installer’s web config step does not offer these 3 configurable options
• Due to be fixed in a new installer: bugbase.adobe.com/index.cfm?event=bug&id=4155913
• …
@carehart charlie@carehart.org
Web server config tool (wsconfig) gems (cont.)
• Connector now defaults to timeout of 60 (seconds); was 0 (infinite) before
• For IIS: better connector tuning settings for 2-site setup by default
• Conneciton_pool_size (500), max_reuse_connections (250):
• Sadly, for now, this is not so for Apache configs, but is due to be fixed in upcoming update
• CF2016 also now includes maxthreads="500" and connectionTimeout="60000" in
server.xml, by default
• “Advanced Settings" now also offers "skip iis custom errors" option
• Disabled by default. Useful for some scenarios
• Needed to add manually to isapi_redirect.properties file in CF10/11
• Nice to see all these improvements to the wsconfig, which has been a source of
heartburn in CF10 and 11. Let’s move on to other gems…
@carehart charlie@carehart.org
New feature gems
• New command-line interface (CLI)
• Allows cmd line CFML execution by pointing to a cfm file, via cf.bat
• As in, cf.bat some_file.cfm
• Not a real interactive shell (with tab completion, etc.)
• No repl, no package manager, no extensibility as with CommandBox project
• Still, is useful for cron jobs/windows scheduler, etc. to run cfml pages
• Quite a few options and capabilities
• For more, see
• helpx.adobe.com/coldfusion/2016/command-line-interface.html
@carehart charlie@carehart.org
Changed feature gems
• Many enhancements to PDF support
• Mentioned before sanitization, redaction, but also:
• Export/import of comments, metadata
• Archiving, including newer PDF/A-2b and -3b standards
• Support for attachments, stamps
• For more, see substantial article with examples, and code download
• adobe.com/devnet/coldfusion/articles/pdf-enhancements.html
• Not mentioned on that page:
• CFPDF adds new encrypt attribute values: AES_256R5 and AES_256R6
• …
@carehart charlie@carehart.org
Changed feature gems (cont.)
• New argument for structnew, ordered, maintains insertion order
• Looping over such a struct will also return in insertion order
• All other forms of creating new structs keep same order as before
• Also support for creating empty ordered struct
• helpx.adobe.com/coldfusion/2016/language-
enhancements.html#CollectionsupportOrdered
• …
@carehart charlie@carehart.org
Changed feature gems (cont.)
• New application-level controls
• searchImplicitScopes, passArrayByReference
• Each can change long-standing behavior for these operations, vastly improving
performance (5x and 25x, respectively)
• Set as either cfapplication attributes or via this scope in application.cfc
• See:
• adobe.com/devnet/coldfusion/articles/language-enhancements-cf-2016.html
• helpx.adobe.com/coldfusion/2016/language-enhancements.html#Scopesearch
• helpx.adobe.com/coldfusion/2016/language-enhancements.html#Arraysbr
• …
@carehart charlie@carehart.org
Changed feature gems (cont.)
• CF Admin “enable whitespace management” option now suppresses
whitespace at compile time as well as runtime
• Swagger doc generation (for restful api's and API Manager)
• helpx.adobe.com/coldfusion/2016/swagger-document-generation.html
• Now on to language enhancements…
@carehart
charlie@carehart.org
New language constructs
• Safe navigation operator (?.)
• Used when accessing members of a struct or values of an object
• Used instead of ".", to prevent exception if not defined, null, etc.
• Simplified code, versus nested isdefined tests
• Examples:
• <cfoutput>#employee?.firstname#</cfoutput>
• Will output empty string if firstname does not exist/null
• Writeoutput(employee?.name?.firstname?.trim());
• Will output empty string if all 3 are undefined/null
• …
@carehart
charlie@carehart.org
New language constructs (cont.)
• For more info and examples (including setting variables with safe navigation):
• helpx.adobe.com/coldfusion/2016/language-enhancements.html#Safenavigation
• helpx.adobe.com/coldfusion/developing-applications/the-cfml-programming-
language/using-coldfusion-variables/using-periods-in-variable-
references.html#Usingthesafenavigationoperator
• blog.adamcameron.me/2015/10/coldfusion-12-it-goes-to-show-you.html
• adobe.com/devnet/coldfusion/articles/language-enhancements-cf-2016.html
@carehart charlie@carehart.org
New member functions
• Many new member functions (expanding on the new feature in CF11)
• New array member functions: arrayDeleteNoCase
• New string member functions:
• encrypt, paragraphFormat, replaceListNoCase
• decodeFromURL, decodeForHTML, encodeForHTML, encodeForHTMLAttribute
• encodeForXML, encodeForXMLAttribute, encodeForXPath
• encodeForCSS, encodeForJavaScript, encodeForURL
• getSafeHTML, isSafeHTML
• urlDecode, urlEncodedFormat
• …
@carehart charlie@carehart.org
New member functions (cont.)
• New datetime member functions:
• LSDateFormat
• setSecond, setMinute, setHour
• setDay, setMonth, setYear
• New query member functions:
• queryEach, queryKeyExists, queryFilter, queryMap, queryReduce, querySort,
valueArray
• New display and formatting member functions:
• booleanFormat, yesNoFormat
• More info on member functions:
• helpx.adobe.com/coldfusion/developing-applications/building-blocks-of-coldfusion-
applications/using-the-member-functions.html
@carehart charlie@carehart.org
New/changed CFML functions
• New CFML functions
• arrayContainsNoCase, arrayDeleteNoCase, valueArray
• querySort, queryEach, queryFilter, queryKeyExists, queryMap, queryReduce
• booleanFormat, floor, isPDFArchive, replaceListNoCase, spreadsheetGetColumnCount
• Changed functions:
• arraynew, cacheRemove, dateFormat, timeFormat, createDateTime
• replace, replaceList, spreadsheetAddRows, writeoutput
• More info, links to details on new/changed CFML functions:
• helpx.adobe.com/coldfusion/2016/other-enhancements.html
• helpx.adobe.com/coldfusion/2016/language-enhancements.html#ArrayFindNoCase
@carehart charlie@carehart.org
Changed CFML tags
• Changed CFML tags…
• CFLOOP
• New item attribute, for use with loops over list, array, or file
• Named item var will hold element looped over
• Named index var (optional) will hold index value, if any
• …
@carehart charlie@carehart.org
Changed CFML tags (cont.)
• CFMAILPARAM
• New, optional filename attribute, to give different name for file attached to email
when using cfmailparam file attribute
• File points to name as on server, filename points to name as shown in email
• CFOUTPUT
• New encodefor attribute: names encoding type to be used for strings within it tags, if
not otherwise surrounded by an encodefor function (types: html, htmlattribute, url,
javascript, css, xml, and so on)
• …
@carehart charlie@carehart.org
Changed CFML tags (cont.)
• CFSEARCH (Solr searching)
• New Type attribute values (for parser): Standard, Dismax
• Old verity-based types no longer supported
• simple, explicit, internet, internet_basic, natural
• CFCOLLECTION
• path attribute is now ignored
• All collections are created in the collections directory at the location specified
in Solr_Home field in the ColdFusion admin
• CFSOCIALPLUGIN
• See comments in [ColdFusion2016]cfusionCustomTagssocialplugin.cfm
• …
@carehart charlie@carehart.org
Changed CFML tags (cont.)
• More info on changed tags, with links to details:
• helpx.adobe.com/coldfusion/2016/other-enhancements.htm
• helpx.adobe.com/coldfusion/2016/language-enhancements.html
• Phew, so that’s it for language, feature, admin and config gems
• Think we’re done?
• Not yet!
@carehart charlie@carehart.org
Other topics
• We’re more than half-way home. Areas remaining…
• Deprecated features
• Updates to underlying libraries’ versions numbers
• What’s new in Standard vs Enterprise
• Pricing
• Updates since initial release
• And more!
@carehart charlie@carehart.org
Deprecated features
• Deprecated features (nothing obsoleted)
• These may (will likely) be dropped/obsoleted in later releases, but are still supported
• Language features:
• CFCHART format=“flash”
• CFFILEUPLOAD Flash component
• CFMEDIAPLAYER
• CFTABLE
• UI Tags based on YUI toolkit - CFTREE, CFCALENDAR, CFAUTOSUGGEST, CFMENU
• These uniquely are also “no longer supported”/updated
• Report Builder
@carehart charlie@carehart.org
Deprecated features (Cont.)
• Certain admin features deprecated
• Event gateways - Jabber, Flash Media server
• Portlets
• System Probes
• Server Manager
• Server Monitor (was listed as deprecated, but will not be)
• For more on deprecation, dropping of support for some things
• helpx.adobe.com/coldfusion/deprecated-features.html
• carehart.org/blog/client/index.cfm/2016/2/22/cf2016_deprecated_features
• Now, how about the status/versions of CF’s underlying Java libraries?
@carehart charlie@carehart.org
Updates to underlying libraries’ versions numbers
• JDBC Drivers 5.1.4.000138 (the built-in Merant DB drivers,
such as for SQL Server, Oracle, and even MySQL. CF no
longer includes the MySQL-provided driver, but you can add
it yourself)
• jQuery 1.6.1 and jQuery UI 1.8.16 (JS library which underlies
various UI tags and Admin interface features)
• Lucene 5.2.1 (underlies Solr, embedded search engine in CF)
• OpenSSL 1.0.2h (as of CF 2016 Update 2)
• POI 3.12 (underlies MS Office Integration features)
• PostgreSQL 9.4-1201 (db driver)
• Quartz 2.2.1 (underlies CF Schedule tasks)
• Servlets 3.1 (underlies CF/Tomcat processing)
• Solr 5.2.1 (the embedded search engine, used by
CFSEARCH/CFINDEX/CFCOLLECTION, etc.)
• Tomcat 8.0.27.0, 8.0.32 as of Update 1 (the application
server which underlies CF, when deployed in traditional
"Server" configuration)
• YUI 2.3.0 (JS library which underlies various UI tags)
• Antisamy 1.5.3 (OWASP security library)
• Axis 2 1.7.0 (web services library, and note that's
"Axis 2" v 1.7.0, not "Axis")
• Derby 10.11 (embedded DB)
• Ehcache 2.10.0 (caching library)
• Esapi 2.1.0 (OWASP Enterprise Security API)
• Ext JS 4.1 (JS library which underlies various UI
tags)
• Ewsapi 1.1.5 (MS Exchange API)
• Hibernate 4.3.10 (ORM library)
• Httpclient 4.4.1 (underlies CFHTTP and more)
• Jetty 9.3.6v20151106 (underlies Solr, HTMLTOPDF,
and more)
• Java 1.8.0_72 (the JVM which underlies all of CF)
See: carehart.org/blog/client/index.cfm/2016/2/17/what_are_cf2016_embedded_library_version_numbers
@carehart charlie@carehart.org
What’s new in Standard vs Enterprise
• Referring here only to what’s new/changed in CF2016 and in Enterprise only
• API Manager
• Security Analyzer
• These do not work with CF 2016 Standard, nor even Developer edition!
• They do work with the CF Trial edition
• And you can take an enterprise license key and use it on a “dev” machine, of course
• More:
• carehart.org/blog/client/index.cfm/2016/2/25/cf2016_enterprise-only_features
@carehart charlie@carehart.org
Pricing
• For more, including how I found this info, see
carehart.org/blog/client/index.cfm/2016/2/24/pricing_for_coldfusion_2016
@carehart
charlie@carehart.org
Licensing/EULA
• Some debate/confusion initially about aspects of new EULA
• See it for yourself
• wwwimages.adobe.com/content/dam/acom/en/legal/licenses-terms/pdf/ColdFusion-
2016.pdf
• Reach out to CF Product Mgr, Rakshith Naren, with any questions
• rakshith@adobe.com
@carehart
charlie@carehart.org
End of life/End of support
• CF10 support not terminating at end of this year
• As happened with CF9 in 2014 when 10 came out
• Instead, ends May 2017 (extended support, May 2019)
• CF11 support ends April 2019 (“extended support” April 2021)
• CF9 “extended support” ends 12/31/16
• More: adobe.com/support/products/enterprise/eol/eol_matrix.html#63
@carehart charlie@carehart.org
Updates since release of CF2016
• There have been 3 updates to CF2016 since release (as of this date)
• Updates can be easily applied in CF Admin, “Server Update” page
• Updates are cumulative, need only apply latest
• If you have troubles applying CF updates (in 2016, or 10/11), see my blog post:
• carehart.org/blog/client/index.cfm/2016/9/6/solve_common_problems_with_CF_updates_in_10_and_above
• As for updating CFBuilder, should be prompted about available update
• But you can implement it manually
• helpx.adobe.com/coldfusion/kb/coldfusion-builder-2016-update-2.html#Installation
• There’s sometimes a fair bit that’s included in CF updates
• Bug fixes, security improvements, and sometimes even minor new/changed features
• Let’s take a look at them
@carehart charlie@carehart.org
Update 1
• Update 1 was released in May 2016, 3 months after initial release
• Tomcat was updated to 8.0.32
• Various updates to Security Analyzer
• Several important bug fixes for security, core language features, server, and other areas
(20 total bug fixes)
• CF Builder 2016 Update 1 released concurrently
• Primarily addressed issues related to Security Code Analyzer and its performance
• …
@carehart charlie@carehart.org
Update 1 (cont.)
• Update 1 resources
• Overview
• helpx.adobe.com/coldfusion/kb/coldfusion-2016-update-1.html
• helpx.adobe.com/coldfusion/kb/bugs-fixed-coldfusion-builder-2016-update-1.html
• Release notes (covers all updates)
• helpx.adobe.com/content/help/en/coldfusion/release-note/coldfusion-2016-updates-release-
notes.html
• Bug fixes and known issues
• helpx.adobe.com/coldfusion/kb/bugs-fixed-coldfusion-2016-update-1.html
• Blog posts
• blogs.coldfusion.com/post.cfm/updates-for-coldfusion-2016-coldfusion-11-and-coldfusion-10-
released
• blogs.coldfusion.com/post.cfm/coldfusion-builder-2016-update-1-released
@carehart charlie@carehart.org
Update 2
• Update 2 was released in June 2016
• Allowed specifying the type of data when serializing structs or arrays
• New member functions:
• ArrayDeleteNoCase
• BooleanFormat
• YesNoFormat
• Introduction of CK Editor/deprecation of FCKEditor
• In cftextarea, ajax form controls
• Can configure SSL in API Manager: access API Mgr portals over HTTPS
• …
@carehart charlie@carehart.org
Update 2 (cont.)
• Change related to new NTLMDomain attribute
• helpx.adobe.com/coldfusion/2016/ntlm-support.html
• OpenSSL libraries upgraded to version 1.0.2h
• Addressed vulnerability mentioned in the security bulletin APSB16-22
• Several important bug fixes (77, total bug fixes)
• Security, core language features, server, and other areas
• CF Builder 2016 Update 2 released concurrently
• Standalone edition upgraded underlying Eclipse from Kepler to Mars
• Important updates to Security Analyzer, updated FTP/SFTP support in import/export
project, several bug fixes (especially performance), PhoneGap upgraded to 5.2
@carehart charlie@carehart.org
Update 2 (cont.)
• Update 2 resources
• Overview
• helpx.adobe.com/coldfusion/kb/coldfusion-2016-update-2.html
• helpx.adobe.com/coldfusion/kb/coldfusion-builder-2016-update-2.html
• Release notes (covers all updates)
• helpx.adobe.com/content/help/en/coldfusion/release-note/coldfusion-2016-updates-release-
notes.html
• Bug fixes and known issues
• helpx.adobe.com/coldfusion/kb/bugs-fixed-coldfusion-2016-update-2.html
• Blog post
• blogs.coldfusion.com/post.cfm/updates-for-coldfusion-2016-coldfusion-builder-2016-coldfusion-11-
and-coldfusion-10-released
@carehart charlie@carehart.org
Update 3
• Update 3 released in Oct 2016
• Added support for Websphere 9, IIS 10.1 (in Windows 10)
• But as for support for Windows 2016, due to be released late Sept 2016, that will follow in time
• Support for sorted structs
• New arg to StructNew(), including callback feature
• New StructToSorted()
• New argument in ArraySum(): ignoreUndefined
• If true, ignores null or "" values when adding array elements
• New language attribute for CFHTMLTOPDF, defaults to “English”
• CFHTMLTOPDFITEM tag has new evalAtPrint attribute
• If true, content of CFHTMLTOPDFITEM evaluated AFTER PDF is generated, page numbers available
• Allows conditional code inside CFHTMLTOPDFITEM
• …
@carehart charlie@carehart.org
Update 3 (cont.)
• Also
• New domain/user/password support in CFOBJECT, CreateObject()
• New useSecureJSONPrefix arg for SerializeJSON()
• New QueryGetResult(), returns metadata about queries
• Several date-related changes in several functions, new IsDateObject()
• Also 180 bug fixes (100+ as reported by users)
• CF Builder 2016 Update 3 released concurrently
• PhoneGap updated to 6.0
• 25 bug fixes, including for an important security fix and Security Analyzer
• Enhancements to editor
@carehart charlie@carehart.org
Update 3 (cont.)
• Special note for API Manager users
• If you’ve installed Update 3 build 300357, Adobe recommend you uninstall it
• Roll back to Update 1 (build 298513)
• Then apply Update 3 build 300466
@carehart charlie@carehart.org
Update 3 (cont.)
• Update 3 resources
• Overview
• helpx.adobe.com/coldfusion/kb/coldfusion-2016-update-3.html
• helpx.adobe.com/coldfusion/kb/coldfusion-builder-2016-update-3.html
• Release notes (covers all updates)
• helpx.adobe.com/content/help/en/coldfusion/release-note/coldfusion-2016-updates-release-
notes.html
• Bug fixes and known issues
• helpx.adobe.com/coldfusion/kb/bugs-fixed-coldfusion-2016-update-3.html
• Blog post
• blogs.coldfusion.com/post.cfm/updates-for-coldfusion-2016-and-coldfusion-builder-2016-is-
available-now
@carehart charlie@carehart.org
Single page listing all CF2016 updates
• Lists updates, links to technotes, and offers jar download links!
• helpx.adobe.com/coldfusion/kb/coldfusion-2016-updates.html
• Also available for CF 11 and 10:
• helpx.adobe.com/coldfusion/kb/coldfusion-11-updates.html
• helpx.adobe.com/coldfusion/kb/coldfusion-10-updates.html
@carehart charlie@carehart.org
Traps/gotchas
• Can no longer access CF11 installers on Adobe site
• Look to cfmlrepo.com (community-run site)
• Can’t even license CF11 anymore
• Must buy CF2016 and request “backward license” to CF11
• Annoying: while there are PDFs of CF docs…
(helpx.adobe.com/coldfusion/home.htm)
• They generally show only one level within a section, then offer a link to online page for
more detail (sometimes confusing)
• …
@carehart charlie@carehart.org
Traps/gotchas (cont.)
• Mentioned previously
• Security Analyzer works only with CF Enterprise (or trial)
• Also requires CF installed in “Developer mode”, with RDS enabled
• API Manager included in CF download, whether you can or want to install it
• New redis-based session vars support only CFML sessions, not j2ee sessions
• CF Installer web server config does not yet offer tuning options
• See other (few) “known issues” listed in original release and update docs
• Be sure to apply updates before believing web reports of “known bugs”. May
since have been fixed!
@carehart charlie@carehart.org
Resources for more on CF2016
• In addition to many mentioned so far (do see them also)…
• adobe.com/devnet/coldfusion/articles/whats-new-cf-2016.html
• helpx.adobe.com/coldfusion/whats-new.html
• helpx.adobe.com/coldfusion/2016/topics/features.html
• helpx.adobe.com/coldfusion/release-note/coldfusion-2016-release-
notes.html
• Video on CF2016 (8-minute overview): youtube.com/watch?v=Bm6dJjNSPNg
• helpx.adobe.com/coldfusion/home.htm (CF2016 docs)
• …
@carehart charlie@carehart.org
Resources for more on CF2016 (cont.)
• adobe.com/products/coldfusion-standard/features.html
• helpx.adobe.com/pdf/Cf2016-standard-datasheet.pdf
• helpx.adobe.com/pdf/Cf2016-standard-comparison.pdf (compares to
previous releases)
• adobe.com/products/coldfusion-enterprise/features.html
• helpx.adobe.com/pdf/Cf2016-enterprise-datasheet.pdf
• helpx.adobe.com/pdf/Cf2016-enterprise-comparison.pdf (compares to
previous releases)
• …
@carehart charlie@carehart.org
Resources for more on CF2016 (cont.)
• helpx.adobe.com/coldfusion/standard/system-requirements.html
• helpx.adobe.com/coldfusion/enterprise/system-requirements.html
• helpx.adobe.com/pdf/coldfusion2016-support-matrix.pdf (web servers, OS’s,
DB’s supported)
• adobe.com/products/coldfusion-standard/buying-guide.html
• adobe.com/products/coldfusion-enterprise/buying-guide.html
• …
@carehart charlie@carehart.org
Resources for More on CF2016 (cont.)
• Whitepapers
• CF2016 Security audit report:
• blogs.coldfusion.com/post.cfm/coldfusion-2016-release-security-audit-report
• CF2016 Performance report:
• wwwimages.adobe.com/content/dam/acom/en/products/coldfusion/pdfs/cf2016/CF2016_Perform
ance.pdf
• CF2016 lockdown guide:
• wwwimages.adobe.com/content/dam/acom/en/products/coldfusion/pdfs/coldfusion-2016-
lockdown-guide.pdf
• CF2016 migration guide:
• wwwimages.adobe.com/content/dam/acom/en/products/coldfusion/pdfs/cf2016/cf2016-
migration-guide.pdf
@carehart charlie@carehart.org
Some resource gems for CF2016 and earlier
• Adobe CF team blog: blogs.coldfusion.com
• Anit (CF team member) blog: coldfusionsolution.wordpress.com
• Akbarsait’s CF2016 meta resource guide:
akbarsait.com/blog/index.cfm/2016/2/21/ColdFusion-2016-Tutorials-and-
Articles-by-ColdFusion-Community/
• My sites: cf411.com and cf911.com (and carehart.org)
• I often link to the resources of others in the community, past/present
• I can help you with any CF server troubleshooting/admin challenges
@carehart
charlie@carehart.org
Summary
• So, how many changes did we cover? Any guesses?
• I counted about 80! (not including bug fixes)
• As is often the case, most can name only a few
• Hope you may be more motivated—and informed—to consider CF2016
• To understand if and how it may work for you
• Or at least where things stand regarding it as of now
• Thanks, and don’t forget to fill out your evals

More Related Content

PDF
Keep Applications Online
PDF
PDF
Locking Down CF Servers
PPTX
Load Balancing, Failover and Scalability with ColdFusion
PPTX
Workflows and Digital Signatures
PDF
Instant ColdFusion with Vagrant
PDF
Instant ColdFusion with Vagrant
PDF
ColdFusion builder plugins
Keep Applications Online
Locking Down CF Servers
Load Balancing, Failover and Scalability with ColdFusion
Workflows and Digital Signatures
Instant ColdFusion with Vagrant
Instant ColdFusion with Vagrant
ColdFusion builder plugins

What's hot (20)

PDF
Bring api manager into your stack
PDF
Securing applications
PDF
In The Trenches With Tomster, Upgrading Ember.js & Ember Data
PDF
Cfml features modern_coding
PDF
Realtime with websockets
PDF
Super Fast Application development with Mura CMS
PDF
Developing High Performance and Scalable ColdFusion Application Using Terraco...
PDF
RESTFul Tools For Lazy Experts - CFSummit 2016
PPTX
10 Reasons ColdFusion PDFs should rule the world
PPT
Restful API's with ColdFusion
PDF
Become a Security Rockstar with ColdFusion 2016
PDF
Migration to ColdFusion 11 – making it seamless and easy anit
PDF
Hidden Gems in ColdFusion 2016
PPTX
Mobile Applications Made Easy with ColdFusion 11
PDF
Expand Your ColdFusion App Power with AWS
PPTX
Intro to Coldfusion
PDF
Dev objective2015 lets git together
PDF
Serverless Media Workflow
PDF
Locking Down CF Servers
PDF
Command Box ColdFusion Package Manager, Automation
Bring api manager into your stack
Securing applications
In The Trenches With Tomster, Upgrading Ember.js & Ember Data
Cfml features modern_coding
Realtime with websockets
Super Fast Application development with Mura CMS
Developing High Performance and Scalable ColdFusion Application Using Terraco...
RESTFul Tools For Lazy Experts - CFSummit 2016
10 Reasons ColdFusion PDFs should rule the world
Restful API's with ColdFusion
Become a Security Rockstar with ColdFusion 2016
Migration to ColdFusion 11 – making it seamless and easy anit
Hidden Gems in ColdFusion 2016
Mobile Applications Made Easy with ColdFusion 11
Expand Your ColdFusion App Power with AWS
Intro to Coldfusion
Dev objective2015 lets git together
Serverless Media Workflow
Locking Down CF Servers
Command Box ColdFusion Package Manager, Automation
Ad

Similar to Hidden gems in cf2016 (20)

PDF
Whats new in CF10, 11, 2016
PDF
Hidden Gems in ColdFusion 11
PDF
ColdFusion 10
PPTX
The app server, web server and everything in between
PPTX
Upgrade to cf 2016 1
PDF
Where is cold fusion headed
PPTX
AUG Belgium - Introduction to ColdFusion 9
PDF
Solving Frequent ColdFusion Server Problems in New and Better Ways
PDF
ColdFusion 11 New Features
PPTX
Keeping Current with ColdFusion - Adobe Max 2011
PDF
Secure your Secrets and Settings in ColdFusion
PDF
Monitoring CF What are my options? Why Should I?
PPT
"Running CF in a Shared Hosting Environment"
PPTX
ColdFusion 11 Overview - CFSummit 2013
PPTX
2014 cf summit_clustering
PDF
Bring Order to the Chaos: Take the MVC Plunge
PDF
ColdFusion Summit 2016 - Bringing Order to the Chaos: Take the MVC Plunge
PDF
Cf camp 2019 cfconfig - a new way to manage your cold-fusion engine config
PPTX
CFSummit ColdFusion 2015 Load Balancing, Failover and Scalability
PPT
ColdFusion MX 7 Server Administration
Whats new in CF10, 11, 2016
Hidden Gems in ColdFusion 11
ColdFusion 10
The app server, web server and everything in between
Upgrade to cf 2016 1
Where is cold fusion headed
AUG Belgium - Introduction to ColdFusion 9
Solving Frequent ColdFusion Server Problems in New and Better Ways
ColdFusion 11 New Features
Keeping Current with ColdFusion - Adobe Max 2011
Secure your Secrets and Settings in ColdFusion
Monitoring CF What are my options? Why Should I?
"Running CF in a Shared Hosting Environment"
ColdFusion 11 Overview - CFSummit 2013
2014 cf summit_clustering
Bring Order to the Chaos: Take the MVC Plunge
ColdFusion Summit 2016 - Bringing Order to the Chaos: Take the MVC Plunge
Cf camp 2019 cfconfig - a new way to manage your cold-fusion engine config
CFSummit ColdFusion 2015 Load Balancing, Failover and Scalability
ColdFusion MX 7 Server Administration
Ad

More from ColdFusionConference (20)

PDF
Api manager preconference
PDF
PDF
Building better SQL Server Databases
PDF
API Economy, Realizing the Business Value of APIs
PDF
Don't just pdf, Smart PDF
PDF
Crafting ColdFusion Applications like an Architect
PDF
Security And Access Control For APIS using CF API Manager
PDF
Monetizing Business Models: ColdFusion and APIS
PDF
ColdFusion in Transit action
PDF
Developer Insights for Application Upgrade to ColdFusion 2016
PDF
ColdFusion Keynote: Building the Agile Web Since 1995
PPT
Restful services with ColdFusion
PDF
Build your own secure and real-time dashboard for mobile and web
PDF
Why Everyone else writes bad code
PDF
Testing automaton
PDF
Rest ful tools for lazy experts
PDF
Herding cats managing ColdFusion servers with commandbox
PDF
Everyones invited! Meet accesibility requirements with ColdFusion
PDF
Getting started with mobile application development
PDF
Dependency Injection
Api manager preconference
Building better SQL Server Databases
API Economy, Realizing the Business Value of APIs
Don't just pdf, Smart PDF
Crafting ColdFusion Applications like an Architect
Security And Access Control For APIS using CF API Manager
Monetizing Business Models: ColdFusion and APIS
ColdFusion in Transit action
Developer Insights for Application Upgrade to ColdFusion 2016
ColdFusion Keynote: Building the Agile Web Since 1995
Restful services with ColdFusion
Build your own secure and real-time dashboard for mobile and web
Why Everyone else writes bad code
Testing automaton
Rest ful tools for lazy experts
Herding cats managing ColdFusion servers with commandbox
Everyones invited! Meet accesibility requirements with ColdFusion
Getting started with mobile application development
Dependency Injection

Recently uploaded (20)

PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PDF
cuic standard and advanced reporting.pdf
PPTX
Cloud computing and distributed systems.
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Empathic Computing: Creating Shared Understanding
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Encapsulation theory and applications.pdf
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
DOCX
The AUB Centre for AI in Media Proposal.docx
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
Agricultural_Statistics_at_a_Glance_2022_0.pdf
CIFDAQ's Market Insight: SEC Turns Pro Crypto
cuic standard and advanced reporting.pdf
Cloud computing and distributed systems.
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Digital-Transformation-Roadmap-for-Companies.pptx
Empathic Computing: Creating Shared Understanding
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Review of recent advances in non-invasive hemoglobin estimation
Encapsulation theory and applications.pdf
Unlocking AI with Model Context Protocol (MCP)
The Rise and Fall of 3GPP – Time for a Sabbatical?
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Diabetes mellitus diagnosis method based random forest with bat algorithm
The AUB Centre for AI in Media Proposal.docx

Hidden gems in cf2016

  • 1. Hidden Gems in CF2016 Charlie Arehart, Independent Consultant CF Server Troubleshooter charlie@carehart.org @carehart (Tw, Fb, Li) Updated Oct 10, 2016
  • 2. @carehart charlie@carehart.org Topics • Major features of CF2016 (quick overview) • Hidden gems in many areas • Installation, configuration, administration, web server config • New/changed features, new language constructs, new member functions • New/changed CFML functions, tags • As well as other topics: • Updates to underlying libraries’ version numbers • Deprecated/obsoleted features • What’s new in Standard vs Enterprise • Pricing, licensing, end of life support • And lots more • Slides will be offered by Adobe, and at carehart.org/presentations
  • 3. @carehart charlie@carehart.org About me • I’ve been a speaker at nearly every CF conference, and all 4 CF Summits • Focus on CF server troubleshooting, as an independent consultant • Assist organizations of all sizes, experience levels • Work remotely 99% of the time, safe, secure, easy (shared desktop) • Focus is not just solving problems but educating you • Love to share info, with my clients and the community • Active blogger • Contributor to/creator of many CF community resources • Online CFMeetup, CF411.com, UGTV, cf911.com, and more
  • 4. @carehart charlie@carehart.org Some intro questions for you • How many have started using CF2016 in prod? In dev? • Have at least seen resources about it? • Not surprised if few: people often wait • Anyone “waiting for first point release”? • Have been 3 updates already • How many likely won't use it until next release comes out (CF2018, or whatever)? • I do these talks, not just for those making the move now, soon, or have already • But also those who may see it in future  • Anyone know when I started doing hidden gems in CF? • 4.0.1 in 1999 • So, let’s look first at the major new features (only brief overview)
  • 5. @carehart charlie@carehart.org Major features of CF2016 • API Manager • Security Code Analyzer • PDF Improvements (redaction, sanitization, more) • CFML language improvements (tags, functions, and more) • Security improvements (especially more NTLM support) • Performance improvements • More about some of these later • Now, on to the more “hidden” gems!
  • 6. @carehart charlie@carehart.org Installation gems • Removal of Akamai Download Manager! • Previously, when downloading CF installer from Adobe, we were forced to use this • Now just generally a better experience (I suppose some may miss it) • carehart.org/blog/client/index.cfm/2016/2/19/cf2016_download_no_longer_requires_Akamai_DL_mgr • Unfortunately, CF install has gotten huge because of API Manager • Especially tragic if you’ll be using CF Standard: by license can’t use API Mgr • This is “to be fixed” (bugbase.adobe.com/index.cfm?event=bug&id=4155910) • During installation, you’re asked whether/how to install API Manager • And whether to implement it within JVM or as own service
  • 7. @carehart charlie@carehart.org Configuration gems • CFscripts folder now moved to its own directory, not in CFIDE! • Great move for security, administration • New folder called cf_scripts, found in the cfusion wwwroot • Pointed to as a virtual directory in IIS, Apache, etc. • Related to this… • CF Admin now available only via internal web server by default • This is another very good thing, for security • You REALLY should not try to override this, but I discuss options in my blog post below • Let’s move on to gems WITHIN the CF Admin…
  • 8. @carehart charlie@carehart.org Administration gems • CF Admin option to store CF sessions in redis (cache) rather than heap memory • helpx.adobe.com/content/help/en/coldfusion/2016/external-session-storage.html • Gotcha: works only with CF sessions, not “J2EE sessions” • Those using “j2ee sessions” could modify Tomcat (underlying CF) on their own • blog.svajlenka.com/post/125784752315/redis-and-coldfusion-because-why-not • New admin setting to disable “REST discovery” by API Manager • See Settings page, last setting • For more on these admin and config changes, see • carehart.org/blog/client/index.cfm/2016/2/23/cf2016_CF_Admin_changes
  • 9. @carehart charlie@carehart.org Web server config tool (wsconfig) gems • Many new improvements related to the web server config tool • Fixed: no longer any need to manually reconfigure connectors after update! • CF Update mechanism handles this for us automatically now • WSConfig offers new “upgrade” option, if ever needed • Fixed: for those using multiple instances (in CF Enterprise/Trial/Dev) • Wsconfig UI finally offers option to pick instance name to connect to (like <= CF9)! • In CF10/11, we had to start wsconfig in instance’s runtimebin to connect site to it • Fixed: if you open wsconfig UI while already open, you no longer get blanks • You get warning that you may already have it open • …
  • 10. @carehart charlie@carehart.org Web server config tool (wsconfig) gems (cont.) • WSConfig UI now tracks number of sites in web server configured or not • Now offers both an "all" option (for all sites) and an "all - individually“ • Which instead creates a new connector for each site (using the selected settings) • Appears only if you do have more than 1 web site in web server • Wsconfig UI now offers option to all 3 connector tuning args • Found under “advanced settings” • Previously only offered connection_pool_timeout, max_reuse_connection • Now offers allows configuration of connection_pool_size also • Sadly, installer’s web config step does not offer these 3 configurable options • Due to be fixed in a new installer: bugbase.adobe.com/index.cfm?event=bug&id=4155913 • …
  • 11. @carehart charlie@carehart.org Web server config tool (wsconfig) gems (cont.) • Connector now defaults to timeout of 60 (seconds); was 0 (infinite) before • For IIS: better connector tuning settings for 2-site setup by default • Conneciton_pool_size (500), max_reuse_connections (250): • Sadly, for now, this is not so for Apache configs, but is due to be fixed in upcoming update • CF2016 also now includes maxthreads="500" and connectionTimeout="60000" in server.xml, by default • “Advanced Settings" now also offers "skip iis custom errors" option • Disabled by default. Useful for some scenarios • Needed to add manually to isapi_redirect.properties file in CF10/11 • Nice to see all these improvements to the wsconfig, which has been a source of heartburn in CF10 and 11. Let’s move on to other gems…
  • 12. @carehart charlie@carehart.org New feature gems • New command-line interface (CLI) • Allows cmd line CFML execution by pointing to a cfm file, via cf.bat • As in, cf.bat some_file.cfm • Not a real interactive shell (with tab completion, etc.) • No repl, no package manager, no extensibility as with CommandBox project • Still, is useful for cron jobs/windows scheduler, etc. to run cfml pages • Quite a few options and capabilities • For more, see • helpx.adobe.com/coldfusion/2016/command-line-interface.html
  • 13. @carehart charlie@carehart.org Changed feature gems • Many enhancements to PDF support • Mentioned before sanitization, redaction, but also: • Export/import of comments, metadata • Archiving, including newer PDF/A-2b and -3b standards • Support for attachments, stamps • For more, see substantial article with examples, and code download • adobe.com/devnet/coldfusion/articles/pdf-enhancements.html • Not mentioned on that page: • CFPDF adds new encrypt attribute values: AES_256R5 and AES_256R6 • …
  • 14. @carehart charlie@carehart.org Changed feature gems (cont.) • New argument for structnew, ordered, maintains insertion order • Looping over such a struct will also return in insertion order • All other forms of creating new structs keep same order as before • Also support for creating empty ordered struct • helpx.adobe.com/coldfusion/2016/language- enhancements.html#CollectionsupportOrdered • …
  • 15. @carehart charlie@carehart.org Changed feature gems (cont.) • New application-level controls • searchImplicitScopes, passArrayByReference • Each can change long-standing behavior for these operations, vastly improving performance (5x and 25x, respectively) • Set as either cfapplication attributes or via this scope in application.cfc • See: • adobe.com/devnet/coldfusion/articles/language-enhancements-cf-2016.html • helpx.adobe.com/coldfusion/2016/language-enhancements.html#Scopesearch • helpx.adobe.com/coldfusion/2016/language-enhancements.html#Arraysbr • …
  • 16. @carehart charlie@carehart.org Changed feature gems (cont.) • CF Admin “enable whitespace management” option now suppresses whitespace at compile time as well as runtime • Swagger doc generation (for restful api's and API Manager) • helpx.adobe.com/coldfusion/2016/swagger-document-generation.html • Now on to language enhancements…
  • 17. @carehart charlie@carehart.org New language constructs • Safe navigation operator (?.) • Used when accessing members of a struct or values of an object • Used instead of ".", to prevent exception if not defined, null, etc. • Simplified code, versus nested isdefined tests • Examples: • <cfoutput>#employee?.firstname#</cfoutput> • Will output empty string if firstname does not exist/null • Writeoutput(employee?.name?.firstname?.trim()); • Will output empty string if all 3 are undefined/null • …
  • 18. @carehart charlie@carehart.org New language constructs (cont.) • For more info and examples (including setting variables with safe navigation): • helpx.adobe.com/coldfusion/2016/language-enhancements.html#Safenavigation • helpx.adobe.com/coldfusion/developing-applications/the-cfml-programming- language/using-coldfusion-variables/using-periods-in-variable- references.html#Usingthesafenavigationoperator • blog.adamcameron.me/2015/10/coldfusion-12-it-goes-to-show-you.html • adobe.com/devnet/coldfusion/articles/language-enhancements-cf-2016.html
  • 19. @carehart charlie@carehart.org New member functions • Many new member functions (expanding on the new feature in CF11) • New array member functions: arrayDeleteNoCase • New string member functions: • encrypt, paragraphFormat, replaceListNoCase • decodeFromURL, decodeForHTML, encodeForHTML, encodeForHTMLAttribute • encodeForXML, encodeForXMLAttribute, encodeForXPath • encodeForCSS, encodeForJavaScript, encodeForURL • getSafeHTML, isSafeHTML • urlDecode, urlEncodedFormat • …
  • 20. @carehart charlie@carehart.org New member functions (cont.) • New datetime member functions: • LSDateFormat • setSecond, setMinute, setHour • setDay, setMonth, setYear • New query member functions: • queryEach, queryKeyExists, queryFilter, queryMap, queryReduce, querySort, valueArray • New display and formatting member functions: • booleanFormat, yesNoFormat • More info on member functions: • helpx.adobe.com/coldfusion/developing-applications/building-blocks-of-coldfusion- applications/using-the-member-functions.html
  • 21. @carehart charlie@carehart.org New/changed CFML functions • New CFML functions • arrayContainsNoCase, arrayDeleteNoCase, valueArray • querySort, queryEach, queryFilter, queryKeyExists, queryMap, queryReduce • booleanFormat, floor, isPDFArchive, replaceListNoCase, spreadsheetGetColumnCount • Changed functions: • arraynew, cacheRemove, dateFormat, timeFormat, createDateTime • replace, replaceList, spreadsheetAddRows, writeoutput • More info, links to details on new/changed CFML functions: • helpx.adobe.com/coldfusion/2016/other-enhancements.html • helpx.adobe.com/coldfusion/2016/language-enhancements.html#ArrayFindNoCase
  • 22. @carehart charlie@carehart.org Changed CFML tags • Changed CFML tags… • CFLOOP • New item attribute, for use with loops over list, array, or file • Named item var will hold element looped over • Named index var (optional) will hold index value, if any • …
  • 23. @carehart charlie@carehart.org Changed CFML tags (cont.) • CFMAILPARAM • New, optional filename attribute, to give different name for file attached to email when using cfmailparam file attribute • File points to name as on server, filename points to name as shown in email • CFOUTPUT • New encodefor attribute: names encoding type to be used for strings within it tags, if not otherwise surrounded by an encodefor function (types: html, htmlattribute, url, javascript, css, xml, and so on) • …
  • 24. @carehart charlie@carehart.org Changed CFML tags (cont.) • CFSEARCH (Solr searching) • New Type attribute values (for parser): Standard, Dismax • Old verity-based types no longer supported • simple, explicit, internet, internet_basic, natural • CFCOLLECTION • path attribute is now ignored • All collections are created in the collections directory at the location specified in Solr_Home field in the ColdFusion admin • CFSOCIALPLUGIN • See comments in [ColdFusion2016]cfusionCustomTagssocialplugin.cfm • …
  • 25. @carehart charlie@carehart.org Changed CFML tags (cont.) • More info on changed tags, with links to details: • helpx.adobe.com/coldfusion/2016/other-enhancements.htm • helpx.adobe.com/coldfusion/2016/language-enhancements.html • Phew, so that’s it for language, feature, admin and config gems • Think we’re done? • Not yet!
  • 26. @carehart charlie@carehart.org Other topics • We’re more than half-way home. Areas remaining… • Deprecated features • Updates to underlying libraries’ versions numbers • What’s new in Standard vs Enterprise • Pricing • Updates since initial release • And more!
  • 27. @carehart charlie@carehart.org Deprecated features • Deprecated features (nothing obsoleted) • These may (will likely) be dropped/obsoleted in later releases, but are still supported • Language features: • CFCHART format=“flash” • CFFILEUPLOAD Flash component • CFMEDIAPLAYER • CFTABLE • UI Tags based on YUI toolkit - CFTREE, CFCALENDAR, CFAUTOSUGGEST, CFMENU • These uniquely are also “no longer supported”/updated • Report Builder
  • 28. @carehart charlie@carehart.org Deprecated features (Cont.) • Certain admin features deprecated • Event gateways - Jabber, Flash Media server • Portlets • System Probes • Server Manager • Server Monitor (was listed as deprecated, but will not be) • For more on deprecation, dropping of support for some things • helpx.adobe.com/coldfusion/deprecated-features.html • carehart.org/blog/client/index.cfm/2016/2/22/cf2016_deprecated_features • Now, how about the status/versions of CF’s underlying Java libraries?
  • 29. @carehart charlie@carehart.org Updates to underlying libraries’ versions numbers • JDBC Drivers 5.1.4.000138 (the built-in Merant DB drivers, such as for SQL Server, Oracle, and even MySQL. CF no longer includes the MySQL-provided driver, but you can add it yourself) • jQuery 1.6.1 and jQuery UI 1.8.16 (JS library which underlies various UI tags and Admin interface features) • Lucene 5.2.1 (underlies Solr, embedded search engine in CF) • OpenSSL 1.0.2h (as of CF 2016 Update 2) • POI 3.12 (underlies MS Office Integration features) • PostgreSQL 9.4-1201 (db driver) • Quartz 2.2.1 (underlies CF Schedule tasks) • Servlets 3.1 (underlies CF/Tomcat processing) • Solr 5.2.1 (the embedded search engine, used by CFSEARCH/CFINDEX/CFCOLLECTION, etc.) • Tomcat 8.0.27.0, 8.0.32 as of Update 1 (the application server which underlies CF, when deployed in traditional "Server" configuration) • YUI 2.3.0 (JS library which underlies various UI tags) • Antisamy 1.5.3 (OWASP security library) • Axis 2 1.7.0 (web services library, and note that's "Axis 2" v 1.7.0, not "Axis") • Derby 10.11 (embedded DB) • Ehcache 2.10.0 (caching library) • Esapi 2.1.0 (OWASP Enterprise Security API) • Ext JS 4.1 (JS library which underlies various UI tags) • Ewsapi 1.1.5 (MS Exchange API) • Hibernate 4.3.10 (ORM library) • Httpclient 4.4.1 (underlies CFHTTP and more) • Jetty 9.3.6v20151106 (underlies Solr, HTMLTOPDF, and more) • Java 1.8.0_72 (the JVM which underlies all of CF) See: carehart.org/blog/client/index.cfm/2016/2/17/what_are_cf2016_embedded_library_version_numbers
  • 30. @carehart charlie@carehart.org What’s new in Standard vs Enterprise • Referring here only to what’s new/changed in CF2016 and in Enterprise only • API Manager • Security Analyzer • These do not work with CF 2016 Standard, nor even Developer edition! • They do work with the CF Trial edition • And you can take an enterprise license key and use it on a “dev” machine, of course • More: • carehart.org/blog/client/index.cfm/2016/2/25/cf2016_enterprise-only_features
  • 31. @carehart charlie@carehart.org Pricing • For more, including how I found this info, see carehart.org/blog/client/index.cfm/2016/2/24/pricing_for_coldfusion_2016
  • 32. @carehart charlie@carehart.org Licensing/EULA • Some debate/confusion initially about aspects of new EULA • See it for yourself • wwwimages.adobe.com/content/dam/acom/en/legal/licenses-terms/pdf/ColdFusion- 2016.pdf • Reach out to CF Product Mgr, Rakshith Naren, with any questions • rakshith@adobe.com
  • 33. @carehart charlie@carehart.org End of life/End of support • CF10 support not terminating at end of this year • As happened with CF9 in 2014 when 10 came out • Instead, ends May 2017 (extended support, May 2019) • CF11 support ends April 2019 (“extended support” April 2021) • CF9 “extended support” ends 12/31/16 • More: adobe.com/support/products/enterprise/eol/eol_matrix.html#63
  • 34. @carehart charlie@carehart.org Updates since release of CF2016 • There have been 3 updates to CF2016 since release (as of this date) • Updates can be easily applied in CF Admin, “Server Update” page • Updates are cumulative, need only apply latest • If you have troubles applying CF updates (in 2016, or 10/11), see my blog post: • carehart.org/blog/client/index.cfm/2016/9/6/solve_common_problems_with_CF_updates_in_10_and_above • As for updating CFBuilder, should be prompted about available update • But you can implement it manually • helpx.adobe.com/coldfusion/kb/coldfusion-builder-2016-update-2.html#Installation • There’s sometimes a fair bit that’s included in CF updates • Bug fixes, security improvements, and sometimes even minor new/changed features • Let’s take a look at them
  • 35. @carehart charlie@carehart.org Update 1 • Update 1 was released in May 2016, 3 months after initial release • Tomcat was updated to 8.0.32 • Various updates to Security Analyzer • Several important bug fixes for security, core language features, server, and other areas (20 total bug fixes) • CF Builder 2016 Update 1 released concurrently • Primarily addressed issues related to Security Code Analyzer and its performance • …
  • 36. @carehart charlie@carehart.org Update 1 (cont.) • Update 1 resources • Overview • helpx.adobe.com/coldfusion/kb/coldfusion-2016-update-1.html • helpx.adobe.com/coldfusion/kb/bugs-fixed-coldfusion-builder-2016-update-1.html • Release notes (covers all updates) • helpx.adobe.com/content/help/en/coldfusion/release-note/coldfusion-2016-updates-release- notes.html • Bug fixes and known issues • helpx.adobe.com/coldfusion/kb/bugs-fixed-coldfusion-2016-update-1.html • Blog posts • blogs.coldfusion.com/post.cfm/updates-for-coldfusion-2016-coldfusion-11-and-coldfusion-10- released • blogs.coldfusion.com/post.cfm/coldfusion-builder-2016-update-1-released
  • 37. @carehart charlie@carehart.org Update 2 • Update 2 was released in June 2016 • Allowed specifying the type of data when serializing structs or arrays • New member functions: • ArrayDeleteNoCase • BooleanFormat • YesNoFormat • Introduction of CK Editor/deprecation of FCKEditor • In cftextarea, ajax form controls • Can configure SSL in API Manager: access API Mgr portals over HTTPS • …
  • 38. @carehart charlie@carehart.org Update 2 (cont.) • Change related to new NTLMDomain attribute • helpx.adobe.com/coldfusion/2016/ntlm-support.html • OpenSSL libraries upgraded to version 1.0.2h • Addressed vulnerability mentioned in the security bulletin APSB16-22 • Several important bug fixes (77, total bug fixes) • Security, core language features, server, and other areas • CF Builder 2016 Update 2 released concurrently • Standalone edition upgraded underlying Eclipse from Kepler to Mars • Important updates to Security Analyzer, updated FTP/SFTP support in import/export project, several bug fixes (especially performance), PhoneGap upgraded to 5.2
  • 39. @carehart charlie@carehart.org Update 2 (cont.) • Update 2 resources • Overview • helpx.adobe.com/coldfusion/kb/coldfusion-2016-update-2.html • helpx.adobe.com/coldfusion/kb/coldfusion-builder-2016-update-2.html • Release notes (covers all updates) • helpx.adobe.com/content/help/en/coldfusion/release-note/coldfusion-2016-updates-release- notes.html • Bug fixes and known issues • helpx.adobe.com/coldfusion/kb/bugs-fixed-coldfusion-2016-update-2.html • Blog post • blogs.coldfusion.com/post.cfm/updates-for-coldfusion-2016-coldfusion-builder-2016-coldfusion-11- and-coldfusion-10-released
  • 40. @carehart charlie@carehart.org Update 3 • Update 3 released in Oct 2016 • Added support for Websphere 9, IIS 10.1 (in Windows 10) • But as for support for Windows 2016, due to be released late Sept 2016, that will follow in time • Support for sorted structs • New arg to StructNew(), including callback feature • New StructToSorted() • New argument in ArraySum(): ignoreUndefined • If true, ignores null or "" values when adding array elements • New language attribute for CFHTMLTOPDF, defaults to “English” • CFHTMLTOPDFITEM tag has new evalAtPrint attribute • If true, content of CFHTMLTOPDFITEM evaluated AFTER PDF is generated, page numbers available • Allows conditional code inside CFHTMLTOPDFITEM • …
  • 41. @carehart charlie@carehart.org Update 3 (cont.) • Also • New domain/user/password support in CFOBJECT, CreateObject() • New useSecureJSONPrefix arg for SerializeJSON() • New QueryGetResult(), returns metadata about queries • Several date-related changes in several functions, new IsDateObject() • Also 180 bug fixes (100+ as reported by users) • CF Builder 2016 Update 3 released concurrently • PhoneGap updated to 6.0 • 25 bug fixes, including for an important security fix and Security Analyzer • Enhancements to editor
  • 42. @carehart charlie@carehart.org Update 3 (cont.) • Special note for API Manager users • If you’ve installed Update 3 build 300357, Adobe recommend you uninstall it • Roll back to Update 1 (build 298513) • Then apply Update 3 build 300466
  • 43. @carehart charlie@carehart.org Update 3 (cont.) • Update 3 resources • Overview • helpx.adobe.com/coldfusion/kb/coldfusion-2016-update-3.html • helpx.adobe.com/coldfusion/kb/coldfusion-builder-2016-update-3.html • Release notes (covers all updates) • helpx.adobe.com/content/help/en/coldfusion/release-note/coldfusion-2016-updates-release- notes.html • Bug fixes and known issues • helpx.adobe.com/coldfusion/kb/bugs-fixed-coldfusion-2016-update-3.html • Blog post • blogs.coldfusion.com/post.cfm/updates-for-coldfusion-2016-and-coldfusion-builder-2016-is- available-now
  • 44. @carehart charlie@carehart.org Single page listing all CF2016 updates • Lists updates, links to technotes, and offers jar download links! • helpx.adobe.com/coldfusion/kb/coldfusion-2016-updates.html • Also available for CF 11 and 10: • helpx.adobe.com/coldfusion/kb/coldfusion-11-updates.html • helpx.adobe.com/coldfusion/kb/coldfusion-10-updates.html
  • 45. @carehart charlie@carehart.org Traps/gotchas • Can no longer access CF11 installers on Adobe site • Look to cfmlrepo.com (community-run site) • Can’t even license CF11 anymore • Must buy CF2016 and request “backward license” to CF11 • Annoying: while there are PDFs of CF docs… (helpx.adobe.com/coldfusion/home.htm) • They generally show only one level within a section, then offer a link to online page for more detail (sometimes confusing) • …
  • 46. @carehart charlie@carehart.org Traps/gotchas (cont.) • Mentioned previously • Security Analyzer works only with CF Enterprise (or trial) • Also requires CF installed in “Developer mode”, with RDS enabled • API Manager included in CF download, whether you can or want to install it • New redis-based session vars support only CFML sessions, not j2ee sessions • CF Installer web server config does not yet offer tuning options • See other (few) “known issues” listed in original release and update docs • Be sure to apply updates before believing web reports of “known bugs”. May since have been fixed!
  • 47. @carehart charlie@carehart.org Resources for more on CF2016 • In addition to many mentioned so far (do see them also)… • adobe.com/devnet/coldfusion/articles/whats-new-cf-2016.html • helpx.adobe.com/coldfusion/whats-new.html • helpx.adobe.com/coldfusion/2016/topics/features.html • helpx.adobe.com/coldfusion/release-note/coldfusion-2016-release- notes.html • Video on CF2016 (8-minute overview): youtube.com/watch?v=Bm6dJjNSPNg • helpx.adobe.com/coldfusion/home.htm (CF2016 docs) • …
  • 48. @carehart charlie@carehart.org Resources for more on CF2016 (cont.) • adobe.com/products/coldfusion-standard/features.html • helpx.adobe.com/pdf/Cf2016-standard-datasheet.pdf • helpx.adobe.com/pdf/Cf2016-standard-comparison.pdf (compares to previous releases) • adobe.com/products/coldfusion-enterprise/features.html • helpx.adobe.com/pdf/Cf2016-enterprise-datasheet.pdf • helpx.adobe.com/pdf/Cf2016-enterprise-comparison.pdf (compares to previous releases) • …
  • 49. @carehart charlie@carehart.org Resources for more on CF2016 (cont.) • helpx.adobe.com/coldfusion/standard/system-requirements.html • helpx.adobe.com/coldfusion/enterprise/system-requirements.html • helpx.adobe.com/pdf/coldfusion2016-support-matrix.pdf (web servers, OS’s, DB’s supported) • adobe.com/products/coldfusion-standard/buying-guide.html • adobe.com/products/coldfusion-enterprise/buying-guide.html • …
  • 50. @carehart charlie@carehart.org Resources for More on CF2016 (cont.) • Whitepapers • CF2016 Security audit report: • blogs.coldfusion.com/post.cfm/coldfusion-2016-release-security-audit-report • CF2016 Performance report: • wwwimages.adobe.com/content/dam/acom/en/products/coldfusion/pdfs/cf2016/CF2016_Perform ance.pdf • CF2016 lockdown guide: • wwwimages.adobe.com/content/dam/acom/en/products/coldfusion/pdfs/coldfusion-2016- lockdown-guide.pdf • CF2016 migration guide: • wwwimages.adobe.com/content/dam/acom/en/products/coldfusion/pdfs/cf2016/cf2016- migration-guide.pdf
  • 51. @carehart charlie@carehart.org Some resource gems for CF2016 and earlier • Adobe CF team blog: blogs.coldfusion.com • Anit (CF team member) blog: coldfusionsolution.wordpress.com • Akbarsait’s CF2016 meta resource guide: akbarsait.com/blog/index.cfm/2016/2/21/ColdFusion-2016-Tutorials-and- Articles-by-ColdFusion-Community/ • My sites: cf411.com and cf911.com (and carehart.org) • I often link to the resources of others in the community, past/present • I can help you with any CF server troubleshooting/admin challenges
  • 52. @carehart charlie@carehart.org Summary • So, how many changes did we cover? Any guesses? • I counted about 80! (not including bug fixes) • As is often the case, most can name only a few • Hope you may be more motivated—and informed—to consider CF2016 • To understand if and how it may work for you • Or at least where things stand regarding it as of now • Thanks, and don’t forget to fill out your evals