it seems no :-(

On Tue, Oct 14, 2014 at 11:16 AM, Ernesto Reinaldo Barreiro <
reier...@gmail.com> wrote:

> It is already good for people wanting/needing to use it :-)
>
> Is there any other way to hook into onRender? Any way to avoid onRender
> being called via a global listener? If component is intanceof Bla don't
> call onRender?
>
> On Tue, Oct 14, 2014 at 10:47 AM, Martin Grigorov <mgrigo...@apache.org>
> wrote:
>
>> Oops. It seems PortletLike (a copy of PanelA with an exception in the
>> rendering of its Label child) hasn't be added to Git ...
>>
>> I've refactored it even further.
>> But as you can see the default rendering of a component should be
>> suppressed (PortletLike#onRender() {}) so it is not enough just to have
>> the
>> behavior.
>>
>> This is just a simple demo.
>> I'd like some feedback from a real usage before even thinking about adding
>> this to core.
>>
>> Martin Grigorov
>> Wicket Training and Consulting
>> https://twitter.com/mtgrigorov
>>
>> On Tue, Oct 14, 2014 at 1:24 PM, Ernesto Reinaldo Barreiro <
>> reier...@gmail.com> wrote:
>>
>> > Martin,
>> >
>> > PortletLike b = new PortletLike("b", Model.of("panel b"))... I can't
>> > see a PortletLike...
>> > on same package. Maybe a good way to use the behavior is: 1- Roll a
>> > PorletLikeBehavior. and an Interface IPorletLike { CharSequence
>> > getOnFailContents(); } to mark porlet like components. 2- Add a
>> component
>> > instantiation listener that if a component implement IPorletLike
>> > automatically adds the behavior.
>> >
>> > On Tue, Oct 14, 2014 at 10:14 AM, Martin Grigorov <mgrigo...@apache.org
>> >
>> > wrote:
>> >
>> > > Hi Ernesto,
>> > >
>> > > I didn't get the question.
>> > >
>> > > Martin Grigorov
>> > > Wicket Training and Consulting
>> > > https://twitter.com/mtgrigorov
>> > >
>> > > On Tue, Oct 14, 2014 at 1:10 PM, Ernesto Reinaldo Barreiro <
>> > > reier...@gmail.com> wrote:
>> > >
>> > > > Thanks! Whose PortletLike on
>> > > >
>> > > >
>> > >
>> >
>> https://github.com/martin-g/component-rendering-default/blob/master/src/main/java/com/mycompany/HomePage.java
>> > > > ?
>> > > > PanelA?
>> > > >
>> > > > On Tue, Oct 14, 2014 at 9:03 AM, Martin Grigorov <
>> mgrigo...@apache.org
>> > >
>> > > > wrote:
>> > > >
>> > > > > Hi,
>> > > > >
>> > > > > Here is a demo app with Wicket 6.x:
>> > > > > https://github.com/martin-g/component-rendering-default
>> > > > >
>> > > > > Martin Grigorov
>> > > > > Wicket Training and Consulting
>> > > > > https://twitter.com/mtgrigorov
>> > > > >
>> > > > > On Mon, Oct 13, 2014 at 6:13 PM, Martin Grigorov <
>> > mgrigo...@apache.org
>> > > >
>> > > > > wrote:
>> > > > >
>> > > > > > Here is a possible solution *now*:
>> > > > > >
>> > > > > > portletLike.add(new AbstractTransformerBehavior() {
>> > > > > >   @Override public CharSequence transform(Component c,
>> CharSequence
>> > > > > > output) {
>> > > > > >      try {
>> > > > > >        c.internalRenderComponent();
>> > > > > >      } catch (Exception x) {
>> > > > > >        return "default result";
>> > > > > >      }
>> > > > > >    }
>> > > > > > });
>> > > > > >
>> > > > > > Something like this should do it.
>> > > > > >
>> > > > > > Martin Grigorov
>> > > > > > Wicket Training and Consulting
>> > > > > > https://twitter.com/mtgrigorov
>> > > > > >
>> > > > > > On Mon, Oct 13, 2014 at 5:39 PM, Ernesto Reinaldo Barreiro <
>> > > > > > reier...@gmail.com> wrote:
>> > > > > >
>> > > > > >> I see... you may have already streamed content --> Maybe same
>> > > > interface
>> > > > > >> serves to mark a component as "do not stream anything till the
>> > end",
>> > > > or
>> > > > > >> stream the contents to an intermediate buffer... but what I way
>> > > above
>> > > > > >> might
>> > > > > >> not make sense as well.
>> > > > > >>
>> > > > > >>
>> > > > > >> On Mon, Oct 13, 2014 at 4:33 PM, Martin Grigorov <
>> > > > mgrigo...@apache.org>
>> > > > > >> wrote:
>> > > > > >>
>> > > > > >> > On Mon, Oct 13, 2014 at 5:09 PM, Ernesto Reinaldo Barreiro <
>> > > > > >> > reier...@gmail.com> wrote:
>> > > > > >> >
>> > > > > >> > > @Martin,
>> > > > > >> > >
>> > > > > >> > > Just a (maybe stupid) idea:
>> > > > > >> > >
>> > > > > >> > > 1- Mark some component as ISafeFail
>> > > > > >> > > 2- If rendering fails take Component_onfail.html and
>> render it
>> > > > > >> > >
>> > > > > >> >
>> > > > > >> > As I said earlier this is not so trivial.
>> > > > > >> > The failure may happen in the middle of the rendering and the
>> > > > content
>> > > > > >> > collected so far in RequestCycle#getResponse() could be
>> invalid
>> > > > HTML.
>> > > > > >> > Appending anything (loaded from a file or generated on the
>> fly)
>> > is
>> > > > not
>> > > > > >> > really a solution.
>> > > > > >> >
>> > > > > >> >
>> > > > > >> > >
>> > > > > >> > > On Mon, Oct 13, 2014 at 4:02 PM, Martin Grigorov <
>> > > > > >> mgrigo...@apache.org>
>> > > > > >> > > wrote:
>> > > > > >> > >
>> > > > > >> > > > https://issues.apache.org/jira/browse/WICKET-4321
>> > > > > >> > > > this is the ticker I meant
>> > > > > >> > > > it suggests to restart the rendering completely for the
>> > whole
>> > > > page
>> > > > > >> and
>> > > > > >> > > this
>> > > > > >> > > > is not enough
>> > > > > >> > > > I'll see what kind of changes would be needed to
>> accomplish
>> > > > this.
>> > > > > >> > > >
>> > > > > >> > > > Martin Grigorov
>> > > > > >> > > > Wicket Training and Consulting
>> > > > > >> > > > https://twitter.com/mtgrigorov
>> > > > > >> > > >
>> > > > > >> > > > On Fri, Oct 10, 2014 at 2:29 PM, Martin Grigorov <
>> > > > > >> mgrigo...@apache.org
>> > > > > >> > >
>> > > > > >> > > > wrote:
>> > > > > >> > > >
>> > > > > >> > > > > Hi,
>> > > > > >> > > > >
>> > > > > >> > > > > There is no support for this, even in 7.x.
>> > > > > >> > > > > I remember Carl-Eric Menzel asking for the same
>> > > functionality
>> > > > > >> before
>> > > > > >> > > ...
>> > > > > >> > > > > Behavior#onException() sounds like something similar
>> but
>> > > there
>> > > > > is
>> > > > > >> no
>> > > > > >> > > way
>> > > > > >> > > > > to suppress the bubbling of the exception at the
>> moment.
>> > > > > >> > > > > The bigger problem is that the rendering can fail in
>> the
>> > > > middle,
>> > > > > >> i.e.
>> > > > > >> > > the
>> > > > > >> > > > > component can have written some response already and
>> then
>> > > > fail.
>> > > > > If
>> > > > > >> > the
>> > > > > >> > > > > written response is proper HTML then it is OKish. But
>> if
>> > > some
>> > > > > tag
>> > > > > >> is
>> > > > > >> > > not
>> > > > > >> > > > > closed then the rendering of the complete page may
>> fail.
>> > > > > >> > > > > So if we try to add this functionality we will have to
>> use
>> > > > > >> temporary
>> > > > > >> > > > > Response objects for the rendering of each component
>> to be
>> > > > able
>> > > > > to
>> > > > > >> > > throw
>> > > > > >> > > > > away whatever it has produced before failing.
>> > > > > >> > > > >
>> > > > > >> > > > > Usually the problem is related to the component's
>> model. A
>> > > > > >> workaround
>> > > > > >> > > for
>> > > > > >> > > > > you could be to use a wrapper Model that returns "empty
>> > > data"
>> > > > > when
>> > > > > >> > the
>> > > > > >> > > > > underlying model throws an exception.
>> > > > > >> > > > >
>> > > > > >> > > > > Martin Grigorov
>> > > > > >> > > > > Wicket Training and Consulting
>> > > > > >> > > > > https://twitter.com/mtgrigorov
>> > > > > >> > > > >
>> > > > > >> > > > > On Fri, Oct 10, 2014 at 12:59 PM, Ernesto Reinaldo
>> > Barreiro
>> > > <
>> > > > > >> > > > > reier...@gmail.com> wrote:
>> > > > > >> > > > >
>> > > > > >> > > > >> Hi,
>> > > > > >> > > > >>
>> > > > > >> > > > >> On Fri, Oct 10, 2014 at 11:50 AM, Tobias Gierke <
>> > > > > >> > > > >> tobias.gie...@voipfuture.com> wrote:
>> > > > > >> > > > >>
>> > > > > >> > > > >> > Hi,
>> > > > > >> > > > >> >
>> > > > > >> > > > >> >> Wouldn't it be possible to "embed"  the failing
>> prone
>> > > > > porlets
>> > > > > >> > > inside
>> > > > > >> > > > >> >> iframes so that each one is a Wicket page?
>> > > > > >> > > > >> >>
>> > > > > >> > > > >> > I already thought about this but the page uses
>> quite a
>> > > lot
>> > > > of
>> > > > > >> > fancy
>> > > > > >> > > > >> > CSS/Ajax/Javascript (portlets are rendered in a grid
>> > with
>> > > > > >> > > configurable
>> > > > > >> > > > >> > row/column count, drag'n'drop to move them around
>> etc.)
>> > > and
>> > > > > I'd
>> > > > > >> > > rather
>> > > > > >> > > > >> not
>> > > > > >> > > > >> > touch the existing code if there's a Java-side only
>> > > > solution
>> > > > > >> ;-)
>> > > > > >> > > > >> >
>> > > > > >> > > > >>
>> > > > > >> > > > >> I do not know of any :-(
>> > > > > >> > > > >>
>> > > > > >> > > > >> Another possibility is build each client entirely on
>> > > > JavaScript
>> > > > > >> and
>> > > > > >> > > use
>> > > > > >> > > > >> Wicket just as a service layer... not very Wicket like
>> > but
>> > > > you
>> > > > > >> would
>> > > > > >> > > not
>> > > > > >> > > > >> have this problem.
>> > > > > >> > > > >>
>> > > > > >> > > > >>
>> > > > > >> > > > >> >
>> > > > > >> > > > >> > Cheers,
>> > > > > >> > > > >> > Tobias
>> > > > > >> > > > >> >
>> > > > > >> > > > >> >
>> > > > > >> > > > >> >> On Fri, Oct 10, 2014 at 11:12 AM, Tobias Gierke <
>> > > > > >> > > > >> >> tobias.gie...@voipfuture.com> wrote:
>> > > > > >> > > > >> >>
>> > > > > >> > > > >> >>  Hi,
>> > > > > >> > > > >> >>>
>> > > > > >> > > > >> >>> In our web application we have a dashboard-like
>> > > homepage
>> > > > > that
>> > > > > >> > > > >> displays a
>> > > > > >> > > > >> >>> number of user-configurable 'portlets' (which are
>> > > really
>> > > > > just
>> > > > > >> > > > ordinary
>> > > > > >> > > > >> >>> Wicket components and have nothing to do with the
>> > > Portlet
>> > > > > >> spec).
>> > > > > >> > > I'm
>> > > > > >> > > > >> >>> looking for a way of preventing the application
>> from
>> > > > > becoming
>> > > > > >> > > > >> unusable in
>> > > > > >> > > > >> >>> case one or more of these portlets continuously
>> fail
>> > to
>> > > > > >> render
>> > > > > >> > > > >> because of
>> > > > > >> > > > >> >>> some internal error/bug.
>> > > > > >> > > > >> >>>
>> > > > > >> > > > >> >>> We're currently using a custom
>> RequestCycleListener
>> > > with
>> > > > > the
>> > > > > >> > > > >> >>> onException()
>> > > > > >> > > > >> >>> method redirecting to a generic error page, thus
>> when
>> > > > > >> rendering
>> > > > > >> > > of a
>> > > > > >> > > > >> >>> 'portlet' fails the user will never get to see the
>> > > > homepage
>> > > > > >> and
>> > > > > >> > > > always
>> > > > > >> > > > >> >>> end
>> > > > > >> > > > >> >>> up on the error page - which is obviously not
>> really
>> > > > > >> desirable.
>> > > > > >> > > > >> >>>
>> > > > > >> > > > >> >>> Is there a way to to hook into Wicket's rendering
>> > cycle
>> > > > so
>> > > > > >> that
>> > > > > >> > I
>> > > > > >> > > > can
>> > > > > >> > > > >> >>> provide some default markup in case rendering of a
>> > > > > component
>> > > > > >> > > > (subtree)
>> > > > > >> > > > >> >>> fails with a RuntimeException ?
>> > > > > >> > > > >> >>>
>> > > > > >> > > > >> >>> I understand that this maybe be very tricky since
>> the
>> > > > > >> component
>> > > > > >> > > > >> subtree
>> > > > > >> > > > >> >>> might've rendered partially and thus internal
>> state
>> > > will
>> > > > be
>> > > > > >> > > > >> inconsistent.
>> > > > > >> > > > >> >>> It would probably require serializing the initial
>> > state
>> > > > of
>> > > > > >> the
>> > > > > >> > > > >> component
>> > > > > >> > > > >> >>> (subtree) before rendering starts and reverting
>> the
>> > > > wholle
>> > > > > >> > subtree
>> > > > > >> > > > to
>> > > > > >> > > > >> its
>> > > > > >> > > > >> >>> initial state once a RuntimeException is thrown.
>> > > > > >> > > > >> >>>
>> > > > > >> > > > >> >>> We're running Wicket 1.5.12.
>> > > > > >> > > > >> >>>
>> > > > > >> > > > >> >>> Thanks in advance,
>> > > > > >> > > > >> >>> Tobias
>> > > > > >> > > > >> >>>
>> > > > > >> > > > >> >>> --
>> > > > > >> > > > >> >>> Tobias Gierke
>> > > > > >> > > > >> >>> Development
>> > > > > >> > > > >> >>>
>> > > > > >> > > > >> >>> VOIPFUTURE GmbH   Wendenstra├če 4   20097 Hamburg,
>> > > > Germany
>> > > > > >> > > > >> >>> Phone +49 40 688 900 164 Fax +49 40 688 900 199
>> > > > > >> > > > >> >>> Email tobias.gie...@voipfuture.com   Web
>> > > > > >> > > http://www.voipfuture.com
>> > > > > >> > > > >> >>>   CEO Jan Bastian
>> > > > > >> > > > >> >>>
>> > > > > >> > > > >> >>> Commercial Court AG Hamburg   HRB 109896, VAT ID
>> > > > > DE263738086
>> > > > > >> > > > >> >>>
>> > > > > >> > > > >> >>>
>> > > > > >> > > > >> >>>
>> > > > > >> > > > >> >>>
>> > > > > >> > > >
>> > > > > >>
>> > > ---------------------------------------------------------------------
>> > > > > >> > > > >> >>> 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
>> > > > > >> > > > >> >
>> > > > > >> > > > >> >
>> > > > > >> > > > >>
>> > > > > >> > > > >>
>> > > > > >> > > > >> --
>> > > > > >> > > > >> Regards - Ernesto Reinaldo Barreiro
>> > > > > >> > > > >>
>> > > > > >> > > > >
>> > > > > >> > > > >
>> > > > > >> > > >
>> > > > > >> > >
>> > > > > >> > >
>> > > > > >> > >
>> > > > > >> > > --
>> > > > > >> > > Regards - Ernesto Reinaldo Barreiro
>> > > > > >> > >
>> > > > > >> >
>> > > > > >>
>> > > > > >>
>> > > > > >>
>> > > > > >> --
>> > > > > >> Regards - Ernesto Reinaldo Barreiro
>> > > > > >>
>> > > > > >
>> > > > > >
>> > > > >
>> > > >
>> > > >
>> > > >
>> > > > --
>> > > > Regards - Ernesto Reinaldo Barreiro
>> > > >
>> > >
>> >
>> >
>> >
>> > --
>> > Regards - Ernesto Reinaldo Barreiro
>> >
>>
>
>
>
> --
> Regards - Ernesto Reinaldo Barreiro
>



-- 
Regards - Ernesto Reinaldo Barreiro

Reply via email to