powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / request.getAttribute ничего не возвращает
25 сообщений из 25, страница 1 из 1
request.getAttribute ничего не возвращает
    #39198252
Фотография by-pass
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Доброго времени,
подскажите, пожалуйста, как вернуть данные из jsp в сервлет?
Имеется сервлет, который передает в jsp массив значений некоторого класса Task.
Код: java
1.
2.
3.
4.
5.
6.
{
...
    List<Task> task_list = new ArrayList<Task>(данные_полученные_из_БД);
    request.setAttribute("task_list", task_list);
    request.getRequestDispatcher(Links.TASK_LIST_JSP).forward(request, response);
...


В jsp этот массив отображается в виде таблицы с возможностью редактировать значения в некоторых ячейках.
Отображаются все записи, которые получает jsp:
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
<table class="table">
...
	<c:forEach items="${task_list}" var="task" >					
		<tr>
			<td>${task.id}</td>
                        ...
		</tr>							
	</c:forEach>
</table>


Есть кнопка типа:
Код: java
1.
    <input type="submit" name="save" value="save" />


Вопрос:
как вернуть в сервлет отредактированную таблицу значений (массив Task)?
Спасибо.
...
Рейтинг: 0 / 0
request.getAttribute ничего не возвращает
    #39198257
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
by-pass,
у тебя есть javascript.
вот им и верни.
только вернёшь не таблицу. а набор данных, в зависимости от того как ты его сформируешь.
тут надо изучать javascript
...
Рейтинг: 0 / 0
request.getAttribute ничего не возвращает
    #39198261
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
by-pass,

Ваше "вернуть в сервлет" вгоняет в ступор. JSP ничего не "возвращает" в сервлет. JSP выдаёт HTML, который рендерит браузер и показывает пользователю. Соответственно данные из HTML нужно отправить обратно на сервер и перехватить их и обработать любым сервлетом.
Но самое большее недоумение вызывает вопрос почему бы не взять любой внятный Web Framework типа того же Spring MVC?
...
Рейтинг: 0 / 0
request.getAttribute ничего не возвращает
    #39198275
Фотография by-pass
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,
Всё просто, пока что меня "вгоняет в ступор" много непонятных слов в Вашем ответе.
Изначально имелся простой пример некой реализации отображения данных из БД в виде HTML.
Его я и использовал, подкрутив под свои потребности.
Но некоторой функциональности не хватает.
...
Рейтинг: 0 / 0
request.getAttribute ничего не возвращает
    #39198276
Фотография by-pass
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,
Спасибо, попробую.
...
Рейтинг: 0 / 0
request.getAttribute ничего не возвращает
    #39198278
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
by-passВсё просто, пока что меня "вгоняет в ступор" много непонятных слов в Вашем ответе.

Ну, значит пора начинать читать про HTTP, а потом уже перейти к сервлетам.
...
Рейтинг: 0 / 0
request.getAttribute ничего не возвращает
    #39198282
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
by-pass...Изначально имелся простой пример некой реализации отображения данных из БД в виде HTML.
Его я и использовал, подкрутив под свои потребности.....

Что совершенно изумляет, так это:

1.
"В jsp этот массив отображается в виде таблицы с возможностью редактировать значения в некоторых ячейках."

Каким образом у Вас табличные тэги TABLE,TR,TD стали "с возможностью редактировать" - покрыто мраком

2.
У кнопки с type="submit" должен IMHO быть еще и объемлющий его тег FORM. Вот в теги FORM и прописано, как передавать данные на сервер. Method (post,get) и url.
...
Рейтинг: 0 / 0
request.getAttribute ничего не возвращает
    #39198283
Фотография by-pass
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,
Всё как обычно - задачу нужно было решить вчера, а теперь приходится решать мне, который в этом "не ухо не рыло".
Читать, безусловно, нужно.
...
Рейтинг: 0 / 0
request.getAttribute ничего не возвращает
    #39198286
Фотография by-pass
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid Kudryavtsev,
Да всё есть и работает. Не хотелось тащить весь код.
Вопрос, как мне показалось, простой: получить в сервлете массив значений класса, который я передал в jsp.
...
Рейтинг: 0 / 0
request.getAttribute ничего не возвращает
    #39198287
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
by-passВопрос, как мне показалось, простой: получить в сервлете массив значений класса, который я передал в jsp.
Вопрос простой если понимать что такое HTTP запрос и HTTP ответ и как они объединяют браузер и HTTP сервер.
Передать, как вы выражаетесь, "из JSP" не особо выйдет. Так как передать вам нужно их HTML, который у пользователя. JSP у пользователя нет. А JSP это, по сути, тот же сервлет, просто записанный другим языком.
...
Рейтинг: 0 / 0
request.getAttribute ничего не возвращает
    #39198288
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
by-pass...
Вопрос, как мне показалось, простой: получить в сервлете массив значений класса, который я передал в jsp.

1. Зачем получать то, что у тебя и так есть?

2. Если у тебя его уже нет (например стерся).
Где то сохранить:
2.1. Сессия на стороне сервера
2.2. Сохранить в HTML, например в виде полей input type=hidden и вернуть обратно
2.3. что-то еще

Варианты 2.1 и 2.2, это "как НЕ надо делать". Т.к. правильный подход зависит от задачи/приложения. В Вашем случае, все что нужно - найти человека который хоть как-то в web front end'е разбирается
...
Рейтинг: 0 / 0
request.getAttribute ничего не возвращает
    #39198294
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
by-passИзначально имелся простой пример некой реализации отображения данных из БД в виде HTML.

Ну, просто, если вы хотите показывать данные, то JSP/Servlet - пойдёт.
Если же данные нужно редактировать, да ещё и в таблице, то нахрен такое счастье как JSP - не понятно.
Берем любой готовый JS грид. Например.
http://backgridjs.com/#basic-example
Прикручиваем к нему любой REST сервер
http://www.vogella.com/tutorials/REST/article.html
https://sparktutorials.github.io/2015/04/03/spark-lombok-jackson-reduce-boilerplate.html

Но от надобности понимать HTTP это никак не избавляет.
...
Рейтинг: 0 / 0
request.getAttribute ничего не возвращает
    #39198299
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нафига такой гемор?
я спокойно меняю поле в таблице , по энтер идет сохранение на сервере..
...
Рейтинг: 0 / 0
request.getAttribute ничего не возвращает
    #39198302
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
как вариант
при измененении поля в таблице изменённое значение можно записать в тэг data-new , добавив его
потом перебрать все ячейки с тэгом data-new и собрать в их в json, соответственно сделав приязку к определленным полям
и передать на сервер...
...
Рейтинг: 0 / 0
request.getAttribute ничего не возвращает
    #39198312
Фотография by-pass
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid Kudryavtsev,
автор1. Зачем получать то, что у тебя и так есть?
Значения полей могут быть изменены пользователем.
авторВ Вашем случае, все что нужно - найти человека который хоть как-то в web front end'е разбирается
Я так не делаю.
...
Рейтинг: 0 / 0
request.getAttribute ничего не возвращает
    #39198315
Фотография by-pass
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,
Спасибо, у Фогеля хорошие статьи, ознакомлюсь.
Но для моей задачи нужно что-то простое. Возможно я заблуждаюсь.
...
Рейтинг: 0 / 0
request.getAttribute ничего не возвращает
    #39198316
Фотография by-pass
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,
мне нравится и вроде как то, что нужно для этой задачи. А примеров каких-нибудь нет?
...
Рейтинг: 0 / 0
request.getAttribute ничего не возвращает
    #39198335
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
by-passвадя,
мне нравится и вроде как то, что нужно для этой задачи. А примеров каких-нибудь нет?
если я заикнусь о примерах тут начнётся очередной офф
я даже не знаю как быть.....
могу предложить только общение по мылу , чтоб не разводить очередной балаган.
...
Рейтинг: 0 / 0
request.getAttribute ничего не возвращает
    #39198343
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
by-pass,
по скайпу могу даже продемонстрировать пример пости для тебя :)
...
Рейтинг: 0 / 0
request.getAttribute ничего не возвращает
    #39198521
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяесли я заикнусь о примерах тут начнётся очередной офф
если чел сделал и просит руками, то почему нет)
- в цикле собирает параметры и отправляет на сервер. Хоть через запятую, хоть JSON.
Только тут от Java ничего не будет)).
...
Рейтинг: 0 / 0
request.getAttribute ничего не возвращает
    #39198523
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
by-passНо некоторой функциональности не хватает.
хотя бы слово JSON изучи. Минимум.
Удачи!
...
Рейтинг: 0 / 0
request.getAttribute ничего не возвращает
    #39198540
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
от java будет только на сервере...
я б сделал так при формировании в jsp в каждой ячейке вставил бы тэг data-id="id_записи|имя_поля"
при изменении значения в таблице добавлял бы класс для этой ячейки, который бы выделял цветом фон выделяя изменённые значения, и по этому классу делал бы отбор ( http://jquery.page2page.ru/index.php5/Вызов_функции_для_элементов_набора)
и формировал бы массив
массив.push( data-id + "|"+"значение ячейки")
потом массив.join('@') - получал бы строку, которую и передава на сераер любым методом
на сервере сплитом парсить....
надеюсь дело за практической реализацией не встанет?
...
Рейтинг: 0 / 0
request.getAttribute ничего не возвращает
    #39198555
Фотография by-pass
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,
Спасибо, попробую этот вариант. Просто задача, как мне кажется, тривиальная и городить огород для работы десятка человек с парой страниц пока не хочется. Если как-то будет развиваться, то буду копать глубже.
Всем спасибо!
...
Рейтинг: 0 / 0
request.getAttribute ничего не возвращает
    #39199290
Atum1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid Kudryavtsev
1.
"В jsp этот массив отображается в виде таблицы с возможностью редактировать значения в некоторых ячейках."

Каким образом у Вас табличные тэги TABLE,TR,TD стали "с возможностью редактировать" - покрыто мраком
.

можно и так :)
http://htmlbook.ru/html/attr/contenteditable
...
Рейтинг: 0 / 0
request.getAttribute ничего не возвращает
    #39199293
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Atum1Leonid Kudryavtsev1.
"В jsp этот массив отображается в виде таблицы с возможностью редактировать значения в некоторых ячейках."

Каким образом у Вас табличные тэги TABLE,TR,TD стали "с возможностью редактировать" - покрыто мраком
.

можно и так :)
http://htmlbook.ru/html/attr/contenteditable
вариант не очень жизненный- т.к. у contenteditable нет событий.....
...
Рейтинг: 0 / 0
25 сообщений из 25, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / request.getAttribute ничего не возвращает
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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