That's strange. Could you show the full exception stack trace?
On Thu, Jun 21, 2018 at 1:26 PM, m.xinu <[email protected]>
wrote:
> I manually create the Spring context, which is
> ClassPathXmlApplicationContext, and pass it to Wicket application by
> calling
>
> getComponentInstantiationListeners().add(new
> SpringComponentInjector(this, MyApp.get().getApplicationContext())).
>
> Then, In my panel I have this
>
> private class ReportMenuPanel extends WPanel {
> private static final long serialVersionUID = -9012565863392514416L;
>
> @Inject
> private IReportService reportService;
>
> ...
> }
>
> I also checked my code with @SpringBean and I got the same exception.
>
>
> On Thursday, June 21, 2018, 3:30:29 PM GMT+4:30, Andrea Del Bene <
> [email protected]> wrote:
>
> I think you are keeping a reference to your Spring bean in a page or in a
> component, that's why Wicket is trying to serialize it. Are you injecting
> this bean with @SpringBean annotation?
>
> On Thu, Jun 21, 2018 at 12:45 PM, m.xinu <[email protected]>
> wrote:
>
> > Thanks for your reply.
> >
> > Both of your proposed solutions mean using other interfaces in the Lambda
> > expressions. However most of my Lambda definitions are in my Service tier
> > classes (Spring beans), and the Service tier must be independent from the
> > Web tier, and the force of Wicket serialization (even for the service
> > beans) breaks the aforementioned rule. Is there another solution? Is it
> > possible for Wicket not to serialize the Spring beans? or is there
> another
> > serialization mechanism in Wicket not based on Serializable interface?
> >
> >
> > On Thursday, June 21, 2018, 5:44:00 AM GMT+4:30, Maxim Solodovnik <
> > [email protected]> wrote:
> >
> > Wicket7:
> > https://github.com/wicketstuff/core/blob/wicket-
> > 7.x/lambda-parent/lambda/src/main/java/org/wicketstuff/
> > lambda/SerializableBiConsumer.java
> >
> > WBR, Maxim
> > (from mobile, sorry for the typos)
> >
> > On Thu, Jun 21, 2018, 08:13 Maxim Solodovnik <[email protected]>
> wrote:
> >
> > >
> > > https://cwiki.apache.org/confluence/display/WICKET/
> > Migration+to+Wicket+8.0#MigrationtoWicket8.0-
> > Provideserializableversionsofjava.util.function.(Supplier|
> > Consumer|Function|BiConsumer)ASFJIRA5aa69414-a9e9-3523-
> > 82ec-879b028fb15bWICKET-5991
> > > <https://cwiki.apache.org/confluence/display/WICKET/
> > Migration+to+Wicket+8.0#MigrationtoWicket8.0-
> > Provideserializableversionsofjava.util.function.(Supplier%
> > 7CConsumer%7CFunction%7CBiConsumer)ASFJIRA5aa69414-a9e9-3523-82ec-
> > 879b028fb15bWICKET-5991>
> > >
> > > WBR, Maxim
> > > (from mobile, sorry for the typos)
> > >
> > > On Wed, Jun 20, 2018, 22:42 m.xinu <[email protected]>
> wrote:
> > >
> > >> Hi,
> > >>
> > >> I'm using Apache Wicket 7.9.0 alongside Spring 5.0.5.RELEASE. In one
> of
> > >> my beans, I call some stream API containing multiple lambda
> expressions.
> > >> During that page execution, I get following exception:
> > >>
> > >> Caused by: java.io.NotSerializableException:
> > >> org.devocative.metis.service.data.ReportService$$Lambda$126/997816965
> > >>
> > >> and it is very strange for me since it is in one of my beans not in
> any
> > >> Wicket-related part.
> > >>
> > >> I've searched and I've found the Serializable casting solution,
> however
> > >> it results in a very complex syntax for my code. So is there any other
> > >> solution? Dose Wicket has a way for this type of serialization?
> > >>
> > >>
> > >> P.S: My block of code for stream:
> > >>
> > >> reports.parallelStream()
> > >> .filter(report ->
> > >> externalAuthorizationService == null ||
> > >> externalAuthorizationService.authorizeReport(report, null,
> > >> currentUser.getUserId())
> > >> )
> > >> .flatMap(report -> report.getGroups().stream().map(dataGroup ->
> new
> > >> KeyValueVO<>(dataGroup, report)))
> > >> .collect(Collectors.groupingBy(
> > >> KeyValueVO::getKey,
> > >> () -> new TreeMap<>(Comparator.comparing(DataGroup::getName)),
> > >> Collectors.mapping(
> > >> KeyValueVO::getValue,
> > >> Collectors.toList()))
> > >> );
> > >>
> > >>
> >
> >
>
>