[x3d-public] announce: updated release for X3D Java Scene Access Interface Library (X3DJSAIL)
John Carlson
yottzumm at gmail.com
Mon Sep 25 19:56:53 PDT 2023
Ouch, another null pointer exception with X3DJSAIL with getMessage()!
[apply] java.lang.NullPointerException: Cannot invoke
"String.contains(java.lang.CharSequence)" because the return value of
"java.lang.reflect.InvocationTargetException.getMessage()" is null
[apply] at
org.web3d.x3d.jsail.X3DLoaderDOM.toX3dModelInstance(X3DLoaderDOM.java:1590)
[apply] at
org.web3d.x3d.jsail.X3DLoaderDOM.toX3dModelInstance(X3DLoaderDOM.java:619)
[apply] at
org.web3d.x3d.jsail.X3DLoaderDOM.toX3dModelInstance(X3DLoaderDOM.java:619)
[apply] at
org.web3d.x3d.jsail.X3DLoaderDOM.toX3dModelInstance(X3DLoaderDOM.java:619)
[apply] at
org.web3d.x3d.jsail.X3DLoaderDOM.toX3dModelInstance(X3DLoaderDOM.java:619)
[apply] at
org.web3d.x3d.jsail.X3DLoaderDOM.toX3dModelInstance(X3DLoaderDOM.java:490)
[apply] at
org.web3d.x3d.jsail.X3DLoaderDOM.toX3dModelInstance(X3DLoaderDOM.java:453)
[apply] at Validate.main(Unknown Source)
This is with the full jar.
A quick summary of WinterAndSpring:
$ (ant batchx3d 2>&1)|egrep "Processing|NullPointerException|1590"
[apply] Processing C:\x3d-code\www.web3d.org
\x3d\content\examples\HumanoidAnimation\WinterAndSpring\Bushes.x3d
[apply] Processing C:\x3d-code\www.web3d.org
\x3d\content\examples\HumanoidAnimation\WinterAndSpring\Cane.x3d
[apply] Processing C:\x3d-code\www.web3d.org
\x3d\content\examples\HumanoidAnimation\WinterAndSpring\CaneFit.x3d
[apply] Processing C:\x3d-code\www.web3d.org
\x3d\content\examples\HumanoidAnimation\WinterAndSpring\Flower.x3d
[apply] Processing C:\x3d-code\www.web3d.org
\x3d\content\examples\HumanoidAnimation\WinterAndSpring\FlowerGardens.x3d
[apply] Processing C:\x3d-code\www.web3d.org
\x3d\content\examples\HumanoidAnimation\WinterAndSpring\FlowerSet.x3d
[apply] Processing C:\x3d-code\www.web3d.org
\x3d\content\examples\HumanoidAnimation\WinterAndSpring\GrampsBox.x3d
[apply] Processing C:\x3d-code\www.web3d.org
\x3d\content\examples\HumanoidAnimation\WinterAndSpring\GrampsBoxAudio.x3d
[apply] Processing C:\x3d-code\www.web3d.org
\x3d\content\examples\HumanoidAnimation\WinterAndSpring\GrampsBoxTimerOnly.x3d
[apply] java.lang.NullPointerException: Cannot invoke
"String.contains(java.lang.CharSequence)" because the return value of
"java.lang.reflect.InvocationTargetException.getMessage()" is null
[apply] at
org.web3d.x3d.jsail.X3DLoaderDOM.toX3dModelInstance(X3DLoaderDOM.java:1590)
[apply] Processing C:\x3d-code\www.web3d.org
\x3d\content\examples\HumanoidAnimation\WinterAndSpring\GrandKidsBox.x3d
[apply] Processing C:\x3d-code\www.web3d.org
\x3d\content\examples\HumanoidAnimation\WinterAndSpring\Leif.x3d
[apply] java.lang.NullPointerException: Cannot invoke
"String.contains(java.lang.CharSequence)" because the return value of
"java.lang.reflect.InvocationTargetException.getMessage()" is null
[apply] at
org.web3d.x3d.jsail.X3DLoaderDOM.toX3dModelInstance(X3DLoaderDOM.java:1590)
[apply] Processing C:\x3d-code\www.web3d.org
\x3d\content\examples\HumanoidAnimation\WinterAndSpring\Lily.x3d
[apply] java.lang.NullPointerException: Cannot invoke
"String.contains(java.lang.CharSequence)" because the return value of
"java.lang.reflect.InvocationTargetException.getMessage()" is null
[apply] at
org.web3d.x3d.jsail.X3DLoaderDOM.toX3dModelInstance(X3DLoaderDOM.java:1590)
[apply] Processing C:\x3d-code\www.web3d.org
\x3d\content\examples\HumanoidAnimation\WinterAndSpring\MainStage.x3d
[apply] java.lang.NullPointerException: Cannot invoke
"String.contains(java.lang.CharSequence)" because the return value of
"java.lang.reflect.InvocationTargetException.getMessage()" is null
[apply] at
org.web3d.x3d.jsail.X3DLoaderDOM.toX3dModelInstance(X3DLoaderDOM.java:1590)
[apply] Processing C:\x3d-code\www.web3d.org
\x3d\content\examples\HumanoidAnimation\WinterAndSpring\Pathway.x3d
[apply] Processing C:\x3d-code\www.web3d.org
\x3d\content\examples\HumanoidAnimation\WinterAndSpring\Size2tExample_revision2.x3d
[apply] Processing C:\x3d-code\www.web3d.org
\x3d\content\examples\HumanoidAnimation\WinterAndSpring\TestCycleTimeStart.x3d
[apply] Processing C:\x3d-code\www.web3d.org
\x3d\content\examples\HumanoidAnimation\WinterAndSpring\Tufani.x3d
[apply] java.lang.NullPointerException: Cannot invoke
"String.contains(java.lang.CharSequence)" because the return value of
"java.lang.reflect.InvocationTargetException.getMessage()" is null
[apply] at
org.web3d.x3d.jsail.X3DLoaderDOM.toX3dModelInstance(X3DLoaderDOM.java:1590)
[apply] Processing C:\x3d-code\www.web3d.org
\x3d\content\examples\HumanoidAnimation\WinterAndSpring\WinterAndSpringHumanoidTimings.x3d
[apply] Processing C:\x3d-code\www.web3d.org
\x3d\content\examples\HumanoidAnimation\WinterAndSpring\WinterAndSpringTest.x3d
[apply] Processing C:\x3d-code\www.web3d.org
\x3d\content\examples\HumanoidAnimation\WinterAndSpring\WinterAndSpringTitleBox.x3d
[apply] Processing C:\x3d-code\www.web3d.org
\x3d\content\examples\HumanoidAnimation\WinterAndSpring\WinterSpringAuthorsAllTitleBox.x3d
[apply] Processing C:\x3d-code\www.web3d.org
\x3d\content\examples\HumanoidAnimation\WinterAndSpring\WinterSpringDedicationAllTitleBox.x3d
[apply] Processing C:\x3d-code\www.web3d.org
\x3d\content\examples\HumanoidAnimation\WinterAndSpring\WinterSpringMusicCreditAllTitleBox.x3d
[apply] Processing C:\x3d-code\www.web3d.org
\x3d\content\examples\HumanoidAnimation\WinterAndSpring\WinterSpringThanksAllTitleBox.x3d
[apply] Processing C:\x3d-code\www.web3d.org
\x3d\content\examples\HumanoidAnimation\WinterAndSpring\WinterAndSpringTitleBox.x3d
[apply] Processing C:\x3d-code\www.web3d.org
\x3d\content\examples\HumanoidAnimation\WinterAndSpring\WinterSpringAuthorsAllTitleBox.x3d
[apply] Processing C:\x3d-code\www.web3d.org
\x3d\content\examples\HumanoidAnimation\WinterAndSpring\WinterSpringDedicationAllTitleBox.x3d
[apply] Processing C:\x3d-code\www.web3d.org
\x3d\content\examples\HumanoidAnimation\WinterAndSpring\WinterSpringMusicCreditAllTitleBox.x3d
[apply] Processing C:\x3d-code\www.web3d.org
\x3d\content\examples\HumanoidAnimation\WinterAndSpring\WinterSpringThanksAllTitleBox.x3d
John
On Mon, Sep 25, 2023 at 9:40 PM John Carlson <yottzumm at gmail.com> wrote:
> I see this on the the web page:
>
>
> System.out.println ("===========================================");
> System.out.println ("Test CommandLine invocations");
> String[] args = {"-help" };
> System.out.println ("CommandLine " + Arrays.toString(args));
> CommandLine.run (args); // run these commands
> System.out.println ("===========================================");
> args = new String[] {"HelloWorldProgramOutput.x3d", "-toX3D", "-toFile", "HelloWorldProgramOutput.CommandLine.x3d" };
> System.out.println ("CommandLine " + Arrays.toString(args));
> CommandLine.run (args); // run these commands
> System.out.println ("===========================================");
> args = new String[] {"HelloWorldProgramOutput.x3d", "-EXIFICIENT", "-toEXI", "-toFile", "HelloWorldProgramOutput.CommandLine.EXIFICIENT.exi"};
> System.out.println ("CommandLine " + Arrays.toString(args));
> CommandLine.run (args); // run these commands
> System.out.println ("===========================================");
>
>
> I'd like to do (-validate and/or -canonical and/or -Tidy) with several files, however many files you want to handle in one invocation. Then I'll be able to have 8 processors working on their own batch (with xargs -P 8, or GNU parallel, I guess)
>
>
> On Mon, Sep 25, 2023 at 9:23 PM John Carlson <yottzumm at gmail.com> wrote:
>
>> Cool, Don. I can’t wait to try X3DJSONLD.java with X3DJSAIL. I’m
>> already impressed by event-graph you previously posted, it will be
>> interesting to see how it’s been upgraded. And yes, I’ll continue my
>> experiments with “JavaScript” SAI using GraalVM JS command-line mode.
>>
>> Additional features might include Java based canonicalization of DOM and
>> Java DOM diff. I’m getting really tired of all the issues with my
>> xmldiff.js. Yes, in batch mode.
>>
>> 👍
>>
>> On Mon, Sep 25, 2023 at 8:52 PM Brutzman, Donald (Don) (CIV) <
>> brutzman at nps.edu> wrote:
>>
>>> Am happy to report an updated release of the X3D Java Scene Access
>>> Interface Library (X3DJSAIL). This open-source capability is tested using
>>> the latest version of Java OpenJDK 20.0.2.
>>>
>>>
>>>
>>> - X3D Java Scene Access Interface Library (X3DJSAIL) supports
>>> programmers with standards-based X3D Java interfaces and objects, all as
>>> open source.
>>> - https://www.web3d.org/specifications/java/X3DJSAIL.html
>>> - https://www.web3d.org/specifications/java/javadoc
>>>
>>>
>>>
>>> Improvements in this release include better handling of Humanoid
>>> Animation (HAnim) model structured relationships, along with terser and
>>> more precise diagnostics when validating X3D models. Improved X3dToHtml
>>> stylesheet production of event-graph documentation has also been updated.
>>>
>>>
>>>
>>> Strong typing of data structures makes high-reliability production of
>>> X3D models using Java possible.
>>>
>>>
>>>
>>> - X3DJSAIL is a set of strongly typed Java application programming
>>> interfaces (APIs) providing programmer access to an X3D scene graph.
>>> - Two integrated Java packages are included that contain X3D SAI
>>> interfaces and support the X3D Graphics Standards for Java programmers.
>>> - org.web3d.x3d.jsail provides concrete implementation-oriented
>>> classes for building X3D scenes using standalone Java objects.
>>> - org.web3d.x3d.sai contains standard X3D SAI interfaces to
>>> independently compile Script-node source for use in X3D players.
>>>
>>>
>>>
>>> Goal outcomes: *make it easy to create a fully valid X3D scene graph
>>> using Java, while also making it hard to create an incorrect or invalid X3D
>>> model*.
>>>
>>>
>>>
>>> - Software design patterns are autogenerated from rigorous
>>> definitions of all X3D node and field relationships using the X3D Unified
>>> Object Model (X3DUOM).
>>> - Validation of individual fields includes application of X3D
>>> Regular Expressions (regexes).
>>> - X3DJSAIL Javadoc includes all descriptions, links, hints, and
>>> warnings from the X3D Tooltips.
>>>
>>> This library successfully supports multiple purposes.
>>>
>>> - Create high-performance standalone Java applications using a Plain
>>> Old Java Object (POJO) implementation for X3D.
>>> - Such X3D-capable Java applications can be client-based,
>>> server-based, or driven via command-line invocation (CLI) such as Java
>>> Console (jconsole).
>>> - Test ongoing deployment of X3D version 4 while maintaining full
>>> support for prior X3D versions 3.0 through 3.3.
>>>
>>> Over 4000 models in the X3D Examples Archive continue to be used as a
>>> source for conversions, regression testing and further improvements.
>>>
>>>
>>>
>>> - X3D Resources, Examples: Scene Archives for X3D
>>> - The X3D Examples Archives demonstrate how X3D nodes and scenes
>>> work. Thousands of scenes are provided in all X3D encodings. You can browse
>>> them individually online or download fully complete, separately installable
>>> .zip archives. Links to thousands of additional X3D example scenes are
>>> provided.
>>> -
>>> https://www.web3d.org/x3d/content/examples/X3dResources.html#Examples
>>>
>>>
>>>
>>> Comprehensive build logs show current results. Issue reports and
>>> feature suggestions are welcome.
>>>
>>>
>>>
>>> - https://www.web3d.org/x3d/content/examples/build.java.all.log.txt
>>> - https://www.web3d.org/specifications/java/X3DJSAIL.html#TODO
>>>
>>>
>>>
>>> Have fun with X3D and Java using X3DJSAIL! 8)
>>>
>>>
>>>
>>> all the best, Don
>>>
>>> --
>>>
>>> Don Brutzman Naval Postgraduate School, Code USW/Br
>>> brutzman at nps.edu
>>>
>>> Watkins 270, MOVES Institute, Monterey CA 93943-5000 USA
>>> +1.831.656.2149
>>>
>>> X3D graphics, virtual worlds, navy robotics
>>> https://faculty.nps.edu/brutzman
>>>
>>>
>>> _______________________________________________
>>> x3d-public mailing list
>>> x3d-public at web3d.org
>>> http://web3d.org/mailman/listinfo/x3d-public_web3d.org
>>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20230925/e9f89944/attachment-0001.html>
More information about the x3d-public
mailing list