What about this construct: public <P extends IPageProvider & Serializable> InlineFrame(final String id, P p) { super(id); pageProvider = p; }
Would that be something (works in Java 8)? It would solve the problem of InlineFrame, force users to at least use a serializable IPageProvider implementation. Martijn On Sun, Feb 22, 2015 at 7:02 PM, Tobias Soloschenko <tobiassolosche...@googlemail.com> wrote: > So, > > based on further researches there is a very big impact if IPageProvider is > going to be IClusterable in general. I would recommend to keep it the way it > is currently implemented. If users want to build their own PageProvider and > want to use InlineFrame should build their PageProvider to be IClusterable, > but we should not define it in general. > > kind regards > > Tobias > > ------------ > > Infact that the InlineFrame uses the Interface of IPageProvider and users > may implement their own PageProvider I would say yes - so that the > InlineFrame also works with other PageProviders we have to move the > ICusterable to IPageProvider. I checked out the other places IPageProvider > is used: > > 1. org.apache.wicket.core.request.handler.PageProvider > 2. org.apache.wicket.core.request.handler.PageAndComponentProvider > through interface > org.apache.wicket.core.request.handler.IPageAndComponentProvider > > The only thing which might be a problem then is that > org.apache.wicket.request.component.IRequestableComponent of the > PageAndComponentProvider is not serializable and this would lead to a > NotSerializableException, because several RequestHandler is using it. > > kind regards > > Tobias > > Am 22.02.15 um 18:07 schrieb Martijn Dashorst: >> >> Ok, >> >> >> But shouldn't IPageProvider rather extend IClusterable? One can >> provide a custom IPageProvider implementation without having it be >> serializable. >> >> Martijn >> >> >> On Sun, Feb 22, 2015 at 5:54 PM, Tobias Soloschenko >> <tobiassolosche...@googlemail.com> wrote: >>> >>> Hi, >>> >>> here is the ticket in which we discussed it. >>> >>> https://issues.apache.org/jira/browse/WICKET-5828 >>> >>> kind regards >>> >>> Tobias >>> >>>> Am 22.02.2015 um 17:31 schrieb Martin Grigorov <mgrigo...@apache.org>: >>>> >>>> This has been fixed recently in master. Right after you've cut M5 >>>> On Feb 22, 2015 6:29 PM, "Martijn Dashorst" <martijn.dasho...@gmail.com> >>>> wrote: >>>> >>>>> While fixing a compilation error due to the removal of IPageLink, I >>>>> encountered that InlineFrame now uses IPageProvider and stores it in >>>>> an instance field. >>>>> >>>>> Unfortunately, IPageProvider has no requirement to be Serializable and >>>>> the default implementation PageProvider is not serializable. This will >>>>> lead to serialization errors. >>>>> >>>>> What shall we do? I don't think that PageProvider was ever intended as >>>>> a serializable concept so this can go a lot of ways... >>>>> >>>>> Martijn >>>>> >>>>> >>>>> -- >>>>> Become a Wicket expert, learn from the best: http://wicketinaction.com >>>>> >> >> > -- Become a Wicket expert, learn from the best: http://wicketinaction.com