2016-06-24 6 views
1

J'ai un serveur Undertow lancé par programme (ne fonctionne pas dans le cadre d'un conteneur).Comment configurer Undertow pour ajouter un jeu de caractères aux types text/content?

Mes ressources statiques, servies avec un ResourceHander sur un PathResourceManager sont codées en UTF-8, mais le type mime envoyé par le PathResourceManager n'inclut pas de charset.

Je préfère ne pas abaisser à construire une nouvelle table MimeMappings et l'installer.

Est-il possible d'utiliser un gestionnaire pour ajouter le charset aux réponses avec un CONTENT-TYPE commençant par `text/'?

Répondre

1

Je l'ai fait dans mon code:

handler = path() 
     .addPrefixPath("/", resource(new FileResourceManager(webStaticDir, 1024)) 
     .setMimeMappings(MimeMappings.builder(true) 
       .addMapping("html", "text/html;charset=utf-8") 
       .build())); 

Peut-être que vous pouvez l'adapter à votre situation.

+0

Il semble que je devrais le faire pour chaque texte/mappage, ce qui est dommage. Pourquoi diable je ne peux pas juste sous-classer MimeMappings je ne sais pas. –

+1

Oui, ils semblent l'avoir explicitement nié sans expliquer pourquoi. Peut-être pourriez-vous soumettre un correctif qui rend le constructeur plus visible? –