Advanced ColdFusion Training: XML, File System and Web Services (CFM203)
Course Length: 2 days
This advanced ColdFusion training class focuses on making the best use of several external data types including XML, Web Services, <cfhttp> and more.

Register or Request Training
- Private class for your team
- Live expert instructor
- Online or on‑location
- Customizable agenda
- Proposal turnaround within 1–2 business days
Course Overview
This advanced ColdFusion training class focuses on making the best use of several external data types including XML, Web Services, <cfhttp> and more. You will also learn how to work with the file system to read, write, append and even upload files.
Course Benefits
- Learn XML Syntax Basics.
- Learn to load XML data.
- Learn to create query objects from existing XML.
- Learn to read and write text files with
<cffile>. - Learn to upload documents with
<cffile>. - Learn to use
<cfdirectory>. - Learn to use
<cfhttp>. - Learn to create ColdFusion Web Services.
- Learn to invoke external Web Services.
- Learn about the WDDX file format.
Delivery Methods
Course Outline
- Manipulate the File System with
<cffile>- Working with
<cffile>- Read and Write Text Files with
<cffile> - Built-in Function: ExpandPath()
- Reading Files with the
<cffile>tag - Built-in Function: FileExists()
- Read and Write Text Files with
- Upload Documents with
<cffile>- Using the
<cffile>tag for an Upload - After a
<cffile>Upload: FILE Variables - Deeper Examination: HTML and a File Upload
- Saving long variable values with
<cfsavecontent> - Using the
<cffileupload>tag for Multiple Uploads in ColdFusion - Using
<cfcontent>to create an Excel Spreadsheet
- Using the
- Working with
- Using XML with ColdFusion
- XML Syntax Basics
- XML Logical Structure
- Each XML document must begin with a language declaration
- Each XML document must have a single root element, which normally contains other child elements
- XML Physical Structure
- Case Sensitivity
- Required Closing Tags
- New Syntax for "empty elements"
- Tags must be nested properly
- Attribute Values must be enclosed properly in single or double quotes
- XML Comments
- XML Logic: Designing Datasheets
- Parsing XML data with ColdFusion
- Demo: Convert an XML datasheet into an XML Document Object with XMLParse()
- Case-sensitive Element Names with XMLParse()
- Method 1 - Array notation with generic node names
- Method 2 - Associative Array notation
- Method 3 - Array notation with specific node names
- Methods 4(+) - Mix and Match
- Deeper Examination: Counting Nodes
- Manipulating XML data with Built-in Functions
- List of Structure/Array Functions that may be used on an XML Document Object
- List of XML-specific Functions
- Manipaulating the XML Document Object: Adding Elements
- Deeper Examination: Adding an XML Attribute
- Create a Query Object from Existing XML (optional)
- Deeper Examination: Looping through the XML
- Deeper Examination: Creating the Query Object
- Deeper Examination: Query the query
- Extensible Stylesheet Language (XSL) Basics
- XSL, XSLT, and XSLFO
- XSL Basics: Linking to an XSL Stylesheet
- Examining an XSL Stylesheet
- The xsl:stylesheet tag and the namespace declaration
- The
<xsl:template>tag - The
<xsl:value-of>tag - Referencing iterating nodes
- Server-side XSL Transformation with ColdFusion
- Deeper Examination: XMLTransform()
- Idea! Transforming XML Data into XML Data
- XPath Basics
- XPath: the XSL Node Matching Syntax
- Choosing Between Equivalent XPath Expressions
- An XPath testing tool
- Using XPath with ColdFusion
- Deeper Examination: XPath expression
- Deeper Examination: XMLSearch()
- Idea! Convert an XML Document Object to a Query Object
- XML Syntax Basics
- Working with
<cfhttp>- Making http requests with
<cfhttp>- Attributes of
<cfhttp> - Deeper Examination:
<cfhttp>tag - Deeper Examination:
<cfoutput>block - While looping though the records
- Deeper Examination: QueryAddColumn() function
- Idea! Dynamically Creating Static Pages
- Attributes of
- Passing Variables with
<cfhttp>and<cfhttpparam>- Creating an Intelligent Agent
- Deeper Examination: agent.cfm
- Deeper Examination: agent-page2.cfm
- Deeper Examination:
<cfsetting>
- Making http requests with
- ColdFusion and Web Services
- Working with Web Services
- Examples
- Producers vs. Consumers
- Definitions
- Creating WSDL Documents
- Step 1 - Convert the existing CFC into a Web Service
- Step 2 - Examine a local WSDL file from the demo
- Step 3 - Invoking a ColdFusion Web Service
- Deeper Examination
- Deeper Examination: Passing an argument to a Web Service
- SOAP
- A note about security
- Invoking External Web Services
- Locating Web Services
- Invoking Web Services from .NET, Java and more
- Deeper Examination:
<cfinvoke>and<cfinvokeargument>
- Working with Web Services
- Web Distributed Data Exchange (WDDX) (if time allows)
- WDDX
- Deeper Examination:
<cfwddx>tag - Deeper Examination
- Deeper Examination:
- Deserialize WDDX data in JavaScript
- Deeper Examination: Include JavaScript functions
- Deeper Examination: Deserialize in JavaScript
- Deeper Examination: Generated source code
- Deeper Examination
- WDDX
Class Materials
Each student receives a comprehensive set of materials, including course notes and all class examples.
Class Prerequisites
Experience in the following is required for this ColdFusion class:
- Basic ColdFusion
Experience in the following would be useful for this ColdFusion class:
- XML
Have questions about this course?
We can help with curriculum details, delivery options, pricing, or anything else. Reach out and we’ll point you in the right direction.
