1 25 26 package com.j2biz.blogunity.web.actions.my; 27 28 import javax.servlet.http.HttpServletRequest ; 29 import javax.servlet.http.HttpServletResponse ; 30 31 import com.j2biz.blogunity.dao.BlogDAO; 32 import com.j2biz.blogunity.dao.UserDAO; 33 import com.j2biz.blogunity.exception.BlogunityException; 34 import com.j2biz.blogunity.pojo.Blog; 35 import com.j2biz.blogunity.web.ActionResultFactory; 36 import com.j2biz.blogunity.web.FormError; 37 import com.j2biz.blogunity.web.FormErrorList; 38 import com.j2biz.blogunity.web.IActionResult; 39 40 48 public class FavoriteBlogAddExecAction extends MyAbstractAction { 49 50 private static final IActionResult ADD_SUCCESS_REDIRECT = ActionResultFactory 51 .buildRedirect("/my/manageFavoriteBlogs"); 52 53 private static final IActionResult ADD_ERROR_FORWARD = ActionResultFactory 54 .buildForward("/jsp/my/manageFavoriteBlogs.jsp"); 55 56 62 public IActionResult execute(HttpServletRequest request, HttpServletResponse response) 63 throws BlogunityException { 64 65 String blogName = request.getParameter("blogname"); 66 FormErrorList errors = new FormErrorList(); 67 68 Blog b; 69 try { 70 b = (new BlogDAO()).getBlogByUrlName(blogName); 71 } catch (Exception e) { 72 b = null; 73 } 74 75 if (b == null) { 76 errors.add(new FormError("blogname", "Blog '" + blogName + "' not found!")); 77 } else if (user.getFavoriteBlogs().contains(b)) { 78 errors.add(new FormError("blogname", "This blog is already in your favorites!")); 79 } 80 81 if (errors.size() > 0) { 82 request.setAttribute("errors", errors); 83 return ADD_ERROR_FORWARD; 84 } 85 86 user.getFavoriteBlogs().add(b); 87 (new UserDAO()).updateUser(user); 88 89 return ADD_SUCCESS_REDIRECT; 90 91 } 92 93 } | Popular Tags |