Vika7
@Vika7
вебист

Multipart/form-data java не приходят поля?

Помогите решить проблему с получением данных с Multipart/form-data формы:
Форма:
<form method="post" action="UploadServlet" enctype="multipart/form-data">
            Select file to upload: <input type="file" name="uploadFile" >
            First name:<br>
                <input type="text" name="firstname" value="Mickey">
            <br>
            Last name:<br>
            <input type="text" name="lastname" value="Mouse">
            <br/>
            <input type="submit" value="Upload" />
        </form>


Сервлет POST:
try {
            // parses the request's content to extract file data
            List<FileItem> formItems = upload.parseRequest(request);
            Iterator<FileItem> iter = formItems.iterator();
            // iterates over form's fields
            while (iter.hasNext()) {
                FileItem item = (FileItem) iter.next();
                // processes only fields that are not form fields
                if (!item.isFormField()) {
                   String fileName = new File(item.getName()).getName();
                    String filePath = uploadPath + File.separator + dateFormat.format(date) + fileName;
                    File storeFile = new File(filePath);
                    
                    // saves the file on disk
                    item.write(storeFile);
                    String value = item.getString("firstname");
                    String value1 = item.getString("lastname");   
                }
            }


фйал приходит и записывается но текстовые поля null.
Руководствоавалась этим, но не помогает. В чем моя ошибка?
  • Вопрос задан
  • 1274 просмотра
Решения вопроса 1
@Phobos911
Если добавить аннотацию @MultipartConfig в класс и брать параметры из формы таким образом request.getParameter("firstname") в начале метода, то,вроде, все работает. item.getString() - getString() принимает как аргумент кодировку, а не имя параметра из формы.
Тут по английски обьясняют что куда
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Bell Integrator Ульяновск
До 400 000 ₽
Bell Integrator Хабаровск
До 400 000 ₽
Bell Integrator Ижевск
До 400 000 ₽