powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Java [игнор отключен] [закрыт для гостей] / Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
25 сообщений из 68, страница 2 из 3
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39858495
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jQuery приаттачил.
Тогда можно потестить без бэка и томката. Просто посмотреть отправку на F12 в фоксе.
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39858522
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp,
вот получилось
фронт
Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
 <form action="UpLoad" method="POST" id="upl" enctype="multipart/form-data">
            <input type="file" name="fileName" multiple="multiple" />
            <input type="submit" />
        </form>

        <script>
            // Описываем общие установки для всех ajax-запросов
//            https://pai-bx.com/wiki/js/1971-form-submit-file-jquery-ajax/
            $.ajaxSetup({
                url: 'UpLoad', // путь к обработчику
                type: 'POST', // метод передачи данных
                dataType: 'text', // тип ожидаемых данных в ответе
                beforeSend: function () { // Функция вызывается перед отправкой запроса
                    console.debug('Запрос отправлен. Ждите ответа.');
                    // тут можно, к примеру, начинать показ прелоадера, в общем, на ваше усмотрение
                },
                error: function (req, text, error) { // отслеживание ошибок во время выполнения ajax-запроса
                    console.error('Упс! Ошибочка: ' + text + ' | ' + error);
                },
                complete: function () { // функция вызывается по окончании запроса
                    console.debug('Запрос полностью завершен!');
                    // тут завершаем показ прелоадера, если вы его показывали
                }
            });
            $(function () {
                $('#upl').on('submit', function (e) {
                    e.preventDefault();
                    var $that = $(this),
                            formData = new FormData($that.get(0)); // создаем новый экземпляр объекта и передаем ему нашу форму (*)
                    $.ajax({
                        contentType: false, // важно - убираем форматирование данных по умолчанию
                        processData: false, // важно - убираем преобразование строк по умолчанию
                        data: formData,
                        success: function (json) {
                            console.log(json);
                            if (json) {
                                // тут что-то делаем с полученным результатом
                            }
                        }
                    });
                });
            });

        </script>




бэк
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
   @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response)  {

        try {            Collection<Part> p = request.getParts();
            p.forEach((Part _item) -> {
               PrintWriter out = null;
                try {

                    try {
                        
                        System.out.println("----> Post " + _item.getSubmittedFileName());
                        InputStream filecontent = _item.getInputStream();
                        //
                        byte[] buffer = new byte[filecontent.available()];
                        filecontent.read(buffer);
                        Files.createDirectories(Paths.get(Singleton.getPathToPic() + "excel"));
                        File targetFile = new File(Singleton.getPathToPic() + "excel" + File.separator + _item.getSubmittedFileName());
                        try (OutputStream outStream = new FileOutputStream(targetFile)) {
                            outStream.write(buffer);
                            outStream.flush();
                        }
                        
                        
                        
                    } catch (IOException ex) {
                        Logger.getLogger(UpLoad.class.getName()).log(Level.SEVERE, null, ex);
                    }
                    out = response.getWriter();
                    out.print("000000000000000");
                    out.flush();

                   

                } catch (IOException ex) {
                    Logger.getLogger(UpLoad.class.getName()).log(Level.SEVERE, null, ex);
                } finally {
                    out.close();
                }
            });
        } catch (IOException | ServletException ex) {
            Logger.getLogger(UpLoad.class.getName()).log(Level.SEVERE, null, ex);
        }
        
        try {
            response.sendRedirect("/" + com.Singleton.PORTAL + "/page1.jsp");
        } catch (IOException ex) {
            Logger.getLogger(UpLoad.class.getName()).log(Level.SEVERE, null, ex);
        }
    }

...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39858534
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя
Код: javascript
1.
new FormData($that.get(0)); // создаем новый экземпляр объекта и передаем ему нашу форму (*)


Видел я этот вариант с конструктором но не пробовал.
Спасибо.
Теперь проверю в понедельник.
Отпишусь.
До связи!
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39859293
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,
Вот тут у меня сомнения.
У тебя сабмит формы и AJAX одновременно?
Я не могу выбрать или сабмит ИЛИ ajax без перерисовки.
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39859306
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC SharpУ тебя сабмит формы и AJAX одновременно?
Я не могу выбрать или сабмит ИЛИ ajax без перерисовки.тут как бы смесь.
форма служит для загрузки, а отправка идёт по ajax
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39859307
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC SharpЯ не могу выбрать или сабмит ИЛИ ajax без перерисовки.а что нужно получит в итоге?
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39859316
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяPetroNotC SharpЯ не могу выбрать или сабмит ИЛИ ajax без перерисовки.а что нужно получит в итоге?думаю, можно ли не смешивать? Так как не понял твоего: "для загрузки".
У меня форма не нужна и все загружается так как AJAX (сабмита нету)
Если конечно глюк и так нельзя, тогда буду твой вариант.
Счас буду пробовать без смешивания.
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39859318
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp,
вот тут без форм https://wp-kama.ru/id_9026/jquery-ajax-zagruzka-fajlov-na-server.html
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39859324
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp,

