package guestbook;
import java.io.IOException;
import java.util.Date;
import java.util.logging.Logger;
import javax.persistence.EntityManager;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.google.appengine.api.users.User;
import com.google.appengine.api.users.UserService;
import com.google.appengine.api.users.UserServiceFactory;
@SuppressWarnings("serial")
public class SignGuestbookServlet extends HttpServlet {
private static final Logger log = Logger.getLogger(SignGuestbookServlet.class.getName());
public void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException{
UserService userService = UserServiceFactory.getUserService();
User user = userService.getCurrentUser();
String content = req.getParameter("content");
Date date = new Date();
Greeting greeting = new Greeting(user, content, date);
EntityManager em = EMF.get().createEntityManager();
try {
em.getTransaction().begin();
em.persist(greeting);
em.getTransaction().commit();
if (content == null) {
content = "(No greeting)";
}
if (user != null) {
log.info("Greeting posted by user " + user.getNickname() + " : " + content);
} else {
log.info("Greeting posted anonymously: " + content);
}
} finally {
em.close();
}
resp.sendRedirect("/guestbook.jsp");
}
}