Author: manaRH
Date: 2013-02-21 11:01:52 -0500 (Thu, 21 Feb 2013)
New Revision: 15420

Added:
   
branches/enterprise/WFK-2_1/jboss-seam/src/main/java/org/jboss/seam/jsf/SeamExceptionHandler.java
Modified:
   
branches/enterprise/WFK-2_1/jboss-seam/src/main/java/org/jboss/seam/jsf/SeamExceptionHandlerFactory.java
Log:
replaced dependency on JSF-IMPL in ExceptionHandlerFactory

Added: 
branches/enterprise/WFK-2_1/jboss-seam/src/main/java/org/jboss/seam/jsf/SeamExceptionHandler.java
===================================================================
--- 
branches/enterprise/WFK-2_1/jboss-seam/src/main/java/org/jboss/seam/jsf/SeamExceptionHandler.java
                           (rev 0)
+++ 
branches/enterprise/WFK-2_1/jboss-seam/src/main/java/org/jboss/seam/jsf/SeamExceptionHandler.java
   2013-02-21 16:01:52 UTC (rev 15420)
@@ -0,0 +1,38 @@
+package org.jboss.seam.jsf;
+
+import javax.faces.FacesException;
+import javax.faces.context.ExceptionHandler;
+import javax.faces.context.ExceptionHandlerWrapper;
+
+public class SeamExceptionHandler extends ExceptionHandlerWrapper
+{
+
+   private ExceptionHandler wrapped;
+
+   /**
+    * Construct a new ajax exception handler around the given wrapped 
exception handler.
+    * @param wrapped The wrapped exception handler.
+    */
+   public SeamExceptionHandler(ExceptionHandler wrapped)
+   {
+           this.wrapped = wrapped;
+   }
+
+   // Actions 
--------------------------------------------------------------------------------------------------------
+
+   /**
+    * Handle the ajax exception by default ExceptionHandler
+    * 
+    */
+   @Override
+   public void handle() throws FacesException {
+           wrapped.handle();
+   }
+
+   @Override
+   public ExceptionHandler getWrapped() {
+           return wrapped;
+   }
+
+}
+

Modified: 
branches/enterprise/WFK-2_1/jboss-seam/src/main/java/org/jboss/seam/jsf/SeamExceptionHandlerFactory.java
===================================================================
--- 
branches/enterprise/WFK-2_1/jboss-seam/src/main/java/org/jboss/seam/jsf/SeamExceptionHandlerFactory.java
    2013-02-21 12:52:09 UTC (rev 15419)
+++ 
branches/enterprise/WFK-2_1/jboss-seam/src/main/java/org/jboss/seam/jsf/SeamExceptionHandlerFactory.java
    2013-02-21 16:01:52 UTC (rev 15420)
@@ -2,16 +2,7 @@
 
 import javax.faces.context.ExceptionHandler;
 import javax.faces.context.ExceptionHandlerFactory;
-import javax.faces.context.FacesContext;
 
-import org.jboss.seam.web.ExceptionFilter;
-
-import com.sun.faces.application.ApplicationAssociate;
-import com.sun.faces.context.AjaxExceptionHandlerImpl;
-import com.sun.faces.context.ExceptionHandlerImpl;
-
-
-
 /**
  * Factory not to be used AjaxExceptionHandlerImpl class and 
  * always be an exception to be thrown by capturad ExceptionFilter
@@ -19,31 +10,32 @@
  * @see AjaxExceptionHandlerImpl
  * @see ExceptionFilter  
  * @author Tiago Peruzzo
+ * @author Marek Novotny - [email protected]
  * 
+ * 
  */
-public class SeamExceptionHandlerFactory extends ExceptionHandlerFactory {
+public class SeamExceptionHandlerFactory extends ExceptionHandlerFactory 
+{
 
-       private ApplicationAssociate associate;
+   private ExceptionHandlerFactory wrapped;
+   
+   public SeamExceptionHandlerFactory(ExceptionHandlerFactory parent)
+   {
+      this.wrapped = parent;
+   }
 
-
        @Override
-    public ExceptionHandler getExceptionHandler() {
-        FacesContext fc = FacesContext.getCurrentInstance();
-        ApplicationAssociate associate = getAssociate(fc);
-        return new ExceptionHandlerImpl(((associate != null) ? 
associate.isErrorPagePresent() : Boolean.TRUE));
-    }
-
-
-    // --------------------------------------------------------- Private 
Methods
-
-    private ApplicationAssociate getAssociate(FacesContext ctx) {
-        if (associate == null) {
-            associate = ApplicationAssociate.getCurrentInstance();
-            if (associate == null) {
-                associate = 
ApplicationAssociate.getInstance(ctx.getExternalContext());
-            }
-        }
-        return associate;
-    }
+   public ExceptionHandler getExceptionHandler()
+   {
+      return new SeamExceptionHandler(wrapped.getExceptionHandler()); 
+   }
        
+         /**
+    * Returns the wrapped factory.
+    */
+   @Override
+   public ExceptionHandlerFactory getWrapped() {
+           return wrapped;
+   }
+
 }

_______________________________________________
seam-commits mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/seam-commits

Reply via email to