블로그 이미지
올해목표 // 10월 어학연수 떠나자~ 자수씨

카테고리

전체글 (1457)
Brand New! (28)
주절주절 (213)
MOT (11)
해외쇼핑 (49)
쇼핑노트 (150)
취미생활 (94)
iPhone (4)
Eclipse (121)
Google (83)
Spring (31)
JAVA (176)
JavaScript (59)
WEB (49)
Database (20)
OS (26)
Tools (8)
Tips (26)
IT정보 (1)
Book (21)
Programming (37)
외부행사 (43)
주변인들 (17)
여행노트 (60)
학교생활 (30)
회사생활 (52)
사회생활 (5)
외국어공부 (12)
잡동사니 (30)
Total
Today
Yesterday
 
05-06 00:01
 

달력

« » 2024.5
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
 

최근에 올라온 글

최근에 달린 댓글

/share/site_index.jsp

JAVA/Alfresco / 2013. 12. 10. 11:57


Presets에 정의된 컴포넌트가 생성되는 시점을 못찾아서 삽질을 했었는데, 드디어 발견했다.


[installLocation]\tomcat\webapps\share\sire_index.jsp

<%@ page import="org.alfresco.web.site.*" %>

<%@ page import="org.springframework.extensions.surf.*" %>

<%@ page import="org.springframework.extensions.surf.site.*" %>

<%@ page import="org.springframework.extensions.surf.util.*" %>

<%@ page import="java.util.*" %>

<%

   // retrieve user name from the session

   String userid = (String)session.getAttribute(SlingshotUserFactory.SESSION_ATTRIBUTE_KEY_USER_ID);

   

   // test user dashboard page exists?

   RequestContext context = (RequestContext)request.getAttribute(RequestContext.ATTR_REQUEST_CONTEXT);

   if (context.getObjectService().getPage("user/" + userid + "/dashboard") == null)

   {

      // no user dashboard page found! create initial dashboard for this user...

      Map<String, String> tokens = new HashMap<String, String>();

      tokens.put("userid", userid);

      FrameworkUtil.getServiceRegistry().getPresetsManager().constructPreset("user-dashboard", tokens);

   }

   

   // redirect to site or user dashboard as appropriate

   String siteName = request.getParameter("site");

   if (siteName == null || siteName.length() == 0)

   {

      // forward to user specific dashboard page

      response.sendRedirect(request.getContextPath() + "/page/user/" + URLEncoder.encode(userid) + "/dashboard");

   }

   else

   {

      // forward to site specific dashboard page

      response.sendRedirect(request.getContextPath() + "/page/site/" + URLEncoder.encode(siteName) + "/dashboard");

   }

%>



위의 소스에서 수행하는 작업은 "userid"를 세션에서 조회하여 해당 페이지가 존재하는지를 체크하고 없다면 "PresetsManager"를 통해서 "preset"를 구성한다. 그 후, 해당 페이지로 리다이렉트,,,


가장 중요한건 FrameworkUtil.getServiceRegistry().getPresetsManager().constructPreset("user-dashboard", tokens); 를 발견했다거...




Posted by 자수씨
, |

글 보관함

최근에 받은 트랙백