package com.porterhead; import com.porterhead.exception.AccessDeniedExceptionMapper; import com.porterhead.filter.jersey.JerseyCrossOriginResourceSharingFilter; import com.porterhead.resource.GenericExceptionMapper; import org.glassfish.jersey.jackson.JacksonFeature; import org.glassfish.jersey.server.ResourceConfig; import org.glassfish.jersey.server.spring.scope.RequestContextFilter; import org.springframework.context.ApplicationContext; import org.springframework.web.context.ContextLoader; import javax.ws.rs.container.ContainerResponseFilter; /** * Created by iainporter on 28/07/2014. */ public class RestResourceApplication extends ResourceConfig { public RestResourceApplication() { packages("com.porterhead.resource", "com.porterhead.user.resource", "com.porterhead.sample"); register(RequestContextFilter.class); ApplicationContext rootCtx = ContextLoader.getCurrentWebApplicationContext(); ContainerResponseFilter filter = rootCtx.getBean(JerseyCrossOriginResourceSharingFilter.class); register(filter); register(GenericExceptionMapper.class); register(AccessDeniedExceptionMapper.class); register(JacksonFeature.class); } }