Serg, To contribute code, it's preferred, if possible, to attach it to a JIRA.
--benson On Thu, Nov 17, 2011 at 12:39 PM, sergkorney <sergkor...@gmail.com> wrote: > here it is: > > public class JaxrsCorsInputFilter implements RequestHandler { > > final static String HEADER_ORIGIN = "origin"; > > @Context > private HttpHeaders headers; > > private List<String> allowedOrigins; > > public void setAllowedOrigins(List<String> allowedOrigins) { > this.allowedOrigins = allowedOrigins; > } > > @Override > public Response handleRequest(Message m, ClassResourceInfo > resourceClass) { > if ("OPTIONS".equals(m.get(Message.HTTP_REQUEST_METHOD))) { > OperationResourceInfo opResInfo = > m.getExchange().get(OperationResourceInfo.class); > if (opResInfo != null) { // OPTIONS method defined in service > bean > return null; // continue handling > } > return Response.status(Status.SERVICE_UNAVAILABLE).build(); > } > List<String> values = headers.getRequestHeader(HEADER_ORIGIN); > if (values != null ) { > boolean allowed = true; > if (allowedOrigins != null) { > allowed = allowedOrigins.containsAll(values); > } > if (allowed) { > m.getExchange().put(HEADER_ORIGIN, values); > } > } > return null; > } > > } > > > -- > View this message in context: > http://cxf.547215.n5.nabble.com/CORS-tp4970153p5001897.html > Sent from the cxf-dev mailing list archive at Nabble.com. >