Return-Path: Delivered-To: apmail-jakarta-jetspeed-dev-archive@www.apache.org Received: (qmail 82694 invoked from network); 2 Dec 2004 21:48:14 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur-2.apache.org with SMTP; 2 Dec 2004 21:48:14 -0000 Received: (qmail 6988 invoked by uid 500); 2 Dec 2004 21:48:10 -0000 Delivered-To: apmail-jakarta-jetspeed-dev-archive@jakarta.apache.org Received: (qmail 6945 invoked by uid 500); 2 Dec 2004 21:48:10 -0000 Mailing-List: contact jetspeed-dev-help@jakarta.apache.org; run by ezmlm Precedence: bulk List-Unsubscribe: List-Subscribe: List-Help: List-Post: List-Id: "Jetspeed Developers List" Reply-To: "Jetspeed Developers List" Delivered-To: mailing list jetspeed-dev@jakarta.apache.org Received: (qmail 6932 invoked by uid 500); 2 Dec 2004 21:48:10 -0000 Received: (qmail 6925 invoked by uid 500); 2 Dec 2004 21:48:10 -0000 Received: (qmail 6902 invoked by uid 99); 2 Dec 2004 21:48:10 -0000 X-ASF-Spam-Status: No, hits=-10.0 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received: from minotaur.apache.org (HELO minotaur.apache.org) (209.237.227.194) by apache.org (qpsmtpd/0.28) with SMTP; Thu, 02 Dec 2004 13:48:09 -0800 Received: (qmail 82639 invoked by uid 1265); 2 Dec 2004 21:48:08 -0000 Date: 2 Dec 2004 21:48:08 -0000 Message-ID: <20041202214808.82638.qmail@minotaur.apache.org> From: taylor@apache.org To: jakarta-jetspeed-2-cvs@apache.org Subject: cvs commit: jakarta-jetspeed-2/portal/src/java/org/apache/jetspeed/velocity JetspeedVelocityViewServlet.java X-Virus-Checked: Checked X-Spam-Rating: minotaur-2.apache.org 1.6.2 0/1000/N taylor 2004/12/02 13:48:08 Modified: portal/src/java/org/apache/jetspeed/velocity JetspeedVelocityViewServlet.java Log: patch from Randy Watler fix broken max mode from previous patch Revision Changes Path 1.10 +29 -23 jakarta-jetspeed-2/portal/src/java/org/apache/jetspeed/velocity/JetspeedVelocityViewServlet.java Index: JetspeedVelocityViewServlet.java =================================================================== RCS file: /home/cvs/jakarta-jetspeed-2/portal/src/java/org/apache/jetspeed/velocity/JetspeedVelocityViewServlet.java,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- JetspeedVelocityViewServlet.java 2 Dec 2004 05:17:15 -0000 1.9 +++ JetspeedVelocityViewServlet.java 2 Dec 2004 21:48:08 -0000 1.10 @@ -177,7 +177,6 @@ .append(request.getServerName()).append(":") .append(request.getServerPort()).append(renderRequest.getContextPath()); ctx.put("appRoot", appRoot.toString()); - // setup TLS for Context propagation handlingRequestContext.set(ctx); @@ -262,26 +261,30 @@ RequestContext requestContext = (RequestContext) ctx.get("JS2RequestContext"); if ((renderRequest != null) && (requestContext != null)) { - // get fragment type and decoration, fallback to - // fragment page default decorations - Fragment fragment = (Fragment) renderRequest.getAttribute(JetspeedPowerTool.FRAGMENT_ATTR); - String fragmentType = fragment.getType(); - String fragmentDecoration = fragment.getDecorator(); - if (fragmentDecoration == null) + // get layout type and decoration, fallback to + // page default decorations + Fragment layout = (Fragment) renderRequest.getAttribute(JetspeedPowerTool.LAYOUT_ATTR); + if (layout == null) + { + layout = (Fragment) renderRequest.getAttribute(JetspeedPowerTool.FRAGMENT_ATTR); + } + String layoutType = layout.getType(); + String layoutDecoration = layout.getDecorator(); + if (layoutDecoration == null) { - Page fragmentPage = (Page) renderRequest.getAttribute(PortalReservedParameters.PAGE_ATTRIBUTE_KEY); - fragmentDecoration = fragmentPage.getDefaultDecorator(fragmentType); + Page page = (Page) renderRequest.getAttribute(PortalReservedParameters.PAGE_ATTRIBUTE_KEY); + layoutDecoration = page.getDefaultDecorator(layoutType); } - // get fragment capabilites and locale + // get layout capabilites and locale CapabilityMap capabilityMap = requestContext.getCapabilityMap(); Locale locale = requestContext.getLocale(); - String fragmentMediaType = capabilityMap.getPreferredMediaType().getName(); - String fragmentLanguage = locale.getLanguage(); - String fragmentCountry = locale.getCountry(); + String layoutMediaType = capabilityMap.getPreferredMediaType().getName(); + String layoutLanguage = locale.getLanguage(); + String layoutCountry = locale.getCountry(); // lookup cache config based on decoration cache key - String cacheKey = fragmentDecoration + ":" + fragmentType + ":" + fragmentMediaType + ":" + fragmentLanguage + ":" + fragmentCountry; + String cacheKey = layoutDecoration + ":" + layoutType + ":" + layoutMediaType + ":" + layoutLanguage + ":" + layoutCountry; VelocityEngineConfig config = null; synchronized (velocityEngineConfigCache) { @@ -323,13 +326,13 @@ { log.error("getVelocityEngine(): unable create base descriptor", tle); } - descriptor.setMediaType(fragmentMediaType); - descriptor.setCountry(fragmentCountry); - descriptor.setLanguage(fragmentLanguage); - descriptor.setType(fragmentType); + descriptor.setMediaType(layoutMediaType); + descriptor.setCountry(layoutCountry); + descriptor.setLanguage(layoutLanguage); + descriptor.setType(layoutType); // get decoration configuration properties descriptor - descriptor.setName(fragmentDecoration + "/" + JetspeedPowerTool.DECORATOR_TYPE + ".properties"); + descriptor.setName(layoutDecoration + "/" + JetspeedPowerTool.DECORATOR_TYPE + ".properties"); TemplateDescriptor propertiesDescriptor = null; try { @@ -369,7 +372,7 @@ // get decoration template macros descriptor if defined if ((ext != null) && (ext.length() > 0) && (macros != null) && (macros.length() > 0)) { - descriptor.setName(fragmentDecoration + "/" + JetspeedPowerTool.DECORATOR_TYPE + macros + ext); + descriptor.setName(layoutDecoration + "/" + JetspeedPowerTool.DECORATOR_TYPE + macros + ext); try { macrosDescriptor = decorationLocator.locateTemplate(descriptor); @@ -400,7 +403,7 @@ boolean forceVelocityEngineRefresh = false; if (config == null) { - config = new VelocityEngineConfig(fragmentDecoration, fragmentType, fragmentMediaType, fragmentLanguage, fragmentCountry); + config = new VelocityEngineConfig(layoutDecoration, layoutType, layoutMediaType, layoutLanguage, layoutCountry); synchronized (velocityEngineConfigCache) { velocityEngineConfigCache.put(cacheKey, config); @@ -454,7 +457,10 @@ { // create and cache new velocity engine velocity = initVelocity(macrosDescriptor); - velocityEngineCache.put(config.macros.getPath(), velocity); + if (velocity != null) + { + velocityEngineCache.put(config.macros.getPath(), velocity); + } } } } --------------------------------------------------------------------- To unsubscribe, e-mail: jetspeed-dev-unsubscribe@jakarta.apache.org For additional commands, e-mail: jetspeed-dev-help@jakarta.apache.org