You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by jk...@apache.org on 2007/05/11 18:49:38 UTC

svn commit: r537231 - in /tapestry/tapestry4/trunk: tapestry-examples/TimeTracker/src/context/ tapestry-framework/src/java/org/apache/tapestry/resolver/ tapestry-framework/src/java/org/apache/tapestry/services/impl/ tapestry-framework/src/test/org/apac...

Author: jkuhnert
Date: Fri May 11 09:49:37 2007
New Revision: 537231

URL: http://svn.apache.org/viewvc?view=rev&rev=537231
Log:
Slight improvements made to template source error checking so that the standard friendly exception pages are visible when something can't be found.

Modified:
    tapestry/tapestry4/trunk/tapestry-examples/TimeTracker/src/context/Home.html
    tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/resolver/ComponentResourceResolverImpl.java
    tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/impl/TemplateSourceImpl.java
    tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/enhance/TestHiveMindExpressionCompiler.java

Modified: tapestry/tapestry4/trunk/tapestry-examples/TimeTracker/src/context/Home.html
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-examples/TimeTracker/src/context/Home.html?view=diff&rev=537231&r1=537230&r2=537231
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-examples/TimeTracker/src/context/Home.html (original)
+++ tapestry/tapestry4/trunk/tapestry-examples/TimeTracker/src/context/Home.html Fri May 11 09:49:37 2007
@@ -85,4 +85,4 @@
 
 </span>
 </body>
-</html>
\ No newline at end of file
+</html>

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/resolver/ComponentResourceResolverImpl.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/resolver/ComponentResourceResolverImpl.java?view=diff&rev=537231&r1=537230&r2=537231
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/resolver/ComponentResourceResolverImpl.java (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/resolver/ComponentResourceResolverImpl.java Fri May 11 09:49:37 2007
@@ -118,7 +118,7 @@
             int index = className.lastIndexOf(packages[i]);
             if (index < 0)
                 continue;
-            
+
             // First try context
 
             String templateName = className.substring((index + packages[i].length()) + 1, className.length()).replaceAll("\\.", "/");

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/impl/TemplateSourceImpl.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/impl/TemplateSourceImpl.java?view=diff&rev=537231&r1=537230&r2=537231
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/impl/TemplateSourceImpl.java (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/impl/TemplateSourceImpl.java Fri May 11 09:49:37 2007
@@ -228,9 +228,9 @@
     {
         IAsset templateAsset = component.getAsset(TEMPLATE_ASSET_NAME);
 
-        if (templateAsset != null)
+        if (templateAsset != null && templateAsset.getResourceLocation() != null && templateAsset.getResourceLocation().getResourceURL() != null)
             return readTemplateFromAsset(cycle, component, templateAsset.getResourceLocation());
-
+        
         String name = resource.getName();
         int dotx = name.lastIndexOf('.');
         String templateExtension = getTemplateExtension(component);
@@ -255,7 +255,7 @@
 
             Resource template = _resourceResolver.findComponentResource(component, cycle, null, "." + templateExtension, locale);
             
-            if (template != null)
+            if (template != null && template.getResourceURL() != null)
                 return readTemplateFromAsset(cycle, component, template);
         }
 

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/enhance/TestHiveMindExpressionCompiler.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/enhance/TestHiveMindExpressionCompiler.java?view=diff&rev=537231&r1=537230&r2=537231
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/enhance/TestHiveMindExpressionCompiler.java (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/enhance/TestHiveMindExpressionCompiler.java Fri May 11 09:49:37 2007
@@ -35,4 +35,16 @@
 
         assertNotSame(expression2.getAccessor().getClass().getName(), expression.getAccessor().getClass().getName());
     }
+
+    public void test_Divide_By_Zero()
+    throws Exception
+    {
+        OgnlContext context = (OgnlContext) Ognl.createDefaultContext(null);
+        String expr = "true ? 1 : 1/0";
+
+        Node expression = (Node) Ognl.parseExpression(expr);
+        _compiler.compileExpression(context, expression, expr);
+        
+        assertEquals(expression.getAccessor().get(context, null), Integer.valueOf(1));
+    }
 }