当前位置: 首页 > 知识库问答 >
问题:

启用CDI的shiro过滤器

程俊力
2023-03-14

关于创建支持CDI的shiro Realms的信息已经足够多了。在我的情况下,我需要CDI在自定义shiro过滤器,这可能吗?

public class com.moc.CustFilter {

  @Inject
  private MyUtil myUtil;

  // .... using myUtil

}

西罗。伊尼

[main]
custFilter = com.moc.CustFilter

[urls]
/web/** = custFilter

共有1个答案

齐才艺
2023-03-14

过滤器构造函数中的这段代码对我来说已经足够了

private SomeUtils utils;

public ApisecAuthcFilter() {
    try {
      BeanManager beanManager = (BeanManager) new InitialContext().lookup("java:comp/BeanManager");
      Bean<SomeUtils> utilsBean = (Bean<SomeUtils>) beanManager.resolve(beanManager.getBeans(SomeUtils.class));
      CreationalContext<SomeUtils> creationalContext = beanManager.createCreationalContext(null);
      utils = utilsBean.create(creationalContext);
    } catch (NamingException e) {
      throw new SomesException();
    }
  }
 类似资料:
  • 我知道Spring Security在3.2.0版中添加了内置CSRF保护,如下所述:http://docs.spring.io/spring-security/site/docs/3.2.0.CI-SNAPSHOT/reference/html/csrf.html 我使用Grails 2.4.3与spring-security-core插件版本2.0.0,它似乎使用Spring Security

  • 问题是在达到会话超时之前不会销毁会话范围的bean。 因此,对于以下注销程序,我有两个问题: 这是使用shiro注销的正确方法吗(请参阅下面的logout()) 注销期间销毁CDI会话范围bean的正确方法是什么。 page.xhtml: null 豆类: shiro.ini: 例外情况: 调用时引发以下异常 附加信息:我正在运行WildFly8.2.0.final。 多谢了。

  • 我正在尝试使用wicket创建一个web应用程序。以下是我遵循的步骤: > < li> 我使用以下命令创建了一个maven项目: mvn原型:generate-DarchetypeGroupId=org.apache。wicket-DarchetypeArtifactId=wicket原型快速启动-DarchetypeVersion=6.6.0-DgroupId=com。mycompany-Dar

  • 我正在我的web应用程序中使用spring cloud sleuth。不幸的是,我接到呼叫的第三方正在X-B3-TraceId标头中发送UUID。但是,spring中的TraceFilter在从字符串转换为十六进制时可能会检测出错误,因为UUID中有“-”字符。因此,我决定编写自己的过滤器,它将在TraceFilter之前拦截请求,并从标头中删除跟踪id。这是我的配置: 这是spring clou

  • 我尝试使用最新的Qarkus配置工具:@ConfigMapping,所以我定义了一个GreetingConfig对象: 该配置被注入到CDI Singleton中: 单例被注入到JAX-RS过滤器和JAX-RS资源中 application.properties文件还包含: 应用程序在启动时崩溃: JAR-RS资源中的注入适用于服务的任何bean类型(@ApplicationScope或@Sing

  • 问题内容: 我使用spring数据并hibernate@ Filter / @ FilterDef来过滤软删除的实体。似乎springRepository.findOne(id)总是返回值,即使id被软删除。此方法以及通过外键搜索其他字段的where子句中不包含过滤器。在这种情况下是否可以启用过滤器,使其可以用作@Where注释? 问题答案: 我有同样的问题。我已经通过实现HibernatePer