I've got a jetty server to run my web services. Recently I developed a program to consume the web service and ran into Access-Control-Allow-Origin issue.
How can I add the Access-Control-Allow-Origin: * to a jetty embedded server.
below is the webappcontext code.
public WebAppContext buildWebAppContext(){
webAppContext = new WebAppContext();
webAppContext.setDescriptor(webAppContext + "/WEB-INF/web.xml");
webAppContext.setResourceBase(".");
webAppContext.setContextPath("/posApplication");
webAppContext.setAttribute("webContext", webAppContext);
return webAppContext;
}
Thank you.
The workaround for this CORS problem is to use an extension in chrome/chromium browser. here is the link for the extension.
https://chrome.google.com/webstore/detail/allow-control-allow-origi/nlfbmbojpeacfghkpbjhddihlkkiljbi?utm_source=chrome-app-launcher-info-dialog
No need to add any headers in the server side code(which will obviously work but may not be a good idea).
Setup the
org.eclipse.jetty.servlets.CrossOriginFilter
in your web app.Old question/answer on the topic: https://stackoverflow.com/a/8454168/775715
See Jetty Documentation Hub on CrossOriginFilter Use:
Quick Start
Grab yourself a copy of jetty-servlets.jar.
Put the
jetty-servlets.jar
in yourWEB-INF/lib
Add the following to your
WEB-INF/web.xml