将Magnolia内容嵌入到现有的Web应用程序中

时间:2013-10-23 14:48:01

标签: jsp integration magnolia

我们正在尝试将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为URL:http://localhost:8080/magnoliaAuthor/footer(当使用绝对URL时)。这似乎是请求被Magnolia拒绝了。

我们无法找到如何将此用例放在一起的确切描述。任何暗示都将受到赞赏。

谢谢。

1 个答案:

答案 0 :(得分:2)

HTTP 401 unauthorized

  

请求需要用户身份验证。

哪个有意义:magnoliaAuthor实例总是需要用户名和密码才能登录,因为它是editors work的实例。

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

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

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

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