Я хочу передать строку из одного JSP с именем list.jsp в другой с именем details.jsp
У меня есть «кнопка» в list.jsp, как показано ниже:
<a class = "more-info-title" href = "details.jsp?address=<%=resultSet.getString("address")%>">MORE INFO ></a>
Теперь в details.jsp я хочу получить переменную с именем 'address', поэтому я делаю следующее:
String address=request.getParameter("address");
Оказывается, это не работает. Когда я нажимаю на кнопку, я получаю следующее:
Также вот часть моего контроллера:
@RequestMapping("details")
public ModelAndView helloDetails() {
final ModelAndView mav = new ModelAndView("details");
return mav;
}
@RequestMapping("list")
public ModelAndView helloList() {
final ModelAndView mav = new ModelAndView("list");
return mav;
}
Примерно так, если адрес "Сумасшедшая улица 1414" localhost: 8080 / null / hello / details.jsp? Address = Crazy% 20Street% 201414
что такое null
в URL? куда ты положил request.getParameter("address");
?
хм, это заставило меня задуматься, похож ли list
на localhost:8080/null/hello/list.jsp
? потому что ошибка «не найден» (404) появляется, когда назначенный маршрут не сопоставлен ни с каким контроллером или статическими ресурсами. если нет, вероятно, как подозревал Бенджамин, часть null
могла быть откуда-то еще, что вызывает проблему ... и могу ли я уточнить у вас, построена ли она на весна? если да, вам нужно правильно пометить это.
@BagusTesa да URL-адрес списка выглядит так, как вы сказали. Проблема может быть связана с пружиной (да, я использую весну).
@benjaminc Я помещаю <% String address=request.getParameter("address"); %>
в начало файла details.jsp сразу после импорта.
Я не уверен, откуда вы получаете адрес в списке JSP. Если вы маршрутизируете свой запрос через контроллер, вам необходимо снова добавить параметр из запроса в объект ModelAndView, чтобы получить к нему доступ во вновь созданном файле JSP.
<a class = "more-info-title" href = "details?address=<%=resultSet.getString("address")%>">MORE INFO ></a>
Для маршрутизации вашего запроса от контроллера вам необходимо изменить значение «href», как указано выше (оно должно быть таким же, как вы упомянули @RequestMapping в контроллере).
@RequestMapping("details")
public ModelAndView helloDetails(HttpServletRequest request) {
final ModelAndView mav = new ModelAndView("details");
mav.addObject("address", getParameter("address"));
return mav;
}
@RequestMapping("list")
public ModelAndView helloList() {
final ModelAndView mav = new ModelAndView("list");
return mav;
}
Я не могу его скомпилировать, так как getParameter не определен для контроллера
Мое плохое, это был request.getParameter ("адрес"). Спасибо за ваше время, это сработало.
как заканчивается URL-адрес
details.jsp
?