Как я могу обрабатывать запросы по почте Multipart/Form-Data в моем сервлеле Java?

StackOverflow https://stackoverflow.com/questions/3510788

Вопрос

Мне очень трудно справиться с запросами Multipart/Form Data с моим сервером Java Application. Из того, что я узнал, спецификация Servlet 3.0 предоставляет такие методы, как httpservlectrequest.getParts (), которые были бы идеальными для обработки данных, загруженных в мой сервис.

Тем не менее, этот метод является частью спецификации сервлета 3.0, и мой сервер приложений (Tomcat 6) еще не поддерживает это. Даже с действительным файлом 3.0 web.xml и Java EE 6 LIBS, я получаю следующее исключение при попытке вызовать getParts ():

java.lang.NoSuchMethodError: javax.servlet.http.HttpServletRequest.getParts()Ljava/util/Collection;

Переключение серверов приложений на самом деле не является возможным вариантом для этого проекта. Существуют ли какие-либо сторонние библиотеки доступны для обработки Multipart/Form-Data в сервлетах Java?

Это было полезно?

Решение

Проверить Apache Commons fileupload. Анкет Это дает вам программный API для анализа многотатического запроса и переворачивания через его части индивидуально.

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

Другие советы

Tomcat 6 нет и не поддерживает спецификацию сервлета 3.0. Анкет Вы должны попытаться сделать это на Tomcat 7, но я не очень уверен, присутствует ли эта функция в бета-версии, который в настоящее время доступен. Ожидается, что функциональность присутствуют в выпуске производства, хотя.

Вы можете продолжать использовать Apache Commons FileUpload, как опубликовано в другом ответе, или вы можете использовать стеклянную рыбу (в зависимости от текущей фазы и типа вашего проекта).

Когда мы использовали метод POST, чем данные зашифрованы, поэтому мы должны использовать ServletFileUpload для получения запрошенных данных и использования FileItemiterator, мы можем получить все данные формы.

Я уже отвечаю на эту ссылку Как обработать форму, отправленную Google Web Toolkit в сервисе

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top