You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@deltaspike.apache.org by gp...@apache.org on 2014/11/10 09:45:15 UTC
deltaspike git commit: DELTASPIKE-776 check usage of
deltaspike-jsf-module-impl-ee6 with jsf v2.2+
Repository: deltaspike
Updated Branches:
refs/heads/master 7e4825269 -> 8138f1bb4
DELTASPIKE-776 check usage of deltaspike-jsf-module-impl-ee6 with jsf v2.2+
Project: http://git-wip-us.apache.org/repos/asf/deltaspike/repo
Commit: http://git-wip-us.apache.org/repos/asf/deltaspike/commit/8138f1bb
Tree: http://git-wip-us.apache.org/repos/asf/deltaspike/tree/8138f1bb
Diff: http://git-wip-us.apache.org/repos/asf/deltaspike/diff/8138f1bb
Branch: refs/heads/master
Commit: 8138f1bb4413ec17e8c1ff43fc28a0d488275f38
Parents: 7e48252
Author: gpetracek <gp...@apache.org>
Authored: Mon Nov 10 09:39:12 2014 +0100
Committer: gpetracek <gp...@apache.org>
Committed: Mon Nov 10 09:39:12 2014 +0100
----------------------------------------------------------------------
.../request/DeltaSpikeLifecycleFactoryWrapper.java | 15 ++++++++++++---
.../NavigationHandlerAwareApplication.java | 12 +++++++++++-
.../apache/deltaspike/jsf/impl/util/JsfUtils.java | 11 +++++++++++
3 files changed, 34 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/deltaspike/blob/8138f1bb/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/listener/request/DeltaSpikeLifecycleFactoryWrapper.java
----------------------------------------------------------------------
diff --git a/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/listener/request/DeltaSpikeLifecycleFactoryWrapper.java b/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/listener/request/DeltaSpikeLifecycleFactoryWrapper.java
index e415ba2..87a6c4e 100644
--- a/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/listener/request/DeltaSpikeLifecycleFactoryWrapper.java
+++ b/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/listener/request/DeltaSpikeLifecycleFactoryWrapper.java
@@ -24,6 +24,7 @@ import org.apache.deltaspike.core.util.ClassDeactivationUtils;
import org.apache.deltaspike.core.util.ClassUtils;
import org.apache.deltaspike.core.util.ExceptionUtils;
import org.apache.deltaspike.jsf.api.config.JsfModuleConfig;
+import org.apache.deltaspike.jsf.impl.util.JsfUtils;
import javax.faces.lifecycle.Lifecycle;
import javax.faces.lifecycle.LifecycleFactory;
@@ -46,8 +47,16 @@ public class DeltaSpikeLifecycleFactoryWrapper extends LifecycleFactory implemen
{
this.wrapped = wrapped;
this.deactivated = !ClassDeactivationUtils.isActivated(getClass());
- this.jsfVersionWithClientWindowDetected =
- ClassUtils.tryToLoadClassForName(JsfModuleConfig.CLIENT_WINDOW_CLASS_NAME) != null;
+ boolean jsfVersionWithClientWindowDetected =
+ ClassUtils.tryToLoadClassForName(JsfModuleConfig.CLIENT_WINDOW_CLASS_NAME) != null;
+
+ if (jsfVersionWithClientWindowDetected && ClassUtils.tryToLoadClassForName(
+ "org.apache.deltaspike.jsf.impl.listener.request.JsfClientWindowAwareLifecycleWrapper") == null)
+ {
+ jsfVersionWithClientWindowDetected = false;
+ JsfUtils.logWrongModuleUsage(getClass().getName());
+ }
+ this.jsfVersionWithClientWindowDetected = jsfVersionWithClientWindowDetected;
}
@Override
@@ -72,7 +81,7 @@ public class DeltaSpikeLifecycleFactoryWrapper extends LifecycleFactory implemen
"org.apache.deltaspike.jsf.impl.listener.request.JsfClientWindowAwareLifecycleWrapper");
try
{
- return lifecycleWrapperClass.getConstructor(new Class[] { Lifecycle.class })
+ return (Lifecycle) lifecycleWrapperClass.getConstructor(new Class[] { Lifecycle.class })
.newInstance(new DeltaSpikeLifecycleWrapper(result));
}
catch (Exception e)
http://git-wip-us.apache.org/repos/asf/deltaspike/blob/8138f1bb/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/navigation/NavigationHandlerAwareApplication.java
----------------------------------------------------------------------
diff --git a/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/navigation/NavigationHandlerAwareApplication.java b/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/navigation/NavigationHandlerAwareApplication.java
index 54783a8..6393914 100644
--- a/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/navigation/NavigationHandlerAwareApplication.java
+++ b/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/navigation/NavigationHandlerAwareApplication.java
@@ -21,6 +21,7 @@ package org.apache.deltaspike.jsf.impl.navigation;
import org.apache.deltaspike.core.spi.activation.Deactivatable;
import org.apache.deltaspike.core.util.ClassUtils;
import org.apache.deltaspike.core.util.ExceptionUtils;
+import org.apache.deltaspike.jsf.impl.util.JsfUtils;
import javax.faces.application.Application;
import javax.faces.application.ApplicationWrapper;
@@ -83,7 +84,16 @@ public class NavigationHandlerAwareApplication extends ApplicationWrapper implem
navigationHandlerWrapperClass =
ClassUtils.tryToLoadClassForName(
"org.apache.deltaspike.jsf.impl.navigation.DeltaSpikeNavigationHandlerWrapper");
- manualNavigationHandlerWrapperMode = false;
+
+ if (navigationHandlerWrapperClass != null)
+ {
+ manualNavigationHandlerWrapperMode = false;
+ }
+ else
+ {
+ JsfUtils.logWrongModuleUsage(NavigationHandlerAwareApplication.class.getName());
+ manualNavigationHandlerWrapperMode = true;
+ }
}
else
{
http://git-wip-us.apache.org/repos/asf/deltaspike/blob/8138f1bb/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/util/JsfUtils.java
----------------------------------------------------------------------
diff --git a/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/util/JsfUtils.java b/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/util/JsfUtils.java
index 8e0686f..1bf2ff0 100644
--- a/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/util/JsfUtils.java
+++ b/deltaspike/modules/jsf/impl/src/main/java/org/apache/deltaspike/jsf/impl/util/JsfUtils.java
@@ -42,6 +42,8 @@ import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.CopyOnWriteArrayList;
+import java.util.logging.Level;
+import java.util.logging.Logger;
public abstract class JsfUtils
{
@@ -362,4 +364,13 @@ public abstract class JsfUtils
return ClassUtils.tryToLoadClassForName("javax.faces.view.ViewScoped") != null && !"false".equalsIgnoreCase(
ConfigResolver.getPropertyValue("deltaspike.scope.view.delegate", Boolean.TRUE.toString()));
}
+
+ public static void logWrongModuleUsage(String name)
+ {
+ Logger.getLogger(name).log(
+ Level.WARNING, "You are using the JSF module for JSF 2.0/2.1 with JSF 2.2+ which " +
+ "might cause issues in your application in different areas. Please upgrade " +
+ "org.apache.deltaspike.modules:deltaspike-jsf-module-impl-ee6 to " +
+ "org.apache.deltaspike.modules:deltaspike-jsf-module-impl");
+ }
}