Adobe Certification

AD0-P101 — Adobe ColdFusion Certified Professional Study Guide

59 practice questions with correct answers and detailed explanations. Use this guide to review concepts before taking the practice exam.

▶ Take Practice Exam 59 questions  ·  Free  ·  No registration

About the AD0-P101 Exam

The Adobe Adobe ColdFusion Certified Professional (AD0-P101) certification validates professional expertise in Adobe technologies. This study guide covers all 59 practice questions from our AD0-P101 practice test, complete with correct answers and explanations to help you understand each concept thoroughly.

Review each question and explanation below, then test yourself with the full interactive practice exam to measure your readiness.

59 Practice Questions & Answers

Q1 Easy

Which ColdFusion component lifecycle method is called when a component instance is created?

  • A onLoad()
  • B init() ✓ Correct
  • C onInit()
  • D onComponentLoad()
Explanation

The init() method is the standard constructor method called when a ColdFusion component is instantiated using the new operator or CreateObject().

Q2 Easy

What is the primary purpose of using cfqueryparam in ColdFusion?

  • A To define custom column aliases for result sets
  • B To optimize query execution speed by caching results
  • C To automatically convert data types in query results
  • D To prevent SQL injection attacks and improve query performance ✓ Correct
Explanation

cfqueryparam parameterizes query values, preventing SQL injection by treating data as parameters rather than code, while also allowing the database to cache query plans.

Q3 Easy

In ColdFusion, which scope is used to store data that persists across multiple page requests for a single user?

  • A Server scope
  • B Request scope
  • C Session scope ✓ Correct
  • D Client scope
Explanation

The Session scope maintains data for a specific user across multiple requests within their session lifetime, unlike Request (single request) or Server (all users).

Q4 Medium

Which function would you use to dynamically invoke a ColdFusion component method when the method name is stored in a variable?

  • A execute()
  • B callMethod()
  • C dynamicCall()
  • D invoke() ✓ Correct
Explanation

The invoke() function allows dynamic method invocation on ColdFusion objects by passing the component, method name as a string, and arguments.

Q5 Medium

What is the correct syntax to define a remote access function in a ColdFusion component?

  • A <cffunction name="getUser" remote="true" returntype="struct">
  • B <cffunction name="getUser" scope="remote" returntype="struct">
  • C <cffunction name="getUser" access="remote" returntype="struct"> ✓ Correct
  • D <cffunction name="getUser" visibility="remote" returntype="struct">
Explanation

The access attribute with value "remote" designates a function as accessible via remote calls (AJAX, web services, etc.), which is the correct ColdFusion syntax.

Q6 Medium

When using ORM in ColdFusion, which annotation is used to specify a one-to-many relationship?

  • A @Relationship(type="oneToMany")
  • B @OneToMany ✓ Correct
  • C @HasMany
  • D @Column(relationship="oneToMany")
Explanation

The @OneToMany annotation defines one-to-many relationships in ColdFusion ORM (Hibernate-based), indicating one entity can have multiple related entities.

Q7 Medium

Which ColdFusion function encrypts data using the AES-128 algorithm?

  • A GenerateSecretKey()
  • B Encrypt() ✓ Correct
  • C Hash()
  • D EncryptBinary()
Explanation

The Encrypt() function encrypts strings using symmetric encryption algorithms including AES; Encrypt() is the primary encryption function for data protection.

Q8 Medium

What does the cfsilent tag accomplish in ColdFusion?

  • A It disables all error messages and debugging output for the current page
  • B It suppresses output generated by tags within its body without affecting variable assignments ✓ Correct
  • C It creates a silent fail behavior for database operations
  • D It prevents ColdFusion from logging any server-side errors to the log files
Explanation

cfsilent suppresses the display output of tags within its body while still executing all code and allowing variable assignments, useful for processing without visible output.

Q9 Medium

In ColdFusion Administrator, which setting controls whether debugging information is displayed to users?

  • A Enable Request Debugging
  • B Enable Debug Output
  • C Show Debug Information to Specified IPs ✓ Correct
  • D Display Debug Data
Explanation

The 'Show Debug Information to Specified IPs' setting in the Debug Output section allows administrators to display debug info only to specific IP addresses for security.

Q10 Medium

Which ColdFusion tag is used to execute a stored procedure and handle the returned result set?

  • A <cfstoredproc> ✓ Correct
  • B <cfcall>
  • C <cfprocedure>
  • D <cfexecute>
