Mudanças entre as edições de "Página de geração de PDF abre mas o conteúdo não aparece"

De LATROMI Manuais
Ir para: navegação, pesquisa
(Criou página com '=Problema= Ao abrir uma página, que deveria ser carregada com um PDF, o sinal de carregamento da página não desaparece, e o conteúdo do RPT não é exibido. =Causa= O ser...')
 
(Solução)
Linha 18: Linha 18:
 
* Abra o gerenciador de IIS (Iniciar > executar > inetmgr).
 
* Abra o gerenciador de IIS (Iniciar > executar > inetmgr).
 
* Na listagem à direita, selecione a aplicação web correspondente, clique com o botão direito do mouse e vá até a opção '''Propriedades'''.
 
* Na listagem à direita, selecione a aplicação web correspondente, clique com o botão direito do mouse e vá até a opção '''Propriedades'''.
 
+
* Na janela que foi aberta, clique na aba '''Cabeçalhos HTTP'''.
 +
* Clique no botão '''Adicionar'''
 +
* No campo '''Nome do cabeçalho personalizado''' digite ''Accept-Ranges''.
 +
* No campo '''Valor do cabeçalho personalizado''' digite ''none'.
 +
* Cliquei em OK para adicionar e clique em OK na tela de propriedades da aplicação para concluir.
  
 
=Ver Também=
 
=Ver Também=

Edição das 14h43min de 26 de maio de 2014

Problema

Ao abrir uma página, que deveria ser carregada com um PDF, o sinal de carregamento da página não desaparece, e o conteúdo do RPT não é exibido.

Causa

O servidor retorna para o navegador uma instrução que indica que o arquivo (no caso, o arquivo.pdf) pode ser baixado de forma particionada, mas o navegador não consegue unir todos os pacotes. Neste caso o arquivo é gerado corretamente no lado do servidor, mas acontece uma falha no download do arquivo.

Essa falha pode ser observada através das ferramentas de depuração do Google Chrome, na aba Network, onde o arquivo PDF aparecerá primeiro com status 200-OK em vermelho seguido do status 206-Partial Content, como pode ser visto na imagem abaixo:

Solução

A solução para este problema, é desabilitar o recurso de download de arquivos particionados. Se você usa a versão 7 ou superior do IIS e está atualizado com a versão 2.0.0.1 ou superior do site, a solução já foi incluída no aquivo de configuração (Web.Config), na sessão: <httpProtocol> / <customHeaders> / <add name="Accept-Ranges" value="none" />

Se você usa a versão 6 do IIS, siga os passos abaixo para alterar o cabeçaho HTTP Accept-Ranges:

  • Abra o gerenciador de IIS (Iniciar > executar > inetmgr).
  • Na listagem à direita, selecione a aplicação web correspondente, clique com o botão direito do mouse e vá até a opção Propriedades.
  • Na janela que foi aberta, clique na aba Cabeçalhos HTTP.
  • Clique no botão Adicionar
  • No campo Nome do cabeçalho personalizado digite Accept-Ranges.
  • No campo Valor do cabeçalho personalizado digite none'.
  • Cliquei em OK para adicionar e clique em OK na tela de propriedades da aplicação para concluir.

Ver Também