Como abrir PDF no browser ?  XML
Índice dos Fóruns » Desenvolvimento Web
Autor Mensagem
ana_abrantes
JavaGuru
[Avatar]

Membro desde: 29/08/2003 15:44:09
Mensagens: 238
Localização: São Paulo
Offline

A resposta deve ser simples, mas não consegui descobrir, vai lá:

Como fazer para abrir um arquivo pdf sem abrir uma página em branco no browser e outra para o Adobe Reader ?
Queria que o Adobe abrisse o pdf dentro da página do browser.
O link que coloquei para abertura chama um servlet que lê um stream.
Alguém pode me dar a dica ?

Ana

SCJP 1.4 - SCWCD 1.4
Rodrigo Carvalho Auler
Virtual Machine Man

Membro desde: 14/02/2003 15:59:17
Mensagens: 576
Localização: Rio de Janeiro
Offline

Se o usuário tiver o plugin do Acrobat Reader instalado, se você colocou o content-type certo no seu servlet (application/pdf) e não forçou o download pelo cabeçalho http (Content-Disposition: attachment;
filename="LicenseAgreement.pdf") deveria funcionar...

[]'s

Rodrigo
ana_abrantes
JavaGuru
[Avatar]

Membro desde: 29/08/2003 15:44:09
Mensagens: 238
Localização: São Paulo
Offline

Funcionando está, a única coisa que eu queria era que abrisse na mesma janela igual aos outros tipos de arquivo.
Só arquivos pdf abrem em uma segunda janela com o Adobe Reader.
Alguém mais sabe o que fazer?

Ana

SCJP 1.4 - SCWCD 1.4
thingol
Moderador

Membro desde: 29/07/2004 16:10:13
Mensagens: 17572
Offline

Não tem aquelas tags html tipo "<a href='xxxx.pdf' target='_self'> ? HTML não é o meu forte, e sei que "target = 'self'" é o padrão, mas às vezes é necessário especificar explicitamente '"target = 'self'", só não sei exatamente quando.

This message was edited 1 time. Last update was at 13/07/2005 14:37:11

[WWW]
Gisele Oliveira
Smalltalk

Membro desde: 19/05/2006 11:27:09
Mensagens: 2
Offline

Tente adicionar no Header da message o Content-Disposition como "inline"
julianostr
GUJ Ranger

Membro desde: 31/03/2006 14:16:14
Mensagens: 855
Localização: Blumenau - SC
Offline

Você poderia mostrar como você está procedendo agora pra abrir o PDF?

LASER
Light Amplification by Stimulated Emission of Radiation
antoniopopete
Virtual Machine Man

Membro desde: 27/12/2006 02:37:31
Mensagens: 712
Localização: Salvador - BA
Offline

Tem como exibir algumas informações e na parte de baixo abrir o pdf, como se fossem 2 divs?


Antonio Lazaro

[Email]
uchoaaa
JavaChild

Membro desde: 01/04/2006 21:02:33
Mensagens: 133
Offline

antoniopopete wrote:Tem como exibir algumas informações e na parte de baixo abrir o pdf, como se fossem 2 divs?



Acho que só com <iframe> no lugar dessa segunda <div>..

Ah, alguns tutoriais daqui mesmo do GUJ utiliza essa formato que pretendes..
antoniopopete
Virtual Machine Man

Membro desde: 27/12/2006 02:37:31
Mensagens: 712
Localização: Salvador - BA
Offline

Como funcionaria isso??

Antonio Lazaro

[Email]
uchoaaa
JavaChild

Membro desde: 01/04/2006 21:02:33
Mensagens: 133
Offline

Bom, até onde sei, o servidor não escolhe para onde deve mandar a resposta.
Assim, se vc quer que a resposta vá para um <iframe> a requisição deve partir dele.

Para quando abrir essa página com duas divs já aparecer o PDF vc pode fazer algo como:



Se o pdf for gerado "on the fly", é interessante vc setar "content-dispostion" como "inline" no seu cabeçalho de resposta.

Mas se quiser que o link para abrir o pdf esteja na <div> "informações", vc pode tentar usar JavaScript para simular essa requisição...



Acho que isso te ajuda.
Avisa aqui se der certo, blz?¡

Abraços
falefernando
Debugger

Membro desde: 16/03/2007 17:20:35
Mensagens: 55
Localização: Taboao da Serra
Offline

dentro da tag div vc inclui a tag iframe e na propriedade src="teste.pdf" vc deve apontar para onde esta o arquivo.

F.A.S
[Email]
antoniopopete
Virtual Machine Man

Membro desde: 27/12/2006 02:37:31
Mensagens: 712
Localização: Salvador - BA
Offline

Esse pdf é gerado oriundo de um cambo blob do banco de dados....
O que seria geração "on the fly"?

Não tenho como apontar para onde o arquivo está porque vou criar ele dinamicamente ou vou ter que separar uma pasta no servidor para fazer isso?

This message was edited 1 time. Last update was at 10/06/2008 13:11:08


Antonio Lazaro

[Email]
uchoaaa
JavaChild

Membro desde: 01/04/2006 21:02:33
Mensagens: 133
Offline

Calma aí, calma aí..
São duas coisas distintas. Uma é gerar um PDF dinamicamente, outra é exibi-lo dentro de um <iframe>.

Geração "On The Fly" é o que vc chamou de "dinâmica".
O pdf é gerado a dinamicamente, a partir de alguns parâmetros, em tempo de execução, "on the fly"..

Para isso, vc deve configurar corretamente seu cabeçalho e "imprimir" o conteúdo do pdf, os bytes, na resposta.
Tem alguns códigos prontos por aí. Pai Google de Oxum ajudará!

[]s

uchoaaa
JavaChild

Membro desde: 01/04/2006 21:02:33
Mensagens: 133
Offline

Aqui no GUJ mesmo..

http://www.guj.com.br/posts/list/55341.java
ebercamargo
Smalltalk

Membro desde: 27/04/2009 14:38:56
Mensagens: 1
Offline

Mude a linha:

response.setHeader("Content-Disposition", "atachment; filename=\"" + sFile);

Parar
response.setHeader("Content-Disposition", "inline; filename=\"" + sFile);


Abraços,

Eber M. C
 
Índice dos Fóruns » Desenvolvimento Web
Ir para:   
Powered by JForum 2.1.8 © JForum Team