Категорія: Flash
Ошибка Flash Remoting при использовнии Coldfusion mappings
Допустим есть CFC который обслуживает Flex-приложение. Для этого используется Flex gateway, который есть в любой инсталляции Coldfusion 8 по умолчанию. Однако можно наступить на грабельки, если CFC наследует или использует другой CFC:
<cfcomponent
displayname = "Component to serve data to Flex Application"
extends ="cfcRoot.services.CommonService">
Ничего особенного, но в нашем случае, cfcRoot - это mapping, заданный в Coldfusion Administrator. При вызове метода этого CFC, Flex скорее всего выдаст ошибку
message = Unable to invoke CFC - Could not find the ColdFusion Component or Interface cfcRoot.services.CommonService.
details = Ensure that the name is correct and that the component or interface exists.
Ошибка значит ровно то, что написано - Coldfusion не может найти компонент, указанный в клаузе "extends".
"Виноваты" в этом настройки Flex gateway. По-умолчанию, Coldfusion не будет проверять маппинги при обращении к CFC через Flash remoting. За это отвечает клауза <destination id="ColdFusion"> в файле C:\ColdFusion8\wwwroot\WEB-INF\flex\remoting-config.xml
<!-- Use the ColdFusion mappings to find CFCs, by default only CFC files under your webroot can be found. -->
<use-mappings>false</use-mappings>
Достаточно изменить значение на true и перезапустить Coldfusion.