Explanation

The cfstoredproc tag executes database stored procedures and retrieves result sets using cfprocparam for parameters and cfprocresult for result sets.

Q11 Medium

What is the primary advantage of using application-scoped caching with ColdFusion's caching engine?

  • A It reduces database load by storing frequently accessed query results in memory ✓ Correct
  • B It persists data across application restarts without database access
  • C It allows multiple servers in a cluster to share cache data efficiently
  • D It automatically compresses all cached objects to save memory
Explanation

Application-scoped caching reduces database traffic and improves performance by storing frequently accessed data in memory, avoiding repeated expensive queries.

Q12 Hard

Which function would you use to safely serialize a ColdFusion object to JSON format while excluding private variables?

  • A ToJSON()
  • B SerializeJSON() ✓ Correct
  • C ObjectToJSON()
  • D JSONSerialize()
Explanation

SerializeJSON() converts ColdFusion objects to JSON; ColdFusion's ORM and serialization automatically excludes private variables from serialization.

Q13 Medium

In ColdFusion, what is the correct way to use variable-length argument lists in a function?

  • A Using cfparam with a required attribute set to false
  • B Using the arguments array and checking arguments.length ✓ Correct
  • C Using the ... (ellipsis) operator in the function signature
  • D Using the argCollection attribute with a struct parameter
Explanation

ColdFusion functions automatically have access to an arguments array that contains all passed parameters; you can check arguments.length to handle variable arguments.

Q14 Hard

Which ColdFusion feature allows you to define constraints on entity properties at the ORM level?

  • A Custom validation functions in the setter methods
  • B cfproperty constraints attribute with validation rules
  • C Database triggers and foreign key constraints only
  • D @Column annotations with length, precision, and nullable attributes and @Constraint annotation ✓ Correct
Explanation

ORM constraints are defined using @Column attributes (length, precision, nullable) and validation annotations like @Constraint to enforce data integrity at the entity level.

Q15 Hard

What does the preserveSingleQuotes() function do in ColdFusion?

  • A It removes all single quotes from strings to prevent syntax errors
  • B It forces ColdFusion to treat single quotes as literal characters in variable names
  • C It prevents single quotes from being escaped in string values passed to database queries ✓ Correct
  • D It escapes single quotes to prevent SQL injection attacks
Explanation

preserveSingleQuotes() marks a string so that single quotes within it are not escaped by ColdFusion, allowing intentional SQL syntax like wildcards to work properly.

Q16 Easy

In ColdFusion, which attribute of the cffile tag is used to read the entire contents of a text file into a variable?

  • A type="read"
  • B operation="read"
  • C method="read"
  • D action="read" ✓ Correct
Explanation

The cffile tag with action="read" reads a file's complete contents into a variable; this is the correct syntax for file reading operations.

Q17 Hard

Which ColdFusion debugging tool allows real-time monitoring of variable values during code execution?

  • A Server-side logging with cflog
  • B Browser developer console integration
  • C ColdFusion Debugger in the IDE ✓ Correct
  • D cfdump tag with formatting options
Explanation

The ColdFusion Debugger is an IDE feature that provides breakpoints, step-through execution, and real-time variable inspection during development.

Q18 Hard

What is the primary difference between the cfinclude and cfimport tags in ColdFusion?

  • A cfinclude is for including files from local disk, while cfimport is for including from URLs
  • B cfimport is deprecated and only cfinclude should be used in modern ColdFusion
  • C cfinclude processes the included file as regular CFML, while cfimport treats it as a module with a namespace ✓ Correct
  • D cfinclude can only include ColdFusion templates, while cfimport can include any file type
Explanation

cfinclude executes the included template in the current request scope, while cfimport loads a library or component module with an assigned namespace prefix.

Q19 Easy

Which ColdFusion function would you use to convert an array into a delimited string?

  • A ArrayJoin()
  • B ArrayToList() ✓ Correct
  • C ArrayToString()
  • D ArrayConvert()
Explanation

ArrayToList() converts an array into a delimited string (default delimiter is comma), making it useful for formatting array data for display or database operations.

Q20 Hard

In ColdFusion ORM, what does the cascade attribute on a relationship annotation control?

  • A The order in which related entities are loaded from the database
  • B The performance optimization strategy for fetching related data
  • C The validation rules applied to the relationship constraints
  • D Whether changes to the parent entity automatically propagate to related child entities ✓ Correct
