Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Ошибка Request method 'GET' not supported / 21 сообщений из 21, страница 1 из 1
31.08.2012, 12:09:54
    #37938489
Жентос
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка Request method 'GET' not supported
Пишу в STS простенький MVC проект.
Реализовал список с сущностями, решил, что будет удобным, если гиперссылка с функцией "удалить" будет рядом с элементом списка. Реализовал метод, удаления, создал функцию в контроллере:

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
@RequestMapping(value = "/deleteComment/{commentId}", method = RequestMethod.POST)
public String deleteComment(@PathVariable int commentId, BindingResult result, Model model){
{
    Comment deletedComment = commentService.findCommentByID(commentId);
    if (deletedComment != null) {
         commentService.deleteComment(deletedComment);
    }

     return "refresh:";
}



Но вот, незадача: по переходу по гиперссылке появляется сообщение “Request method 'GET' not supported”
Подскажите, как можно его преодолеть.

Мой ход мыслей такой: у меня есть список сущностей, соответсвенно GET-запрос уже сделан в другой функции, сейчас я хочу запостить на сервер удаление элемента с ID=N. К сожалению, не получается...
...
Рейтинг: 0 / 0
31.08.2012, 12:13:16
    #37938501
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка Request method 'GET' not supported
Если отложить в сторону JavaScript, то ...
...браузер посылает POST запрос только из формы. А переход по ссылке это GET запрос. Учите протокол HTTP. Там даже есть метод DELETE, но беда в том что браузеры его не используют.
...
Рейтинг: 0 / 0
31.08.2012, 12:16:39
    #37938511
Жентос
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка Request method 'GET' not supported
BlazkowiczЕсли отложить в сторону JavaScript, то ...
...браузер посылает POST запрос только из формы. А переход по ссылке это GET запрос. Учите протокол HTTP. Там даже есть метод DELETE, но беда в том что браузеры его не используют.
А если кнопку сделать?

Мне не трудно сделать форму, но она там не нужна. Это будет форма типа "Вы хотите удалить элемент?" и 2 кнопки.
Да, с интернет-программированием я на Вы, но стараюсь исправиться
...
Рейтинг: 0 / 0
31.08.2012, 12:20:59
    #37938521
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка Request method 'GET' not supported
ЖентосА если кнопку сделать?

То что?

ЖентосМне не трудно сделать форму, но она там не нужна.

Вас поуговаривать?

ЖентосЭто будет форма типа "Вы хотите удалить элемент?" и 2 кнопки.

И тут на сцену выходит JavaScript, с помощью которого, можно обработать любое действие пользователя и отправить любой нужный запрос на сервер.

ЖентосДа, с интернет-программированием я на Вы, но стараюсь исправиться
Пора отложить на время Java и почитать RFC по HTTP и учебники по DHTML/JavaScript и jQuery
...
Рейтинг: 0 / 0
31.08.2012, 12:23:33
    #37938532
Жентос
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка Request method 'GET' not supported
BlazkowiczИ тут на сцену выходит JavaScript, с помощью которого, можно обработать любое действие пользователя и отправить любой нужный запрос на сервер.
...
Пора отложить на время Java и почитать RFC по HTTP и учебники по DHTML/JavaScript и jQuery
Вот, дельный совет.
Спасибо

P.S. уговаривать меня не надо, надо указать на ошибку, или сказать, куда копать (если нужен "пласт" знаний, как в этом случае)
...
Рейтинг: 0 / 0
31.08.2012, 16:16:09
    #37939079
chpasha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка Request method 'GET' not supported
чувак, поставь method = RequestMethod.GET и не парь мозг. нафига городить огород?
...
Рейтинг: 0 / 0
31.08.2012, 17:19:47
    #37939183
Жентос
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка Request method 'GET' not supported
chpashaчувак, поставь method = RequestMethod.GET и не парь мозг. нафига городить огород?
А это правильно? Мне кажется, что идеологически гет-запрос нужен для получения информации с сервера, а пост нужен для записи

Я почитал описание тега button, думаю, сделаю кнопку с методом POST
...
Рейтинг: 0 / 0
31.08.2012, 17:23:26
    #37939188
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка Request method 'GET' not supported
ЖентосА это правильно? Мне кажется, что идеологически гет-запрос нужен для получения информации с сервера, а пост нужен для записи.
Я почитал описание тега button, думаю, сделаю кнопку с методом POST
Вам рано рассуждать что правильно а что нет. Нужно некоторое время повариться в этой кухне.
С точки зрения HTTP правильно использовать метод DELETE. Это называет RESTful.
С точки зрения простейшего HTML и браузера, совершенно побоку что у вас там на сервере, лишь бы работало.
...
Рейтинг: 0 / 0
31.08.2012, 19:04:14
    #37939349
dexsu
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка Request method 'GET' not supported
Но вот, незадача: по переходу по гиперссылке появляется сообщение “Request method 'GET' not supported”
Подскажите, как можно его преодолеть.

Мой ход мыслей такой: у меня есть список сущностей, соответсвенно GET-запрос уже сделан в другой функции, сейчас я хочу запостить на сервер удаление элемента с ID=N. К сожалению, не получается...[/quot]

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
$.ajax({
  type: 'post',
  url: '...',
  data: {
    id: '...',
    ...
  }
});
...
Рейтинг: 0 / 0
05.09.2012, 11:27:46
    #37944149
Жентос
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка Request method 'GET' not supported
В общем, сделал кнопку.
Примерно такую:
Код: html
1.
<form><button formaction = "../deleteComment/1" formmethod = "post">delete</button></form>


Она нормально отрисовалась, но по нажатию на нее управление методу контроллера не передается.
Тогда я попробовал перерисовать ее:
Код: html
1.
2.
3.
<form action="../deleteComment/1" method="post">
    <button>delete</button>
</form>


Тоже не помогло. Тогда переделал в гиперссылку, прикрутил в контроллер еще и метод GET, управление передалось. Вопрос: а что не так с кнопкой?
...
Рейтинг: 0 / 0
05.09.2012, 11:29:10
    #37944155
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка Request method 'GET' not supported
ЖентосВопрос: а что не так с кнопкой?
Кнопка сама по себе submit формы не делает. Учите HTML\DHTML. Java тут не при чем вообще.
...
Рейтинг: 0 / 0
05.09.2012, 12:05:03
    #37944264
Kachalov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка Request method 'GET' not supported
BlazkowiczС точки зрения HTTP правильно использовать метод DELETE. Это называет RESTful.
С точки зрения простейшего HTML и браузера, совершенно побоку что у вас там на сервере, лишь бы работало.
- ну так оно скорее всего и не будет работать, т. к. в большинстве случаев DELETE (как и PUT) заблокирован в web-сервере или proxy-сервере из соображений безопасности
...
Рейтинг: 0 / 0
05.09.2012, 22:31:18
    #37945614
Жентос
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка Request method 'GET' not supported
А кто-нибудь может перевести такую конструкцию с ASP.NET?

Код: c#
1.
2.
3.
4.
5.
using (Html.BeginForm("DeleteTopic", "Home"))
                {
                    <input type = "hidden" name = "topicId" value = "@item.ID"/>
                    <input type = "submit" value = "Удалить тему" />
                }
...
Рейтинг: 0 / 0
05.09.2012, 22:41:51
    #37945622
Жентос
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка Request method 'GET' not supported
ЖентосА кто-нибудь может перевести такую конструкцию с ASP.NET?

Код: c#
1.
2.
3.
4.
5.
using (Html.BeginForm("DeleteTopic", "Home"))
                {
                    <input type = "hidden" name = "topicId" value = "@item.ID"/>
                    <input type = "submit" value = "Удалить тему" />
                }



В общем, кнопки надо делать примерно вот так:
public static String actionSubmit(String caption, String controller, String action, String id){
String result, URI = "";
if (!controller.isEmpty()) {
URI = controller + "/";

};

URI += action + "/" + id;

//<input type = "submit" value = "Удалить тему" />
result = "<form action=\"" + URI + "\" method=\"" + "get" + "\">" +
"<input type=\"submit\" value = \"" + caption + "\"/>" + "" +
"</form>";

return result;
}

Так-то!!!
...
Рейтинг: 0 / 0
06.09.2012, 09:56:37
    #37945979
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка Request method 'GET' not supported
ЖентосВ общем, кнопки надо делать примерно вот так:
public static String actionSubmit(String caption, String controller, String action, String id){
String result, URI = "";
if (!controller.isEmpty()) {
URI = controller + "/";

};

URI += action + "/" + id;

//<input type = "submit" value = "Удалить тему" />
result = "<form action=\"" + URI + "\" method=\"" + "get" + "\">" +
"<input type=\"submit\" value = \"" + caption + "\"/>" + "" +
"</form>";

return result;
}
Так-то!!!
Facepalm. Люди уже более десятка лет изобретают хорошие способы для отделения кода от разметки, и тут на тебе...
...
Рейтинг: 0 / 0
06.09.2012, 10:46:39
    #37946074
Жентос
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка Request method 'GET' not supported
Blazkowicz, не стесняйтесь выкладывать более красивые решения.


Чем я люблю русскоязычные форумы -- это тем, что поиск ответа на тривиальный вопрос, очень напоминает выпытывание Великой Тайны из Мальчиша-Кибальчиша
...
Рейтинг: 0 / 0
06.09.2012, 11:02:55
    #37946111
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка Request method 'GET' not supported
ЖентосBlazkowicz, не стесняйтесь выкладывать более красивые решения.
Пожалуйста:
Код: html
1.
2.
3.
4.
<form action="/DeleteTopic" name="Home">
                    <input type = "hidden" name = "topicId" value = "${item.ID}"/>
                    <input type = "submit" value = "Удалить тему" />
</form>



ЖентосЧем я люблю русскоязычные форумы -- это тем, что поиск ответа на тривиальный вопрос, очень напоминает выпытывание Великой Тайны из Мальчиша-Кибальчиша
Очередной русофоб? На других форумах часто бываешь? Там всё иначе? Там невнятные вопросы тупо годами не отвечеными остаются. А здесь на каждую дурость набегает куча желающих подсказать и помочь разобраться.
...
Рейтинг: 0 / 0
06.09.2012, 11:31:24
    #37946200
Жентос
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка Request method 'GET' not supported
BlazkowiczОчередной русофоб? На других форумах часто бываешь? Там всё иначе? Там невнятные вопросы тупо годами не отвечеными остаются. А здесь на каждую дурость набегает куча желающих подсказать и помочь разобраться.
Да нет.
На StackOverflow за 1.5 часа ответили.
Тут я тему 31 августа завел....

Еще пример, разбирался с FlexXB. Была пара моментов, котоые были не освещены в мануале. Проблема с сериализацией коллекций висела неделю, пока не вышел на гуглогруппу разработчика, за 2 поста он объяснил, что еще надо дописать, чтобы сериализация проходила.
...
Рейтинг: 0 / 0
06.09.2012, 11:42:06
    #37946224
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка Request method 'GET' not supported
ЖентосДа нет.

Да да? :)

