<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8"><meta name=Generator content="Microsoft Word 15 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:"Segoe UI Emoji";
        panose-1:2 11 5 2 4 2 4 2 2 3;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style></head><body lang=EN-US link=blue vlink="#954F72"><div class=WordSection1><p class=MsoNormal>Note that the fileName is a parameter and should be *<b>validated</b>* but once it’s validated, you should be able to use it.  Do common things like check for double quotes and single quotes, etc.  It definitely is a candidate for injection.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Thanks,</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>John</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Sent from <a href="https://go.microsoft.com/fwlink/?LinkId=550986">Mail</a> for Windows 10</p><p class=MsoNormal><o:p> </o:p></p><div style='mso-element:para-border-div;border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal style='border:none;padding:0in'><b>From: </b><a href="mailto:yottzumm@gmail.com">John Carlson</a><br><b>Sent: </b>Saturday, January 13, 2018 7:33 PM<br><b>To: </b><a href="mailto:brutzman@nps.edu">Don Brutzman</a><br><b>Cc: </b><a href="mailto:x3d-public@web3d.org">X3D Graphics public mailing list</a><br><b>Subject: </b>RE: Errors in my X3DJSAIL HelloWorldProgramOutput.javacommandline,generating XML, JSON and JS</p></div><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Further improvement patches.  Note that I use file names instead of paths because they are JavaScript filenames--paths don’t work—but by all means try to get paths to work. I just don’t think you’ll be able to do it—and it will be a hairy mess.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>2 patches attached.  Patching same two files as last time (see below included message).<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Note that there may be future patches, especially related to comments in the JavaScript serializer.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>I am hoping this patch will make test.nashorn work for you <span style='font-family:"Segoe UI Emoji",sans-serif'>😊</span>.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>As soon as these patches are integrated, I will be doing a full checkout of <a href="http://www.web3d.org">www.web3d.org</a> for a final test.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>MetadataString still missing from JS outputted X3D XML (I’m hoping you get this this time, I don’t think you’ve seen it before).  Probably because it’s missing from the JSON and JS, but I haven’t investigated this time.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>John<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Sent from <a href="https://go.microsoft.com/fwlink/?LinkId=550986">Mail</a> for Windows 10<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><div style='border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal><b>From: </b><a href="mailto:brutzman@nps.edu">Don Brutzman</a><br><b>Sent: </b>Saturday, January 13, 2018 4:04 PM<br><b>To: </b><a href="mailto:yottzumm@gmail.com">John Carlson</a><br><b>Cc: </b><a href="mailto:x3d-public@web3d.org">X3D Graphics public mailing list</a><br><b>Subject: </b>Re: Errors in my X3DJSAIL HelloWorldProgramOutput.java commandline,generating XML, JSON and JS<o:p></o:p></p></div><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>On 1/13/2018 4:49 AM, John Carlson wrote:<o:p></o:p></p><p class=MsoNormal>> Here are the deltas, and a pointer to a new nashorn zip<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> 2 files attached. One for www.web3d.org/x3d/stylesheets/java/build.xml <o:p></o:p></p><p class=MsoNormal>> <http://www.web3d.org/x3d/stylesheets/java/build.xml> and one for <o:p></o:p></p><p class=MsoNormal>> www.web3d.org/x3d/stylesheets/CreateX3dSceneAccessInterfaceJava.xslt<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> https://coderextreme.net/X3DJSONLD/nashorn3.zip<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>thanks for helpful patches.  all integrated, made some changes along the way.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>- yes overriding XSLT engine for json/javascript conversions, but then restoring prior setting.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>- am copying files from parent examples directory to ensure comparisons look at correct latest release version.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>-  some further cleanup appears possible.  please also check that added comments match your intent.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>- HelloWorldProgramOutputOutput is too recursive for filename comprehension, replaced with<o:p></o:p></p><p class=MsoNormal>   HelloWorldProgramOutput.Nashorn.x3d etc.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>- improved test.nashorn task, it mostly works now (and also reports a conversion diff) until the "line 3" failure.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>all these changes are checked in, upload in progress.  console log follows, back to you John.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>========================================================================================================================<o:p></o:p></p><p class=MsoNormal>     <target name="test.nashorn" description="Test Nashorn output from X3DJSAIL"><o:p></o:p></p><p class=MsoNormal>                                <echo message="Compile:"/><o:p></o:p></p><p class=MsoNormal>                 <!-- local developer modification checks, apparently --><o:p></o:p></p><p class=MsoNormal>                                <javac srcdir ="${java.examples.dir}"<o:p></o:p></p><p class=MsoNormal>                                                   classpath=""<o:p></o:p></p><p class=MsoNormal>                                                   destdir="${java.classes.dir}"<o:p></o:p></p><p class=MsoNormal>                                                   debug="on"<o:p></o:p></p><p class=MsoNormal>                                                   verbose="${javac.verbose}"<o:p></o:p></p><p class=MsoNormal>                                                   includeantruntime="false" fork="${fork}"><o:p></o:p></p><p class=MsoNormal>                                </javac><o:p></o:p></p><p class=MsoNormal>                 <!-- Dev testing: copying of originals, reconversion and then comparison of files --><o:p></o:p></p><p class=MsoNormal>                                <echo message="Copy:"/><o:p></o:p></p><p class=MsoNormal>                 <copy file="examples/HelloWorldProgramOutput.x3d"  tofile="nashorn/examples/HelloWorldProgramOutput.x3d"  overwrite="true" verbose="true"/><o:p></o:p></p><p class=MsoNormal>                 <copy file="examples/HelloWorldProgramOutput.json" tofile="nashorn/examples/HelloWorldProgramOutput.json" overwrite="true" verbose="true"/><o:p></o:p></p><p class=MsoNormal>                                <echo message="Run:"/><o:p></o:p></p><p class=MsoNormal>                 <java classname="HelloWorldProgramOutput" classpath="${java.classes.dir};${java.jars.dir}/${jsai.full.archive.jar.name}" fork="${fork}"><o:p></o:p></p><p class=MsoNormal>                     <arg value="examples/HelloWorldProgramOutput.x3d"/><o:p></o:p></p><p class=MsoNormal>                     <arg value="-toJS"/><!-- alternatively -toJavaScript --><o:p></o:p></p><p class=MsoNormal>                     <arg value="-toFile"/><o:p></o:p></p><p class=MsoNormal>                     <arg value="nashorn/examples/HelloWorldProgramOutput.Nashorn.js"/><o:p></o:p></p><p class=MsoNormal>                 </java><o:p></o:p></p><p class=MsoNormal>                 <java classname="HelloWorldProgramOutput" classpath="${java.classes.dir};${java.jars.dir}/${jsai.full.archive.jar.name}" fork="${fork}"><o:p></o:p></p><p class=MsoNormal>                     <arg value="examples/HelloWorldProgramOutput.x3d"/><o:p></o:p></p><p class=MsoNormal>                     <arg value="-toJSON"/><o:p></o:p></p><p class=MsoNormal>                     <arg value="-toFile"/><o:p></o:p></p><p class=MsoNormal>                     <arg value="nashorn/examples/HelloWorldProgramOutput.Nashorn.json"/><o:p></o:p></p><p class=MsoNormal>                 </java><o:p></o:p></p><p class=MsoNormal>                 <java classname="HelloWorldProgramOutput" classpath="${java.classes.dir};${java.jars.dir}/${jsai.full.archive.jar.name}" fork="${fork}"><o:p></o:p></p><p class=MsoNormal>                     <arg value="examples/HelloWorldProgramOutput.x3d"/><o:p></o:p></p><p class=MsoNormal>                     <arg value="-toX3D"/><o:p></o:p></p><p class=MsoNormal>                     <arg value="-toFile"/><o:p></o:p></p><p class=MsoNormal>                     <arg value="nashorn/examples/HelloWorldProgramOutput.Nashorn.x3d"/><o:p></o:p></p><p class=MsoNormal>                 </java><o:p></o:p></p><p class=MsoNormal>                                <echo message="==========================================="/><o:p></o:p></p><p class=MsoNormal>                                <echo message="HelloWorldProgramOutput.Nashorn.x3d"/><o:p></o:p></p><p class=MsoNormal>                                <xmlvalidate lenient="yes" warn="yes" file="nashorn/examples/HelloWorldProgramOutput.Nashorn.x3d"/><o:p></o:p></p><p class=MsoNormal>                                <xmlvalidate lenient="no"  warn="yes" file="nashorn/examples/HelloWorldProgramOutput.Nashorn.x3d"/><o:p></o:p></p><p class=MsoNormal>                                <condition property="Nashorn.x3d.match" value="true"><o:p></o:p></p><p class=MsoNormal>                     <filesmatch file1="nashorn/examples/HelloWorldProgramOutput.x3d"<o:p></o:p></p><p class=MsoNormal>                                 file2="nashorn/examples/HelloWorldProgramOutput.Nashorn.x3d"/><o:p></o:p></p><p class=MsoNormal>                                </condition><o:p></o:p></p><p class=MsoNormal>                                <!-- otherwise --><property name="Nashorn.x3d.match" value="false"/><o:p></o:p></p><p class=MsoNormal>                                <echo message="matches HelloWorldProgramOutput.x3d: ${Nashorn.x3d.match}"/><o:p></o:p></p><p class=MsoNormal>                                <echo message="==========================================="/><o:p></o:p></p><p class=MsoNormal>                                <echo message="script:"/><o:p></o:p></p><p class=MsoNormal><!--    <script language="nashorn"> TODO debugging --><o:p></o:p></p><p class=MsoNormal>                                <script language="javascript" manager="javax"><o:p></o:p></p><p class=MsoNormal>                                                <classpath><o:p></o:p></p><p class=MsoNormal>                                                                <fileset dir="${saxon.dir}"      includes="${saxon.jar}"/><o:p></o:p></p><p class=MsoNormal>                                                                <fileset dir="${exificient.dir}" includes="${exificient.jar}"/><o:p></o:p></p><p class=MsoNormal>                                                                <fileset dir="${openexi.dir}"    includes="${openexi.jar}"/><o:p></o:p></p><p class=MsoNormal>                                                                <fileset dir="${java.jars.dir}"  includes="${jsai.classes.archive.jar.name}"/><o:p></o:p></p><p class=MsoNormal>                                                </classpath><o:p></o:p></p><p class=MsoNormal>                                                load('nashorn/jvm-npm.js');<o:p></o:p></p><p class=MsoNormal>                                                load('nashorn/repeatPolyfill.js');<o:p></o:p></p><p class=MsoNormal>                                                /*<o:p></o:p></p><p class=MsoNormal>                                                load('nashorn/examples/HelloWorldProgramOutputNashorn.js.intermediate.js');<o:p></o:p></p><p class=MsoNormal>                                                */<o:p></o:p></p><p class=MsoNormal>                                                load('nashorn/examples/HelloWorldProgramOutputNashorn.js');<o:p></o:p></p><p class=MsoNormal>                                </script><o:p></o:p></p><p class=MsoNormal>     </target><o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>========================================================================================================================<o:p></o:p></p><p class=MsoNormal>ant -f C:\\x3d-code\\www.web3d.org\\x3d\\stylesheets\\java test.nashorn<o:p></o:p></p><p class=MsoNormal>test.nashorn:<o:p></o:p></p><p class=MsoNormal>Compile:<o:p></o:p></p><p class=MsoNormal>Compiling 1 source file to C:\x3d-code\www.web3d.org\x3d\stylesheets\java\classes<o:p></o:p></p><p class=MsoNormal>Copy:<o:p></o:p></p><p class=MsoNormal>Copying 1 file to C:\x3d-code\www.web3d.org\x3d\stylesheets\java\nashorn\examples<o:p></o:p></p><p class=MsoNormal>Copying C:\x3d-code\www.web3d.org\x3d\stylesheets\java\examples\HelloWorldProgramOutput.x3d to C:\x3d-code\www.web3d.org\x3d\stylesheets\java\nashorn\examples\HelloWorldProgramOutput.x3d<o:p></o:p></p><p class=MsoNormal>Copying 1 file to C:\x3d-code\www.web3d.org\x3d\stylesheets\java\nashorn\examples<o:p></o:p></p><p class=MsoNormal>Copying C:\x3d-code\www.web3d.org\x3d\stylesheets\java\examples\HelloWorldProgramOutput.json to C:\x3d-code\www.web3d.org\x3d\stylesheets\java\nashorn\examples\HelloWorldProgramOutput.json<o:p></o:p></p><p class=MsoNormal>Run:<o:p></o:p></p><p class=MsoNormal>parameter: source file HelloWorldProgramOutput.x3d filesize 20715 bytes<o:p></o:p></p><p class=MsoNormal>parameter: "-toJS" for conversion to X3DJSONLD JavaScript source<o:p></o:p></p><p class=MsoNormal>parameter: "-toFile" "nashorn/examples/HelloWorldProgramOutput.Nashorn.js" for result file name root nashorn/examples/HelloWorldProgramOutput.Nashorn<o:p></o:p></p><p class=MsoNormal>convert to JS JavaScript:<o:p></o:p></p><p class=MsoNormal>Script DEF=colorTypeConversionScript contains CDATA source-code text, copied as "#sourceText" using "strings" mode<o:p></o:p></p><p class=MsoNormal>Script DEF=MaterialModulatorScript contains CDATA source-code text, copied as "#sourceText" using "strings" mode<o:p></o:p></p><p class=MsoNormal>[Error] file conversion unsuccessful!<o:p></o:p></p><p class=MsoNormal>parameter: source file HelloWorldProgramOutput.x3d filesize 20715 bytes<o:p></o:p></p><p class=MsoNormal>parameter: "-toJSON" for conversion to JSON encoding<o:p></o:p></p><p class=MsoNormal>parameter: "-toFile" "nashorn/examples/HelloWorldProgramOutput.Nashorn.json" for result file name root nashorn/examples/HelloWorldProgramOutput.Nashorn<o:p></o:p></p><p class=MsoNormal>convert to JSON:<o:p></o:p></p><p class=MsoNormal>Warning: toFileStylesheetConversion(X3dToJson.xslt) is overwriting prior file nashorn/examples/HelloWorldProgramOutput.Nashorn.json<o:p></o:p></p><p class=MsoNormal>Script DEF=colorTypeConversionScript contains CDATA source-code text, copied as "#sourceText" using "strings" mode<o:p></o:p></p><p class=MsoNormal>Script DEF=MaterialModulatorScript contains CDATA source-code text, copied as "#sourceText" using "strings" mode<o:p></o:p></p><p class=MsoNormal>file conversion successful: HelloWorldProgramOutput.Nashorn.json (39061 bytes)<o:p></o:p></p><p class=MsoNormal>parameter: source file HelloWorldProgramOutput.x3d filesize 20715 bytes<o:p></o:p></p><p class=MsoNormal>parameter: "-toX3D" for conversion to X3D encoding<o:p></o:p></p><p class=MsoNormal>parameter: "-toFile" "nashorn/examples/HelloWorldProgramOutput.Nashorn.x3d" for result file name root nashorn/examples/HelloWorldProgramOutput.Nashorn<o:p></o:p></p><p class=MsoNormal>convert to X3D:<o:p></o:p></p><p class=MsoNormal>Warning: toFileX3D() is overwriting prior file nashorn/examples/HelloWorldProgramOutput.Nashorn.x3d<o:p></o:p></p><p class=MsoNormal>file conversion successful: HelloWorldProgramOutput.Nashorn.x3d (20715 bytes)<o:p></o:p></p><p class=MsoNormal>===========================================<o:p></o:p></p><p class=MsoNormal>HelloWorldProgramOutput.Nashorn.x3d<o:p></o:p></p><p class=MsoNormal>1 file(s) have been successfully validated.<o:p></o:p></p><p class=MsoNormal>1 file(s) have been successfully validated.<o:p></o:p></p><p class=MsoNormal>matches HelloWorldProgramOutput.x3d: true<o:p></o:p></p><p class=MsoNormal>===========================================<o:p></o:p></p><p class=MsoNormal>script:<o:p></o:p></p><p class=MsoNormal>C:\x3d-code\www.web3d.org\x3d\stylesheets\java\build.xml:186:<o:p></o:p></p><p class=MsoNormal>javax.script.ScriptException: TypeError: Cannot load script from nashorn/jvm-npm.js in <eval> at line number 3<o:p></o:p></p><p class=MsoNormal>                at jdk.nashorn.api.scripting.NashornScriptEngine.throwAsScriptException(NashornScriptEngine.java:470)<o:p></o:p></p><p class=MsoNormal>                at jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(NashornScriptEngine.java:454)<o:p></o:p></p><p class=MsoNormal>                at jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(NashornScriptEngine.java:406)<o:p></o:p></p><p class=MsoNormal>                at jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(NashornScriptEngine.java:402)<o:p></o:p></p><p class=MsoNormal>                at jdk.nashorn.api.scripting.NashornScriptEngine.eval(NashornScriptEngine.java:155)<o:p></o:p></p><p class=MsoNormal>                at javax.script.AbstractScriptEngine.eval(AbstractScriptEngine.java:264)<o:p></o:p></p><p class=MsoNormal>                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)<o:p></o:p></p><p class=MsoNormal>                at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)<o:p></o:p></p><p class=MsoNormal>                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)<o:p></o:p></p><p class=MsoNormal>                at java.lang.reflect.Method.invoke(Method.java:498)<o:p></o:p></p><p class=MsoNormal>                at org.apache.tools.ant.util.ReflectUtil.invoke(ReflectUtil.java:109)<o:p></o:p></p><p class=MsoNormal>                at org.apache.tools.ant.util.ReflectWrapper.invoke(ReflectWrapper.java:81)<o:p></o:p></p><p class=MsoNormal>                at org.apache.tools.ant.util.optional.JavaxScriptRunner.evaluateScript(JavaxScriptRunner.java:103)<o:p></o:p></p><p class=MsoNormal>                at org.apache.tools.ant.util.optional.JavaxScriptRunner.executeScript(JavaxScriptRunner.java:67)<o:p></o:p></p><p class=MsoNormal>                at org.apache.tools.ant.taskdefs.optional.Script.execute(Script.java:53)<o:p></o:p></p><p class=MsoNormal>                at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:293)<o:p></o:p></p><p class=MsoNormal>                at sun.reflect.GeneratedMethodAccessor413.invoke(Unknown Source)<o:p></o:p></p><p class=MsoNormal>                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)<o:p></o:p></p><p class=MsoNormal>                at java.lang.reflect.Method.invoke(Method.java:498)<o:p></o:p></p><p class=MsoNormal>                at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)<o:p></o:p></p><p class=MsoNormal>                at org.apache.tools.ant.Task.perform(Task.java:348)<o:p></o:p></p><p class=MsoNormal>                at org.apache.tools.ant.Target.execute(Target.java:435)<o:p></o:p></p><p class=MsoNormal>                at org.apache.tools.ant.Target.performTasks(Target.java:456)<o:p></o:p></p><p class=MsoNormal>                at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1405)<o:p></o:p></p><p class=MsoNormal>                at org.apache.tools.ant.Project.executeTarget(Project.java:1376)<o:p></o:p></p><p class=MsoNormal>                at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)<o:p></o:p></p><p class=MsoNormal>                at org.apache.tools.ant.Project.executeTargets(Project.java:1260)<o:p></o:p></p><p class=MsoNormal>                at org.apache.tools.ant.module.bridge.impl.BridgeImpl.run(BridgeImpl.java:286)<o:p></o:p></p><p class=MsoNormal>                at org.apache.tools.ant.module.run.TargetExecutor.run(TargetExecutor.java:555)<o:p></o:p></p><p class=MsoNormal>                at org.netbeans.core.execution.RunClassThread.run(RunClassThread.java:153)<o:p></o:p></p><p class=MsoNormal>Caused by: <eval>:3 TypeError: Cannot load script from nashorn/jvm-npm.js<o:p></o:p></p><p class=MsoNormal>                at jdk.nashorn.internal.runtime.ECMAErrors.error(ECMAErrors.java:57)<o:p></o:p></p><p class=MsoNormal>                at jdk.nashorn.internal.runtime.ECMAErrors.typeError(ECMAErrors.java:213)<o:p></o:p></p><p class=MsoNormal>                at jdk.nashorn.internal.runtime.ECMAErrors.typeError(ECMAErrors.java:185)<o:p></o:p></p><p class=MsoNormal>                at jdk.nashorn.internal.runtime.ECMAErrors.typeError(ECMAErrors.java:172)<o:p></o:p></p><p class=MsoNormal>                at jdk.nashorn.internal.runtime.Context.load(Context.java:868)<o:p></o:p></p><p class=MsoNormal>                at jdk.nashorn.internal.objects.Global.load(Global.java:1545)<o:p></o:p></p><p class=MsoNormal>                at jdk.nashorn.internal.scripts.Script$4$\^eval\_.:program(<eval>:3)<o:p></o:p></p><p class=MsoNormal>                at jdk.nashorn.internal.runtime.ScriptFunctionData.invoke(ScriptFunctionData.java:637)<o:p></o:p></p><p class=MsoNormal>                at jdk.nashorn.internal.runtime.ScriptFunction.invoke(ScriptFunction.java:494)<o:p></o:p></p><p class=MsoNormal>                at jdk.nashorn.internal.runtime.ScriptRuntime.apply(ScriptRuntime.java:393)<o:p></o:p></p><p class=MsoNormal>                at jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(NashornScriptEngine.java:449)<o:p></o:p></p><p class=MsoNormal>                ... 28 more<o:p></o:p></p><p class=MsoNormal>BUILD FAILED (total time: 16 seconds)<o:p></o:p></p><p class=MsoNormal>========================================================================================================================<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>all the best, Don<o:p></o:p></p><p class=MsoNormal>-- <o:p></o:p></p><p class=MsoNormal>Don Brutzman  Naval Postgraduate School, Code USW/Br       brutzman@nps.edu<o:p></o:p></p><p class=MsoNormal>Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA   +1.831.656.2149<o:p></o:p></p><p class=MsoNormal>X3D graphics, virtual worlds, navy robotics http://faculty.nps.edu/brutzman<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><o:p> </o:p></p></div></body></html>