2012-11-19 87 views
2

我想知道如何实现一个机制,动态地决定用户的登陆页面是什么。在Alfresco的动态登陆页面分享

我知道的默认着陆页是相对容易的定制,你可以在下面的链接查看:

http://blogs.alfresco.com/wp/ddraper/2011/11/01/advanced-share-customization-part-1/

http://zscribble.wordpress.com/2012/02/13/how-to-change-user-landing-page-in-alfresco-share/

但它是不够的,因为我需要走稍远一点;在成功验证任何用户之后,我需要检索用户所属的站点,然后重定向到任何站点的仪表板。

我想有任何身份验证服务重定向到TOMCAT/webapps/share/site-index.jsp,从这里到用户仪表板或站点仪表板,取决于收到的参数。如果我对我的假设是正确的,我知道我应该自定义这种假设的认证服务,以获得用户的网站,然后重定向到适当的网站仪表板的URL。

我以正确的方式吗?如果没有,关于如何进行的任何想法?

谢谢。

回答

1

为了实现在Alfresco Share中成功验证后动态重定向到页面的机制,有两种可能的方法。由文件alfresco\site-data\configurations\slingshot.site.configuration.xml(默认值是site-index)在更新标签<root-page>的价值

  1. 更改默认着陆页:

    最简单的方法包括在接下来的步骤中。

  2. 根据之前定义的值创建自定义的Surf页面。
  3. 创建一个自定义模板实例
  4. 创建一个自定义FreeMarker模板,该模板专门包含加载web脚本的区域(将在下一步创建)。
  5. 实施该决定无论一个URL重定向到(在我来说,我必须找回通过REST的API用户的网站,然后重定向到一个网站的仪表板)
  6. 同样执行重定向到accept-invite component
  7. 一个webscript

另一种可能的方法是覆盖类PageViewPageViewResolver,这样您可以通过一个步骤而不是两个步骤对目标页面执行重定向,因此效率更高。我没有开发这个解决方案,所以我不能提供更多细节,但根据Alfresco工程师的说法,这是可行的。

如果您想了解更多,请阅读this thread