powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Java [игнор отключен] [закрыт для гостей] / Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
25 сообщений из 68, страница 1 из 3
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39858080
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не могу получить на сервере.
Там новый api
request.getParts()
...
getContentType дает false. А должен: multipart/form-data.
Вадя, ты этим api делал?
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39858093
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39858096
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,
Ок.
До завтра буду изучать.
Хотя у меня не
<form action="upload" method="post" enctype="multipart/form-data">
<input type="text" name="description" />
<input type="file" name="file" />
<input type="submit" />
</form>
А руками в js
formData = new FormData()
....
Спс.
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39858106
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,
Зачем тут false везде в вебе в contenttype?
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
jQuery.ajax({
    url: 'php/upload.php',
    data: data,
    cache: false,
    contentType: false,
    processData: false,
    method: 'POST',
    type: 'POST', // For jQuery < 1.9
    success: function(data){
        alert(data);
    }
});
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39858143
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[quote PetroNotC Sharp]Зачем тут false везде в вебе в contenttype?[/quoteхз
http://jquery.page2page.ru/index.php5/Ajax-запрос#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80_dataType
как бы если только очень хочется
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39858174
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp,
Код: plaintext
1.
2.
3.
4.
5.
6.
contentType:string('application/x-www-form-urlencoded')

При отправлении запроса на сервер, данные передаются в формате, указанном в contentType. По умолчанию 
используется 'application/x-www-form-urlencoded', который подходит в большинстве случаев. Если указать этот 
параметр явно, то он будет передан серверу (даже если туда не были отправлены никакие данные). Стоит 
отметить, что данные всегда будут передаваться в кодировке UTF-8. Это стоит учитывать при обработке данных 
на стороне сервера
.

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

Не вышло.
Если ставить false (рекомендуют) то у меня ошибка выше описана.
Если ставить
Код: java
1.
contentType: "multipart/form-data",



То ошибка уже
https://stackoverflow.com/questions/36005436/the-request-was-rejected-because-no-multipart-boundary-was-found-in-springboot
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39858441
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,
То есть по докам должно false и тогда хром сам разбирается.
Но у меня при отправке в логах тоже false и в сервлете получаю false.
Потом райзе.
Как в сервлете взять просто сырое все что пришло?
Счас тесты код выложу. Может кто попробует.
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39858445
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp,

а если через форм попробовать?

Код: javascript
1.
2.
3.
4.
   <form action="UpLoad" method="POST" id="upl" enctype="multipart/form-data">
            <input type="file" name="fileName" />
            <input type="submit" />
    </form>



и типа такого
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
 protected void doPost(HttpServletRequest request, HttpServletResponse response) {


        try {

            Part filePart = request.getPart("fileName"); // Retrieves <input type="file" name="file">
            InputStream filecontent = filePart.getInputStream();

            byte[] buffer = new byte[filecontent.available()];
            filecontent.read(buffer);
            
            File targetFile = new File(......... + File.separator + request.getPart("fileName").getSubmittedFileName());

            try (OutputStream outStream = new FileOutputStream(targetFile)) {
                outStream.write(buffer);
                outStream.flush();
            }
             response.sendRedirect("/" ..............);
        } catch (IOException | ServletException ex) {
            Logger.getLogger(UpLoad.class.getName()).log(Level.SEVERE, null, ex);
        }

    }
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39858447
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тест с ошибкой.
- запуск, выбрать в эксплорере пару фоток и нажать кнопу отправить на сервер
- в сервлете райзе при доступе к ним (GlassFish)
Код: 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.
50.
51.
52.
53.
54.
55.
56.
<%@ 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>
<meta name="robots" content="noindex,nofollow" />
<meta name="viewport" content="width=device-width, ainitial-scale=1.0">

<SCRIPT src="<%= request.getContextPath() %>/js/vendor/jquery.min.js"></SCRIPT>
<SCRIPT src="./js/photo-upload.js"></SCRIPT>

<title>Редактор альбома</title>
</head>
<body>
<div>
	<p>Images</p>
	<input type="file" assept="image/png, image/jpeg" multiple />
	<input type="button" onclick="buttonClick()"; />
</div>
</body>
</html>
...... 
window.onload = function() {
	//------- check HTML5 file API----------- 
	if (window.File && window.FileReader && window.FileList && window.Blob){
		
	}
	else
	{
		alert('The File APIs HTML5 are not fully supported in this browser.');
	}
};

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: 'http://localhost:8080/photo-edit/uploads',
		 type: "POST",
		 enctype:"multipart/form-data",
		 data: formdata,
		 timeout: 2000,
		 contentType: false,
		 processData: false,
		 cache: false,
		 error: function(x, t, m){
			 alert("Error: " + t);
		 }	 
	 });
}
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39858448
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяа если через форм попробовать?а как, если я в динамике в openDialog выделяю 500 фоток и отправляю на сервер.
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39858450
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharpэксплорере пару фоток и нажать кнопу отправить на сервера по одной?
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39858451
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяа если через форм попробовать?счас попробую, но это не мой юзкейс
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39858452
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharpсчас попробую, но это не мой юзкейсэто для диагностики
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39858455
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяPetroNotC Sharpсчас попробую, но это не мой юзкейсэто для диагностикида. Сделаю конечно. Отпишусь.
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39858462
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.
47.
48.
49.
50.
51.
52.
package uploadfiles;

