<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;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
.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><div class=WordSection1><p class=MsoNormal>Don, do not look at any JavaScript files for abstract classes.  They do not affect the python except upstream.</p><p class=MsoNormal>We are trying to debug the python, not the javascript.  We will pickup the JavaScript later.   We can take things out of the generation/generated scripts if you feel it’s necessary.  I’m still trying to get the whole thing running.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Suggested next file to debug:</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>processSingleScene.pythonValidation:</p><p class=MsoNormal>     [echo] processSingleScene.python C:\x3d-code\www.web3d.org\x3d\content\examples\X3dForWebAuthors\Chapter04ViewingNavigation\Collision.future.py</p><p class=MsoNormal>     [echo] Loading X3D model as .py program, if successful then saving as round-trip .x3d version:</p><p class=MsoNormal>     [exec] Traceback (most recent call last):Warning: meta name newValue="permissions" has an unrecognized value not matching any of the optional string tokens.</p><p class=MsoNormal>     [exec]</p><p class=MsoNormal>     [exec]   File "C:\x3d-code\www.web3d.org\x3d\content\examples\X3dForWebAuthors\Chapter04ViewingNavigation\Collision.future.py", line 118, in <module></p><p class=MsoNormal>     [exec]     .setTransparency(SFFloat(0.5)) \</p><p class=MsoNormal>     [exec] AttributeError: 'org.web3d.x3d.sai.Navigation.Collision' object has no attribute 'addChild'</p><p class=MsoNormal>     [exec] Result: 1</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Note:   Java sai package is referenced.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>See imports:</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>import classpath</p><p class=MsoNormal>from org.web3d.x3d.jsail.Core.X3DObject import X3DObject as X3D</p><p class=MsoNormal>from org.web3d.x3d.jsail.fields.SFStringObject import SFStringObject as SFString</p><p class=MsoNormal>from org.web3d.x3d.jsail.Core.headObject import headObject as head</p><p class=MsoNormal>from org.web3d.x3d.jsail.Core.metaObject import metaObject as meta</p><p class=MsoNormal>from org.web3d.x3d.jsail.Core.SceneObject import SceneObject as Scene</p><p class=MsoNormal>from org.web3d.x3d.jsail.Navigation.NavigationInfoObject import NavigationInfoObject as NavigationInfo</p><p class=MsoNormal>from org.web3d.x3d.jsail.fields.SFFloatObject import SFFloatObject as SFFloat</p><p class=MsoNormal>from org.web3d.x3d.jsail.fields.MFStringObject import MFStringObject as MFString</p><p class=MsoNormal>from org.web3d.x3d.jsail.Navigation.ViewpointObject import ViewpointObject as Viewpoint</p><p class=MsoNormal>from org.web3d.x3d.jsail.fields.SFVec3fObject import SFVec3fObject as SFVec3f</p><p class=MsoNormal>from org.web3d.x3d.jsail.fields.SFRotationObject import SFRotationObject as SFRotation</p><p class=MsoNormal><b>from org.web3d.x3d.jsail.Navigation.CollisionObject import CollisionObject as Collision<o:p></o:p></b></p><p class=MsoNormal>from org.web3d.x3d.jsail.Shape.ShapeObject import ShapeObject as Shape</p><p class=MsoNormal>from org.web3d.x3d.jsail.Geometry3D.CylinderObject import CylinderObject as Cylinder</p><p class=MsoNormal>from org.web3d.x3d.jsail.fields.SFBoolObject import SFBoolObject as SFBool</p><p class=MsoNormal>from org.web3d.x3d.jsail.Shape.AppearanceObject import AppearanceObject as Appearance</p><p class=MsoNormal>from org.web3d.x3d.jsail.Shape.MaterialObject import MaterialObject as Material</p><p class=MsoNormal>from org.web3d.x3d.jsail.Networking.InlineObject import InlineObject as Inline</p><p class=MsoNormal>X3D0 = X3D() \</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>No sai or abstract X3D imported.  Concrete class is imported</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>File system:</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>$ cd org/web3d/x3d/</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>coderextreme@DESKTOP-DOPK2VD MINGW64 /c/x3d-code/www.web3d.org/x3d/stylesheets/java/src/python/pyjnius/org/web3d/x3d</p><p class=MsoNormal>$ ls</p><p class=MsoNormal>jsail/  tests/</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>No sai present, yet found in running app.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Deeper search:</p><p class=MsoNormal>coderextreme@DESKTOP-DOPK2VD MINGW64 /c/x3d-code/www.web3d.org/x3d/stylesheets/java/src/python/pyjnius/org</p><p class=MsoNormal>$ find . -type f |xargs grep '\.sai\.'</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>[ no output, no SAI ]</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>My conclusion is that PyJNIus is getting to the superclass, probably through the getSuperclass call (see pyjnius/reflect.py for an example), or through a signature.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Now get off my back, dude!</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Yes, I did try commenting out the getSuperclass call.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>John</p><p class=MsoNormal><o:p> </o:p></p></div></body></html>