Flex ColdFusion CFC位置

时间:2009-04-21 14:02:18

标签: flex coldfusion cfc

我是一个想要打入Flex的ColdFusion开发人员。我有一些测试Flex应用程序正在进行中,但是在连接到我的CFC时遇到问题。我试过了:

  • 在CFAdmin中创建映射,
  • 将CFC放在与Flex应用程序相同的文件夹中,
  • 将CFC放入C:\ Coldfusion8 \ Gateway \ CFC文件夹

一切都无济于事。

每次,我都会收到“找不到ColdFusion组件或接口”错误。我错过了什么?

以下是我如何调用CFC for Flex使用。

 <mx:RemoteObject id="conn" destination="ColdFusion" source="cfc.bulkmail"
    result="orderGrid.dataProvider = event.result;" showBusyCursor="true">

3 个答案:

答案 0 :(得分:2)

您还可以进入remoting-config.xml文件([coldfusionRoot] wwwroot \ WEB-INF \ flex)并在coldfusion实例上启用映射。默认情况下,Flex不允许在定位cfc实例时使用映射。

<destination id="ColdFusion">
    <channels>
        <channel ref="my-cfamf"/>
    </channels>
    <properties>
        <source>*</source>
        <!-- define the resolution rules and access level of the cfc being invoked -->
        <access>
            <!-- Use the ColdFusion mappings to find CFCs, by default only CFC files under your webroot can be found. -->
            <use-mappings>false</use-mappings>
            <!-- allow "public and remote" or just "remote" methods to be invoked -->
            <method-access-level>remote</method-access-level>
        </access>

        <property-case>
            <!-- cfc property names -->
            <force-cfc-lowercase>false</force-cfc-lowercase>
            <!-- Query column names -->
            <force-query-lowercase>false</force-query-lowercase>
            <!-- struct keys -->
            <force-struct-lowercase>false</force-struct-lowercase>
        </property-case>
    </properties>
</destination>

你看到的是默认值。将use-mappings键更改为true,您的映射现在可以正常工作。

答案 1 :(得分:0)

我在某些服务器上遇到过类似的问题。我认为这与您网站上的安全性设置有关。我最终采用了简单的方法,使我的CFC方法可以远程访问,并将它们称为WebServices。

答案 2 :(得分:0)

C:\ Coldfusion8 \ wwwroot \ Gateway \ CFC是正确的文件夹 并且cfc.bulkmail是正确的来源。

它有效,我一定没有适当的情况在某一点或另一点。

但是对于今后遇到同样问题的人来说,这是答案。