Hi,

I guess you have a user function with a field for the scripting engine.
Can you change your user function into a Rich* function, initialize the
scripting engine in the open() method and make the field transient?

That should resolve it.

On Fri, Jun 5, 2015 at 10:25 AM, Ashutosh Kumar <ashutosh.disc...@gmail.com>
wrote:

> I am trying to use java script engine to execute some rules on data set.
> But it is throwing
>
> NotSerializableException
> for jdk.nashorn.api.scripting.NashornScriptEngine.Not sure how to resolve
> this.
>
> Thanks
>
> Caused by: java.io.NotSerializableException:
> jdk.nashorn.api.scripting.NashornScriptEngine
> at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1184)
> at
> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1548)
> at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1509)
> at
> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1432)
> at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1178)
> at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:348)
> at
> org.apache.flink.util.InstantiationUtil.serializeObject(InstantiationUtil.java:314)
> at
> org.apache.flink.api.java.ClosureCleaner.ensureSerializable(ClosureCleaner.java:95)
>

Reply via email to