Explanation

The cascade attribute (e.g., cascade="all") defines whether operations like save, update, or delete on a parent entity automatically apply to related child entities.

Q21 Medium

Which ColdFusion tag attribute is used to specify that a form field must contain a numeric value?

  • A <cfinput type="text" validate="numeric"> ✓ Correct
  • B <cfinput type="text" pattern="[0-9]+">
  • C <cfinput type="number" required="yes">
  • D <cfinput datatype="numeric">
Explanation

The cfinput tag with type="text" and validate="numeric" performs client-side and server-side validation to ensure the field contains only numeric values.

Q22 Medium

What is the purpose of using cfproperty in a ColdFusion component?

  • A To configure component visibility and access control settings
  • B To create getter and setter methods automatically for all declared properties
  • C To enforce type checking and prevent access to undeclared variables
  • D To define properties with type information, persistence mapping, and metadata for documentation ✓ Correct
Explanation

cfproperty declares component properties with type, name, default values, and ORM/persistence annotations; it provides metadata for the property but doesn't auto-generate accessors.

Q23 Hard

In ColdFusion, which function creates a structure of all variables in a specified scope?

  • A GetAllVariables() ✓ Correct
  • B StructCopy()
  • C VariablesToStruct()
  • D GetScope()
Explanation

GetAllVariables() captures all variables from a specified scope (like local, variables, etc.) into a structure, though direct scope references are more commonly used.

Q24 Hard

Which ColdFusion security feature restricts which IP addresses can access the ColdFusion Administrator?

  • A Server Settings / Restrict IP Access
  • B Access Control / Administrator IP Filter
  • C Administrator Security / Allowed IP Addresses ✓ Correct
  • D Security / IP Whitelisting
Explanation

The ColdFusion Administrator's security settings include an 'Allowed IP Addresses' configuration that restricts administrative access to specified IP addresses.

Q25 Easy

Which of the following ColdFusion tags is used to define a user-defined function?

  • A <cffunc>
  • B <cfdefine>
  • C <cfmethod>
  • D <cffunction> ✓ Correct
Explanation

The <cffunction> tag is the standard ColdFusion tag for defining user-defined functions. It allows you to specify the function name, return type, and parameters.

Q26 Medium

In ColdFusion, what does the 'var' keyword accomplish when used within a function?

  • A It declares a variable with local scope to prevent variable collision ✓ Correct
  • B It declares a variable as a constant that cannot be changed
  • C It declares a variable that persists across page requests
  • D It declares a variable as global scope
Explanation

The 'var' keyword in ColdFusion declares variables with local scope within a function, preventing unintended collisions with variables in the calling scope.

Q27 Easy

Which ColdFusion scope is used to store data that persists for the duration of a user's session?

  • A Session ✓ Correct
  • B Request
  • C Application
  • D Client
Explanation

The Session scope stores data for an individual user during their session, which persists across multiple page requests until the session expires or is terminated.

Q28 Easy

When using the <cfquery> tag, which attribute is used to specify the name of the data source to connect to?

  • A connection
  • B datasource ✓ Correct
  • C database
  • D dbname
Explanation

The 'datasource' attribute in the <cfquery> tag specifies which configured ColdFusion data source to use for database connections.

Q29 Medium

What is the primary advantage of using parameterized queries in ColdFusion?

  • A They execute faster than standard queries
  • B They prevent SQL injection attacks and improve security ✓ Correct
  • C They allow queries to run without a database connection
  • D They automatically cache query results for better performance
Explanation

Parameterized queries (using <cfqueryparam>) separate SQL code from data, preventing SQL injection attacks and significantly improving application security.

Q30 Medium

In ColdFusion, which function is used to convert a string to an integer?

  • A Int() ✓ Correct
  • B ToInteger()
  • C StringToInt()
  • D ConvertToInt()
Explanation

The Int() function in ColdFusion converts a string or numeric value to an integer by truncating any decimal portion.

Q31 Medium

Which ColdFusion tag is used to handle exceptions and errors in a structured manner?

  • A <cferror>
  • B <cfhandle>
  • C <cftry> ✓ Correct
  • D <cfexception>
Explanation

The <cftry> tag is used with <cfcatch> blocks to handle exceptions and errors in ColdFusion, allowing for structured error handling.

Q32 Easy

