package org.yeeku.action;
import java.util.Date;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.validator.DynaValidatorForm;
import org.yeeku.action.base.BaseAction;
import org.yeeku.model.News;
import org.yeeku.model.NewsReview;
import org.yeeku.model.User;
import org.yeeku.webapp.util.AppConstants;
public class AddReviewAction extends BaseAction {
// 必须重写该核心方法,该方法actionForm将表单的请求参数封装成值对象
public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request,
HttpServletResponse response) throws Exception {
DynaValidatorForm addForm = (DynaValidatorForm) form;
String content = (String) addForm.get("content");
String newsId = (String) addForm.get("newsId");
try {
News news = mgr.getNews(newsId);
String username = (String) request.getSession(true).getAttribute(AppConstants.LOGIN_USER);
User poster = mgr.getUser(username);
NewsReview newsReview = new NewsReview();
newsReview.setNews(news);
newsReview.setPoster(poster);
newsReview.setContent(content);
newsReview.setPostDate(new Date());
newsReview.setLastModifyDate(new Date());
mgr.saveNewsReview(newsReview);
} catch (Exception e) {
request.setAttribute("newsId", newsId);
return mapping.findForward("failure");
}
request.setAttribute("newsId", newsId);
return mapping.findForward("success");
}
}