Suporte à Flash Remoting para ColdFusion MX no IIS

Trata-se de um problema comum mas que atinge grande parte dos provedores de hospedagem compartilhada em ColdFusion MX: a ausência de suporte à tecnologia Flash Remoting. A instalação do mesmo é bastante simples, a Macromedia tem dois technotes a respeito (veja referência no final) mas que por tratarem de outros assuntos acaba confundindo o leitor menos atento. Por isso eis aqui uma receita de bolo rascunho (por isso mesmo sem revisão) e de forma bastante simplificada para oferecer suporte à o Flash Remoting no seu servidor.

IMPORTANTE: as dicas aqui são feitas para IIS 5.0 e CFMX em modo Server Configuration (“stand-alone”), adapte-as para outras plataformas/ambientes.

1) Abra no bloco de notas o arquivo “web.xml” localizado em cf_root/wwwroot/WEB-INF/web.xml (onde cf_root é a pasta onde o ColdFusion MX está instalado, normalmente “C:CFusionMX”);

2) Procure a entrada <servlet-name>FlashGateway</servlet-name> e na definição DISABLE_CFWS_ADAPTERS altere o atributo param-value para “false” caso este seja igual a “true” (ficará igual a <param-value>false</param-value>);

3) Para cada site do IIS, verifique a existência de uma pasta virtual chamada “JrunScripts”;

4) Caso esta pasta já exista pule para o ítem 6, caso não exista, prossiga para o próximo ítem;

5) Crie uma nova pasta virtual chamada “JRunScripts” cujos atributos e características no IIS podem ser vistos nesta imagem de exemplo. Note os atributos do IIS para esta pasta (ausência de aplication, ausência de permissões read, write, browse e afins – atenha-se à imagem!

4) Cuidado pois a localização da pasta “C:CFusionMXruntimelibwsconfig1” pode ser diferente no seu ambiente. Para não restar dúvidas sobre qual o caminho você deve usar, veja qual é o caminho do script path para a extensão “.cfm” do seu site IIS nas proprieades do mesmo. Este deve ser igual ao usado pela pasta “JrunScripts”. No meu exemplo você pode ver no screenshot que a pasta é a mesma. Cuidado: não é para linkar o arquivo jrun.dll, apenas a pasta onde ele está localizado!

5) Criada a pasta, reinicie o serviço do ColdFusion Server MX do Windows e;

6) Acesse o site em questão acrescentando as seguintes pastas à URL: “flashservices/gateway”. Ficaria assim: “http://www.seusite.com.br/flashservices/gateway”;

7) Se você receber uma resposta de erro 404 (page not found), tal como esta aqui (um dos meus sites que não precisam de FlashRemoting), seu site não está com o Flash Remoting instalado, refaça o processo (deletando o que você fez até aqui) ou procure ajuda na documentação do produto (veja referências abaixo).

8) Se você receber como resposta uma página em branco tal como esta aqui (de um dos meus sites hospedados na Delix!) está tudo ok e você estará apto a usar FlashRemoting sem problemas. Por via das dúvidas confira o código-fonte do HTML gerado pelo link acima e o gerado pelo seu servidor, eles devem ser idênticos ou bem parecidos.

Maiores informações nos seguintes technotes:

Enabling access from Macromedia Flash to web services using the Flash Gateway in ColdFusion MX Updater 3 and higher

Unsuccessful attempts to connect to Flash Remoting on multihomed Microsoft IIS servers

E claro, nos guias e manuais de instalação do ColdFusion Server.


2 Comments on “Suporte à Flash Remoting para ColdFusion MX no IIS”

  1. Grande Alex!

    Não podia vir em melhor hora esse tutorial.
    Ficou muito fácil e muitissimo explicado velho.

    Abraços e Sucessos.

  2. André disse:

    Ola
    è necessário instalar o flash no servidor para que as estaçõe sde trabalho rodem?