What does the <cfinclude> tag do in ColdFusion?

  • A It embeds the contents of another ColdFusion file at the location where the tag appears ✓ Correct
  • B It creates a reference to an external data source connection
  • C It imports external libraries into the application scope
  • D It includes a file from a remote server using HTTP protocol only
Explanation

The <cfinclude> tag processes another ColdFusion file and inserts its output at the current location, useful for code reuse and template modularization.

Q33 Hard

In ColdFusion, what is the purpose of the Application.cfc file?

  • A To define application-level settings, event handlers, and initialization code that runs for the entire application ✓ Correct
  • B To define HTML templates that are used across multiple application folders
  • C To configure the ColdFusion Administrator settings and server preferences
  • D To store compiled ColdFusion components for faster execution
Explanation

The Application.cfc file is a special ColdFusion component that handles application-level events such as onApplicationStart, onSessionStart, and onRequestStart.

Q34 Medium

Which of the following array functions returns the position of an element in an array?

  • A ArrayIndexOf()
  • B ArrayFind() ✓ Correct
  • C ArrayPosition()
  • D ArraySearch()
Explanation

The ArrayFind() function searches an array for a specified value and returns its position, or 0 if the value is not found.

Q35 Easy

What is the correct syntax for creating a structure in ColdFusion?

  • A myStruct = [key1 = "value1", key2 = "value2"];
  • B myStruct = (key1 = "value1", key2 = "value2");
  • C myStruct = <key1>value1</key1> <key2>value2</key2>;
  • D myStruct = {key1 = "value1", key2 = "value2"}; ✓ Correct
Explanation

Structures in ColdFusion are created using curly braces with key-value pairs separated by commas, using the equals sign to assign values to keys.

Q36 Medium

In ColdFusion, which scope allows data to be shared across all users and sessions in an application?

  • A Global
  • B Shared
  • C Server
  • D Application ✓ Correct
Explanation

The Application scope stores data that is shared across all users and sessions within a specific ColdFusion application instance.

Q37 Medium

What is the purpose of the <cfloop> tag in ColdFusion?

  • A To establish a connection loop for database operations
  • B To iterate over collections, arrays, queries, or execute a block of code a specified number of times ✓ Correct
  • C To loop through server configuration settings and retrieve values
  • D To create a continuous loop that runs indefinitely until manually stopped
Explanation

The <cfloop> tag is a versatile looping construct that can iterate over arrays, structures, queries, lists, or execute code a set number of times.

Q38 Easy

Which ColdFusion function is used to verify that a variable exists and is defined?

  • A VarExists()
  • B IsDefined() ✓ Correct
  • C Exists()
  • D CheckDefined()
Explanation

The IsDefined() function checks whether a variable exists in a specified scope and returns true if it does, false otherwise.

Q39 Hard

In ColdFusion, what is the primary difference between <cfinclude> and <cfmodule>?

  • A <cfinclude> is used for HTML templates while <cfmodule> is used exclusively for ColdFusion components
  • B <cfmodule> is deprecated in favor of using <cfinclude> in all modern ColdFusion applications
  • C <cfinclude> is faster but <cfmodule> provides better scoping and variable isolation ✓ Correct
  • D <cfmodule> can only include files from the local file system while <cfinclude> can include remote files
Explanation

<cfmodule> invokes a template as a module with its own variable scope, preventing variable pollution, while <cfinclude> shares the calling page's scope.

Q40 Medium

Which attribute of the <cfquery> tag is used to cache query results?

  • A timeout
  • B cache
  • C resultname
  • D cachedwithin ✓ Correct
Explanation

The 'cachedwithin' attribute specifies a time span for which query results should be cached, reducing database load for repeated queries.

Q41 Easy

In ColdFusion, what does the <cfset> tag accomplish?

  • A It configures server-wide settings that persist across application restarts
  • B It establishes security settings for the application scope
  • C It assigns a value to a variable and creates the variable if it does not exist ✓ Correct
  • D It sets database connection parameters for the current page
Explanation

The <cfset> tag is used to create and assign values to variables in ColdFusion, and can work with any scope.

Q42 Easy

Which ColdFusion function removes leading and trailing whitespace from a string?

  • A TrimString()
  • B Trim() ✓ Correct
  • C StripWhitespace()
  • D CleanString()
Explanation

The Trim() function removes spaces, tabs, and line feeds from the beginning and end of a string without affecting interior whitespace.

Q43 Medium

