Author: ivaynberg
Date: Tue Nov 16 18:01:53 2010
New Revision: 1035716
URL: http://svn.apache.org/viewvc?rev=1035716&view=rev
Log:
warn when referencing session directly in property model
Modified:
wicket/trunk/wicket/src/main/java/org/apache/wicket/model/AbstractPropertyModel.java
Modified:
wicket/trunk/wicket/src/main/java/org/apache/wicket/model/AbstractPropertyModel.java
URL:
http://svn.apache.org/viewvc/wicket/trunk/wicket/src/main/java/org/apache/wicket/model/AbstractPropertyModel.java?rev=1035716&r1=1035715&r2=1035716&view=diff
==============================================================================
---
wicket/trunk/wicket/src/main/java/org/apache/wicket/model/AbstractPropertyModel.java
(original)
+++
wicket/trunk/wicket/src/main/java/org/apache/wicket/model/AbstractPropertyModel.java
Tue Nov 16 18:01:53 2010
@@ -25,6 +25,8 @@ import org.apache.wicket.WicketRuntimeEx
import org.apache.wicket.util.lang.PropertyResolver;
import org.apache.wicket.util.lang.PropertyResolverConverter;
import org.apache.wicket.util.string.Strings;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
/**
* Serves as a base class for different kinds of property models. By default,
this class uses
@@ -49,6 +51,8 @@ public abstract class AbstractPropertyMo
IObjectClassAwareModel<T>,
IPropertyReflectionAwareModel<T>
{
+ private static final Logger logger =
LoggerFactory.getLogger(AbstractPropertyModel.class);
+
/**
*
*/
@@ -69,6 +73,14 @@ public abstract class AbstractPropertyMo
throw new IllegalArgumentException("Parameter
modelObject cannot be null");
}
+ if (modelObject instanceof Session)
+ {
+ logger.warn("It is not a good idea to reference the
Session instance "
+ + "in models directly as it may lead to
serialization problems. "
+ + "If you need to access a property of the
session via the model use the "
+ + "page instance as the model object and
'session.attribute' as the path.");
+ }
+
target = modelObject;
}