1

我们正在尝试将 Magnolia 管理的内容嵌入到现有 Web 应用程序的一些 JSP 中。在 Tomcat 中,我们部署并设置了一个“magnoliaAuthor”上下文,它沿着我们现有的“app”上下文运行。

因此,例如,我们希望现有的 JSP/app/test.jsp包含一个 Magnolia 页面,例如/magnoliaAuthor/footer(只是一个 div)。在浏览器中,路径渲染得很好,但是在尝试将其包含到使用/magnoliaAuthor/footer中时我们遇到了问题:/app/test.jsp

  • c:import
  • jsp:include

等等,有相对路径和绝对路径到/magnoliaAuthor/footer..

最多我们得到以下内容:

服务器返回 HTTP 响应代码:401 for URL:(http://localhost:8080/magnoliaAuthor/footer使用绝对 URL 时)。这似乎请求被 Magnolia 拒绝了..

我们找不到关于如何组合这个用例的确切描述。任何提示将不胜感激。

谢谢你。

4

1 回答 1

2

HTTP 401未经授权

该请求需要用户身份验证。

这是有道理的: magnoliaAuthor 实例总是需要用户名和密码才能登录,因为它是编辑器工作的实例。

您需要向 magnoliaAuthor 发送用户名和密码。我的研究表明 Magnolia 使用两个登录过滤器,位于/server/filters/login/loginHandlers

您可以使用 HTTP 基本身份验证并包含您的 Magnolia 页面,例如:

<c:import url="http://username:password@example.com/magnoliaAuthor/app/test" />

注意:您写道,您没有任何问题,包括/magnoliaAuthor/footer. 这意味着您访问这两个站点的安全配置是不同的。您应该考虑检查这一点,通常您不希望未经授权访问 magnoliaAuthor 中的任何资源。

于 2013-10-24T05:35:25.923 回答