有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java从类调用servlet时,我的会话始终为空

我需要检查我的jsp站点上是否存在会话。我创建了一个servlet,在其doPost()和doGet()方法中检查它

无论是从url(url/Servlet)调用它,还是在提交页面<form action="Servlet" method="post">之后,它都可以工作

现在我需要从类中调用doPost()或doGet()方法。在这个论坛上阅读一些帖子,我得到了以下代码:

   Sessione p = new Sessione(); //sessione is the servlet name
   URL urlServlet = null;

   urlServlet = new URL("url/Servlet");
   HttpURLConnection servletConnection = (HttpURLConnection) urlServlet.openConnection();
   servletConnection.setRequestMethod("POST");
   servletConnection.setDoOutput(true);

   ObjectOutputStream objOut = new ObjectOutputStream(servletConnection.getOutputStream());
   objOut.writeObject(p);
   objOut.flush();
   objOut.close();
   InputStream response = servletConnection.getInputStream();

问题是,如果我从一个类中调用这个servlet,我总是会发现我的会话是空的,即使它们不是空的

这是我的servlet的doPost()方法

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        PrintWriter out = response.getWriter();     
        HttpSession session = request.getSession(true);     
        out.println(session.getAttribute("loggato"));

    }

共 (0) 个答案