Ces formats de fichiers ne sont pas nativement supportés par les principaux navigateurs (IE, Firefox, Chrome).
Une extension (ou plugin) doit être installé pour visionner ce type de documents.

Cas d'un document PDF

L'un des plus couramment utilisé est le plugin Adobe reader qui permet de visionner un document PDF directement dans une page du navigateur.
Il est très courant que ce plugin soit installé sur le poste d'un utilisateur lambda.

Cas d'un document Microsoft Word ou Microsoft PowerPoint 

Les plugins supportant ces formats sont rarement installés par un utilisateur lambda.
Cependant, si aucun plugin n'est disponible sur le poste alors le navigateur tente d'ouvrir le document en lançant l'application enregistrée pour ce type de document (par exemple Microsoft Word pour un document .DOC ou Microsoft PowerPoint pour un document .PPT ou .PPS).

Mais :

  • il faut que cette application soit installée sur le poste de l'utilisateur,
  • le document est affiché dans la fenêtre de l'application et pas directement dans la fenêtre du navigateur. Seul IE permet d'afficher un document Word ou PowerPoint directement dans le navigateur (ce qui n'est pas le cas de Firefox ou Chrome).

Comment ouvrir un document dans le navigateur sans avoir le plugin (ou l'application enregistrée pour ce type de document) installé sur le poste de l'utilisateur :

Une solution est d'utiliser Google Documents Viewer (http://docs.google.com/viewer).

Attention : L'URL du document doit être accessible depuis l'extérieur (ex: www.mon_domain.fr/pdf/mon_doc.pdf).
Si le document n'est pas accessible depuis l'extérieur, passer par une servlet sampleLoadFile :

sampleLoadFile.class

sampleLoadFile.java


Dans web.xml, rajouter :

<servlet>
<servlet-name>sampleLoadFile</servlet-name>
<servlet-class>sampleLoadFile</servlet-class>
</servlet>

et :

<servlet-mapping>
<servlet-name>sampleLoadFile</servlet-name>
<url-pattern>/sampleLoadFile</url-pattern>
</servlet-mapping>

Cette servlet prend 2 paramètres :

  • FIL : chemin du document à visualiser. Il doit être relatif au répertoire de la Webapp. Exemple : doc/mon_doc.doc correspond au fichier mon_doc.doc dans le sous-répertoire doc de la Webapp,
    • application/vnd.ms-powerpoint ok pour FF

 

Pour charger le fichier mon_doc.doc dans le sous-répertoire doc de la Webapp se trouvant sur le site www.mon_domain.fr, l'URL est :
www.mon_domain.fr/sampleLoadFile?FIL=doc/mon_doc.doc&MIME=application/powerpoint

Les formats de documents supportés sont :

  • PDF,
  • PowerPoint (limitation : affichage séquentiel des pages sans animation),
  • Word (support .DOC et .DOCX ok mais non officiel),
  • Tiff.

Le format Excel n'est pas supporté.
Fonctionne aussi sur navigateur mobile (OS Android et iPhone / iPad).

Il est possible d'afficher un document dans une page entière ou dans une iframe (paramètre embedded fixé à true).

Il est possible de rajouter les commandes "Enregistrer" et "Imprimer" grâce au paramètre chrome fixé à true (ex: http://docs.google.com/viewer?url=www.mon_domain.fr%2Fdoc%2Fmon_doc.doc&chrome=true).

Il est possible d'afficher une page particulière d'un document. Chaque numéro de page est représenté par l'identifiant 0.page.0, 0.page.1, 0.page.2, etc.
Pour afficher la page numéro 15, il faut rajouter #:0.page.14 à la fin de l'URL :
Ex : http://docs.google.com/viewer?url=www.mon_domain.fr%2Fdoc%2Fmon_doc.doc&embedded=true#:0.page.14

Il existe d'autres viewers de documents en ligne, comme par exemple ZohoViewer (http://viewer.zoho.com) qui supporte les formats suivants :
Microsoft Office Formats
doc / docx - Microsoft Word Document
xls / xlsx - Microsoft Excel Spreadsheet
ppt / pptx - Microsoft PowerPoint
pps - PowerPoint Slideshow
OpenDocument Formats
odt - OpenDocument Text
ods - OpenDocument Spreadsheet
odp - OpenDocument Presentation
OpenOffice Formats
sxw - OpenOffice.org Writer Document
sxc - OpenOffice.org Calc Spreadsheet
sxi - OpenOffice.org Impress Presentation
More Rich Text Formats
wpd - Corel Word Perfect Document
pdf - Adobe Portable Document Format (PDF viewer is in experimental stage)
rtf - Rich Text Format
html - Hyper Text Markup Language
txt - Plain Text Document
More Spreadsheet Formats
csv - Comma Separated Values
tsv - Tab Separated Values


Articles connexes