Author: taylor
Date: Tue Dec 15 04:45:13 2009
New Revision: 890640
URL: http://svn.apache.org/viewvc?rev=890640&view=rev
Log:
https://issues.apache.org/jira/browse/JS2-1084
fixing bug with navs being rendered twice, once in aggregator, once from jetui,
leading to bugs like page navigator not picking up space change message
ultimate goal is to not have to "pull" portlets out of decorators (or jetui
templates), but to have them rendered from page templates
Modified:
portals/jetspeed-2/portal/trunk/applications/jetspeed/src/main/webapp/WEB-INF/jetui/yui/jetui.jsp
portals/jetspeed-2/portal/trunk/applications/jetspeed/src/main/webapp/WEB-INF/pages/template.tpsml
portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/ui/Jetui.java
Modified:
portals/jetspeed-2/portal/trunk/applications/jetspeed/src/main/webapp/WEB-INF/jetui/yui/jetui.jsp
URL:
http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/applications/jetspeed/src/main/webapp/WEB-INF/jetui/yui/jetui.jsp?rev=890640&r1=890639&r2=890640&view=diff
==============================================================================
---
portals/jetspeed-2/portal/trunk/applications/jetspeed/src/main/webapp/WEB-INF/jetui/yui/jetui.jsp
(original)
+++
portals/jetspeed-2/portal/trunk/applications/jetspeed/src/main/webapp/WEB-INF/jetui/yui/jetui.jsp
Tue Dec 15 04:45:13 2009
@@ -36,10 +36,11 @@
Map userInfo = jetui.getUserAttributes(rc);
ContentPage portalPage = rc.getPage();
ColumnLayout columnLayout =
(ColumnLayout)request.getAttribute("columnLayout");
- String navContent = jetui.renderPortletWindow("_PageNavigator",
"j2-admin::PageNavigator", rc);
- String spacesNavContent = jetui.renderPortletWindow("_SpaceNavigator",
"j2-admin::SpaceNavigator", rc);
- String tbContent = jetui.renderPortletWindow("_JetspeedToolbox",
"j2-admin::JetspeedToolbox", rc);
- String breadcrumbs = jetui.renderPortletWindow("_BreadcrumbMenu",
"j2-admin::BreadcrumbMenu", rc);
+ ContentFragment pageNav = jetui.getContentFragment("jsPageNavigator", rc);
+ String navContent = jetui.getRenderedContent(pageNav, rc);
+ ContentFragment toolbox = jetui.getContentFragment("jsJetspeedToolbox", rc);
+ String tbContent = jetui.getRenderedContent(toolbox, rc);
+ String breadcrumbs = jetui.renderPortletWindow("jsBreadcrumbMenu",
"j2-admin::BreadcrumbMenu", rc);
String encoding = "text/html";
if (response.getCharacterEncoding() != null)
{
Modified:
portals/jetspeed-2/portal/trunk/applications/jetspeed/src/main/webapp/WEB-INF/pages/template.tpsml
URL:
http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/applications/jetspeed/src/main/webapp/WEB-INF/pages/template.tpsml?rev=890640&r1=890639&r2=890640&view=diff
==============================================================================
---
portals/jetspeed-2/portal/trunk/applications/jetspeed/src/main/webapp/WEB-INF/pages/template.tpsml
(original)
+++
portals/jetspeed-2/portal/trunk/applications/jetspeed/src/main/webapp/WEB-INF/pages/template.tpsml
Tue Dec 15 04:45:13 2009
@@ -8,13 +8,13 @@
<fragment id="template-top2" type="layout"
name="jetspeed-layouts::VelocityThreeColumns">
<property name="sizes" value="15%,70%,15%"></property>
- <fragment id="_jsSpaceNavigator-1001" type="portlet"
name="j2-admin::SpaceNavigator" decorator='clear'>
+ <fragment id="jsSpaceNavigator" type="portlet"
name="j2-admin::SpaceNavigator" decorator='clear'>
<property name="y" value="300"></property>
<property name="x" value="20"></property>
<property name="jsdesktop" value="detached=true"></property>
</fragment>
- <fragment id="_jsNavigator-1001" type="portlet"
name="j2-admin::PageNavigator">
+ <fragment id="jsPageNavigator" type="portlet"
name="j2-admin::PageNavigator">
<property name="z" value="201.0"></property>
<property name="row" value="0"></property>
<property name="width" value="40"></property>
@@ -30,7 +30,7 @@
<property name="width" value="60%"></property>
</page-fragment>
- <fragment id="_jsToolbox-1001" type="portlet"
name="j2-admin::JetspeedToolbox">
+ <fragment id="jsToolbox" type="portlet" name="j2-admin::JetspeedToolbox">
<property name="z" value="201.0"></property>
<property name="row" value="0"></property>
<property name="width" value="40"></property>
Modified:
portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/ui/Jetui.java
URL:
http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/ui/Jetui.java?rev=890640&r1=890639&r2=890640&view=diff
==============================================================================
---
portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/ui/Jetui.java
(original)
+++
portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/ui/Jetui.java
Tue Dec 15 04:45:13 2009
@@ -32,6 +32,7 @@
import org.apache.jetspeed.headerresource.HeaderResourceFactory;
import org.apache.jetspeed.layout.PageLayoutComponent;
import org.apache.jetspeed.om.page.ContentFragment;
+import org.apache.jetspeed.om.page.ContentPage;
import org.apache.jetspeed.pipeline.PipelineException;
import org.apache.jetspeed.portlet.HeadElement;
import org.apache.jetspeed.portlet.HeaderPhaseSupportConstants;
@@ -172,6 +173,26 @@
return fragment.getRenderedContent();
}
+ public ContentFragment getContentFragment(String windowId, RequestContext
context)
+ {
+ ContentPage page = context.getPage();
+ return page.getFragmentByFragmentId(windowId);
+// if (windowId == null || portletUniqueName == null)
+// {
+// throw new IllegalArgumentException("Parameter windowId and
portletUniqueName are both required");
+// }
+// PortletWindow window = context.getPortletWindow(windowId);
+// if (window == null)
+// {
+// window = context.getInstantlyCreatedPortletWindow(windowId,
portletUniqueName);
+// }
+// if (window.isValid())
+// {
+// return window.getFragment();
+// }
+// return null;
+ }
+
public String renderPortletWindow(String windowId, String
portletUniqueName, RequestContext context)
{
try
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]