Giter Club home page Giter Club logo

Comments (3)

iamstolis avatar iamstolis commented on July 18, 2024

is there a way using javascript compatibility code to save a txt type file with some text? ... I'm using maestro ...

I have no idea how maestro is using graal-js. There are no standard JavaScript built-ins for file writing. If maestro allows you to use Java-JavaScript interoperability then you can save the file using Java methods:

var line = "Hello, world!";
java.nio.file.Files.write(new java.io.File("world.txt").toPath(), java.util.List.of(line), java.nio.charset.StandardCharsets.UTF_8);

If general Java-JavaScript interoperability is not allowed by maestro and this use-case should be supported then it is up to maestro to provide the corresponding function/built-in.

Return error for Blob:

Blob is Web API. graal-js is not a browser. So, we do not support Blob (and other Web APIs).

from graaljs.

Angelk90 avatar Angelk90 commented on July 18, 2024

@iamstolis : I get the following error:

TypeError: Cannot read property 'nio' of undefined
        at <js> :program(make.js:3:45-52)
        at org.graalvm.polyglot.Context.eval(Context.java:399)
        at maestro.js.GraalJsEngine.evaluateScript(GraalJsEngine.kt:67)
        at maestro.js.GraalJsEngine.evaluateScript(GraalJsEngine.kt:22)
        at maestro.orchestra.Orchestra.runScriptCommand(Orchestra.kt:333)
        at maestro.orchestra.Orchestra.executeCommand(Orchestra.kt:278)
        at maestro.orchestra.Orchestra.executeCommands(Orchestra.kt:208)
        at maestro.orchestra.Orchestra.runFlow(Orchestra.kt:118)
        at maestro.orchestra.Orchestra.runFlow$default(Orchestra.kt:82)
        at maestro.cli.runner.MaestroCommandRunner.runCommands(MaestroCommandRunner.kt:185)
        at maestro.cli.runner.TestRunner$runContinuous$watchFiles$1$2$1.invoke(TestRunner.kt:110)
        at maestro.cli.runner.TestRunner$runContinuous$watchFiles$1$2$1.invoke(TestRunner.kt:109)
        at maestro.cli.runner.TestRunner.runCatching(TestRunner.kt:145)
        at maestro.cli.runner.TestRunner.access$runCatching(TestRunner.kt:35)
        at maestro.cli.runner.TestRunner$runContinuous$watchFiles$1$2.invoke(TestRunner.kt:109)
        at maestro.cli.runner.TestRunner$runContinuous$watchFiles$1$2.invoke(TestRunner.kt:97)
        at kotlin.concurrent.ThreadsKt$thread$thread$1.run(Thread.kt:30)

from graaljs.

iamstolis avatar iamstolis commented on July 18, 2024

It means that java is undefined, in other words, that Java-JavaScript interoperability is not available in your context. As I wrote above, if you think that your use-case (writing to a file) should be supported by maestro then you should ask there how to do it. The only support that graal-js provides in this area is through Java-JavaScript interoperability.

from graaljs.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.