Java SAAJInInterceptor 和 WSS4JInInterceptor bean 的配置

Java configuration for SAAJInInterceptor and WSS4JInInterceptor beans

我有一个网络应用程序,它使用 apache cxf 和 spring 引导提供 soap 网络服务。所以我的类路径中没有 xml 文件来配置我的 bean,它们都在 java 中配置 configuration.I 想使用 cxf 的 ws-security 设置身份验证。 所以我想知道 SAAJInInterceptor 和 WSS4JInInterceptor bean 是否有 java 配置,例如:

@Bean
public ServletRegistrationBean cxfServlet() {
    ServletRegistrationBean servlet = new ServletRegistrationBean(new CXFServlet(), "/services/*");
    servlet.setLoadOnStartup(1);
    return servlet;
}

您只需在创建端点时添加拦截器即可:

Map<String,Object> interceptorConfig = new HashMap<String,Object>();
// set the properties of you WSS4J config
// ...
WSS4JInInterceptor myInterceptor = new WSS4JInInterceptor(interceptorConfig);
myEndpoint.getInInterceptors().add(myInterceptor);

另一种解决方案是使用带有 @InInterceptors

的注释