Is there a way to reference the engine from a linker?
Attila Szegedi
szegedia at gmail.com
Wed Apr 4 17:50:21 UTC 2018
Oh, good one. Yes, I think that’ll do. It engages Nashorn’s built-in linker chain to find an appropriate conversion.
Attila.
> On 2018. Apr 4., at 19:28, Paulo Lopes <pmartins at redhat.com> wrote:
>
> Hi,
>
> I've worked around it by using:
>
>
> ScriptUtils.convert(obj, Map.class)
>
>
> When ever I needed to get a script object as a map or replacing the class with List.class when I need a list...
>
> Is that a safe way to do it?
>
>
> Original Message
> From: szegedia at gmail.com
> Sent: April 4, 2018 7:21 PM
> To: plopes at redhat.com
> Cc: nashorn-dev at openjdk.java.net
> Subject: Re: Is there a way to reference the engine from a linker?
>
> Sorry for an awfully late response, but hope it might still help: Java.asJSONCompatible delegates on the Java side to jdk.nashorn.api.scripting.wrapAsJSONCompatible. It’s part of Nashorn’s supported public API, so it should be fine for you to call it.
>
> I’m actually wondering how useful is that API method - you need to pass a “homeGlobal” parameter, and honestly I’m not really sure how you’d obtain that. Maybe Sundar has an idea.
>
> Attila.
>
>> On 2018. Mar 15., at 20:02, Paulo Lopes <plopes at redhat.com> wrote:
>>
>> Hi,
>>
>> I'm writing a guarded linker to allow custom casting from JSObject to Vertx
>> custom types. So far so good, the basic tests seem to work but I think I'm
>> writing too much boiler plate code as I need in many times to have an
>> intermediate conversion from JSObject to Map or List.
>>
>> So I know that in the engine I could call Java.asJSONCompatible() but I
>> don't see how I could get a reference to the engine in the linker.
>>
>> Could anyone see a way or let me know if there is a open API to do this?
>>
>> Thanks!
>> Paulo
>
More information about the nashorn-dev
mailing list