none
Socorro Urgente!!! Problema ao publicar o sistema pela primeira vez no IIS 7. RRS feed

  • Pergunta

  • Amigos,

    Acabamos de converter o primeiro módulo do nosso ERP para SL 4.0, SQL Server 2.008 e .NET 4.0, RIA Service e VS 2.010.

    Tudo funciona lindo e maravilhoso na máquina de desenvolvimento. Porém, ao publicar o sistema pela primeira vez através do VS, e tentar acessar o sistema pelo browse IE 8, o sistema entra, todas as telas são exibidas perfeitamente, MAS nenhuma delas consegue acessar os serviços do RIA Service, e consequentemente, não consigo acessar os dados ou executar o serviço no banco.

    O obtido da página do IE 8 é este: Veja que GetUsuarios e CargaInicial são serviços do RIA Service
    Mensagem: Unhandled Error in Silverlight Application Load operation failed for query 'GetUsuarios'. The remote server returned an error: NotFound.   em System.ServiceModel.DomainServices.Client.OperationBase.Complete(Exception error)
       em System.ServiceModel.DomainServices.Client.LoadOperation.Complete(Exception error)
       em System.ServiceModel.DomainServices.Client.DomainContext.CompleteLoad(IAsyncResult asyncResult)
       em System.ServiceModel.DomainServices.Client.DomainContext.<>c__DisplayClass1b.<Load>b__17(Object )
    Linha: 1
    Caractere: 1
    Código: 0
    URI: http://201.0.204.235/jetro/jetro.aspx


    Mensagem: Unhandled Error in Silverlight Application Invoke operation 'CargaInicial' failed. The remote server returned an error: NotFound.   em System.ServiceModel.DomainServices.Client.OperationBase.Complete(Exception error)
       em System.ServiceModel.DomainServices.Client.InvokeOperation.Complete(Exception error)
       em System.ServiceModel.DomainServices.Client.DomainContext.CompleteInvoke(IAsyncResult asyncResult)
       em System.ServiceModel.DomainServices.Client.DomainContext.<>c__DisplayClass38.<InvokeOperation>b__34(Object )
    Linha: 1
    Caractere: 1
    Código: 0
    URI: http://201.0.204.235/jetro/jetro.aspx

    Na minha aplicação, eu configurei propriedade Copy Local para true, para as duas bibliotecas que são: System.ServiceModel.DomainService.Hosting e System.ServiceModel.DomainService.Server para serem copiadas para a pasta BIN no servidor WEB, e na pasta raiz do servidor WEB há os arquivos: clientacesspolicy.xml e crossdomain.xml.

    Pelo amor de Deus alguém poderia ajudar? Estou parado a dias!!!

    sexta-feira, 19 de novembro de 2010 09:47

Respostas

  • Amigos desenvolvedores.

    Espero realmente poder ajudar a todos que lerem isso. Fiquei 3 semanas procurando em fóruns, mandando perguntas e infelizmente eu não obtive sucesso em obter a solução.

    Abaixo o histórico de como resolvi o problema.

    Se eu entendi corretamente, quando desenvolvemos uma aplicação com o Ria Service, este utiliza as configurações do Asp. Net, e há uma regra entre o Asp. Net e o IIS, dizendo que no IIS só pode ter 1 modo de autenticação (anonima, básica, formulários Windows, digest, windows e personificação Asp.net).

    Pois bem, no web.config da minha aplicação há somente 1 configuração de autenticação, que é a anonima. Já no meu servidor onde está o IIS, havia duas, a anonima e pelo formulários windows.

    Ao alterar o modo de autenticação do IIS, lá no meu servidor, para que ele tenha somente 1 modo de autenticação, deixei com o tipo de autenticação anonima, eu consegui executar os serviços do domain service, pelo menos até agora...

    Como o IIS, Ria Service, ou WCF (realmente eu não sei qual deles) exibe uma mensagem genérica "Not found", eu só consegui descobrir qual era o problema utilizando o fiddler. Este sim além de exibir uma mensagem totalmente detalhada, ainda disse onde estava o problema e o que era necessário fazer para consertá-lo.

    Oro aos céus, que a nossa amiga MS possa um dia incorporar este tipo de nível de detalhadamento de erro nos seus aplicativos, em vez de sugerir a utilização de outro produto e exibir mensagens tão genéricas.

    Ainda mais para novatos como eu, que precisa ter conhecimento de vários aplicativos para rodar uma aplicação Web, e a minha experiência era somente em aplicativos Win32...

    Forte abraço e sucesso a todos!

    sexta-feira, 3 de dezembro de 2010 12:26

