We do toggle the visibility of the web markup container that contains the 
button.

Here's how it works.

1) Page loads and the container is hidden
2) An ajax timer is used to watch for state to change
3) When state changes we make the container visible (which then makes the 
submit button visible)

How could they user manage to click on the save button when is it not visible?

The only thing I can think of is that this could be some back button issue. 
But then again, I'm not sure how that would manifest...

D/

On Nov 29, 2010, at 11:25 AM, Igor Vaynberg wrote:

> in order for component to be visible all of its parents have to be
> visible from the page down to the component. same for the enabled
> state.
> 
> -igor
> 
> On Mon, Nov 29, 2010 at 9:21 AM, Douglas Ferguson
> <doug...@douglasferguson.us> wrote:
>> Hmm... even if we aren't changing the visibility of the button?
>> 
>> On Nov 29, 2010, at 10:42 AM, Marco Mancini wrote:
>> 
>>> try to set
>>> 
>>> mybutton.setOutputMarkupPlaceholderTag(true);
>>> 
>>> bye
>>> marco
>>> 
>>> 2010/11/29 Martin Grigorov <mgrigo...@apache.org>
>>> 
>>>> On Mon, Nov 29, 2010 at 4:46 PM, Douglas Ferguson <
>>>> doug...@douglasferguson.us> wrote:
>>>> 
>>>>> We have not overridden isVisible, nor have we do we have a popup modal.
>>>>> That's why I was asking if this could be a back button issue.
>>>>> 
>>>>> The only thing we do is set the button enabled. Could this be the problem
>>>>> even thought he message it talking about visibility?
>>>>> 
>>>> No. There is a separate check for enabled state. It is definitely for
>>>> visibility.
>>>> 
>>>>> 
>>>>> D/
>>>>> 
>>>>> On Nov 29, 2010, at 3:15 AM, Martin Grigorov wrote:
>>>>> 
>>>>>> Here is another scenario:
>>>>>> 
>>>>>> Ajax request sets the visibility of the submit button (or its parent)
>>>> to
>>>>>> false but forgets to repaint the button so it is still visible for the
>>>>> user.
>>>>>> Then the user clicks on this button, it fires and then the backend
>>>> shows
>>>>>> this message - the button is invisible so it cannot be clicked.
>>>>>> 
>>>>>> On Mon, Nov 29, 2010 at 9:04 AM, Chris Colman
>>>>>> <chr...@stepaheadsoftware.com>wrote:
>>>>>> 
>>>>>>> A back button where?
>>>>>>> 
>>>>>>> The form is on a page and has a submit button only. If there is an
>>>> error
>>>>>>> a ModalWindow pops up - it only has an OK button which is meant to
>>>> make
>>>>>>> the ModalWindow simply disappear and thus re-enable the page beneath -
>>>>>>> the one with the form on it.
>>>>>>> 
>>>>>>> Chris
>>>>>>>> -----Original Message-----
>>>>>>>> From: Douglas Ferguson [mailto:doug...@douglasferguson.us]
>>>>>>>> Sent: Monday, 29 November 2010 6:53 PM
>>>>>>>> To: users@wicket.apache.org
>>>>>>>> Subject: Re: component not visible exception
>>>>>>>> 
>>>>>>>> Could this be happening because of the back button?
>>>>>>>> 
>>>>>>>> D/
>>>>>>>> 
>>>>>>>> On Nov 28, 2010, at 4:54 AM, Chris Colman wrote:
>>>>>>>> 
>>>>>>>>> I had a similar problem. In my scenario it occurred when a
>>>>>>> ModalWindow
>>>>>>>>> was brought up when a form failed validation. When they clicked ok
>>>> to
>>>>>>>>> close the ModalWindow and then clicked Submit on the form again I
>>>> got
>>>>>>> a
>>>>>>>>> similar message saying that the Submit button was no longer visible.
>>>>>>>>> 
>>>>>>>>> It doesn't happen if I use the normal validation 'feedback' panel to
>>>>>>>>> display the validation error messages.
>>>>>>>>> 
>>>>>>>>> Chris
>>>>>>>>> 
>>>>>>>>>> -----Original Message-----
>>>>>>>>>> From: Douglas Ferguson [mailto:doug...@douglasferguson.us]
>>>>>>>>>> Sent: Saturday, 27 November 2010 3:13 AM
>>>>>>>>>> To: Wicket Mailing List List
>>>>>>>>>> Subject: component not visible exception
>>>>>>>>>> 
>>>>>>>>>> I have an error I've been seeing in the production logs for awhile
>>>>>>> now
>>>>>>>>> and
>>>>>>>>>> haven't been able to to figure it out.
>>>>>>>>>> 
>>>>>>>>>> My thought is that it is due to a stale page or the back button,
>>>> but
>>>>>>> it
>>>>>>>>>> seems to me that it is happening alot, so I thought I might
>>>> inquire.
>>>>>>>>>> 
>>>>>>>>>> Any thoughts on what might be causing this and how to avoid it?
>>>>>>>>>> 
>>>>>>>>>> 2010-11-26 08:36:36,676 ERROR [TP-Processor34] wicket.RequestCycle
>>>> -
>>>>>>>>> Submit
>>>>>>>>>> Button add (path=dataPanel:contentCenterBox:addUserForm:add) is not
>>>>>>>>> visible
>>>>>>>>>> org.apache.wicket.WicketRuntimeException: Submit Button add
>>>>>>>>>> (path=dataPanel:contentCenterBox:addUserForm:add) is not visible
>>>>>>>>>>   at
>>>>>>>>> org.apache.wicket.markup.html.form.Form$2.component(Form.java:622)
>>>>>>>>>>   at
>>>>>>>>>> 
>>>>>>> 
>>>> org.apache.wicket.MarkupContainer.visitChildren(MarkupContainer.java:89
>>>>>>>>> 9)
>>>>>>>>>>   at
>>>>>>>>>> 
>>>>>>> 
>>>> org.apache.wicket.MarkupContainer.visitChildren(MarkupContainer.java:91
>>>>>>>>> 4)
>>>>>>>>>>   at
>>>>>>>>>> 
>>>>>>> 
>>>> org.apache.wicket.MarkupContainer.visitChildren(MarkupContainer.java:91
>>>>>>>>> 4)
>>>>>>>>>>   at
>>>>>>>>>> 
>>>>>>> 
>>>> org.apache.wicket.MarkupContainer.visitChildren(MarkupContainer.java:91
>>>>>>>>> 4)
>>>>>>>>>>   at
>>>>>>>>>> 
>>>>>>> 
>>>> org.apache.wicket.markup.html.form.Form.findSubmittingButton(Form.java:
>>>>>>>>> 604)
>>>>>>>>>>   at
>>>>>>>>>> 
>>>>>>> org.apache.wicket.markup.html.form.Form.onFormSubmitted(Form.java:899)
>>>>>>>>>>   at
>>>>>>>>>> 
>>>>>>> 
>>>> org.apache.wicket.ajax.form.AjaxFormSubmitBehavior.onEvent(AjaxFormSubm
>>>>>>>>> itBe
>>>>>>>>>> havior.java:135)
>>>>>>>>>>   at
>>>>>>>>>> 
>>>>>>> 
>>>> org.apache.wicket.ajax.AjaxEventBehavior.respond(AjaxEventBehavior.java
>>>>>>>>> :177
>>>>>>>>>> )
>>>>>>>>>>   at
>>>>>>>>>> 
>>>>>>> 
>>>> org.apache.wicket.ajax.AbstractDefaultAjaxBehavior.onRequest(AbstractDe
>>>>>>>>> faul
>>>>>>>>>> tAjaxBehavior.java:300)
>>>>>>>>>>   at
>>>>>>>>>> 
>>>>>>> 
>>>> org.apache.wicket.request.target.component.listener.BehaviorRequestTarg
>>>>>>>>> et.p
>>>>>>>>>> rocessEvents(BehaviorRequestTarget.java:119)
>>>>>>>>>>   at
>>>>>>>>>> 
>>>>>>> 
>>>> org.apache.wicket.request.AbstractRequestCycleProcessor.processEvents(A
>>>>>>>>> bstr
>>>>>>>>>> actRequestCycleProcessor.java:92)
>>>>>>>>>>   at
>>>>>>>>>> 
>>>>>>> 
>>>> org.apache.wicket.RequestCycle.processEventsAndRespond(RequestCycle.jav
>>>>>>>>> a:12
>>>>>>>>>> 50)
>>>>>>>>>>   at org.apache.wicket.RequestCycle.step(RequestCycle.java:1329)
>>>>>>>>>>   at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1436)
>>>>>>>>>>   at org.apache.wicket.RequestCycle.request(RequestCycle.java:545)
>>>>>>>>>>   at
>>>>>>>>>> 
>>>>>>> 
>>>> org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:48
>>>>>>>>> 4)
>>>>>>>>>>   at
>>>>>>>>>> 
>>>>>>> 
>>>> org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java
>>>>>>>>> :317
>>>>>>>>>> )
>>>>>>>>>>   at
>>>>>>>>>> 
>>>>>>> 
>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applic
>>>>>>>>> atio
>>>>>>>>>> nFilterChain.java:215)
>>>>>>>>>>   at
>>>>>>>>>> 
>>>>>>> 
>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFil
>>>>>>>>> terC
>>>>>>>>>> hain.java:188)
>>>>>>>>>>   at
>>>>>>>>>> 
>>>>>>> 
>>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperVal
>>>>>>>>> ve.j
>>>>>>>>>> ava:213)
>>>>>>>>>>   at
>>>>>>>>>> 
>>>>>>> 
>>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextVal
>>>>>>>>> ve.j
>>>>>>>>>> ava:172)
>>>>>>>>>>   at
>>>>>>>>>> 
>>>>>>> 
>>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.jav
>>>>>>>>> a:12
>>>>>>>>>> 7)
>>>>>>>>>>   at
>>>>>>>>>> 
>>>>>>> 
>>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.jav
>>>>>>>>> a:11
>>>>>>>>>> 7)
>>>>>>>>>>   at
>>>>>>>>>> 
>>>>>>> 
>>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve
>>>>>>>>> .jav
>>>>>>>>>> a:108)
>>>>>>>>>>   at
>>>>>>>>>> 
>>>>>>> 
>>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:
>>>>>>>>> 151)
>>>>>>>>>>   at
>>>>>>>>>> 
>>>>>>> org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:200)
>>>>>>>>>>   at
>>>>>>>>>> org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:283)
>>>>>>>>>>   at
>>>>>>>>> org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:773)
>>>>>>>>>>   at
>>>>>>>>>> 
>>>>>>> 
>>>> org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java
>>>>>>>>> :703
>>>>>>>>>> )
>>>>>>>>>>   at
>>>>>>>>>> 
>>>>>>> 
>>>> org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket
>>>>>>>>> .jav
>>>>>>>>>> a:895)
>>>>>>>>>>   at
>>>>>>>>>> 
>>>>>>> 
>>>> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPoo
>>>>>>>>> l.ja
>>>>>>>>>> va:689)
>>>>>>>>>>   at java.lang.Thread.run(Unknown Source)
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
>>>>>>>>>> For additional commands, e-mail: users-h...@wicket.apache.org
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>> ---------------------------------------------------------------------
>>>>>>>>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
>>>>>>>>> For additional commands, e-mail: users-h...@wicket.apache.org
>>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> ---------------------------------------------------------------------
>>>>>>>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
>>>>>>>> For additional commands, e-mail: users-h...@wicket.apache.org
>>>>>>> 
>>>>>>> 
>>>>>>> ---------------------------------------------------------------------
>>>>>>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
>>>>>>> For additional commands, e-mail: users-h...@wicket.apache.org
>>>>>>> 
>>>>>>> 
>>>>> 
>>>>> 
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
>>>>> For additional commands, e-mail: users-h...@wicket.apache.org
>>>>> 
>>>>> 
>>>> 
>> 
>> 
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
>> For additional commands, e-mail: users-h...@wicket.apache.org
>> 
>> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
> For additional commands, e-mail: users-h...@wicket.apache.org
> 


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

Reply via email to