portals-jetspeed-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From smi...@apache.org
Subject svn commit: r510189 [2/2] - in /portals/jetspeed-2/trunk/components: header-resource/src/java/org/apache/jetspeed/headerresource/impl/ portal/src/java/org/apache/jetspeed/aggregator/impl/ portal/src/java/org/apache/jetspeed/decoration/ portal/src/java/...
Date Wed, 21 Feb 2007 20:42:39 GMT
Modified: portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/desktop/impl/JetspeedDesktopImpl.java
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/desktop/impl/JetspeedDesktopImpl.java?view=diff&rev=510189&r1=510188&r2=510189
==============================================================================
--- portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/desktop/impl/JetspeedDesktopImpl.java
(original)
+++ portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/desktop/impl/JetspeedDesktopImpl.java
Wed Feb 21 12:42:38 2007
@@ -16,12 +16,9 @@
 package org.apache.jetspeed.desktop.impl;
 
 import java.io.IOException;
-import java.io.InputStream;
-import java.util.HashMap;
-import java.util.Locale;
 import java.util.Map;
 import java.util.List;
-import java.util.Properties;
+import java.util.Iterator;
 import java.util.ResourceBundle;
 
 
@@ -32,10 +29,13 @@
 import org.apache.commons.logging.LogFactory;
 import org.apache.jetspeed.Jetspeed;
 import org.apache.jetspeed.container.url.BasePortalURL;
+import org.apache.jetspeed.decoration.DecorationFactory;
+import org.apache.jetspeed.decoration.Theme;
 import org.apache.jetspeed.desktop.JetspeedDesktop;
 import org.apache.jetspeed.desktop.JetspeedDesktopContext;
 import org.apache.jetspeed.headerresource.HeaderResource;
 import org.apache.jetspeed.headerresource.HeaderResourceFactory;
+import org.apache.jetspeed.headerresource.HeaderResourceLib;
 import org.apache.jetspeed.om.page.Page;
 import org.apache.jetspeed.request.RequestContext;
 import org.springframework.web.context.ServletContextAware;
@@ -44,19 +44,16 @@
  * Desktop Valve
  *
  * @author <a href="mailto:taylor@apache.org">David Sean Taylor</a>
+ * @author <a href="mailto:smilek@apache.org">Steve Milek</a>
  * @version $Id: JetspeedDesktopImpl.java $
  */
 public class JetspeedDesktopImpl implements JetspeedDesktop, ServletContextAware
