On Thu, Aug 27, 2009 at 1:41 PM, Ian MacLarty<[email protected]> wrote:
> Hi,
>
> I recently upgraded to Wicket 1.4 and am now having a problem with a
> feedback panel.
>
> I have a custom feedback panel that uses custom message components (by
> overriding FeedbackPanel#newMessageDisplayComponent). The custom
> messages have an AjaxEventBehavior on the "onclick" event. This
> highlights the reporting component when the feedback message is
> clicked. This all worked okay in 1.3.6, but after upgrading to 1.4
> Wicket throws a RuntimeException when the feedback message is clicked.
> The exception is "component
> mainForm:feedback:feedbackul:messages:0:message not found on page
> axa.pfp.MainTabs". If I look in the generated html this component
> definitely seems to be there. Does anyone know what might have
> changed with version 1.4 to break this?
>
I suspect it is the change made in revision 796389:
Index:
wicket/src/main/java/org/apache/wicket/markup/html/panel/FeedbackPanel.java
===================================================================
--- wicket/src/main/java/org/apache/wicket/markup/html/panel/FeedbackPanel.java
(revision
796388)
+++ wicket/src/main/java/org/apache/wicket/markup/html/panel/FeedbackPanel.java
(revision
796389)
@@ -94,6 +94,13 @@
listItem.add(levelModifier);
listItem.add(label);
}
+
+ @Override
+ protected void onDetach()
+ {
+ removeAll();
+ super.onDetach();
+ }
}
private static final long serialVersionUID = 1L;
The removeAll is removing all the child elements of the feedback
message list, which explains why it is not finding the component.
Should I log a bug report for this? If this is the way it's supposed
to behave then how should I go about adding an onclick behaviour to my
feedback messages?
Cheers,
Ian.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]