I am trying to send a POST request to a servlet. Request is sent via jQuery in this way:
var productCategory = new Object();
productCategory.idProductCategor
I had the same problem. I had to follow these steps to resolve the issue:
1. Make sure you have the following dependencies:
com.fasterxml.jackson.core
jackson-core
${jackson-version} // 2.4.3
com.fasterxml.jackson.core
jackson-databind
${jackson-version} // 2.4.3
2. Create the following filter:
public class CORSFilter extends OncePerRequestFilter {
@Override
protected void doFilterInternal(HttpServletRequest request,
HttpServletResponse response, FilterChain filterChain)
throws ServletException, IOException {
String origin = request.getHeader("origin");
origin = (origin == null || origin.equals("")) ? "null" : origin;
response.addHeader("Access-Control-Allow-Origin", origin);
response.addHeader("Access-Control-Allow-Methods", "POST, GET, PUT, UPDATE, DELETE, OPTIONS");
response.addHeader("Access-Control-Allow-Credentials", "true");
response.addHeader("Access-Control-Allow-Headers",
"Authorization, origin, content-type, accept, x-requested-with");
filterChain.doFilter(request, response);
}
}
3. Apply the above filter for the requests in web.xml
corsFilter
com.your.package.CORSFilter
corsFilter
/*
I hope this is useful to somebody.