Hi,

.. maybe someone has a better idea. What's the problem.

One can add a behavior to a component which implements IAjaxRegionMarkupIdProvider. This way it's very easy to include some content rendered by this behavior even in an ajax-response (see http://www.wicket-praxis.de/blog/2011/05/18/wicket-ajax-iajaxregionmarkupidprovider/ (german only)). But if the component is invisible, the behavior is not called except the IAjaxRegionMarkupIdProvider call.

So whatever the behavior does in beforeRender()/afterRender() (wicket 1.5.x), it will not be asked again, except for the markup id.

Ok.. some examples:

<body>
  <wicket:container wicket:id="panel"></wicket:container>
</body>

could be rendered to (if visible):

<body>
    <div id="panel1_mybehavior">
        <wicket:container id="panel1" wicket:id="panel"></wicket:container>
    </div>
</body>

but will be rendered to (if invisible (setOutputMarkupPlaceholderTag(true)):

<body>
<wicket:container id="panel1" wicket:id="panel" style="display:none"></wicket:container>
</body>

which is in production should simply this:

<body>

</body>

but is (Bug in renderPlaceholderTag?)

<body>
     <wicket:container id="panel1" style="display:none"></wicket:container>
</body>

Ok. Here is what i would like to achive:
- you can update a component via ajax no matter which tag the component is bound
- it should work with invisible components
- i would like to avoid any additional WebMarkupContainer

Any idea?
It is a bug (wicket 1.5.9 - i can do a quickstart)?

thank you:)
Michael




Reply via email to