|
做单点登录,bessionid已经传进来了,但是却登录不了,只能跳转到登录界面,是什么原因
import java.io.IOException;
import java.sql.Date;
import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.alibaba.fastjson.JSONObject;
import com.justep.biz.client.ActionEngine;
import com.justep.biz.client.ActionResult;
import com.justep.biz.client.ActionUtils;
public class DoLogin extends com.justep.ui.impl.JProcessorImpl {
@Override
public void execute(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
JSONObject content = null;
String bsessionid = request.getParameter("bsessionid");
System.out.println(bsessionid+"----bsessionid");
//判断bsessionid是否超时
ActionResult checkResult = ActionEngine.checkSession(bsessionid, ActionUtils.JSON_CONTENT_TYPE);
if (checkResult.isSessionTimeOut()) {
String username = request.getParameter("username");
String password = request.getParameter("password");
String ip = request.getRemoteAddr();
String language = "zh_CN";
Date loginDate = new Date(System.currentTimeMillis());
ActionResult actionResult = ActionEngine.login2(username, password, ip, language, loginDate, null, ActionUtils.JSON_CONTENT_TYPE, null);
content = (JSONObject) actionResult.getContent();
bsessionid = actionResult.getBSessionID();
//把bsessionid放到Cookie中
Cookie cookie = new Cookie("bsessionid",bsessionid);
cookie.setMaxAge(-1);
cookie.setPath("/");
response.addCookie(cookie);
} else {
content = (JSONObject) checkResult.getContent();
}
content.put("bsessionid", bsessionid);
System.out.println(bsessionid+"----bsessionid");
response.setCharacterEncoding("UTF-8");
response.addHeader("Access-Control-Allow-Origin", "*");
response.setContentType(ActionUtils.JSON_CONTENT_TYPE);
response.sendRedirect("/x5/UI2/portal/pc2/index.w");
response.flushBuffer();
}
}
|
|