手动实现客户端会话
问题描述:
我有一个简单的servlet,它添加了一个会话变量。要请求会话变量我可以从另一个servlet中我可以使用 -手动实现客户端会话
request.getSession().getAttribute
但我怎么可以要求在客户端的这个变量没有实现Servlet规范。在这种情况下,即时通讯使用MIDP。
public class SetTestStartTime extends HttpServlet{
public void doGet(HttpServletRequest request, HttpServletResponse response) {
Long currentTimeMilliSeconds = System.currentTimeMillis();
request.getSession().setAttribute("time", currentTimeMilliSeconds);
}
}
答
您无法读取客户端的会话变量。但是您可以将会话数据写入http标头,并且可以从j2me应用程序中读取它们。
在servlet的
public class SetTestStartTime extends HttpServlet{
public void doGet(HttpServletRequest request, HttpServletResponse response) {
Long currentTimeMilliSeconds = System.currentTimeMillis();
request.getSession().setAttribute("time", currentTimeMilliSeconds);
response.addHeader("time", request.getSession().getAttribute("time"));
}
}
和J2ME
HttpConnection con = ....;
String time = con.getHeaderField("time");