728x90
블로그꾸미기 1에서 web, service, dao 등을 bbs에서 복사해서 사용했다.
그런데.. VO 파일에서 오류가 난다.
egovframework.com.cop.bbs.service.BoardVO cannot be cast to egovframework.blog.service.BoardVO |
귀찮아서 그랬는데 casting이 안된다. extends BoardVO로 해도 마찬가지..
그냥 BlogController에서 호출하는 서비스를 EgovEgovArticleService 로 한다.
그리고 egov는 기본적으로 로그인 된 유저를 기본으로 하다보니...
로그인체크를 여러군데에서 한다.
로그인부분은 comment 를 조회할 때 로그인되어 있지 않아 저리로 보내버린다...
결국 comment 조회, 저장로직은 수정이 필요하겠다.
/** * 게시물에 대한 목록을 조회한다. * * @param boardVO * @param sessionVO * @param model * @return * @throws Exception */ @RequestMapping("/blog/selectArticleList.blog") public String selectArticleList(@ModelAttribute("searchVO") BoardVO boardVO, ModelMap model) throws Exception { String bbsId = "BBSMSTR_000000000002";// 블로그는 1개만 운영하므로 생성된 블로그의 bbsId 사용-- 나중에 property로 boardVO.setBbsId(bbsId); boardVO.setBbsNm(boardVO.getBbsNm()); boardVO.setPageUnit(propertyService.getInt("pageUnit")); boardVO.setPageSize(propertyService.getInt("pageSize")); PaginationInfo paginationInfo = new PaginationInfo(); paginationInfo.setCurrentPageNo(boardVO.getPageIndex()); paginationInfo.setRecordCountPerPage(boardVO.getPageUnit()); paginationInfo.setPageSize(boardVO.getPageSize()); boardVO.setFirstIndex(paginationInfo.getFirstRecordIndex()); boardVO.setLastIndex(paginationInfo.getLastRecordIndex()); boardVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage()); Map<String, Object> map = blogArticleService.selectArticleList(boardVO); int totCnt = Integer.parseInt((String)map.get("resultCnt")); //공지사항 추출 List noticeList = blogArticleService.selectNoticeArticleList(boardVO); paginationInfo.setTotalRecordCount(totCnt); model.addAttribute("resultList", map.get("resultList")); model.addAttribute("resultCnt", map.get("resultCnt")); model.addAttribute("articleVO", boardVO); model.addAttribute("bbsNm", "Custom Blog Sample"); model.addAttribute("bbsId", bbsId); model.addAttribute("bbsTmplatCours", "/css/egovframework/com/cop/tpl/egovBaseTemplate.css");//기본 BBS template 지정 : css 경로. 추후 변경 model.addAttribute("paginationInfo", paginationInfo); model.addAttribute("noticeList", noticeList); return "egovframework/com/blog/BlogArticleList"; } /** * 게시물에 대한 상세 정보를 조회한다. * * @param boardVO * @param sessionVO * @param model * @return * @throws Exception */ @RequestMapping("/blog/selectArticleDetail.blog") public String selectArticleDetail(@ModelAttribute("searchVO") BoardVO boardVO, ModelMap model) throws Exception { BoardVO vo = blogArticleService.selectArticleDetail(boardVO); model.addAttribute("result", vo); //---------------------------- // template 처리 (기본 BBS template 지정 포함) //---------------------------- model.addAttribute("bbsTmplatCours", "/css/egovframework/com/cop/tpl/egovBaseTemplate.css");//기본 BBS template 지정 : css 경로. 추후 변경 ////----------------------------- if (egovArticleCommentService != null){ if (egovArticleCommentService.canUseComment(boardVO.getBbsId())) { model.addAttribute("useComment", "true"); } } ////-------------------------- model.addAttribute("bbsId", "BBSMSTR_000000000002");// 블로그는 1개만 운영하므로 생성된 블로그의 bbsId 사용-- 나중에 property로 return "egovframework/com/blog/BlogArticleDetail"; } |
728x90