Spring   发布时间:2022-04-09  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了java – 将FacesContext注入spring bean大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

@L_607_0@一个bean,我最近从一个托管bean转变为一个spring-bean.

一切都很好,直到某个时候调用以下方法

Exception e = (Exception) FacesContext.getCurrenTinstance().getExternalContext().getSessionMap().get(
                    AbstractProcessingFilter.SPRING_Security_LAST_EXCEPTION_KEY);

事情发生了,因为FacesContext.getCurrenTinstance()返回null.

是否可以将faces上下文注入我的bean?

最佳答案

不确定,但在这种特殊情况下,它不需要. ExternalContext#getSessionMap()基本上是HttpSession属性的外观.到了这一点,你只需要以某种方式获取Spring bean中的HttpServletRequest然后在HttpServletRequest#getSession()之前从中获取httpSession.然后你可以在HttpSession#getAttribute()之前访问会话属性.

我不做Spring,但Google告诉我你可以按如下方式获得它:

httpServletrequest request = ((ServletrequestAttributes) requestContextHolder.getrequestAttributes()).getrequest();

完成后,您可以这样做:

Exception e = (Exception) request.getSession().getAttribute(AbstractProcessingFilter.SPRING_Security_LAST_EXCEPTION_KEY);

大佬总结

以上是大佬教程为你收集整理的java – 将FacesContext注入spring bean全部内容,希望文章能够帮你解决java – 将FacesContext注入spring bean所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。