In ColdFusion, what is the correct way to access a query column value?

  • A queryName[rowNumber][columnName]
  • B queryName[rowNumber].columnName
  • C queryName.columnName[rowNumber] ✓ Correct
  • D queryName[columnName][rowNumber]
Explanation

ColdFusion queries are accessed using dot notation with the column name followed by the row number in square brackets, or using array notation with row number first.

Q44 Hard

Which of the following statements about ColdFusion Components (CFCs) is true?

  • A CFCs are compiled Java classes that provide object-oriented programming capabilities to ColdFusion
  • B CFCs can only contain methods and cannot define properties or initialization logic
  • C CFCs must be stored in the root application directory to be accessible
  • D CFCs can be used to create web services and provide reusable business logic throughout an application ✓ Correct
Explanation

ColdFusion Components are reusable objects that encapsulate logic, can be used to create web services, and promote code reusability and maintainability.

Q45 Easy

What is the purpose of the <cfoutput> tag in ColdFusion?

  • A To display variable values and expressions within the generated HTML output ✓ Correct
  • B To define output parameters for functions and stored procedures
  • C To configure how errors and exceptions are displayed to users
  • D To redirect output to a log file instead of the browser
Explanation

The <cfoutput> tag evaluates expressions and variables (enclosed in #) and displays their values in the HTML sent to the browser.

Q46 Medium

In ColdFusion, which function is used to encode a string for safe use in URLs?

  • A URLEncode() ✓ Correct
  • B HTTPEncode()
  • C EncodeForURL()
  • D SafeURL()
Explanation

The URLEncode() function encodes special characters in a string to make them safe for use in URLs, replacing spaces with %20 and other characters accordingly.

Q47 Medium

What is the primary use of the Request scope in ColdFusion?

  • A To store data that is accessible only within a single page request and related includes ✓ Correct
  • B To store data that persists for the entire lifetime of the ColdFusion server
  • C To store HTTP request headers and response codes for security logging
  • D To store data that must be encrypted before being saved to the server
Explanation

The Request scope stores data that is available during a single page request and any included pages, but is cleared when the request completes.

Q48 Medium

In ColdFusion, what does the <cfreturn> tag do within a function?

  • A It exits the function and returns control to the calling page with an optional return value ✓ Correct
  • B It repeats the function execution with different parameters
  • C It creates a backup copy of the function for error recovery
  • D It stores a value in the return scope for later retrieval
Explanation

The <cfreturn> tag terminates function execution and optionally returns a value to the caller, allowing the function to send data back to the calling code.

Q49 Easy

Which ColdFusion function converts a string to uppercase?

  • A StringUpper()
  • B ToUpper()
  • C Upper() ✓ Correct
  • D UpperCase()
Explanation

The Upper() function in ColdFusion converts all characters in a string to uppercase letters.

Q50

Which ColdFusion function is used to create a new instance of a CFC (ColdFusion Component) with initialization of properties?

  • A instantiate()
  • B newComponent()
  • C createObject() ✓ Correct
  • D cfcInit()
Explanation

createObject() is the standard ColdFusion function used to instantiate CFCs and other objects, with syntax like createObject('component', 'path.to.component'). The other options are not valid ColdFusion functions.

Q51 Medium

When implementing the onError() method in Application.cfc, what scope contains the exception details?

  • A application scope
  • B variables scope
  • C session scope
  • D error argument ✓ Correct
Explanation

The onError() method receives the exception as an argument (typically named 'exception' or 'error') which is a structure containing all exception details like type, message, and tagContext. This argument is passed directly to the method, not stored in other scopes.

Q52 Medium

Which approach best demonstrates proper use of cfqueryparam for SQL injection prevention?

  • A SELECT * FROM users WHERE id = <cfqueryparam value="#trim(url.id)#">
  • B SELECT * FROM users WHERE id = #url.id#
  • C SELECT * FROM users WHERE id = <cfqueryparam value="#url.id#" cfsqltype="cf_sql_integer"> ✓ Correct
  • D SELECT * FROM users WHERE id IN (<cfqueryparam value="#url.idList#" list="true">)
Explanation

Proper cfqueryparam usage requires both a value and explicit cfsqltype attribute, which enables parameterized queries and type validation. Option B includes the critical cfsqltype specification, while D omits it and C lacks the necessary type declaration.

Q53 Hard

In ColdFusion ORM, what is the purpose of the 'cascade' attribute when defining relationships in a CFC property?

  • A It specifies automatic database schema generation settings
  • B It determines the name of the foreign key column in the database
  • C It defines the SQL join type used when querying related entities
  • D It controls how related entities are affected when the owning entity is deleted or updated ✓ Correct
Explanation

The cascade attribute in Hibernate-based ColdFusion ORM controls persistence operations on related entities—values like 'all', 'save-update', or 'delete' determine whether deletions/updates cascade to related records. It does not control column naming, schema generation, or query join types.

Q54 Medium

Which statement correctly describes the behavior of the 'local' scope in a ColdFusion function?

  • A Variables in the 'local' scope persist across multiple function calls within the same page request
  • B Variables declared with 'local' keyword are accessible outside the function after execution
  • C The 'local' scope is optional; variables are automatically local unless declared in another scope ✓ Correct
  • D The 'local' scope must be explicitly initialized in Application.cfc to function properly
Explanation

In ColdFusion, variables created with var or local keywords are automatically scoped to the function and destroyed upon function exit. The local scope is the default for function-level variables; explicit declaration is optional but recommended for clarity.

Q55 Medium

What does the cfthread tag accomplish in ColdFusion, and when should it be used?

  • A It creates a persistent connection between the server and client browser for real-time updates
  • B It encrypts sensitive data transmitted between the application server and client
  • C It manages database connection pooling across multiple simultaneous user requests
  • D It executes code asynchronously in a separate thread, useful for long-running operations that don't block the main page ✓ Correct
Explanation

cfthread enables asynchronous execution of code blocks in separate threads, allowing long-running tasks like report generation or external API calls to execute without blocking page rendering. It does not handle real-time updates, connection pooling, or encryption.

Q56 Hard

When using cfloop with a query result set, what potential performance issue can occur, and how is it best mitigated?

  • A The entire query result must be loaded into memory before looping; switch to using a database cursor for streaming results
  • B The query is re-executed for each loop iteration; use queryExecute() instead of cfquery for better caching
  • C ColdFusion automatically creates temporary duplicate queries during loops; disable this with cachedwithin attribute
  • D Row-by-row processing can be inefficient for large result sets; consider processing data in batches or using set-based operations where possible ✓ Correct
Explanation

While cfloop with queries works efficiently for moderate datasets, processing very large result sets row-by-row can consume resources and time. Batch processing, set-based database operations, or pagination are better approaches for large datasets rather than looping every row individually.

Q57

Which ColdFusion feature allows you to intercept and modify request/response behavior globally without editing every page?

  • A Implementing event gateways with scheduled tasks
  • B onRequestStart() and onRequestEnd() methods in Application.cfc ✓ Correct
  • C Configuring compression settings in ColdFusion Administrator only
  • D Using cfinclude on every page to load a shared header file
Explanation

Application.cfc lifecycle methods like onRequestStart(), onRequestEnd(), and onSessionStart() provide global interceptors for request/response handling across all pages in an application without requiring code in each template. cfinclude requires manual addition to each page.

Q58 Medium

In ColdFusion, what is the primary difference between using cfhttp GET versus POST methods?

  • A POST is more secure because it encrypts data automatically, while GET transmits data in plain text
  • B GET sends data in the URL query string with length limitations, while POST sends data in the request body and is suitable for larger payloads ✓ Correct
  • C GET can only retrieve data, while POST is required for any operation that modifies server state
  • D GET requests are always faster because they don't send a request body
Explanation

GET appends parameters to the URL (with browser/server length limits typically around 2KB), while POST sends data in the request body allowing larger payloads. Neither is inherently more secure without HTTPS, and POST is merely a convention for state-modifying operations, not a requirement.

Q59 Hard

When implementing a custom tag in ColdFusion, what is the significance of the 'caller' scope within the tag's cfml file?

  • A It is a read-only scope that only allows retrieving values from the calling page, not setting them
  • B It provides access to variables in the scope of the page that called the custom tag, allowing two-way data exchange ✓ Correct
  • C It automatically serializes complex objects for transmission between the tag and the calling template
  • D It references the scope of the CFC that instantiated the custom tag
Explanation

The 'caller' scope within a custom tag allows bidirectional access to the calling page's local variables—the tag can read from and write to caller scope, enabling it to both receive input and return results to the calling template. This is a powerful feature for custom tag development.

Ready to test your knowledge?

You've reviewed all 59 questions. Take the interactive practice exam to simulate the real test environment.

▶ Start Practice Exam — Free