You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by jd...@apache.org on 2009/12/30 17:55:24 UTC
svn commit: r894674 -
/wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/form/Form.java
Author: jdonnerstag
Date: Wed Dec 30 16:55:24 2009
New Revision: 894674
URL: http://svn.apache.org/viewvc?rev=894674&view=rev
Log:
Form.isMultipart() doesn't check FormComponent.isMultipart() on nested components
Issue: WICKET-2638
Modified:
wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/form/Form.java
Modified: wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/form/Form.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/form/Form.java?rev=894674&r1=894673&r2=894674&view=diff
==============================================================================
--- wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/form/Form.java (original)
+++ wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/form/Form.java Wed Dec 30 16:55:24 2009
@@ -1422,28 +1422,33 @@
{
return true;
}
- else
+
+ final boolean[] anyEmbeddedMultipart = new boolean[] { false };
+ visitChildren(Component.class, new IVisitor<Component>()
{
- final boolean[] anyEmbeddedMultipart = new boolean[] { false };
- visitChildren(Form.class, new IVisitor<Form<?>>()
+ public Object component(Component component)
{
-
- public Object component(Form<?> form)
+ boolean isMultiPart = false;
+ if (component instanceof Form)
{
- if (form.multiPart != 0)
- {
- anyEmbeddedMultipart[0] = true;
- return STOP_TRAVERSAL;
- }
- else
- {
- return CONTINUE_TRAVERSAL;
- }
+ Form<?> form = (Form<?>)component;
+ isMultiPart = (form.multiPart != 0);
}
+ else if (component instanceof FormComponent)
+ {
+ FormComponent<?> form = (FormComponent<?>)component;
+ isMultiPart = form.isMultiPart();
+ }
+ if (isMultiPart == true)
+ {
+ anyEmbeddedMultipart[0] = true;
+ return STOP_TRAVERSAL;
+ }
+ return CONTINUE_TRAVERSAL;
+ }
- });
- return anyEmbeddedMultipart[0];
- }
+ });
+ return anyEmbeddedMultipart[0];
}
/**