none
Cross Domain RRS feed

  • Pergunta

  • Estou tentando publicar um projeto desenvolvido em silverligth 3, porém estou com o seguinte problema, a aplicação esta funcionando corretamente porém não estou obtendo o  resultado ao invocar o WebService, pesquisando no forum descobri que é necessário adicionar o arquivo de clientaccesspolicy na raiz do site mas não obtive resultado.
    Uma observação é que meu banco SQLServer esta em uma máquina diferente da que esta hospedada a aplicação.


    Warning 1 Could not locate cross-domain policy at 'servidor': Web services might not be accessible at runtime by your Silverlight application. For more details please contact the web server administrator or press F1 after selecting this warning 

    Desde ja agradeço.
    terça-feira, 7 de julho de 2009 20:40

Respostas

  • Você deve colocar o arquivo clientaccesspolicy.xml na mesma pasta contendo o Web-Service com o seguinte conteudo:

    <?xml version="1.0" encoding="utf-8"?>
    <access-policy>
        <cross-domain-access>
            <policy>
                <allow-from http-request-headers="*">
                    <domain uri="*"/>
                </allow-from>
                <grant-to>
                    <resource path="/" include-subpaths="true"/>
                </grant-to>
            </policy>
        </cross-domain-access>
    </access-policy>

    Tenho uma aplicação Silverlight que funciona mais ou menos da mesma maneira (acessando um SQL Server remoto) e funciona perfeitamente.

    Espero ter ajudado.

    Abraços

    Breno
    terça-feira, 7 de julho de 2009 23:37

Todas as Respostas

  • Você deve colocar o arquivo clientaccesspolicy.xml na mesma pasta contendo o Web-Service com o seguinte conteudo:

    <?xml version="1.0" encoding="utf-8"?>
    <access-policy>
        <cross-domain-access>
            <policy>
                <allow-from http-request-headers="*">
                    <domain uri="*"/>
                </allow-from>
                <grant-to>
                    <resource path="/" include-subpaths="true"/>
                </grant-to>
            </policy>
        </cross-domain-access>
    </access-policy>

    Tenho uma aplicação Silverlight que funciona mais ou menos da mesma maneira (acessando um SQL Server remoto) e funciona perfeitamente.

    Espero ter ajudado.

    Abraços

    Breno
    terça-feira, 7 de julho de 2009 23:37
  • Bom dia,

    O Breno tem razão, teoricamente colocando o arquivo clientaccesspolicy.xml, que ele cito, no seu site deve funcionar.

    Eu sempre uso dois arquivos de cross domain, um é o clientaccesspolicy.xml citado, mas as vezes pode ter algum problema dele nao reconhecer o arquivo ou rolar algum erro, dai ele procura o arquivo crossdomain.xml. Entao para nao dar problema eu uso os dois =)

    vai ai o codido do crossdomain.xml:
    <?xml version="1.0"?>
    <!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">
    <cross-domain-policy>
      <allow-http-request-headers-from domain="*" headers="*"/>
    </cross-domain-policy>
    
    Fica ai a dica entao hehee
    abraço
    quarta-feira, 8 de julho de 2009 13:32
  • Só toma cuidado com: <domain uri="*"/> especifique quem pode acessar o seu WCF

    Flavia Moreira
    quinta-feira, 16 de julho de 2009 14:35