Skip to content

Instantly share code, notes, and snippets.

@andrewfinnell
Created June 29, 2018 12:11
Show Gist options
  • Save andrewfinnell/3115d17d329cca7a4691542ea8ca7808 to your computer and use it in GitHub Desktop.
Save andrewfinnell/3115d17d329cca7a4691542ea8ca7808 to your computer and use it in GitHub Desktop.
Apache CXF Interceptors and Filters
public class OutInterceptor extends AbstractPhaseInterceptor<Message> {
public OutInterceptor() {
super(Phase.POST_MARSHAL);
}
@Override
public void handleMessage(final Message aMessage) throws Fault {
}
}
import java.io.IOException;
import javax.ws.rs.container.ContainerRequestContext;
import javax.ws.rs.container.ContainerRequestFilter;
import javax.ws.rs.ext.Provider;
@Provider
public class RequestFilter implements ContainerRequestFilter
{
@Override
public void filter(final ContainerRequestContext aContainerRequestContext) throws IOException
{
}
}
import java.io.IOException;
import javax.ws.rs.container.ContainerRequestContext;
import javax.ws.rs.container.ContainerRequestFilter;
import javax.ws.rs.ext.Provider;
@Provider
public class ResponseFilter implements ContainerResponseFilter
{
@Override
public void filter(final ContainerResponseContext aContainerRequestContext) throws IOException
{
}
<bean id="requestFilter" class="RequestFilter"/>
<bean id="responseFilter" class="ResponseFilter"/>
<bean id="outInterceptor" class="OutInterceptor"/>
<jaxrs:server address="/v1.0/objects">
<jaxrs:serviceBeans>
<bean class="ControllerA" init-method="init"/>
</jaxrs:serviceBeans>
<jaxrs:providers>
<ref bean="jsonProvider"/>
<ref bean="requestFilter"/>
<ref bean="responseFilter"/>
</jaxrs:providers>
<jaxrs:outInterceptors>
<ref bean="outInterceptor"/>
</jaxrs:outInterceptors>
</jaxrs:server>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment