2017-06-15 64 views
0

我试图为访问请求上下文的wildfly 10创建一个登录模块。我必须确定请求网址。另外,我必须分析GET参数以检查是否设置了令牌。WildFly 10 | Undertow |使用RequestContext创建Wildfly LoginModule

如何访问基于“UsernamePasswordLoginModule”的类中的请求上下文和url信息?

我已经试过这

@Resource WebServiceContext wsctx;

但它不起作用。

回答

0

我试过了你的建议。但它不起作用。网页过滤器不会调用。

在第二步骤中我曾尝试以下

try { 
     HttpServletRequest request = (HttpServletRequest) javax.security.jacc.PolicyContext 
       .getContext(HttpServletRequest.class.getName()); 
    } catch (PolicyContextException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } 

其结果是,该方法可能会终止在该点(的getContext)和该请求被重新提交。我不知道为什么。

+0

我发现我的问题。我忘了在我的module.xml中设置依赖项“javax.servlet.api” –

0

你应该实施一些预处理保存请求参数一些ThreadLocal变量(例如,你可以做到这一点的网页过滤)。然后在你的登录模块中,你将能够从ThreadLocal中读取这个参数。