RestEasy的名称绑定注释错误在Eclipse

问题描述 投票:2回答:2

我想一个名字绑定到JAX-RS过滤器,所以我可以保证在剩下的服务为以下一些方法:

担保名称绑定:

@NameBinding
@Target({ ElementType.TYPE, ElementType.METHOD })
@Retention(value = RetentionPolicy.RUNTIME)
public @interface Secured {
}

身份验证筛选器:

@Secured
@Provider
@Priority(Priorities.AUTHENTICATION)
public class AuthenticationAgent implements ContainerRequestFilter {

    @Override
    public void filter(ContainerRequestContext requestContext) throws IOException {
         //do something
    }
}

然而,日食给我这个错误,当我加入了安全注解我过滤。

没有与这个名字绑定注释JAX-RS应用程序,资源或资源的方法。

enter image description here

java eclipse jax-rs resteasy wildfly-10
2个回答
2
投票

这不是一个真正的错误,将停止JAX-RS的工作。它更多的只是一个警告(具体到编辑器)的。

名称绑定应该只用于当你想过滤器限制对资源类/方法也标注了名称绑定注释。如果是这种情况,那么注释你想通过该过滤器的类/方法。如果你想要的一切都要经过过滤,然后完全忘记了注解。刚刚摆脱它。


2
投票

这些类型的错误是不是真正的大错误。对于这种类型的JAX-RS的错误,我们可以将其标记为警告或忽略它。

对于Eclipse,去Window > Preferences > Jboss Tools > JAX-RS > JAX-RS Validator > JAX-RS Name BindingsMissing @Retention annotation设置为“错误”以外的东西。 (是的,首名被误导)。

(要自定义它为一个特定的项目,在右上角点击Configure Project Specific Settings...

© www.soinside.com 2019 - 2024. All rights reserved.