- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
对 servletA 的 ajax 调用。 servletA需要重定向或转发到另一个内容页面。是否可以。?我看到 Ajax 完成函数中的重定向响应,而不是重定向到重定向的内容页面。也许我错过了一些重要但不知道的事情。我试图重定向到 aem servlet 中的另一个内容页面。它在网络选项卡中返回 200 OK 响应,但永远不会转到指定的重定向页面。
我的同事说 Ajax 调用重定向是不可能的,因为它是单独的线程请求,是吗?如果我说回应,我是在假设。发送重定向();将发出新请求并将响应加载到浏览器窗口上。
@Component(
immediate = true,
service = Servlet.class,
property = {
"sling.servlet.paths=/bin/test/redirect"
})
public class TestRedirectServlet extends SlingAllMethodsServlet {
private static final long serialVersionUID = 3591693830449607948L;
@Override
protected void doGet(SlingHttpServletRequest request,
SlingHttpServletResponse response) {
PrintWriter writer = null;
try {
writer = response.getWriter();
// final RequestDispatcherOptions options = new RequestDispatcherOptions();
// final SlingHttpServletRequest syntheticRequest = new SyntheticSlingHttpServletGetRequest(request);
// request.getRequestDispatcher("/content/<project-name>/en_US.html", options).forward(syntheticRequest, response);
// return;
response.sendRedirect("/content/test-site/sample.html");
} catch(Exception e) {
} finally {
if (writer != null) {
writer.print("done");
writer.flush();
writer.close();
}
}
}
}
最佳答案
通过使用 response.sendRedirect("/content/test-site/sample.html");
,您实际上是在向您发回 HTTP 301 或 302 重定向AJAX 请求。如果此请求是通过浏览器导航发起的,则窗口将重定向,但由于重定向是由 AJAX 发起的,因此响应将根本不包含成功的 HTTP 200 状态代码,并且 AJAX 会认为这是失败这可能会触发您的 error
函数回调。
更多关于HTTP Status Codes .
如上所述,您可以使用 servlet 的打印编写器返回 JSON 响应(而不是重定向),并使用 JavaScript 客户端执行重定向。使用 JSON 如下:
{
"redirect": true,
"location": "/content/test-site/sample.html"
}
您可以使用如下所示的 AJAX 调用:
$.ajax({
url: "/bin/test/redirect",
success: function(result){
if(result.redirect){
window.location = result.location;
}
},
error: function(result){
alert("Redirection Failure");
}
});
更多关于jQuery AJAX .
关于java - Ajax : Not able to redirect to a content page inside AEM SLING servlet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56070164/
我刚开始学习吊索。在这个阶段对我来说最大的问题是浏览 JCR 存储库。有没有什么好的工具可以查看 repo 里面的内容,显示资源和所有属性? 我需要这样的东西: http://blogs.adobe.
您好,我正在了解吊索分辨率的工作原理。 我遇到了 Adobe aem 开发人员指南中提到的这种情况 https://docs.adobe.com/docs/en/aem/6-2/develop/t
我们正在尝试在 AEM 6.0 中实现示例吊索模型。 没有导入的吊索模型类是这样的: @Model(adaptables = Resource.class) public class Header {
如果我以错误的方式提出问题,我会先说出我想要实现的目标: 我在 CQ5 中有以下组件结构:/apps/TEST/components/DatabaseConnection(DatabaseConnec
我对这个问题有疑问 Question: What is the correct order of precedence to setup runmodes in aem? (From left to
任何人都可以告诉我正确的方法来启动、配置以及对 sling 进行 CRUD 操作。我遵循了下面的教程,但它不适用于 CRUD。 http://sling.apache.org/documentatio
我找到了 Sling's ability to associate Servlets对于某些资源类型、选择器和扩展,这些方法在组件开发中非常有用。 现在我开始研究 ComponentFilterCha
我试图了解 sling url 重写的工作原理。我正在关注这个网址 - http://www.cognifide.com/blogs/cq/multidomain-cq-mappings-and-ap
我有 sling 映射设置,可以将传出路径重写到外部 URL。这种重写的一个例子:/content/www-sitename/home.html 将被重写为 http://www.sitename.c
我习惯于在 sling 中使用节点,并习惯于通过以下方式循环节点: NodeIterator headerNode = currentNode.getNodes(); //loop through a
我正在查看 sling 如何根据 url 调用脚本。在选择器的情况下,它似乎工作正常,但如果我不使用选择器,我会感到困惑: 我有一个页面 /content/AEMProject/English/tes
我正在开发 Sling WCMS。我需要在服务器计算机上设置 Sling 存储库并进行远程访问。 如何远程访问 Sling 存储库?有什么特殊配置吗? 谢谢。 最佳答案 Sling 使用 Apache
我有一个非常简单的代码片段,但确实给我带来了一些麻烦。我有一个非常简单的方法,可以点击“URL”参数,当有值时就返回。当它到达“fragment”参数时,它不会返回任何内容,而且我一生都无法弄清楚为什
我无法理解为什么要在吊索中使用资源而不是节点。假设我有一些简单的访问节点,如下所示: NodeIterator headerNode = currentNode.getNodes(); //loop
我在 sling 中使用 listChildren 方法时遇到问题,并且无法弄清楚原因。这是一个非常基本的代码片段,用于查找名为“header”的资源并列出其子项及其给定属性。令人困惑的是我没有收到任
我对吊带真的很陌生,所以我提前道歉。我有一个简单的脚本,但我无法开始工作。我想要做的就是获取位于 JCR 中的特定资源的“lastModified”属性。 Resource getResource =
我无法理解为什么您会在 sling 中使用资源而不是节点。所以说我有一些简单的访问节点,如下所示: NodeIterator headerNode = currentNode.getNodes();
我们有一个外部身份管理系统,它必须使用 Sling 和 REST 管理 CQ5 中用户的生命周期。 我们能够创建和删除用户和组 创造 POST http://$host:$port/libs/cq/s
我想用 data-sly-resource包含资源,但前提是它存在,例如 如果资源不存在,脚本执行失败并显示以下错误消息:找不到 servlet 来处理资源/content/blog/stats 。
Sling 模型中的 @Model 注释允许多个适应性,例如 @Model(adaptables = { SlingHttpServletRequest.class, Resource.class }
我是一名优秀的程序员,十分优秀!