Pergunta

Estou atualmente trabalhando em um grande mashup intranet que usa o SharePoint para agregar conteúdo de vários outros servidores internos, tais como:

  • moss.myapp.internalserver.local - O MOSS portal
  • ssrs.myapp.internalserver.local - SQL Server relatórios de serviços relatórios
  • app.myapp.internalserver.local - formulários personalizados ASP.NET MVC

Os invoca musgo portal as formas MVC usando iframe em diálogos jQuery (quadradão para ser mais preciso), que por sua vez chamada de volta para a página musgo com javascript para várias coisas, incluindo fechar o diálogo jQuery.

Este seria, obviamente, não conseguem a mesma política de origem nos navegadores (e, portanto, não permitem JavaScript para chamar nos quadros / janelas de diferentes fontes), para que eu tenha trabalhado em torno isso definindo document.domain = "myapp.internalserver. local" nas páginas mestras MOSS e as páginas de formulários app, que permite que os scripts de domínios cruzados para correr bem entre o musgo eo conteúdo do aplicativo.

Assim, que está funcionando muito bem, até que eu adicionar um SSRS relatar na mistura usando uma parte do relatório visualizador de web (um padrão do SharePoint, além de um par dos terceiros, incluindo o meu próprio que é só usar o componente do visualizador de relatórios ASP.NET) .

O visualizador de relatórios parece exigir um manipulador que retorna HTML na página. No entanto, o conteúdo do relatório visualizador resultante parece render e script em alguns iframes, mas não nos dá qualquer maneira de definir document.domain nesses iframes, e assim os scripts falhar.

Na melhor das hipóteses Isso significa que obter o ícone de erro javascript amarelo pequeno na barra de status, e na pior, onde renderização dinâmica é utilizado, o "relatório de prestação de" roda de progresso apenas anima e nunca fornece um relatório.

Alguém viu isso antes e em caso afirmativo, como você conseguiu em torno dele?

Obrigado, Tony

Foi útil?

Solução 2

acabei resolvendo isso usando sub-frames como por este post:

http: //www.deepcode .co.uk / 2009/11 / superando-cross-domain-questões-between.html

Outras dicas

Normalmente para obter as partes da web SSRS se comportar em SharePoint que você vai querer habilitar Kerberos, se você quer passar os mesmos relatórios (usando o mesmo contexto de segurança) você terá de conceder os seus direitos de conta pool de aplicativos SharePoint para recuperar / executar os relatórios. Você também pode considerar a instalação do SSRS no modo "integrado", mas este é um processo bastante difícil como o servidor SQL precisará SharePoint host como um outro membro da fazenda, com SharePoint totalmente instalado.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top