Pourquoi le respect est-il en cours sous Tomcat sous JBoss 5.1 Renvoyant ma page index.html comme type «Application / Octet-Stream» au lieu de «Text / HTML»?

StackOverflow https://stackoverflow.com/questions/1868800

  •  18-09-2019
  •  | 
  •  

Question

J'ai une page d'accueil Home.html dans un fichier de guerre nommé "webApp-1.0.war". Lorsque le navigateur demande "http: // domaine / myapp"Je veux que la maison.http: // domaine / myapp". Je ne veux pas "http: //domain/myapp/home.html"Dans la barre d'adresse.

J'ai donc mis cela dans le web.xml:

<welcome-file-list>
  <welcome-file>home.html</welcome-file>
</welcome-file-list> 

Et j'ai ajouté un jboss-web.xml avec les suivants:

<jboss-web>
  <context-root>myapp</context-root>
</jboss-web>

Cela fonctionne presque. Lorsque le navigateur demande "http: // domaine / myapp"Le home.html est envoyé, mais le type MIME est application / trace d'octet au lieu de texte / html, ce qui fait que Firefox pense qu'il s'agit d'un téléchargement de fichier.

Était-ce utile?

La solution

"OCTET-Stream" est le type MIME par défaut dans Restlet. Le "HTML" est défini dans le mappage par défaut. On dirait que vous avez votre propre métadataservice. Vous pouvez ajouter des mappages d'extension comme celui-ci,

getMetadataService().addExtension("html", MediaType.TEXT_HTML, true);

Autres conseils

Ce n'est pas le comportement par défaut.

Les types de mime sont normalement définis dans web.xml. En cas de Tomcat et de clones, les types de mime Appserver-Default sont définis dans /conf/web.xml.

Cela peut cependant être remplacé par des entrées de mappage MIME personnalisées dans le WebApp /WEB-INF/web.xml ou par un HttpServletResponse#setContentType() dans un servlet ou un filtre dans la chaîne de demande-réponse. Je peux imaginer qu'il y a une sorte de mauvaise écoute de filtre sur /* qui renifle et définit incorrectement le type de contenu en fonction de l'URL de demande. Voyez si quelque chose de similaire existe dans votre WebApp.

Il semble en effet être le comportement par défaut du respect. Après y avoir plus réfléchi, je suppose que j'aime le comportement. En pensant de façon relâchée, je suppose que l'application Web dans son ensemble (ce qui est implicite par l'URL racine) n'est pas vraiment la ressource que mon navigateur est intéressée à récupérer. Le navigateur est vraiment intéressé par une représentation HTML de la ressource "Home", qui fait partie de l'application Web. Alors je suppose que je vais le laisser. Mais je vais vous faire voter, BALUSC pour avoir pris le temps de répondre pour moi.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top