<div dir="ltr"><div dir="ltr"><div dir="ltr">Looks like adding X3DUOM X3DGroupingNode inheritance to the LoadSensor, HAnimJoint and DISEntityManager in X3DUOM and maybe XML schema is in order, if it doesn't cause a lot of issues.  If you can send me a patch to X3DUOM 4.0, I will try it out?<div><br></div><div>Has this been covered before?</div><div><br></div><div>So it seems like a InvisibleGroupingNode (or NonVisibleGroupingNode) interface is needed.</div><div><br></div><div>I will proceed with just the grouping interface on HAnimJoint and see what happens.</div><div><br></div><div>John</div><div><div>    [javac] C:\x3d-code\<a href="http://www.web3d.org">www.web3d.org</a>\x3d\stylesheets\java\src\org\web3d\x3d\jsail\DIS\DISEntityManager.java:102: error: DISEntityManager is not abstract and does not override abstract method setVisible(boolean) in X3DGroupingNode</div><div>    [javac] public class DISEntityManager extends org.web3d.x3d.jsail.X3DConcreteNode implements org.web3d.x3d.sai.DIS.DISEntityManager</div><div>    [javac]        ^</div><div>    [javac] C:\x3d-code\<a href="http://www.web3d.org">www.web3d.org</a>\x3d\stylesheets\java\src\org\web3d\x3d\jsail\Networking\LoadSensor.java:87: error: LoadSensor is not abstract and does not override abstract method setVisible(boolean) in X3DGroupingNode</div><div>    [javac] public class LoadSensor extends org.web3d.x3d.jsail.X3DConcreteNode implements org.web3d.x3d.sai.Networking.LoadSensor</div><div>    [javac]        ^</div><div>    [javac] Note: C:\x3d-code\<a href="http://www.web3d.org">www.web3d.org</a>\x3d\stylesheets\java\src\org\web3d\x3d\jsail\X3DLoaderDOM.java uses unchecked or unsafe operations.</div><div>    [javac] Note: Recompile with -Xlint:unchecked for details.</div><div>    [javac] 2 errors</div></div><div><br></div><div>Thanks!</div></div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Jun 29, 2023 at 11:46 PM John Carlson <<a href="mailto:yottzumm@gmail.com" target="_blank">yottzumm@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr">Looks like we need more information before we change the code.  There are a lot of if/else if/else if/else above.  Is there some way to get the information you need?  <div><br></div><div>Here's some more possible information, way below.  Sorry it's way too long, this is culled quite a bit!  It looks like we need ways to add children to LoadSensor, HAnimJoint and DISEntityManager,but not as an X3DGroupingNode, or perhaps to implement the X3DGroupingNode interface is all that is needed?</div><div><br></div><div>LoadSensor add method:</div><div><div>        public void addChildren(org.web3d.x3d.sai.Core.X3DNode[] newValue)</div></div><div><br></div><div>HAnimJoint methods:</div><div><div>        public void addChildren(org.web3d.x3d.sai.Core.X3DNode[] newValue)</div><div>        public void addDisplacers(org.web3d.x3d.sai.Core.X3DNode[] newValue)</div></div><div><br></div><div>DISEntityManager methods:</div><div><div>        public void addChildren(org.web3d.x3d.sai.Core.X3DNode[] newValue)</div></div><div><br></div><div><div>     [java] *** [X3DLoaderDOM error] Parent-child node relationship not found! (parent DISEntityManager, child DISEntityTypeMapping, containerField='') Please report this problem to <a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a></div><div>     [java] *** [X3DLoaderDOM error] Parent-child node relationship not found! (parent HAnimJoint, child HAnimJoint, containerField='') Please report this problem to <a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a></div><div>     [java] *** [X3DLoaderDOM error] Parent-child node relationship not found! (parent HAnimJoint, child HAnimSegment, containerField='') Please report this problem to <a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a></div><div>     [java] *** [X3DLoaderDOM error] Parent-child node relationship not found! (parent LoadSensor, child Anchor, containerField='') Please report this problem to <a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a></div><div>     [java] *** [X3DLoaderDOM error] Parent-child node relationship not found! (parent LoadSensor, child AudioClip, containerField='') Please report this problem to <a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a></div><div>     [java] *** [X3DLoaderDOM error] Parent-child node relationship not found! (parent LoadSensor, child DISEntityTypeMapping, containerField='') Please report this problem to <a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a></div><div>     [java] *** [X3DLoaderDOM error] Parent-child node relationship not found! (parent LoadSensor, child GeoMetadata, containerField='') Please report this problem to <a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a></div><div>     [java] *** [X3DLoaderDOM error] Parent-child node relationship not found! (parent LoadSensor, child ImageCubeMapTexture, containerField='') Please report this problem to <a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a> at org.web3d.x3d.jsail.X3DLoaderDOM.toX3dModelInstance(X3DLoaderDOM.java:453)</div><div>     [java] *** [X3DLoaderDOM error] Parent-child node relationship not found! (parent LoadSensor, child ImageTexture, containerField='') Please report this problem to <a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a></div><div>     [java] *** [X3DLoaderDOM error] Parent-child node relationship not found! (parent LoadSensor, child ImageTexture3D, containerField='') Please report this problem to <a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a></div><div>     [java] *** [X3DLoaderDOM error] Parent-child node relationship not found! (parent LoadSensor, child Inline, containerField='') Please report this problem to <a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a></div><div>     [java] *** [X3DLoaderDOM error] Parent-child node relationship not found! (parent LoadSensor, child MovieTexture, containerField='') Please report this problem to <a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a></div><div>     [java] *** [X3DLoaderDOM error] Parent-child node relationship not found! (parent LoadSensor, child PackagedShader, containerField='') Please report this problem to <a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a></div><div>     [java] *** [X3DLoaderDOM error] Parent-child node relationship not found! (parent LoadSensor, child Script, containerField='') Please report this problem to <a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a></div><div>     [java] *** [X3DLoaderDOM error] Parent-child node relationship not found! (parent LoadSensor, child ShaderPart, containerField='') Please report this problem to <a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a></div><div>     [java] *** [X3DLoaderDOM error] Parent-child node relationship not found! (parent LoadSensor, child ShaderProgram, containerField='') Please report this problem to <a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a></div></div><div><br></div><div>Enjoy!</div><div><br></div><div>John</div></div></div></div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Jun 29, 2023 at 7:53 PM John Carlson <<a href="mailto:yottzumm@gmail.com" target="_blank">yottzumm@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div>Don, please fix these issues with X3DJSAIL.  I think they are in X3DLoaderDOM.java, I haven't explored X3DUOM or schema yet.</div><div><br></div><div>org.web3d.x3d.jsail.DIS.DISEntityManager cannot be cast to class org.web3d.x3d.sai.Grouping.X3DGroupingNode</div><div><br></div><div>org.web3d.x3d.jsail.HAnim.HAnimJoint cannot be cast to class org.web3d.x3d.sai.Grouping.X3DGroupingNode</div><div><br></div><div>org.web3d.x3d.jsail.Networking.LoadSensor cannot be cast to class org.web3d.x3d.sai.Grouping.X3DGroupingNode</div><div><br></div><div>Hot spots seem to be:</div><div><br></div><div><div> <span style="background-color:rgb(255,255,255)"> <font color="#0000ff">   [java]     at org.web3d.x3d.jsail.X3DLoaderDOM.toX3dModelInstance(X3DLoaderDOM.java:1352)</font></span></div><div>     [java]     at org.web3d.x3d.jsail.X3DLoaderDOM.toX3dModelInstance(X3DLoaderDOM.java:453)</div><div>     [java]     at org.web3d.x3d.jsail.X3DLoaderDOM.toX3dModelInstance(X3DLoaderDOM.java:490)</div><div>     [java]     at org.web3d.x3d.jsail.X3DLoaderDOM.toX3dModelInstance(X3DLoaderDOM.java:619)</div></div><div><br></div><div>The first blue one, line 1352, appears to be the main problem:</div><div><br></div><div><div>                                // Note that Scene statement was already handled earlier</div><div>                                if (!(elementObject instanceof X3DGroupingNode))</div><div>                                {</div><div>                                    errorNotice = "*** [X3DLoaderDOM error] Parent-child node relationship not found! (parent " + nodeName + ", child " + childElementName +</div><div>                                                   ", containerField='" + containerField + "') Please report this problem to <a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a>";</div><div>                                    validationResult.append(errorNotice);</div><div>                                    System.out.println(errorNotice); // avoiding System.err due to redirection difficulties</div><div>                                }<font color="#0000ff"> // WHERE'S THE ELSE?</font></div><div>                                ((X3DGroupingNode)elementObject).addChildren(new org.web3d.x3d.sai.Core.X3DNode[] { (X3DNode) childX3dElement } ); // default fallback can throw exception<font color="#0000ff"> // 1352</font></div></div><div><font color="#0000ff"><br></font></div><div>Hope this helps! I think fixing the egregious class cast exception at line 1352 would be the most help!</div></div></div></div></div>
</blockquote></div>
</blockquote></div>