0
를 다시로드 할 때까지 세션은 내가 가진 다음 서블릿으로 유지되지 servlets
이 : 그것은 리디렉션 그 후 처음 loginServlet
이 userService
객체를 사용 Gmail
를 통해 사용자를 인증하고 세션에서 자격 증명 (username
& password
을) 지속 두 번째 서블릿 HomeServlet
은 session
에 저장된 데이터를 표시하는 데 사용됩니다.구글 앱 엔진 - 내가
내 문제는 데이터가 처음으로 session
에 저장되면 두 번째 파일 ()에 다시 검색 할 수 없다는 것입니다. 때까지 firstServlet
.
public class LoginServlet extends HttpServlet {
public void doGet(HttpServletRequest req, HttpServletResponse resp) {
// initialize user authentification service
UserService userService = UserServiceFactory.getUserService();
Boolean isConnected = (userService.getCurrentUser() != null);
if (isConnected) {
// save credentials in a session
HttpSession session = req.getSession();
session.setAttribute("username", userService.getCurrentUser().getNickname());
session.setAttribute("email", userService.getCurrentUser().getEmail());
session.setAttribute("isConnected", isConnected);
// forward to login view
resp.sendRedirect("/");
}
else
// redirect to 'gmail' login page
resp.sendRedirect(userService.createLoginURL("/"));
}
}
둘째 서블릿이다 :
제 서블릿은
public class GuestbookServlet extends HttpServlet {
static {
ObjectifyService.register(Message.class);
}
public void doGet(HttpServletRequest req, HttpServletResponse resp) {
try {
List<Message> messages = ofy().load().type(Message.class).list();
req.setAttribute("messages", messages);
this.getServletContext().getRequestDispatcher("/WEB-INF/index.jsp").forward(req, resp);
} catch (ServletException e) {
e.printStackTrace();
}
}
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
Message message = new Message(req.getParameter("name"), req.getParameter("message"));
ofy().save().entity(message).now();
resp.sendRedirect("/");
}
}
'/'
번째 서블릿 GuestbookServlet
경로이다.
일부 코드를 보지 않고는 당신을 도울 수 없습니다. – Uooo
오키 추가하겠습니다. – h4k1m