相关疑难解决方法(0)

servlet如何工作?实例化,会话,共享变量和多线程

假设,我有一个拥有大量servlet的Web服务器.对于在这些servlet之间传递的信息,我正在设置会话和实例变量.

现在,如果有2个或更多用户向此服务器发送请求,那么会话变量会发生什么?它们对所有用户都是通用的,或者对于每个用户而言都是不同的.如果它们不同,那么服务器如何区分不同的用户?

还有一个类似的问题,如果有n用户访问特定的servlet,那么这个servlet只在第一个用户第一次访问它时实例化,或者是否为所有用户单独实例化?换句话说,实例变量会发生什么?

java multithreading servlets session-variables instance-variables

1105
推荐指数
6
解决办法
28万
查看次数

使用j_security_check在Java EE/JSF中执行用户身份验证

我想知道当前的方法是关于使用JSF 2.0(如果存在任何组件)和Java EE 6核心机制(登录/检查权限/注销)的Web应用程序的用户身份验证,其中包含用户信息保存在JPA中实体.Oracle Java EE教程在这方面有点稀疏(仅处理servlet).

没有使用整个其他框架,如Spring-Security(acegi)或Seam,但如果可能的话,试图用新的Java EE 6平台(Web配置文件).

authentication jsf jaas j-security-check java-ee

155
推荐指数
3
解决办法
14万
查看次数

JSF HTTP会话登录

我尝试在Web应用程序中创建登录表单.在我可以使用的JSP页面中

<%
   String name = request.getParameter( "username" );
   session.setAttribute( "theName", name );
%>
Run Code Online (Sandbox Code Playgroud)

但现在我使用JSF/Facelets进行Web应用程序我不知道如何在JSF Backing bean中为客户端创建会话,并检查用户是否已登录,因此它将重定向到登录页面.谁能帮我提一下这些问题的链接教程?谢谢你

现在我没有遇到映射到类Filter的web.xml代码的问题

@Override
public void init(FilterConfig filterConfig) throws ServletException {
    this.config = filterConfig;
}

@Override
public void doFilter(ServletRequest request, ServletResponse response,
        FilterChain chain) throws IOException, ServletException {
    HttpServletRequest req = (HttpServletRequest) request;
    HttpServletResponse res = (HttpServletResponse) response;
    LoginController controller = (LoginController) req.getSession()
            .getAttribute("loginController");
    if (controller == null || !controller.isLoggedIn()) {
        res.sendRedirect("../admin/login.xhtml");
    } else {
        chain.doFilter(request, response);
    }
}
Run Code Online (Sandbox Code Playgroud)

并在web.xml我用<fitler>标签映射

<filter>
    <filter-name>userLoginFilter</filter-name> …
Run Code Online (Sandbox Code Playgroud)

jsf

21
推荐指数
1
解决办法
7万
查看次数

如何在应用程序上使用新用户登录创建新会话?

一旦新用户登录应用程序,如何在JSF 2.0中创建新会话?

session jsf jsf-2

7
推荐指数
1
解决办法
1万
查看次数

使用JSF 2.0实现重定向登录的正确方法是什么?

我的部分网站只能由授权用户访问.假设用户输入属于仅授权部分的页面a.html.

如果我要使用servlets/JSP,我可以编写一个过滤器来检查用户是否已登录,如果没有,则将其重定向到登录页面.成功登录后,用户将被重定向到他最初想要访问的页面,在本例中为a.html.(页面地址可以存储在请求中).

在JSF 2.0中实现此类场景的正确方法是什么?

servlets jsf-2 servlet-filters

5
推荐指数
1
解决办法
3388
查看次数

如何在 JSF 托管 bean 中创建、访问和销毁会话?

目前,我正在为在线购物车创建一个 Web 应用程序,我需要在每个 jsf 页面上维护会话。

我的问题是:

  1. 如何在托管 bean 中创建和销毁会话

  2. 如何访问存储在会话变量中的值?像这样?

    FacesContext.getCurrentInstance().getExternalContext().getSessionMap.put("key",object);
    
    Run Code Online (Sandbox Code Playgroud)
  3. 如何在 jsf 中销毁会话

我还需要使用销毁会话,session.invalidate()但我失败了!!

session jsf scope invalidation

2
推荐指数
1
解决办法
9035
查看次数