我有Javaservlet:
public class LoginServlet extends HttpServlet{
private static final long serialVersionUID = 1L;
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
String n=request.getParameter("username");
String p=request.getParameter("userpass");
HttpSession session = request.getSession(false);
if(session!=null)
session.setAttribute("name", n);
if(LoginDao.validate(n, p)){
RequestDispatcher rd=request.getRequestDispatcher("indexLogged.html");
rd.forward(request,response);
}
else{
out.print("<p style=\"color:red\">Sorry username or password error</p>");
RequestDispatcher rd=request.getRequestDispatcher("index.jsp");
rd.include(request,response);
}
out.close();
}
当我登录应用程序Servlet时创建 session 和cookie(例如:Cookie:JSESSIONID=15CA73274C02C33E2C402DD7),并且我想在SAPUI5中从该 session 中检索一些数据,我该怎么做?
谢谢!
最佳答案
一般来说,您在响应中添加您想要接收的数据:
response.getWriter().print("some data");
在 SAPUI5 应用程序中进行 ajax 调用;
$.ajax({
url : mai_data.request_url + "&task=" + name,
type : "POST",
dataType : "text",
data : "some upload data",
success : function(oData) { } //oData contains the response text
error : function(oData) { } //oData contains the response text
})
但是,就您的情况而言,我认为您最初会转到登录 servlet 并使用它进行登录,并希望创建 .您将被重定向到 indexLogged.html 并想要访问那里的一些 cockie 数据。由于您通过以下方式包含了请求和响应:
rd.include(request,response);
您应该有权访问indexLogged.html 中的响应数据。
关于java - 从 Java servlet 获取 SAPUI5 中的 session 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23673765/