Specifying ColdFusion-specific channel definitions

LiveCycle Data Services ES transports messages to and from destinations over message channels that are part of the Flex messaging system. When you configure a destination, you reference the messaging channels to use. To connect to a ColdFusion back-end application, ensure that the services-config.xml file contains definitions for the cf-polling-amf channel and the cf-rtmp channel in the channels section. If you are running LiveCycle Data Services ES in ColdFusion, the services-config.xml file is in the wwwroot\WEB-INF\flex directory and contains the channel definitions by default. If you are running LiveCycle Data Services ES remotely, the services-config.xml file is located in the under \WEB-INF\flex directory when you install LiveCycle Data Services ES in the default location.

The new channel definitions include the following:

<channel-definition id="cf-polling-amf" class="mx.messaging.channels.AMFChannel ">  
<endpoint uri="http://{server.name}:{server.port}{context.root} 
/flex2gateway/cfamfpolling"class="coldfusion.flash.messaging.CFAMFEndPoint" /> 
<properties> 
    <polling-enabled> true </polling-enabled>  
    <polling-interval-seconds>8</polling-interval-seconds> 
    <serialization> 
        <enable-small-messages>false</enable-small-messages> 
    </serialization> 
    <coldfusion> 
        <access> 
            <use-mappings>true</use-mappings> 
            <method-access-level>remote</method-access-level> 
        </access> 
        <use-accessors>true</use-accessors> 
            <use-implicit-accessors>false</use-implicit-accessors> 
        <use-structs>false</use-structs> 
        <property-case> 
            <force-cfc-lowercase>false</force-cfc-lowercase> 
            <force-query-lowercase>false</force-query-lowercase> 
            <force-struct-lowercase>false</force-struct-lowercase> 
        </property-case> 
    </coldfusion> 
</properties> 
</channel-definition>

Element

Description

access

Define the resolution rules and access level of the CFC being invoked

use-accessors

Whether the Value Object CFC has getters and setters. Set the value of use-accessors to true if there are getters and setters in the Value Object CFC. However, if you set use-accessors to true and there are no getters and setters in the value object CFC, ColdFusion sets the value of any property of the value object CFC in the this scope. If your CFC does not have any getters and setters, you can increase performance by setting this to false so that ColdFusion does not spend time looking for these methods. The default value is true.

use-structs

Whether to translate ActionScript to CFCs. Set the value of use-structs to true if you don't require any translation of ActionScript to CFCs. The assembler can still return structures to Flex, even if the value is false. The default value is false.

use-implicit-accessors

Set the value of use-implicit-accessors to true if there are implicit getters and setters in the Value Object CFC.

Note: This flag needs to be set to true only if you are using a non-persistent CFC.

force-cfc-lowercase

force-query-lowercase

force-struct-lowercase

Whether to make property names, query column names, and structure keys lowercase when converting to ActionScript. Query column names must precisely match the case of the corresponding ActionScript variables. The default value is false.

use-mappings

A Boolean value specifying whether the source attribute can be relative to (start with) a ColdFusion mapping. The default value is true.

method-access-level

Specifies the access attribute values a CFC must have for ColdFusion to respond to the request. The following values are valid:

  • remote Flex can access only functions that specify remote access. (the default)

  • public Flex can access functions that specify both remote or public access.