Clean JavaScript stack trace
Marcus Lagergren
marcus.lagergren at oracle.com
Sat Jun 21 02:12:15 UTC 2014
Correct. Anything without “internal” in it should be fine.
On 20 Jun 2014, at 21:36, Greg Brail <greg at apigee.com> wrote:
> Thank you!
>
> It's my understanding that the "jdk.nashorn.api.scripting" package is
> considered fairly stable and using it my code is "OK," so I may use that
> technique.
>
>
> On Fri, Jun 20, 2014 at 9:22 AM, A. Sundararajan <
> sundararajan.athijegannathan at oracle.com> wrote:
>
>> You can evaluate:
>>
>> function getScriptTrace() {
>> try {
>> throw new Error();
>> } catch (e) {
>> return e.stack
>> }
>> }
>>
>> in your script and call the same from java code using
>> javax.script.Invocable.invokeFunction. ("stack" property and other
>> related extensions are documented here: https://wiki.openjdk.java.net/
>> display/Nashorn/Nashorn+extensions).
>>
>> Or if you're okay with nashorn specific extension, you can use this API
>> from java code.
>>
>> public static StackTraceElement[] jdk.nashorn.api.scripting.
>> NashornException.getScriptFrames(Throwable th)
>>
>> Hope this helps,
>> -Sundar
>>
>> On Friday 20 June 2014 09:35 PM, Greg Brail wrote:
>>
>>> Is there a way in Nashorn or javax.script to get a clean JavaScript-only
>>> stack trace (not a Java stack trace, but only containing JavaScript code)
>>> out of an exception thrown by a script? I don't see anything in the
>>> Nashorn
>>> Wiki or javax.script -- apologies if I'm missing something there.
>>>
>>> For instance, I can get a full Java stack trace when my script fails, but
>>> I'd like to ignore all the Java stuff and give users the stack trace that
>>> they would get if they were running the "plain" JavaScript natively rather
>>> than inside Java.
>>>
>>>
>>
>
>
> --
> *greg brail* | *apigee <https://apigee.com/>* | twitter @gbrail
> <http://twitter.com/gbrail>
More information about the nashorn-dev
mailing list