활동이 없어 이 대화는 잠겼습니다. 새 게시물을 작성해 주세요.
활동이 없어 이 대화는 잠겼습니다. 새 게시물을 작성해 주세요.
Hi,
I am using AEM 6.5 author instance. After login authentication, i have tries several ways to redirect new page. I can see in response, landing page is coming but does not reload in the browser. In the end, login page remains in browser.
Below is the POST of my login servlet :
protected void doPost(SlingHttpServletRequest request, SlingHttpServletResponse response) {
String path = "/content/amc/en/homepage/landing-page.html";
try {
String uname = request.getParameter("uname");
String password = request.getParameter("password");
//getting some token
if (StringUtils.isNotEmpty(token)) {
Map<String, String> params = new HashMap();
// Add token to cookie
org.apache.sling.api.wrappers.SlingHttpServletRequestWrapper req =
new org.apache.sling.api.wrappers.SlingHttpServletRequestWrapper(request) {
public String getMethod() {
return "GET";
}
};
javax.servlet.RequestDispatcher dispatcher = request.getRequestDispatcher(path);
dispatcher.include(req, response);
// AuthUtil.sendRedirect(request,response, path,params);
} else {
response.setStatus(HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
}
} catch (Exception e) {
e.printStackTrace();
}
}
With AuthUtil.sendRedirect() below is the response but page not navigate to landing-page in the browser.
Any idea to fix this?
Thanks,
조회 수
답글
좋아요 수
Try changing the Day CQ Root Mapping from [1] and mention the path you want AEM to redirect to after login
[1] http://<host>:<port>/system/console/configMgr/com.day.cq.commons.servlets.RootMappingServlet
조회 수
답글
좋아요 수
No, Changing root mapping didn't work.
조회 수
답글
좋아요 수
Hi,
You are including response of target page,you should either redirect or forward.
The main difference is that when you use forward the control is transferred to the next servlet/jsp you are calling, while include retains the control with the current servlet, it just includes the processing done by the calling servlet/jsp(like doing any out.println or other processing).
You can try below:
dispatcher.forward(req, response);
조회 수
답글
좋아요 수
Tried forward as well, unfortunately, same behaviour.
org.apache.sling.api.wrappers.SlingHttpServletRequestWrapper req =
new org.apache.sling.api.wrappers.SlingHttpServletRequestWrapper(request) {
public String getMethod() {
return "GET";
}
};
javax.servlet.RequestDispatcher dispatcher = request.getRequestDispatcher(path);
dispatcher.forward(req, response);
조회 수
답글
좋아요 수
조회 수
답글
좋아요 수
조회 수
Likes
답글