You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by gp...@apache.org on 2009/03/17 11:02:26 UTC

svn commit: r755175 - in /myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator: core/renderkit/ExtValRendererProxy.java internal/ToDo.java

Author: gpetracek
Date: Tue Mar 17 10:02:26 2009
New Revision: 755175

URL: http://svn.apache.org/viewvc?rev=755175&view=rev
Log:
minor changes

Modified:
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/renderkit/ExtValRendererProxy.java
    myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/internal/ToDo.java

Modified: myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/renderkit/ExtValRendererProxy.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/renderkit/ExtValRendererProxy.java?rev=755175&r1=755174&r2=755175&view=diff
==============================================================================
--- myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/renderkit/ExtValRendererProxy.java (original)
+++ myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/core/renderkit/ExtValRendererProxy.java Tue Mar 17 10:02:26 2009
@@ -63,7 +63,16 @@
         if (!entry.isDecodeCalled())
         {
             entry.setDecodeCalled(true);
-            wrapped.decode(facesContext, uiComponent);
+
+            try
+            {
+                this.wrapped.decode(facesContext, uiComponent);
+            }
+            catch (RuntimeException r)
+            {
+                resetComponentProxyMapping();
+                throw r;
+            }
         }
         else
         {
@@ -83,7 +92,20 @@
         if (!entry.isEncodeBeginCalled())
         {
             entry.setEncodeBeginCalled(true);
-            wrapped.encodeBegin(facesContext, uiComponent);
+            try
+            {
+                this.wrapped.encodeBegin(facesContext, uiComponent);
+            }
+            catch (IOException e)
+            {
+                resetComponentProxyMapping();
+                throw e;
+            }
+            catch (RuntimeException r)
+            {
+                resetComponentProxyMapping();
+                throw r;
+            }
         }
         else
         {
@@ -103,7 +125,21 @@
         if (!entry.isEncodeChildrenCalled())
         {
             entry.setEncodeChildrenCalled(true);
-            wrapped.encodeChildren(facesContext, uiComponent);
+
+            try
+            {
+                this.wrapped.encodeChildren(facesContext, uiComponent);
+            }
+            catch (IOException e)
+            {
+                resetComponentProxyMapping();
+                throw e;
+            }
+            catch (RuntimeException r)
+            {
+                resetComponentProxyMapping();
+                throw r;
+            }
         }
         else
         {
@@ -123,7 +159,21 @@
         if (!entry.isEncodeEndCalled())
         {
             entry.setEncodeEndCalled(true);
-            wrapped.encodeEnd(facesContext, uiComponent);
+
+            try
+            {
+                this.wrapped.encodeEnd(facesContext, uiComponent);
+            }
+            catch (IOException e)
+            {
+                resetComponentProxyMapping();
+                throw e;
+            }
+            catch (RuntimeException r)
+            {
+                resetComponentProxyMapping();
+                throw r;
+            }
         }
         else
         {
@@ -137,13 +187,29 @@
     @Override
     public String convertClientId(FacesContext facesContext, String s)
     {
-        return wrapped.convertClientId(facesContext, s);
+        try
+        {
+            return wrapped.convertClientId(facesContext, s);
+        }
+        catch (RuntimeException r)
+        {
+            resetComponentProxyMapping();
+            throw r;
+        }
     }
 
     @Override
     public boolean getRendersChildren()
     {
-        return wrapped.getRendersChildren();
+        try
+        {
+            return wrapped.getRendersChildren();
+        }
+        catch (RuntimeException t)
+        {
+            resetComponentProxyMapping();
+            throw t;
+        }
     }
 
     @Override
@@ -154,7 +220,15 @@
 
         if (entry.getConvertedValue() == null)
         {
-            entry.setConvertedValue(wrapped.getConvertedValue(facesContext, uiComponent, o));
+            try
+            {
+                entry.setConvertedValue(wrapped.getConvertedValue(facesContext, uiComponent, o));
+            }
+            catch (RuntimeException r)
+            {
+                resetComponentProxyMapping();
+                throw r;
+            }
         }
         else
         {
@@ -207,4 +281,10 @@
 
         return proxyStorage.get(key);
     }
+
+    private void resetComponentProxyMapping()
+    {
+        //reset component proxy mapping
+        FacesContext.getCurrentInstance().getExternalContext().getRequestMap().remove(PROXY_STORAGE_NAME);
+    }
 }

Modified: myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/internal/ToDo.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/internal/ToDo.java?rev=755175&r1=755174&r2=755175&view=diff
==============================================================================
--- myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/internal/ToDo.java (original)
+++ myfaces/extensions/validator/branches/branch_for_jsf_1_1/core/src/main/java/org/apache/myfaces/extensions/validator/internal/ToDo.java Tue Mar 17 10:02:26 2009
@@ -32,4 +32,10 @@
 {
     Priority value();
     String description() default "";
+
+    @Target({TYPE, METHOD, FIELD})
+    @interface List
+    {
+        ToDo[] value();
+    }
 }