Author: mck
Date: Fri Dec 14 18:28:03 2012
New Revision: 1422025

URL: http://svn.apache.org/viewvc?rev=1422025&view=rev
Log:
the resource loaders from spring (eg spring-webmvc-tiles3 from SPR-8825) throw 
unchecked exceptions.

Modified:
    
tiles/framework/trunk/tiles-extras/src/main/java/org/apache/tiles/extras/renderer/OptionsRenderer.java

Modified: 
tiles/framework/trunk/tiles-extras/src/main/java/org/apache/tiles/extras/renderer/OptionsRenderer.java
URL: 
http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-extras/src/main/java/org/apache/tiles/extras/renderer/OptionsRenderer.java?rev=1422025&r1=1422024&r2=1422025&view=diff
==============================================================================
--- 
tiles/framework/trunk/tiles-extras/src/main/java/org/apache/tiles/extras/renderer/OptionsRenderer.java
 (original)
+++ 
tiles/framework/trunk/tiles-extras/src/main/java/org/apache/tiles/extras/renderer/OptionsRenderer.java
 Fri Dec 14 18:28:03 2012
@@ -135,11 +135,19 @@ public final class OptionsRenderer imple
         boolean result = false;
         if (Cache.attemptTemplate(template)) {
             try {
-                if (null != applicationContext.getResource(template)) { // can 
throw FileNotFoundException !
-                    renderer.render(template, request); // can throw 
FileNotFoundException !
+                if (null != applicationContext.getResource(template)) {
+                    renderer.render(template, request);
                     result = true;
                 }
-            } catch (FileNotFoundException ex) {
+            } catch (IOException ex) {
+                if (ex.getMessage().contains(template)) {
+                    // expected outcome. continue loop.
+                    LOG.trace(ex.getMessage());
+                } else {
+                    // comes from an inner templateAttribute.render(..) so 
throw on
+                    throw ex;
+                }
+            } catch (RuntimeException ex) {
                 if (ex.getMessage().contains(template)) {
                     // expected outcome. continue loop.
                     LOG.trace(ex.getMessage());
@@ -147,8 +155,6 @@ public final class OptionsRenderer imple
                     // comes from an inner templateAttribute.render(..) so 
throw on
                     throw ex;
                 }
-            } catch (IOException ex) { //xxx ???
-                throw ex;
             }
             Cache.update(template, result);
         }


Reply via email to