[ 
https://issues.apache.org/jira/browse/WICKET-6663?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16832377#comment-16832377
 ] 

Hans Schäfer commented on WICKET-6663:
--------------------------------------

Hi [~svenmeier], 

thanks for your hint regarding IResource and your idea of a solution.

Just to make ist clear: I do not insist on sending the request to an invisible 
component. It came just up, because I had a broken component after updating 
from Wicket 8.0 to Wicket 8.3. During debugging I found the change that broke 
my component and then I changed the component so that it work again. 

So why did I open the ticket? Because I'm really convinced, that the change of 
Wicket-6675 does not solve the unsolvable base problem. Additional I think, 
that it perhaps introduces in some way inconsistency. I know, I have to argue 
hard now :)

Why I'm convinced, that the base problem is unsolveablem, is given by my 
argumentation above.

Why I think, that it is not consistent: A component, that renders a 
placeholder, just wants to play an active part in the browser during the 
lifetime of the "HTML-Instance" in the browser. So: what is an active part? An 
active part is undisputed "rerendering during Ajax-Requests/ replacing Markup 
and add executed Javascript during Ajax-Requests". Is ist also: Receive and 
process events? I think: yes. Because the Wicket-API explicitly models 
"canCallListener" with the reasonable Implementation "only if visible and 
enabled". And the component is also processing events / AjaxRequestTargets even 
if it is invisible. Just as you have to explicitly enable "be an active part of 
the page" by enabling placeholders, you have to explicitly enable "receive 
browser events even if invisible" by overwriting "canCallListener". The now 
generated Javascript does ignore this, it just assumes the default-Behaviour of 
canCallListener. My strong opinion is, that Javascript-Behaviour should exactly 
match the Server-Side-Behaviour. This is broken in my opinion.

Best regards

Hans

> Don't prevent requests on component placeholders (revert WICKET-6575)
> ---------------------------------------------------------------------
>
>                 Key: WICKET-6663
>                 URL: https://issues.apache.org/jira/browse/WICKET-6663
>             Project: Wicket
>          Issue Type: Bug
>          Components: wicket-core
>    Affects Versions: 8.1.0
>            Reporter: Hans Schäfer
>            Priority: Major
>
> Hello!
> WICKET-6575 introduced a bug in my application.
> I explicitly make an Ajax-Call to an invisible component. In my case: this 
> component displays search results as soon as they are available. The call is 
> triggered by a script created by another (visible) component.
> The method "canCallListener" already models the behavior of 
> components/behaviors regarding invocations. If you make Ajax-Calls to 
> invisible components you can hook in here (the default-Implementation causes 
> an exception if component is invisible) and make processing possible. This 
> was a consistent server-side API until Wicket-6575.
> Please remove the changes of Wicket-6575. 
> Thanks
> Hans
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to