need to know if a component has been added to the AjaxRequestTarget
-------------------------------------------------------------------
Key: WICKET-2489
URL: https://issues.apache.org/jira/browse/WICKET-2489
Project: Wicket
Issue Type: Wish
Components: wicket
Affects Versions: 1.4.1
Reporter: Joe Hudson
We need to evaluate the AjaxRequestTarget to determine if a component has been
directly added (as opposed to the component rendering because of a parent
component being added). This is useful for applying markup wrapping through
the use of behaviors. This is required because, on a ajax request - and if the
component that has the markup wrapping behavior was added directly to the
AjaxRequestTarget, the markup provided with the behavior will be duplicated.
We currently have a workaround but it required the use of a custom
AjaxRequestTarget:
public class AjaxRequestTarget extends org.apache.wicket.ajax.AjaxRequestTarget
{
private Map<String, Boolean> addedComponents = new HashMap<String,
Boolean>();
public AjaxRequestTarget(Page page) {
super(page);
}
@Override
public void addComponent(Component component) {
addedComponents.put(component.getMarkupId(), Boolean.TRUE);
super.addComponent(component);
}
public boolean wasComponentAdded(Component component) {
return (null != addedComponents.get(component.getMarkupId()));
}
}
It would be nice if the Wicket AjaxRequestTarget had a method (the name of the
method name doesn't really matter and is just for example purposes) like the
following:
public boolean wasComponentAdded(Component component) {
return (null != markupIdToComponent.get(component.getMarkupId());
}
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.