Author: pete
Date: Wed Sep 15 22:56:31 2010
New Revision: 997534
URL: http://svn.apache.org/viewvc?rev=997534&view=rev
Log:
WICKET-3049: enforce usage of proper type for CompoundPropertyModel<T> which is
either IModel<T> or <T> (before it swallowed any type of object and threw a
class cast exception later)
Modified:
wicket/trunk/wicket-auth-roles/src/main/java/org/apache/wicket/authentication/panel/SignInPanel.java
wicket/trunk/wicket/src/main/java/org/apache/wicket/model/CompoundPropertyModel.java
wicket/trunk/wicket/src/test/java/org/apache/wicket/model/ModelToStringTest.java
Modified:
wicket/trunk/wicket-auth-roles/src/main/java/org/apache/wicket/authentication/panel/SignInPanel.java
URL:
http://svn.apache.org/viewvc/wicket/trunk/wicket-auth-roles/src/main/java/org/apache/wicket/authentication/panel/SignInPanel.java?rev=997534&r1=997533&r2=997534&view=diff
==============================================================================
---
wicket/trunk/wicket-auth-roles/src/main/java/org/apache/wicket/authentication/panel/SignInPanel.java
(original)
+++
wicket/trunk/wicket-auth-roles/src/main/java/org/apache/wicket/authentication/panel/SignInPanel.java
Wed Sep 15 22:56:31 2010
@@ -242,7 +242,7 @@ public class SignInPanel extends Panel
/**
* Sign in form.
*/
- public final class SignInForm extends StatelessForm<Void>
+ public final class SignInForm extends StatelessForm<SignInPanel>
{
private static final long serialVersionUID = 1L;
@@ -256,7 +256,7 @@ public class SignInPanel extends Panel
{
super(id);
- setModel(new
CompoundPropertyModel<Void>(SignInPanel.this));
+ setModel(new
CompoundPropertyModel<SignInPanel>(SignInPanel.this));
// Attach textfields for username and password
add(new TextField<String>("username"));
Modified:
wicket/trunk/wicket/src/main/java/org/apache/wicket/model/CompoundPropertyModel.java
URL:
http://svn.apache.org/viewvc/wicket/trunk/wicket/src/main/java/org/apache/wicket/model/CompoundPropertyModel.java?rev=997534&r1=997533&r2=997534&view=diff
==============================================================================
---
wicket/trunk/wicket/src/main/java/org/apache/wicket/model/CompoundPropertyModel.java
(original)
+++
wicket/trunk/wicket/src/main/java/org/apache/wicket/model/CompoundPropertyModel.java
Wed Sep 15 22:56:31 2010
@@ -45,10 +45,21 @@ public class CompoundPropertyModel<T> im
/**
* Constructor
*
+ * @param model
+ * The model
+ */
+ public CompoundPropertyModel(final IModel<T> model)
+ {
+ target = model;
+ }
+
+ /**
+ * Constructor
+ *
* @param object
- * The model object, which may or may not implement IModel
+ * The model object
*/
- public CompoundPropertyModel(final Object object)
+ public CompoundPropertyModel(final T object)
{
target = object;
}
Modified:
wicket/trunk/wicket/src/test/java/org/apache/wicket/model/ModelToStringTest.java
URL:
http://svn.apache.org/viewvc/wicket/trunk/wicket/src/test/java/org/apache/wicket/model/ModelToStringTest.java?rev=997534&r1=997533&r2=997534&view=diff
==============================================================================
---
wicket/trunk/wicket/src/test/java/org/apache/wicket/model/ModelToStringTest.java
(original)
+++
wicket/trunk/wicket/src/test/java/org/apache/wicket/model/ModelToStringTest.java
Wed Sep 15 22:56:31 2010
@@ -87,7 +87,7 @@ public class ModelToStringTest extends W
Properties properties = new Properties();
properties.put("name", "foo");
- CompoundPropertyModel<String> stringProperty = new
CompoundPropertyModel<String>(properties);
+ CompoundPropertyModel<Properties> stringProperty = new
CompoundPropertyModel<Properties>(properties);
expected =
"Model:classname=[org.apache.wicket.model.CompoundPropertyModel]:nestedModel=[{name=foo}]";
assertEquals(expected, stringProperty.toString());