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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Получение изображения на сервере из Вёб-броузера, с использованием MultipartRequest 
:(
    Опции темы
EcoloRa
Дата 18.3.2004, 04:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Есть html-страница с формой:

<FORM ENCTYPE="multipart/form-data" METHOD="POST" ACTION="admin.Images_update" target="_top" NAME="f1">
<INPUT TYPE="hidden" NAME="image_id" value="111">
<B>&nbsp;Изображение&nbsp;<INPUT TYPE="file" NAME="image1">
<INPUT TYPE="SUBMIT" VALUE="Добавить">
</FORM>

Переданная информация должна обрабатываться сервлетом Images_update:

public void doPost(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws

javax.servlet.ServletException, java.io.IOException {
PrintWriter pw = response.getWriter();
pw.println(Head.out(CaptionImages));
//прослеживанию сеанс
HttpSession hs = request.getSession(true);
String s = (String) hs.getValue("correct");
if ((s != null) && (s.equals(ValueCorrectSeanse))) {
try {
String contextType = request.getContentType();
boolean uploadFile = contextType != null && contextType.startsWith("multipart");
if (uploadFile) {
com.oreilly.servlet.MultipartRequest mr = new com.oreilly.servlet.MultipartRequest(request,

"c:/temp",1024*1024*1024*3);
...

}
}
catch (Exception E)
{
pw.println(MesageError);
pw.println(E);
}
//конец ифа ниже
}
else {
}
}

Но до ... не доходит, возникает ошибка java.lang.IllegalArgumentException: maxPostSize must be positive
Если задать maxPostSize, например, как 1024*1024*1024, то сервер возвращает более серьезную ошибку, выводя много строк

текста.
В чем проблема?
PM MAIL WWW ICQ Skype   Вверх
EcoloRa
Дата 19.3.2004, 04:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Передаю последний вариант кода:

Форма:

Цитата
<FORM ENCTYPE="multipart/form-data" METHOD="POST" ACTION="admin.Images_update" target="_top" NAME="f1">
<B>&nbsp;Изображение&nbsp;<INPUT TYPE="file" NAME="image1">
<INPUT TYPE="SUBMIT" VALUE="Добавить">
</FORM>


Метод сервлета Images_update:

Цитата
public void doPost(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws javax.servlet.ServletException, java.io.IOException {
PrintWriter pw = response.getWriter();
pw.println(Head.out(CaptionImages));
//прослеживанию сеанс
HttpSession hs = request.getSession(true);
String s = (String) hs.getValue("correct");
if ((s != null) && (s.equals(ValueCorrectSeanse))) {
try {
  String contextType = request.getContentType();
  boolean uploadFile = contextType != null && contextType.startsWith("multipart");
  if (uploadFile) {
  com.oreilly.servlet.MultipartRequest mr = new com.oreilly.servlet.MultipartRequest(request, "c:/temp",1024*1024);
  news_id = mr.getParameter("news_id");
  ...

  }
}
catch (Throwable E)
  {
    pw.println(MesageError);
    pw.println(E);
}
//конец ифа ниже
}
else {
  }
}


До getParameter("news_id") не доходит, возникает ошибка:
. java.lang.NoClassDefFoundError: javax.servlet.ServletInputStream
PM MAIL WWW ICQ Skype   Вверх
Sun
Дата 19.3.2004, 11:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Account removed
***


Профиль
Группа: Экс. модератор
Сообщений: 1611
Регистрация: 14.8.2002

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



java.lang.NoClassDefFoundError: javax.servlet.ServletInputStream - у тебя в CLASSPATH не задан путь к этому пакету. Что ты используешь в качестве контейнера сервлетов? Если Tomcat, то надо установить перменную среды JAVA_HOME к твоему SDK.


--------------------
Account removed
PM MAIL   Вверх
EcoloRa
Дата 22.3.2004, 04:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Всем спасибо за помощь.
Решил проблему кардинально: компилирую классы в Visual Age For Java, а запускаю под servletrunner (JSDK). 100% гарантия, что необходимые мне классы будут найдены, если путь к ним или их пакетам прописан в Windows CLASSPATH.
Плюс к этому появилась возможность сохранять файлы в каталог относительно пути запущенного сервлета (в Visual Age for Java эту проблему не решил).
А время Tomcat еще не пришло. wow.gif)
PM MAIL WWW ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
javastic
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

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

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


 




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


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

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