ЖентосНа StackOverflow за 1.5 часа ответили.

StackOverflow это отдельный мега успешный комерческий проект со своими правилами и отдельной модерацией. Запости на "нерусскоязычные" форумы аналогичные sql.ru.

ЖентосТут я тему 31 августа завел....

Тут всё тоже самое подробно ответили вроде.

ЖентосЕще пример, разбирался с FlexXB. Была пара моментов, котоые были не освещены в мануале. Проблема с сериализацией коллекций висела неделю, пока не вышел на гуглогруппу разработчика, за 2 поста он объяснил, что еще надо дописать, чтобы сериализация проходила.
Именно этим русскоязычные форумы тебе не нравятся. Да? Тут нет разработчиков FlexXB. Серьезная недоработка.
...
Рейтинг: 0 / 0
06.09.2012, 12:17:02
    #37946302
Жентос
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка Request method 'GET' not supported
BlazkowiczStackOverflow это отдельный мега успешный комерческий проект со своими правилами и отдельной модерацией
Характер источника знаний не делает его хуже.

BlazkowiczТут всё тоже самое подробно ответили вроде.
Угу. Через неделю я докопал и выложил кусочек кода.
А потом пришел ты и сказал, что мой код плох. С этим я не спорю, скорее всего, так оно и есть. Но в этой теме рабочих примеров раньше моего не было. Лучше плохой рабочий пример, чем идеальный отсутствующий.

Кстати, ты мог написать примерно такой же пример уже "31 авг 12, 12:13" --это время твоего первого поста в этой теме. Ведь ты знал это. Но нет, у Мальчиша-Кибальчиша есть Великая Тайна, которую злым буржуинам никогда не выпытать.
...
Рейтинг: 0 / 0
06.09.2012, 12:44:36
    #37946393
забыл ник
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка Request method 'GET' not supported
Жентос, по вашим постам видно, что у вас огромные пробелы знаний в фундаментальных темах вроде хтмл и хттп. Давать вам ответ на блюдечке - это делать вам же хуже. Вам неоднократно намекали какие темы вам лучше изучить, но вы вместо этого лазили по нерусскоязычным форумам :)
Тут отвечают вполне адекватные опытные разработчики на конкретные вопросы, извини но описывать тебе разницу между гет и пост запросами, реально в лом. А вот если человек приводит код, спрашивает почему вот так - я думал должно так.. то ему почти 100% что-нибудь посоветуют. Давать работающее решение новичкам - это как давать гранату обезьяне.
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Ошибка Request method 'GET' not supported / 21 сообщений из 21, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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