Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / При выгрузке rtf через сервлет некорректно присваивается тип файла. / 3 сообщений из 3, страница 1 из 1
28.08.2007, 15:47:39
    #34758627
Ashitkin.Alex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
При выгрузке rtf через сервлет некорректно присваивается тип файла.
Сервлет следующий:

import java.io.*;
import javax.servlet.*;

public class Hello extends GenericServlet
{

public void service (ServletRequest request, ServletResponse response)
throws ServletException, IOException {
response.setContentType("application/x-download");
String filename = "OUTPUT_FILE_NAME.rtf";
FileInputStream in = new FileInputStream(filename);
PrintWriter out = response.getWriter();
InputStreamReader reader = new InputStreamReader(in);
char[] buffer = new char[1024];
int read;

while((read = reader.read(buffer)) != -1){
out.write(buffer, 0, read);
}

out.flush();
out.close();
in.close();
}
}

Выгрузка происходит, не понимает, что это rtf. Приходится вручную праить файл и дописывать RTF. setContentType("text/rtf") пробовал. Что нужно сделать?
...
Рейтинг: 0 / 0
28.08.2007, 18:19:05
    #34759293
а вот так
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
При выгрузке rtf через сервлет некорректно присваивается тип файла.
Код: plaintext
1.
2.
response.setContentType("application/rtf") ;
response.addHeader("Content-Disposition", "attachment; filename=output.rtf");
...
Рейтинг: 0 / 0
29.08.2007, 09:31:54
    #34760229
Ashitkin.Alex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
При выгрузке rtf через сервлет некорректно присваивается тип файла.
Проблема решилась. В при добавлении setHeader/addHeader класс не компилировался. Оказалось, что что эти методы относятся к классу HttpServletResponse. Подправил и все заработало:
автор
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class Hello extends HttpServlet
{

public void service ( HttpServletRequest request, HttpServletResponse response )
throws ServletException, IOException {
String filename = "OUTPUT_FILE_NAME.rtf";
response.setContentType("text/rtf");
response.addHeader("Content-Disposition", "attachment; filename=output.rtf");
...


Спасибо!
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / При выгрузке rtf через сервлет некорректно присваивается тип файла. / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]