1.1 问题描述
成功登录Portal系统后,是跳转到系统指定的默认页面,还是恢复用户上次退出时所在的页面,抑或是由用户自己选择以上两种方式中的一种呢?这取决于用户登录时的选项。
我们通过以下例子来说明如何调整。
假设我在门户中有两个页面:一个是首页,可以匿名访问,里边有Login的Portlet;另一个是“我的工作台”,需要验证。
在首页登录成功后,系统跳转到登录后的首页,而不能自动跳转到我的工作台页面。
请问能不能实现从首页成功登录Portlet后,自动跳转到我的工作台页面?
1.2 解决方案
第一种方法:在WAS中添加参数。
1.建立URL映射
以超级管理员wpsadmin身份登录Portal系统后,依次单击“管理”→“门户网站设置”→“URL映射”,进入到URL映射管理界面,如图1-1所示。
图1-1 在Portal管理界面中选择“URL映射”项目
单击“新建上下文”按钮,新建一个URL映射,如图1-2所示。输入标签名,然后单击“确定”按钮。标签名可以随便输入,但仅限于英文、数字或其组合,不能有中文,例如“MyDefaultLoggedInPage”。
图1-2 新建一个URL映射
单击“确定”按钮后回到已有的URL列表,在列表中找到新建的条目,单击该条目右侧的“编辑映射”按钮,如图1-3所示。
图1-3 单击该 URL映射条目右侧的“编辑映射”按钮,用来指定映射到的页面
在接下来的页面中选择该映射要指向的页面,例如“我的工作台”页面,如图1-4所示。
图1-4 选择要映射的页面
选中将要跳转的页面,然后单击“确定”按钮,URL映射创建成功,如图1-5所示。
图1-5 URL映射创建成功
此时在地址栏输入http://ip:port/wps/myportal/MyDefalutLoggedInPage,就可跳转到“我的工作台”页面,如图1-6所示。
图1-6 通过URL访问“我的工作台”成功
2.配置WP_ConfigService
以WAS超级管理员wpsbind身份登录进入WAS控制台,依次单击“Resources(资源)”→“Resource Environment(资源环境)”→“Resource Environment Providers(资源环境提供程序)”,如图1-7所示。
图1-7 进入WAS的资源环境提供程序界面
选择“WP_ConfigService”,进入Portal配置服务界面,如图1-8所示。
图1-8 进入Portal配置服务界面
单击右边的“Custom properties(定制属性)”链接,在定制属性界面中准备添加参数。单击“New(新建)”按钮,加入redirect.login=true和redirect.login.url=http://localhost:port/wps/ myportal/test两个参数,如图1-9所示。
图1-9 增加两个自定义参数
保存后重启Portal服务器即可。
第二种方法:修改登录页面代码,直接重定向。
找到简单的方法了,在LoginView.jsp的form中加入
<input type=hidden name="WPSRedirectURL"
value="/wps/myportal/MyDefaultLoggedInPage"/>
这种方法不用重启服务器,刷新页面就可以了。
转载于:https://blog.51cto.com/134834/2324418