вот тут раскрыто фсё волшебство FormData
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39859325
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяPetroNotC Sharp,
вот тут без форм https://wp-kama.ru/id_9026/jquery-ajax-zagruzka-fajlov-na-server.html
Ну. А почему у меня выше не работает с пустым конструктором и без формы?
Глюки?
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39859329
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp,

насколько я смог найти разницу
у тебя
Код: javascript
1.
2.
3.
	for(var i=0; i<files.length; i++){
		formdata.append('image_'+i, files[i]);
	}



и по ссылке
Код: javascript
1.
2.
3.
4.
5.
6.
7.
// заполняем объект данных файлами в подходящем для отправки формате
	$.each( files, function( key, value ){
		data.append( key, value );
	});

	// добавим переменную для идентификации запроса
	data.append( 'my_file_upload', 1 );
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39859333
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,
Цикл один и тот же.
А my_file_upload счас попробую.
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39859337
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя
Код: javascript
1.
data.append( 'my_file_upload', 1 );

не. Это не повлияло.
Без формы в конструкторе не работает.
Буду добавлять.
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39859338
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp,
тут
<input type="button" onclick="buttonClick()"; />
ошибка
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39859344
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяPetroNotC Sharp,
тут
<input type="button" onclick="buttonClick()"; />
ошибкаисправил. Хотя событие работало. Я отладчике смотрел.
И не ругалось))))
Вот такой js странный ЯП))
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39859347
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharpисправил. Хотя событие работало. Я отладчике смотрел.
И не ругалось))))
Вот такой js странный ЯП))
у меня IDE ругалось
твой вариант работает, но jquery вылетает с timeout
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39859357
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадятвой вариант работает, но jquery вылетает с timeoutне работает.....
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39859358
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяIDEу меня голый без плагинов иклипсе. Пропускает.
И потом отладчик фокса тоже молчал в консоли)
...
Почему то у меня не работает подписка на сабмит
$('#form-withdraw').submit(function(event) {
...
Надо код вынести из html
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39859360
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Схема такая
- сабмит в форме
- собыие в js файле и там добавка 500 фоток в formData(form
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39859369
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC SharpПочему то у меня не работает подписка на сабмит
$('#form-withdraw').submit(function(event) {решено))
Асинхронная загрузка и я не поставил onLoad событие снаружи
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39859385
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp,

ещё ошибка
<input type="file" assept="image/png, image/jpeg" multiple />

accept
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39859389
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяacceptисправил.
...
Передал форму в конструктор. Не стало фоток в отправке на f12 в фоксе.
Счас попробую твой код.
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39859395
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это мой текущий нерабочий

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<SCRIPT src="./js/vendor/jquery.min.js"></SCRIPT>
<SCRIPT src="./js/photo-upload.js"></SCRIPT>
</head>
<body>

<form action="http://localhost:8080/photo-edit/uploads" method="POST" id="id-form" named="formMain" enctype="multipart/form-data">
	<input type="file" accept="image/png, image/jpeg" multiple />
	<input type="submit" />
</form>

</body>
</html>

// JS
window.onload = function() {

$("form").submit(function(event){
	var form = $('form').get(0);
	if (!form) {alert('No selected form'); return;}
	var files = $('input[type=file]')[0].files;
	if (!files) {alert('No selected files'); return;}
	var formdata = new FormData(form);
	for(var i=0; i<files.length; i++)
		formdata.append('image_'+i, files[i]);
	
	$.ajax({
		 url: 'http://localhost:8080/photo-edit/uploads',
		 type: "POST",
		 data: formdata,
		 timeout: 2000,
		 contentType: "multipart/form-data",
		 processData: false,
		 cache: false,
		 error: function(x, t, m){
			 alert("Error: " + t);
		 }	 
	 });
});	

};
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39859403
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp,

вот такой работает

<input type="file" accept="image/jpeg" multiple="multiple" />
<input type="button" onclick="buttonClick();" value="00000000000"/>



<script>
function buttonClick() {
var files = $('input[type=file]')[0].files;
if (!files) {
alert('No selected files');
return;
}
var formdata = new FormData();
for (var i = 0; i < files.length; i++) {
formdata.append('image_' + i, files[i]);
}


$.ajax({
url: 'UpLoad',
type: "POST",
enctype: "multipart/form-data",
data: formdata,
contentType: false, // важно - убираем форматирование данных по умолчанию
processData: false, // важно - убираем преобразование строк по умолчанию
dataType: 'text', // тип ожидаемых данных в ответе
success: function (json) {
console.log(json);
}

});
}

</script>[/SRC]
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39859407
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp,

а куда стока фоток?
есть код позволяющий кадрировать/поворачивать/нормолизовать поразмеру/ делать превьюшки
...
Рейтинг: 0 / 0
25 сообщений из 68, страница 2 из 3
Форумы / Java [игнор отключен] [закрыт для гостей] / Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]