Todas as Respostas

  • Boas Marcelo,

    Infelizmente o erro que é gerado ao utilizar wcf, ria services é padrão: The remote server returned an error: NotFound muitas vezes não relatando o problema de fato para solução. Pior ainda quando isso ocorre no momento da publicação, pois se pelo menos o erro fosse também em desenvolvimento poderia utilizar o wcf test para utilizar o debug do serviço e identificar o erro.

    Pelo que me parece ele conecta ao ria services, porém no momento de chamar o método o que incorpora o método funcionar algo esta gerando uma exception e por isso o erro: The remote server returned an error: NotFound.

    Veja se não é nada como procedure faltando, conexão com o banco de dados, referencia, como o erro pe genérico pode ser qualquer coisa, as vezes um detalhe que tenha esquecido de subir na publicação.

    Abraços.

     


    Leandro
    sexta-feira, 19 de novembro de 2010 23:40
  • Olá Leandro.

    Então até eu seu eu já fiz de tudo e não consigo encontrar o problema, e isso está causando uma dor de cabeça enorme! O pior é que tudo roda perfeitamente na máquina de desenvolvimento, como também consigo debugar tudo. mas ao publicar acontece estas coisas. Lamentável que o pessoal gere um erro tão genérico assim, deixando a gente frustado e perdido...

    Me diz uma coisa, você está usando RIA Service ou está desenvolvendo usando o WCF "puro" mesmo? Porque começamos o desenvolvimento usando o WCF "puro" mesmo, e distribuindo o sistema em várias camadas (modelo, dal, bll e por a vai...), funciona legal, porém a produtividade fica muito a desejar, e por isso optamos pelo Ria Service.

    Obrigado pela sua atenção e resposta.

    sábado, 20 de novembro de 2010 08:09
  • Olá Marcelo, como o Leandro disse esse erro é o padrão, caso tudo esteja correto em sua rotina verifique (no iis) se o application pool da página esta como .net 4, me lembro de um problema parecido com esse e isso resolveu meu problema.
    ------ O coração tem razões que a própria razão desconhece ---
    terça-feira, 30 de novembro de 2010 18:44
  • Olá du_nirvana.

    Obrigado pela resposta. Vou dar uma olhada nisso.

    Sabe dizer se há em algum lugar nesse mundão da Internet, algum check list de quais configurações, arquivos e tudo mais precisamos ver e fazer para publicar uma aplicação Ria Service?

    Forte abraço.

     

    terça-feira, 30 de novembro de 2010 22:40
  • Gente,

    Realmente a coisa tá feia, o tempo passando, e honestamente eu não sei mais onde mexer ou configurar para a aplicação rodar.

    Estou disposto a pagar pela solução. Quem estiver interessado entre em contato através deste e-mail:marcelosdeoliveiras@gmail.com.

     

    quinta-feira, 2 de dezembro de 2010 13:01
  • Amigos desenvolvedores.

    Espero realmente poder ajudar a todos que lerem isso. Fiquei 3 semanas procurando em fóruns, mandando perguntas e infelizmente eu não obtive sucesso em obter a solução.

    Abaixo o histórico de como resolvi o problema.

    Se eu entendi corretamente, quando desenvolvemos uma aplicação com o Ria Service, este utiliza as configurações do Asp. Net, e há uma regra entre o Asp. Net e o IIS, dizendo que no IIS só pode ter 1 modo de autenticação (anonima, básica, formulários Windows, digest, windows e personificação Asp.net).

    Pois bem, no web.config da minha aplicação há somente 1 configuração de autenticação, que é a anonima. Já no meu servidor onde está o IIS, havia duas, a anonima e pelo formulários windows.

    Ao alterar o modo de autenticação do IIS, lá no meu servidor, para que ele tenha somente 1 modo de autenticação, deixei com o tipo de autenticação anonima, eu consegui executar os serviços do domain service, pelo menos até agora...

    Como o IIS, Ria Service, ou WCF (realmente eu não sei qual deles) exibe uma mensagem genérica "Not found", eu só consegui descobrir qual era o problema utilizando o fiddler. Este sim além de exibir uma mensagem totalmente detalhada, ainda disse onde estava o problema e o que era necessário fazer para consertá-lo.

    Oro aos céus, que a nossa amiga MS possa um dia incorporar este tipo de nível de detalhadamento de erro nos seus aplicativos, em vez de sugerir a utilização de outro produto e exibir mensagens tão genéricas.

    Ainda mais para novatos como eu, que precisa ter conhecimento de vários aplicativos para rodar uma aplicação Web, e a minha experiência era somente em aplicativos Win32...

    Forte abraço e sucesso a todos!

    sexta-feira, 3 de dezembro de 2010 12:26