import java.io.IOException;
import java.util.Collection;
import java.util.Collections;
import java.util.Enumeration;

import javax.servlet.ServletException;
import javax.servlet.ServletInputStream;
import javax.servlet.annotation.MultipartConfig;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.Part;

@MultipartConfig
@WebServlet("/uploads")
public class UploadFiles extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    public UploadFiles() {
        super();
    }

	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		response.getWriter().append("Served at: ").append(request.getContextPath());
	}

	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		doGet(request, response);

		System.out.println("----> Post request.getContentType(... "+ request.getContentType());	//Post request.getContentType(... false
		System.out.println("----> request.getContentLengthLong(... "+ request.getContentLengthLong()); //request.getContentLengthLong(... 1413

		//ServletInputStream stream = request.getInputStream();

		/* errrorrrr
		 * 
		 * 2019-09-05T17:56:49.347+0300|Warning: StandardWrapperValve[uploadfiles.UploadFiles]: Servlet.service() for servlet uploadfiles.UploadFiles threw exception
			javax.servlet.ServletException: The request content-type is not a multipart/form-data
			at org.apache.catalina.fileupload.Multipart.getParts(Multipart.java:172)
		 */
		Collection<Part> p = request.getParts();
		for(Part i : p){
			System.out.println("----> Post "+ p);	
		};
		
		
	}

}
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39858479
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вадя, в твоем юз кейсе без райзе срабатывает это
Collection<Part> p = request.getParts();
Что дальше?
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39858481
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И в заголовке ДЛЯ ОДНОГО ФАЙЛА пишется при форме
multipart/..... ;boundary=----3453e454e
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39858482
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Счас два фото в статике пробую.
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39858484
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC SharpСчас два фото в статике пробую.ОК. Работает!!!
Вадя, значит дело не на бэке а на фронте.
Помогай!
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39858487
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp,
вот так
Код: javascript
1.
2.
3.
4.
        <form action="UpLoad" method="POST" id="upl" enctype="multipart/form-data">
            <input type="file" name="fileName" multiple="multiple" />
            <input type="submit" />
        </form>



Код: 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.
 @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response)  {

        try {
         
            Collection<Part> p = request.getParts();
            p.forEach((Part _item) -> {
                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);
                }

            });
        } 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);
        }
    }



только это
Files.createDirectories(Paths.get(Singleton.getPathToPic() + "excel"));
FSingleton.getPathToPic() + "excel"
замени на своё
загружает множество файлов
томкат, хром
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39858488
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC SharpВадя, значит дело не на бэке а на фронте.
Помогай!дай время
...
Рейтинг: 0 / 0
Upload files не выходит в GlassFish. Кто делал для servlet 3.0 c @MultipartConfig?
    #39858491
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,

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

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


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