When using @Action and annotation-driven my custom interceptors are not added to the endpoint [SWS-874] #949
I have a small spring-ws project with a simple XML config:
My Endpoint class uses
I know this is not a valid implementation, I just want to illustrate that the global interceptor described in the XML config is not getting executed.
To figure out why I inserted a breakpoint inside org.springframework.ws.soap.server.SoapMessageDispatcher#headerUnderstood and when that breakpoint is triggered I can see that the only interceptor that is registered for my Endpoint is the org.springframework.ws.soap.addressing.server.AddressingEndpointInterceptor which got added because of the Action annotation in my endpoint.
I thought that any global interceptors in the XML configuration would end up being added to the interceptor chain for all endpoints regardles of how the endpoints were mapped?
If I switch from using
When using SoapActions I also have the option of registering interceptors for my mapping using the SoapActionAnnotationMethodEndpointMapping, but I could not find a similar endpointmapping class allowing me to register custom interceptors for WS addressing:
The only workaround I could find that would allow me to add my custom interceptors when using
If it is possible to add the interceptors when using WS-Addressing with Spring-ws in a simpler way it would be nice to get this documented. Otherwise I guess it must be a bug that the interceptors are not added to the endpoint?
Referenced from: commits d43b880
The text was updated successfully, but these errors were encountered:
Arjen Poutsma commented
Indeed, the SoapActionAnnotationMethodEndpointMapping does not have an
That said, I will make the WS-Addressing endpoint mappings support the global