Please find the below java class for the Cors Implementation.
import javax.servlet.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class CORSFilter implements Filter {
private static final Logger LOGGER = LoggerFactory.getLogger(CORSFilter.class);
@Override
public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException {
HttpServletResponse response = (HttpServletResponse) res;
HttpServletRequest request = (HttpServletRequest) req;
String requestOrigin = request.getHeader("Origin");
LOGGER.info("Received request of method {}, with origin {}", request.getMethod(), requestOrigin);
response.setHeader("Access-Control-Allow-Origin", requestOrigin);
response.setHeader("Access-Control-Allow-Methods", "POST, GET, PUT, OPTIONS, DELETE, PATCH");
response.setHeader("Access-Control-Max-Age", "3600");
response.setHeader("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
response.setHeader("Access-Control-Expose-Headers", "Location");
response.setHeader("Access-Control-Allow-Credentials", "true");
chain.doFilter(req, res);
}
}
Below is the error I’m getting in the console
**
• document,domain mutation is ignored CulatomerportalServle..-11T11:29:04.9852:7 Q because the surrounding agent cluster is origin-keyed. CR: FormInit – begins CustomerportalServle.11T11:29:04.9852:31
•Uncaught DOMException: Failed to read a CustomerportalServle.11T11:29:04.9852:47 named property ‘logo’ from ‘Window’: Blocked a frame with origin “some url” from accessing a cross-origin frame. at formInit (some url) at onload (some url)
**
Below is the jsp file that I’m using and getting error at “top.logo.getlanguage()” or any “top.logo.” things
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Some Title</title>
<script type="text/javascript">
// JavaScript code
try {
document.domain = "something.net";
} catch (e) {
// handle the error
}
</script>
</head>
<body>
<script type="text/javascript">
// More JavaScript code
try {
var consoleOld = null;
consoleOld = top.systemObj.getConsole();
} catch (e) {
// handle the error
}
</script>
</body>
</html>
I was told to add “Origin-Agent-Cluster: ?0” in the response header.
Can anyone tell me what is the solution here and if I have to add origin agent cluster what modification should I do?