| 1 6 7 package org.contineo.actions.search; 8 9 import javax.servlet.http.HttpServletRequest ; 10 import javax.servlet.http.HttpServletResponse ; 11 import javax.servlet.http.HttpSession ; 12 13 import org.apache.log4j.Level; 14 import org.apache.log4j.Logger; 15 import org.apache.lucene.document.Document; 16 import org.apache.struts.action.Action; 17 import org.apache.struts.action.ActionForm; 18 import org.apache.struts.action.ActionForward; 19 import org.apache.struts.action.ActionMapping; 20 import org.contineo.admin.dao.MenuDAO; 21 import org.contineo.core.LoggingManager; 22 import org.contineo.core.SessionManagement; 23 import org.contineo.searchengine.SearchDocument; 24 import org.contineo.searchengine.crawler.Indexer; 25 import org.contineo.searchengine.dao.SearchDocumentDAO; 26 31 public class ShowPreviewAction extends Action { 32 33 private Logger logger; 34 35 36 public ShowPreviewAction() { 37 logger = LoggingManager.getLogger(this.getClass()); 38 } 39 40 public ActionForward execute(ActionMapping mapping, 41 ActionForm form, HttpServletRequest request, 42 HttpServletResponse response) { 43 ActionForward actionForward = new ActionForward(); 44 HttpSession session = request.getSession(); 45 if (SessionManagement.isValid(session)) { 46 try { 47 String username = (String )session.getAttribute("authuser"); 48 String menuid = request.getParameter("menuid"); 49 int id = Integer.parseInt(menuid); 50 MenuDAO menuDao = new MenuDAO(); 51 if (menuDao.isReadEnable(id, username)) { 52 SearchDocumentDAO searchDocDao = new SearchDocumentDAO(); 53 SearchDocument searchDoc = searchDocDao.findByMenuId(id); 54 Indexer indexer = new Indexer(); 55 Document doc = indexer.getDocument(searchDoc.getLuceneId()); 56 request.setAttribute("content", doc.get("content")); 57 request.setAttribute("name", doc.get("name")); 58 actionForward = mapping.findForward("showpreview"); 59 } else { 60 actionForward = mapping.findForward("invalid"); 61 } 62 } catch (Exception e) { 63 if (logger.isEnabledFor(Level.ERROR)) 64 logger.error(e.getMessage()); 65 actionForward = mapping.findForward("error"); 66 } 67 } else 68 actionForward = mapping.findForward("invalid"); 69 return actionForward; 70 } 71 } | Popular Tags |