Загрузка файлов в JSP
как осушествляется загрузка файлов в JSP на сервер
Так же как и если форма для загрузки лежит на html странице.
Он, наверное, имеет в виду - как принять. Методом POST.
ServletInputStream sis = httpServletRequest.getInputStream();
sis.read(...);
P.S. не мешало бы еще проверить httpServletRequest.getContentLength(), ато мало ли горе-хакер решит тебе забить весь канал загрузкой гигового файла.
<%@ page language="java"%>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-bean" prefix="bean"%>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html"%>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-logic" prefix="logic" %>
Но почему то не один пример на запускается.
Скачал с jakarta struts-1.3.5-lib, там много jar файлов. Где то прочитал что нужно расположить яр файл struts.jar в мою среду разработки Java. Установил все яры , Tomcat вдруг перестал загружаться!,оставил только которые в названии начинаются на struts. Компиляция java файлов стала проходить успешно проходить успешно, Tomcat загружается.
Jsp так и не работают, может кто знает в чем дело.
<%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html"%>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-logic" prefix="logic" %>
Куда uri показывают?
Значит, tomcat при попытке скомпилить твою jsp будет лезть на http://jakarta.apache.org/struts/tags-bean, чтобы подключить бин.
Проверял, что на http://jakarta.apache.org/struts/tags-bean лежит?
Если ты struts поставил на локальном компьютере, то не мешало бы прописать твой локальный путь.
Только что проверил:"Невозможно отобразить страницу". А для чего нужен локальный путь и где его прописывать?
Цитата: Aoli
Значит, tomcat при попытке скомпилить твою jsp будет лезть на http://jakarta.apache.org/struts/tags-bean, чтобы подключить бин.
Aoli ти немного не прав. Когда создается какой-то тег, то в *.tld файле прописивается URI (например, http://jakarta.apache.org/struts/tags-bean), и когда ти юзаеш ету таг-либу ти можеш в web.xml прописать локальное размищение, но если етого не сделать, то можно по его полной URI тоже до него доступаться (на локале), хотя я точно не уверен что на Томкате ето заработает, но на Weblogic работает :-)
например я загружаю
<form enctype="multipart/form-data" action="runServlet" method=post>
<input type="hidden" name="MAX_FILE_SIZE" value="1000">
Upload this file: <input name="userfile" type="file">
<input name="submit" type="submit" value="Send File">
</form>
а как в сервлете узнать имя загружаеиого файла
получить данніе из файла ?
Думаю етого достаточно для загрузки.
А FormBean - это что такое?
Когда ти аплоадиш файл в сервлет, то соответственно в сервлете реквест должен создаваться как MultipartRequest и в нем есть методи для роботи з файлами (getFileNames например).
MultipartRequest - это такой тип? Тоесть мне надо сделать привендение типов?
Тебе нужно в дебаге посмотреть какой конкретно реквест у тебя поднимается, и тогда сделась приведение к етому типу.