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

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

Войти через центр авторизации
Похожие вопросы