[gatein-commits] gatein SVN: r2453 - portal/branches/EPP_5_0_Branch/webui/portal/src/main/java/org/exoplatform/portal/webui/page.
do-not-reply at jboss.org
do-not-reply at jboss.org
Thu Apr 1 09:09:38 EDT 2010
Author: thomas.heute at jboss.com
Date: 2010-04-01 09:09:37 -0400 (Thu, 01 Apr 2010)
New Revision: 2453
Modified:
portal/branches/EPP_5_0_Branch/webui/portal/src/main/java/org/exoplatform/portal/webui/page/UIPageActionListener.java
Log:
JBEPP-224: Reset current navigation after sign in
Modified: portal/branches/EPP_5_0_Branch/webui/portal/src/main/java/org/exoplatform/portal/webui/page/UIPageActionListener.java
===================================================================
--- portal/branches/EPP_5_0_Branch/webui/portal/src/main/java/org/exoplatform/portal/webui/page/UIPageActionListener.java 2010-04-01 12:44:40 UTC (rev 2452)
+++ portal/branches/EPP_5_0_Branch/webui/portal/src/main/java/org/exoplatform/portal/webui/page/UIPageActionListener.java 2010-04-01 13:09:37 UTC (rev 2453)
@@ -19,9 +19,11 @@
package org.exoplatform.portal.webui.page;
+import org.exoplatform.container.ExoContainer;
import org.exoplatform.portal.application.PortalRequestContext;
import org.exoplatform.portal.config.DataStorage;
import org.exoplatform.portal.config.UserPortalConfig;
+import org.exoplatform.portal.config.UserPortalConfigService;
import org.exoplatform.portal.config.model.Container;
import org.exoplatform.portal.config.model.ModelObject;
import org.exoplatform.portal.config.model.Page;
@@ -40,7 +42,6 @@
import org.exoplatform.webui.core.UIComponent;
import org.exoplatform.webui.event.Event;
import org.exoplatform.webui.event.EventListener;
-import org.exoplatform.webui.event.Event.Phase;
import java.util.ArrayList;
import java.util.List;
@@ -295,13 +296,33 @@
*/
private PageNode getDefaultNode(PageNavigation nav)
{
- PageNode defaultNode;
+ PageNode defaultNode = null;
try
{
- defaultNode = nav.getNodes().get(0);
+ if (nav != null && nav.getNodes().size() > 0)
+ {
+ WebuiRequestContext context = Util.getPortalRequestContext();
+ ExoContainer appContainer = context.getApplication().getApplicationServiceContainer();
+ UserPortalConfigService userPortalConfigService = (UserPortalConfigService)appContainer.getComponentInstanceOfType(UserPortalConfigService.class);
+
+ for (PageNode pageNode : nav.getNodes())
+ {
+ Page page = userPortalConfigService.getPage(pageNode.getPageReference(), context.getRemoteUser());
+ if (page != null)
+ {
+ defaultNode = pageNode;
+ break;
+ }
+ }
+ }
+ else
+ {
+ return null;
+ }
}
- catch (IndexOutOfBoundsException ex)
+ catch (Exception e)
{
+ e.printStackTrace();
return null;
}
if (defaultNode != null && !("notfound".equals(defaultNode.getName())))
More information about the gatein-commits
mailing list