Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: > при переходе по ссылке между jsp теряются данные и, данные из сервлета не выво  (Прочитано 8554 раз)
0 Пользователей и 1 Гость смотрят эту тему.
4y4z
Участник

ru
Offline Offline
Младший саппорт


« : 22-06-2011 18:59 » new

Есть две JSP-страницы и сервлет, отвечающий за передачу данных между ними:
Сервлет

Код:
public class MessageHandlerServlet extends HttpServlet {
    Comment comm = new Comment();
    List <String> commList = new ArrayList();
   public void doPost(HttpServletRequest aRequest, HttpServletResponse aResponse)
       throws ServletException, IOException {
       aRequest.setCharacterEncoding("utf-8");

       Date dt = new Date();
comm.setAuthor(aRequest.getParameter("author"));
comm.setMessagetext(aRequest.getParameter("message"));
comm.setDate(dt);
commList.add(comm.toString());
aRequest.setAttribute("listofmessages", commList);
 RequestDispatcher dispatcher = aRequest.getRequestDispatcher("messages.jsp");
 dispatcher.forward(aRequest, aResponse);

  
}
 public void doGet(HttpServletRequest aRequest, HttpServletResponse aResponse)throws ServletException, IOException{
     aRequest.setCharacterEncoding("utf-8");
      aRequest.setAttribute("listofmessages", commList);
 RequestDispatcher dispatcher = aRequest.getRequestDispatcher(aRequest.getContextPath());
 dispatcher.forward(aRequest, aResponse);
    

 }  
}

newmessage.jsp
Код:
<%@page contentType="text/html" pageEncoding="utf-8"%>
<%@ taglib uri='http://java.sun.com/jsp/jstl/core' prefix='c'%>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>New message</title>
    </head>
    <body><h1>Please fill form</h1>
       <a href="<%=request.getContextPath()%>/messages.jsp">View all messages</a><br/>
        <form action="/GuestBook2/messagehandler" method="POST">
            <h2>author name: </h2>
            <p><input type="text" name="author" size="25" value=""/></p>
            <h2>text: </h2>
            <p><textarea name="message" wrap="virtual" cols="40" rows="4"></textarea></p>
            <p><input type="submit" value="post new message"/></p>
            
        </form>
    </body>
</html>

messages.jsp
Код:
<%@page contentType="text/html" pageEncoding="utf-8"%>
<%@ taglib uri='http://java.sun.com/jsp/jstl/core' prefix='c'%>
<%@page import="java.util.ArrayList"%>
<%@page import="java.util.List"%>
<%@page import="ru.ayaz.guestbook2.Comment"%>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>View all messages</title>
        
    </head>
    <body>
        <a href="<%=request.getContextPath()%>/newmessage.jsp">add new message</a><br/>
        <h1>List of messages</h1>
        
        <%List <String> commlist = (ArrayList) request.getAttribute("listofmessages");
                 if(commlist != null)
               {
               for(String comm : commlist){%>
<tr><td align="center"><p><%=comm%><p><a href=#>to the top of page</a></p></p></td></tr><%}};%>              
    </body>
</html>

При добавлении нового сообщения на странице newmessage путем заполнения формы и передачи по нажатию кнопки оно появляется в списке на странице messages. Однако если переходить на страницу messages по гиперссылке View all messages то список записей пустой. В чем может быть причина?
Записан

Ищу работу. (разработка/тестирование/отладка)
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines