You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@wicket.apache.org by bferr <bf...@juno.com> on 2010/03/11 23:43:18 UTC

Re: component xxx:yyy:zzz not found on page

I saw this on our website when the user clicked an AjaxLink that ran long and
then clicked another AjaxLink before the response was received.   We added a
DIV overlay to the ajax spinner and implemented IAjaxIndicatorAware on our
page so that all AjaxRequests would have the overlay with a spinner.  The
page looks like this:


public class BasePage extends WebPage implements IAjaxIndicatorAware
{
	public BasePage()
	{
                          // other stuff.... 

		ajaxIndicatorAppenderOverlay = new AjaxIndicatorAppenderOverlay();
		add(ajaxIndicatorAppenderOverlay);
	}

	@Override
	public String getAjaxIndicatorMarkupId()
	{
		return ajaxIndicatorAppenderOverlay.getMarkupId();
	}
}



public class AjaxIndicatorAppenderOverlay extends AjaxIndicatorAppender
{
	private static final long serialVersionUID = 7536644989676358796L;

	public AjaxIndicatorAppenderOverlay()
	{}

	@Override
	public void onRendered(Component component)
	{
		final Response r = component.getResponse();

		r.write("");

		// adding an overlay
		addOverlay(r);

		// using a bigger spinner
		r.write(" \""); ");
	}

	private void addOverlay(final Response r)
	{
		r.write("<div style=\"height:100%;width:100%;position:fixed;");
		r.write("left:0;top:0;z-index:1000;opacity:0;filter:alpha(opacity=0);");
		r.write("background:#000000;\">");
		r.write("</div>");
	}
}




Douglas Ferguson-2 wrote:
> 
> Hmm.. Would this really be resulting from the site being slow? Or the
> client being slow?
> 
> D/
> 
> On Jan 8, 2010, at 12:46 PM, nino martinez wael wrote:
> 
>> I your site is "slow" and the user manages to click the delete twice i
>> could happen (I can see you write that too)..
>> 
>> Put a veil over the button when it's clicked so the user cant click it
>> twice..
>> 
>> 2010/1/8 Douglas Ferguson <do...@douglasferguson.us>:
>>> Our application periodically gets these errors, where wicket say the
>>> component could not be found.
>>> 
>>> Take this example.
>>> 
>>> 1) There is a delete link on the page.
>>> 2) The user clicks the delete button
>>> 3) They get the "delete button" component not found error.
>>> 
>>> The intriguing part is that the item is actually deleted.
>>> 
>>> This makes me think it could be a double click error.
>>> i.e. the item is delete and the js has another click call queued up but
>>> the page changes before it comes through.
>>> 
>>> Is this possible? If so how do I prevent it?
>>> 
>>> 
>>> 
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: users-unsubscribe@wicket.apache.org
>>> For additional commands, e-mail: users-help@wicket.apache.org
>>> 
>>> 
>> 
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscribe@wicket.apache.org
>> For additional commands, e-mail: users-help@wicket.apache.org
>> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@wicket.apache.org
> For additional commands, e-mail: users-help@wicket.apache.org
> 
> 
> 

-- 
View this message in context: http://old.nabble.com/component-xxx%3Ayyy%3Azzz-not-found-on-page-tp27080437p27870950.html
Sent from the Wicket - User mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@wicket.apache.org
For additional commands, e-mail: users-help@wicket.apache.org