Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Default mime-type in Tomcat 
V
    Опции темы
Zatvornik
Дата 2.4.2008, 09:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 3.5.2007

Репутация: нет
Всего: нет



Как установить дефолтный mime-type  в настройках tomcat, нашел в web.xml  настройки на конкретный тип, но если нужного мне расширения нет вернет text/html.

Проблема в то что я пытаюсь во фрейме отобразить контент загруженый пользователем, стандартные файлы типа *.doc, *.pdf нормально грузятся, а если какая-то абракадабра в расширении то отобразит бинарный вид файла, проблема только в ИЕ в мозилле выскакивает окно и предлагает сохранить файл, хотелось бы такого добится и в ИЕ.
PM MAIL   Вверх
diablero
Дата 2.4.2008, 11:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 337
Регистрация: 3.12.2006
Где: Аркхэм

Репутация: 2
Всего: 5



Вот вам пример решения:

Код

String mimeType = getMimeType(file.getName());
if (mimeType.equals("text/plain"))
       response.setHeader("Content-Disposition", "inline; filename=temp.txt");
else
       response.setHeader("Content-Disposition", "inline; filename=\""+file.getName()+"\"");


.....
private String getMimeType(String fName){
        fName = fName.toLowerCase();
        if (fName.endsWith(".jpg")||fName.endsWith(".jpeg")||fName.endsWith(".jpe")) return "image/jpeg";
        else if (fName.endsWith(".gif")) return "image/gif";
        else if (fName.endsWith(".pdf")) return "application/pdf";
        else if (fName.endsWith(".rtf")) return "application/rtf";
        else if (fName.endsWith(".xl")||fName.endsWith(".xls")||fName.endsWith(".xlv")||fName.endsWith(".xla")
                ||fName.endsWith(".xlb")||fName.endsWith(".xlt")||fName.endsWith(".xlm")||fName.endsWith(".xlk"))
                return "application/excel";
        ....
        else if (fName.endsWith(".doc")||fName.endsWith(".dot")) return "application/msword";
        else if (fName.endsWith(".png")) return "image/png";
        else if (fName.endsWith(".xml")) return "text/xml";
        else return "text/plain";
 }



--------------------
Есть два варианта решения проблемы - реальный и фантастический. Реальный - это когда прилетят инопланетяне и все за нас сделают ...
PM MAIL   Вверх
Zatvornik
Дата 2.4.2008, 11:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 3.5.2007

Репутация: нет
Всего: нет



Спаибо, но ваше решение не подойдет. так как у меня статические страницы на которых ссылки на ресурсы.
Дело в том что если не замапин майм-тайп в web.xml то Томсат вернет application/octet-stream.

 When specified, this type will be used when MIME type mapping cannot be determined by the suffix of a document or no suffix. If not specified, default value application/octet-stream will be used.


PM MAIL   Вверх
diablero
Дата 2.4.2008, 15:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 337
Регистрация: 3.12.2006
Где: Аркхэм

Репутация: 2
Всего: 5



Попробуй так:
Код

<mime-mapping>
        <extension>*</extension> 
        <mime-type>audio/x-aiff</mime-type> 
 </mime-mapping>

Или так:
Код

<mime-mapping>
        <extension>default-mime-type</extension> 
        <mime-type>audio/x-aiff</mime-type> 
 </mime-mapping>

Погуглиsmile


--------------------
Есть два варианта решения проблемы - реальный и фантастический. Реальный - это когда прилетят инопланетяне и все за нас сделают ...
PM MAIL   Вверх
Zatvornik
Дата 3.4.2008, 10:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 3.5.2007

Репутация: нет
Всего: нет



Как указать дефолтное значени так и не нашел, решили на каждое не специфическое расширение добавлять свой мапинг в веб.хмл

такого плана
   
   <mime-mapping>
        <extension>Your Extension</extension>
        <mime-type>application/x-msdownload</mime-type>
    </mime-mapping>

Diablero отдельное спасибо!

Это сообщение отредактировал(а) Zatvornik - 3.4.2008, 10:17
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема »


 




[ Время генерации скрипта: 0.0421 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.