I have a problem fetching json from a remote server that I control. I have 2 web applications, one serving data and running on port 3311, the other, requesting data, is run
Requested headers has to be set at the server side. There are many ways in setting this
1.One can be
ResponseFilter
org.apache.catalina.filters.CorsFilter
ResponseFilter
/*
2.Independent of the server you can develop a custom class that can be passed as init paramter to jersey servlet
com.sun.jersey.spi.container.ContainerResponseFilters
helpers.TestCorpsFilter
enter code here
`public class TestCorpsFilter implements ContainerResponseFilter {
@Override
public ContainerResponse filter(ContainerRequest arg0, ContainerResponse arg1) {
ResponseBuilder resp = Response.fromResponse(arg1.getResponse());
resp.header("Access-Control-Allow-Origin", "*").header("Access-Control-Allow-Methods",
"GET, POST, OPTIONS");
String requestHeader = arg0.getHeaderValue("Access-Control-Request-Headers");
if (requestHeader != null && !requestHeader.equals("")) {
resp.header("Access-Control-Allow-Headers", requestHeader);
}
arg1.setResponse(resp.build());
return arg1;
}