-{    
-    private static final String TEMPLATE_EXTENSION_ATTR = "template.extension";
-
-    private static final String ID_ATTR = "id";
-    
-    private static final String RESOURCE_FILE_ATTR =  "resource.file";
-
+{
     private final static String EOL = "\r\n";   // html eol
-    private final static String DOJO_CONFIG_THEME_ROOT_URL_VAR_NAME = HeaderResource.HEADER_INTERNAL_DOJO_CONFIG_JETSPEED_VAR_NAME
+ ".desktopThemeRootUrl";
-    private final static String DOJO_CONFIG_THEME_VAR_NAME = HeaderResource.HEADER_INTERNAL_DOJO_CONFIG_JETSPEED_VAR_NAME
+ ".desktopTheme";
+    private final static String DOJO_CONFIG_LAYOUT_DECORATION_PATH_VAR_NAME = HeaderResource.HEADER_INTERNAL_DOJO_CONFIG_JETSPEED_VAR_NAME
+ ".layoutDecorationPath";
+    private final static String DOJO_CONFIG_LAYOUT_VAR_NAME = HeaderResource.HEADER_INTERNAL_DOJO_CONFIG_JETSPEED_VAR_NAME
+ ".layoutName";
+    private final static String DOJO_CONFIG_PORTLET_DECORATIONS_PATH_VAR_NAME = HeaderResource.HEADER_INTERNAL_DOJO_CONFIG_JETSPEED_VAR_NAME
+ ".portletDecorationsPath";
+    private final static String DOJO_CONFIG_PORTLET_DECORATIONS_ALLOWED_VAR_NAME = HeaderResource.HEADER_INTERNAL_DOJO_CONFIG_JETSPEED_VAR_NAME
+ ".portletDecorationsAllowed";
     private final static String DOJO_CONFIG_ACTION_LABELS_NAME = HeaderResource.HEADER_INTERNAL_DOJO_CONFIG_JETSPEED_VAR_NAME
+ ".desktopActionLabels";
 
     private final static String[] DESKTOP_ACTIONS = new String[] { "menu", "tile", "untile",
"heightexpand", "heightnormal", "restore", "removeportlet", "addportlet", "editpage" };
@@ -64,18 +61,14 @@
     
     private static final Log log = LogFactory.getLog( JetspeedDesktopImpl.class );
 
-    /** the webapp relative root of all themes */
-    private String themesRoot;
-    
-    /** default theme when no theme supplied in desktop page */
-    private String defaultTheme;
+    private DecorationFactory decorationFactory;
+        
+    /** desktop pipeline servlet path */
+    private String desktopServletPath;
     
-    /** default extension for theme templates */
-    private String defaultExtension;
+    /** default extension for layout templates */
+    private String defaultLayoutTemplateExtension;
     
-    /** property settings for each theme available */
-    private Map themesProperties = new HashMap();
-
     /** spring-fed servlet context property */
     private ServletContext servletContext;
     
@@ -85,60 +78,125 @@
     /** base portal URL to override default URL server info from servlet */
     private BasePortalURL baseUrlAccess = null;
     
-    public JetspeedDesktopImpl(String themesRoot, String defaultTheme, String defaultExtension,
HeaderResourceFactory headerResourceFactory )
+    public JetspeedDesktopImpl( DecorationFactory decorationFactory, HeaderResourceFactory
headerResourceFactory, String desktopServletPath, String defaultLayoutTemplateExtension )
     {
-        this( themesRoot, defaultTheme, defaultExtension, headerResourceFactory, null );
+        this( decorationFactory, headerResourceFactory, desktopServletPath, defaultLayoutTemplateExtension,
null, null, null );
     }
-
-    public JetspeedDesktopImpl(String themesRoot, String defaultTheme, String defaultExtension,
HeaderResourceFactory headerResourceFactory, BasePortalURL baseUrlAccess)
+    public JetspeedDesktopImpl( DecorationFactory decorationFactory, HeaderResourceFactory
headerResourceFactory, String desktopServletPath, String defaultLayoutTemplateExtension, String
defaultDesktopLayoutDecoration, String defaultDesktopPortletDecoration )
+    {
+        this( decorationFactory, headerResourceFactory, desktopServletPath, defaultLayoutTemplateExtension,
defaultDesktopLayoutDecoration, defaultDesktopPortletDecoration, null );
+    }
+    public JetspeedDesktopImpl( DecorationFactory decorationFactory, HeaderResourceFactory
headerResourceFactory, String desktopServletPath, String defaultLayoutTemplateExtension, String
defaultDesktopLayoutDecoration, String defaultDesktopPortletDecoration, BasePortalURL baseUrlAccess
)
     {
-        this.themesRoot = themesRoot;
-        this.defaultTheme = defaultTheme;
-        this.defaultExtension = defaultExtension;
+        this.decorationFactory = decorationFactory;
         this.headerResourceFactory = headerResourceFactory;
+        
+        if ( desktopServletPath != null && desktopServletPath.length() > 0 )
+        {
+            if ( desktopServletPath.charAt( 0 ) != '/' )
+                desktopServletPath = "/" + desktopServletPath;
+        }
+        this.desktopServletPath = desktopServletPath;
+        if ( this.desktopServletPath == null || this.desktopServletPath.length() == 0 )
+        {
+            log.warn( "JetspeedDesktopImpl initialization is incomplete due to undefined
desktop servlet path." );
+            this.desktopServletPath = null;
+        }
+        
+        this.defaultLayoutTemplateExtension = defaultLayoutTemplateExtension;
+        
+        // set default layout and portlet decorations only if they are not currently undefined
+        if ( defaultDesktopLayoutDecoration != null && defaultDesktopLayoutDecoration.length()
> 0 )
+        {
+            String existingDefaultDesktopLayoutDecoration = decorationFactory.getDefaultDesktopLayoutDecoration();
+            if ( existingDefaultDesktopLayoutDecoration == null || existingDefaultDesktopLayoutDecoration.length()
== 0 )
+            {
+                decorationFactory.setDefaultDesktopLayoutDecoration( defaultDesktopLayoutDecoration
);
+            }
+        }
+        if ( defaultDesktopPortletDecoration != null && defaultDesktopPortletDecoration.length()
> 0 )
+        {
+            String existingDefaultDesktopPortletDecoration = decorationFactory.getDefaultDesktopPortletDecoration();
+            if ( existingDefaultDesktopPortletDecoration == null || existingDefaultDesktopPortletDecoration.length()
== 0 )
+            {
+                decorationFactory.setDefaultDesktopPortletDecoration( defaultDesktopPortletDecoration
);
+            }
+        }
+        
         this.baseUrlAccess = baseUrlAccess;
     }
     
-    public void render(RequestContext request)    
+    public void render( RequestContext request )    
     {
-        Page page = request.getPage();
-        String theme = page.getSkin();
-        if (theme == null)
-        {
-            theme = defaultTheme;
-        }        
-        String path = getThemePath(theme);               
+        String layoutDecorationTemplatePath = null;
+        boolean layoutDecorationTemplatePathWasAssigned = false;
         try
         {
-            RequestDispatcher dispatcher = request.getRequest().getRequestDispatcher(path);
+            Page page = request.getPage();
+            
+            // enable desktop
+            request.setAttribute( JetspeedDesktop.DESKTOP_ENABLED_REQUEST_ATTRIBUTE, Boolean.TRUE
);
+            
+            // get decorations
+            Theme theme = decorationFactory.getTheme( page, request );
             
             HeaderResource hr = getHeaderResourceFactory().getHeaderResouce( request );
+            JetspeedDesktopContext desktopContext = new JetspeedDesktopContextImpl( request,
this.baseUrlAccess, theme, hr, defaultLayoutTemplateExtension );
+            
+            layoutDecorationTemplatePath = desktopContext.getLayoutTemplatePath();
+            layoutDecorationTemplatePathWasAssigned = true;
+            
+            RequestDispatcher dispatcher = request.getRequest().getRequestDispatcher( layoutDecorationTemplatePath
);
             
             hr.dojoEnable();
             
-            JetspeedDesktopContext desktopContext = new JetspeedDesktopContextImpl(
-                    request, this.baseUrlAccess, theme, getThemeRootPath( theme ), getResourceName(
theme ), hr );
-            request.getRequest().setAttribute( JetspeedDesktopContext.DESKTOP_ATTRIBUTE,
desktopContext );
-            request.getRequest().setAttribute( "JS2RequestContext", request );
-            request.getRequest().setAttribute( "JS2ComponentManager", Jetspeed.getComponentManager()
);
+            request.getRequest().setAttribute( JetspeedDesktopContext.DESKTOP_CONTEXT_ATTRIBUTE,
desktopContext );
+            request.getRequest().setAttribute( JetspeedDesktopContext.DESKTOP_REQUEST_CONTEXT_ATTRIBUTE,
request );
+            request.getRequest().setAttribute( JetspeedDesktopContext.DESKTOP_COMPONENT_MANAGER_ATTRIBUTE,
Jetspeed.getComponentManager() );
             
+            String portletDecorationsBasePath = decorationFactory.getPortletDecorationsBasePath();
+            String portletDecorationsBaseRelative = portletDecorationsBasePath;
+            if ( portletDecorationsBaseRelative != null && portletDecorationsBaseRelative.length()
> 1 && portletDecorationsBaseRelative.indexOf( '/' ) == 0 )
+            {
+                portletDecorationsBaseRelative = portletDecorationsBaseRelative.substring(
1 );
+            }
             StringBuffer dojoConfigAddOn = new StringBuffer();
-            dojoConfigAddOn.append( "    " ).append( DOJO_CONFIG_THEME_ROOT_URL_VAR_NAME
).append( " = \"" ).append( desktopContext.getDesktopThemeRootUrl() ).append( "\";" ).append(
EOL );
-            dojoConfigAddOn.append( "    " ).append( DOJO_CONFIG_THEME_VAR_NAME ).append(
" = \"" ).append( desktopContext.getDesktopTheme() ).append( "\";" );
-            hr.addHeaderSectionFragment( DOJO_CONFIG_THEME_VAR_NAME, HeaderResource.HEADER_SECTION_DOJO_CONFIG,
dojoConfigAddOn.toString() );
+            dojoConfigAddOn.append( "    " ).append( DOJO_CONFIG_LAYOUT_DECORATION_PATH_VAR_NAME
).append( " = \"" ).append( desktopContext.getLayoutBasePath() ).append( "\";" ).append( EOL
);
+            dojoConfigAddOn.append( "    " ).append( DOJO_CONFIG_LAYOUT_VAR_NAME ).append(
" = \"" ).append( desktopContext.getLayoutDecorationName() ).append( "\";" ).append( EOL );
+            dojoConfigAddOn.append( "    " ).append( DOJO_CONFIG_PORTLET_DECORATIONS_PATH_VAR_NAME
).append( " = \"" ).append( portletDecorationsBasePath ).append( "\";" ).append( EOL );
+            String portletDecorationNamesContent = HeaderResourceLib.makeJSONStringArray(
theme.getPortletDecorationNames() );
+            dojoConfigAddOn.append( "    " ).append( DOJO_CONFIG_PORTLET_DECORATIONS_ALLOWED_VAR_NAME
).append( " = " ).append( portletDecorationNamesContent ).append( ";" );
+            hr.addHeaderSectionFragment( DOJO_CONFIG_LAYOUT_VAR_NAME, HeaderResource.HEADER_SECTION_DOJO_CONFIG,
dojoConfigAddOn.toString() );
             
-            if ( hr.isHeaderSectionIncluded( HeaderResource.HEADER_SECTION_DESKTOP_STYLE_DESKTOPTHEME
) )
+            if ( hr.isHeaderSectionIncluded( HeaderResource.HEADER_SECTION_DESKTOP_STYLE_LAYOUT
) )
             {
-                hr.setHeaderSectionType( HeaderResource.HEADER_SECTION_DESKTOP_STYLE_DESKTOPTHEME,
HeaderResource.HEADER_TYPE_LINK_TAG );
+                hr.setHeaderSectionType( HeaderResource.HEADER_SECTION_DESKTOP_STYLE_LAYOUT,
HeaderResource.HEADER_TYPE_LINK_TAG );
                 StringBuffer desktopThemeStyleLink = new StringBuffer();
-                desktopThemeStyleLink.append( "<link rel=\"stylesheet\" type=\"text/css\"
media=\"screen, projection\" href=\"" );
-                desktopThemeStyleLink.append( desktopContext.getDesktopThemeRootUrl() ).append(
"/css/styles.css\"/>" );
-                hr.addHeaderSectionFragment( "desktop.style.desktoptheme", HeaderResource.HEADER_SECTION_DESKTOP_STYLE_DESKTOPTHEME,
desktopThemeStyleLink.toString() );
+                int stylesheetCount = 0;
+                Iterator stylesheetIter = theme.getStyleSheets().iterator();
+                while ( stylesheetIter.hasNext() )
+                {
+                    String stylesheetHref = (String)stylesheetIter.next();
+                    if ( stylesheetHref != null && stylesheetHref.length() > 0
)
+                    {
+                        if ( ! stylesheetHref.startsWith( portletDecorationsBaseRelative
) )
+                        {   // exclude portlet decorations - in desktop these are loaded
via javascript
+                            if ( stylesheetCount > 0 )
+                            {
+                                desktopThemeStyleLink.append( EOL );
+                            }
+                            desktopThemeStyleLink.append( "<link rel=\"stylesheet\" type=\"text/css\"
media=\"screen, projection\" href=\"" );
+                            desktopThemeStyleLink.append( desktopContext.getPortalResourceUrl(
stylesheetHref ) ).append( "\"/>" );
+                            stylesheetCount++;
+                        }
+                    }
+                }
+                hr.addHeaderSectionFragment( "desktop.style.layout", HeaderResource.HEADER_SECTION_DESKTOP_STYLE_LAYOUT,
desktopThemeStyleLink.toString() );
             }
             
             // desktop action labels
             StringBuffer desktopActionLabels = new StringBuffer();
-            ResourceBundle messages = desktopContext.getResourceBundle( request.getLocale()
);
+            ResourceBundle messages = desktopContext.getLayoutResourceBundle( request.getLocale()
);
             for ( int i = 0 ; i < DESKTOP_ACTIONS.length ; i++ )
             {
                 String actionLabel = messages.getString( DESKTOP_ACTION_RESOURCE_NAME_PREFIX
+ DESKTOP_ACTIONS[ i ] );
@@ -164,135 +222,147 @@
             
             dispatcher.include( request.getRequest(), request.getResponse() );
         }
-        catch (Exception e)
+        catch ( Exception e )
         {
             try
             {
-                log.error("Failed to include Desktop theme " + path, e);
-                request.getResponse().getWriter().println("Desktop theme " + theme + " is
not available");
+                if ( layoutDecorationTemplatePathWasAssigned )
+                {
+                    layoutDecorationTemplatePath = ( layoutDecorationTemplatePath == null
|| layoutDecorationTemplatePath.length() == 0 ? "null" : layoutDecorationTemplatePath );
+                    log.error( "Failed to include desktop layout decoration at path " + layoutDecorationTemplatePath,
e );
+                    request.getResponse().getWriter().println( "Desktop layout decoration
" + layoutDecorationTemplatePath + " is not available" );
+                }
+                else
+                {
+                    log.error( "Failed to initialize for inclusion of desktop layout decoration",
e );
+                    request.getResponse().getWriter().println( "Failed to initialize for
inclusion of desktop layout decoration" );
+                }
             }
-            catch (IOException ioe)
+            catch ( IOException ioe )
             {
-                log.error("Failed to write exception information to servlet output writer",
ioe);
+                log.error( "Failed to write desktop layout decoration exception information
to servlet output writer", ioe );
             }
-        
         }
     }
     
-    public String getDefaultTheme()
+    public boolean isDesktopEnabled( RequestContext requestContext )
     {
-        return defaultTheme;
+        return this.decorationFactory.isDesktopEnabled( requestContext );
     }
-
     
-    protected void setDefaultTheme(String defaultTheme)
+    public ServletContext getServletContext()
     {
-        this.defaultTheme = defaultTheme;
+        return servletContext;
     }
 
-    protected String getThemeConfigurationPath(String theme)
+    public void setServletContext(ServletContext servletContext)
     {
-        return this.themesRoot + "/" +  theme + "/" + JetspeedDesktop.CONFIG_FILE_NAME;
+        this.servletContext = servletContext;
     }
     
-    protected String getResourceName(String theme)
+    public HeaderResourceFactory getHeaderResourceFactory()
     {
-        Properties themeConfiguration = (Properties)themesProperties.get(theme);
-        if (themeConfiguration == null)
-        {
-            themeConfiguration = getConfiguration(theme);
-        }
-        return themeConfiguration.getProperty(RESOURCE_FILE_ATTR);
+        return this.headerResourceFactory;
     }
     
-    protected String getThemePath(String theme)
+    // get portal urls - each of these methods is copied from HeaderResourceImpl.java
+ 
+    /**
+     * Desktop servlet path ( e.g. /desktop )
+     * 
+     * @return portal base url
+     */
+    public String getDesktopServletPath()
+    {
+        return this.desktopServletPath;
+    }
+    
+    /**
+     * Portal base url ( e.g. http://localhost:8080/jetspeed )
+     * 
+     * @return portal base url
+     */
+    public String getPortalBaseUrl( RequestContext context )
+    {
+        return HeaderResourceLib.getPortalBaseUrl( context, this.baseUrlAccess );
+    }
+    
+    /**
+     * Portal base url ( e.g. http://localhost:8080/jetspeed )
+     * 
+     * @return portal base url
+     */
+    public String getPortalBaseUrl( RequestContext context, boolean encode )
     {
-        Properties themeConfiguration = (Properties)themesProperties.get(theme);
-        if (themeConfiguration == null)
+        String baseurl = getPortalBaseUrl( context );
+        if ( ! encode )
         {
-            themeConfiguration = getConfiguration(theme);
+            return baseurl;
+        }
+        else
+        {
+            return context.getResponse().encodeURL( baseurl );
         }
-        String id = themeConfiguration.getProperty(ID_ATTR);
-        if (id == null)
-            id = theme;
-        String ext = themeConfiguration.getProperty(TEMPLATE_EXTENSION_ATTR);
-        if (ext == null)
-            ext = this.defaultExtension;
-        return getThemeRootPath(theme) + "/" + id + ext;
     }
-
-    protected String getThemeRootPath(String theme)
+    
+    /**
+     * Portal base url with relativePath argument appended ( e.g. http://localhost:8080/jetspeed/javascript/dojo/
)
+     * 
+     * @return portal base url with relativePath argument appended
+     */
+    public String getPortalResourceUrl( RequestContext context, String relativePath )
     {
-        if (this.themesRoot.endsWith("/"))
-            return this.themesRoot + theme;
-        else
-            return this.themesRoot + "/" + theme;
+        return getPortalResourceUrl( context, relativePath, false );
     }
     
-    protected Properties getConfiguration(String theme)
+    /**
+     * Portal base url with relativePath argument appended ( e.g. http://localhost:8080/jetspeed/javascript/dojo/
)
+     * 
+     * @return portal base url with relativePath argument appended
+     */
+    public String getPortalResourceUrl( RequestContext context, String relativePath, boolean
encode )
     {
-        Properties props = (Properties)this.themesProperties.get(theme);
-        if (props != null)
-        {
-            return props;
-        }
-        
-        props = new Properties();
-        InputStream is = null;
-        try
-        {
-            is = this.servletContext.getResourceAsStream(getThemeConfigurationPath(theme));
-            if (is != null)
-            {                
-                props.load(is);
-            }
-            else
-            {
-                log.warn("Could not locate the theme.properties configuration file for theme
\""
-                        + theme +
-                     "\".  This theme may not exist.");
-                props.setProperty(ID_ATTR, theme);
-                props.setProperty("extension", this.defaultExtension);
-            }                
-        }
-        catch (Exception e)
-        {
-            log.warn("Failed to load theme configuration.", e);
-            props.setProperty(ID_ATTR, theme);
-        }
-        finally
-        {
-            if (is != null)
-            {
-                try
-                {
-                    is.close();
-                }
-                catch (IOException e)
-                {
-                    log.warn("Failed to close them configuration.", e);
-                }
-            }
-        }
-        this.themesProperties.put(theme, props);
-        return props;
+        return HeaderResourceLib.getPortalResourceUrl( relativePath, getPortalBaseUrl( context
), encode, context );
     }
-
     
-    public ServletContext getServletContext()
+    /**
+     * Portal base servlet url ( e.g. http://localhost:8080/jetspeed/desktop/ )
+     * 
+     * @return portal base servlet url
+     */
+    public String getPortalUrl( RequestContext context )
     {
-        return servletContext;
+        return HeaderResourceLib.getPortalUrl( getPortalBaseUrl( context ), context, getDesktopServletPath()
);
     }
-
     
-    public void setServletContext(ServletContext servletContext)
+    /**
+     * Portal base servlet url ( e.g. http://localhost:8080/jetspeed/desktop/ )
+     * 
+     * @return portal base servlet url
+     */
+    public String getPortalUrl( RequestContext context, boolean encode )
     {
-        this.servletContext = servletContext;
+        return getPortalUrl( context, null, encode );
     }
     
-    public HeaderResourceFactory getHeaderResourceFactory()
+    /**
+     * Portal base servlet url with relativePath argument appended ( e.g. http://localhost:8080/jetspeed/desktop/default-page.psml
)
+     * 
+     * @return portal base servlet url with relativePath argument appended
+     */
+    public String getPortalUrl( RequestContext context, String relativePath )
     {
-        return this.headerResourceFactory;
+        return getPortalUrl( context, relativePath, false );
+    }
+    
+    /**
+     * Portal base servlet url with relativePath argument appended ( e.g. http://localhost:8080/jetspeed/desktop/default-page.psml
)
+     * 
+     * @return portal base servlet url with relativePath argument appended
+     */
+    public String getPortalUrl( RequestContext context, String relativePath, boolean encode
)
+    {
+        return HeaderResourceLib.getPortalResourceUrl( relativePath, getPortalUrl( context
), encode, context );
     }
 }
     

Modified: portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/velocity/JetspeedVelocityViewServlet.java
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/velocity/JetspeedVelocityViewServlet.java?view=diff&rev=510189&r1=510188&r2=510189
==============================================================================
--- portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/velocity/JetspeedVelocityViewServlet.java
(original)
+++ portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/velocity/JetspeedVelocityViewServlet.java
Wed Feb 21 12:42:38 2007
@@ -247,11 +247,11 @@
         // hook up eventHandlers to the context, specifically our own IgnoringNullSetEventHandling
         eventCartridge.attachToContext(ctx);
         
-        JetspeedDesktopContext desktopContext = (JetspeedDesktopContext)request.getAttribute(JetspeedDesktopContext.DESKTOP_ATTRIBUTE);
       
+        JetspeedDesktopContext desktopContext = (JetspeedDesktopContext)request.getAttribute(JetspeedDesktopContext.DESKTOP_CONTEXT_ATTRIBUTE);
         if (desktopContext != null)
         {
             // standard render request and response also available in context
-            ctx.put(JetspeedDesktopContext.DESKTOP_ATTRIBUTE, desktopContext);
+            ctx.put(JetspeedDesktopContext.DESKTOP_CONTEXT_ATTRIBUTE, desktopContext);
             ctx.put("JS2RequestContext", requestContext);
             
             // setup TLS for Context propagation
@@ -374,7 +374,7 @@
     private VelocityEngine getVelocityEngine(Context ctx)
     {
         RequestContext requestContext = (RequestContext) ctx.get("JS2RequestContext");  
     
-        JetspeedDesktopContext desktopContext = (JetspeedDesktopContext)requestContext.getRequest().getAttribute(JetspeedDesktopContext.DESKTOP_ATTRIBUTE);
       
+        JetspeedDesktopContext desktopContext = (JetspeedDesktopContext)requestContext.getRequest().getAttribute(JetspeedDesktopContext.DESKTOP_CONTEXT_ATTRIBUTE);
       
         if (desktopContext != null)
         {
             if (defaultVelocityEngine == null)



---------------------------------------------------------------------
To unsubscribe, e-mail: jetspeed-dev-unsubscribe@portals.apache.org
For additional commands, e-mail: jetspeed-dev-help@portals.apache.org


Mime
View raw message