<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>Don,</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Hmm.  Maybe set breakpoints by the ProtoInstances and ProtoDeclare.  I can bring up in the debugger, but so far, I haven’t been running any IDE.  Would be nice if we could “Create new X3DSAIL project” in an IDE (hint, hint).</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>I would say it’s nested prototypes which are thwarting the current algorithm, but would have to put it under a debugger to make sure.  I’m getting a lot of these fieldValue errors.  You should at least write out to one format in  your app code, maybe provide methods for each format, with an  output file parameter.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>We should investigate uploading a version of X3DJSAIL to a Maven 2 repository for testing with Maven and IDEs.</p><p class=MsoNormal>What you probably should do is create a maven POM for building X3DJSAIL.  I can probably help, but will require source to be in PROJECT/src/main/java/org/… as per normal Maven projects—that is, I don’t know how to use stylesheets in Maven, except that it probably goes in the generate-sources phase.  The pom.xml will go in PROJECT.  Your example will go in PROJECT/src/test/java/.  resources (stylesheets) go in PROJECT/src/main/resources/.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Time to advance to the state of the art for both of us?  I’ve been writing shell scripts *<b>blush</b>*.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>I will write a test project once the main X3DJSAIL pom is written.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>This will make X3DJSAIL palatable for the majority of Java programmers, and will allow for versioning, etc.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Should we set up a meeting to go over Maven?  Roy?</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>I’m wearing out my processors running 8 jobs at a time.  Any chance I can get consortium resources once we get these maven projects built and put into continuous integration.  That is, an account on the continuous integration web page?  I’d like to see the whole thing built and redeployed automatically (if build is successful) whenever something is checked in.  I do believe this is very realizable.   We can set up separate projects for each JSAIL language.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Should I be working towards a JNI version of X3DJSAIL for C++, or go to back to python and work on the serializer there (in addition to tracking down runtime issues—in any language)?   Or push forward on Nashorn? IKVM (convert jars to dlls) may be the best solution for python, C# (windows).</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>I’m getting many more code too large with the function Java style.  Perhaps it’s not a good approach if it has more compiler errors than the more typical java approach?</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Getting the rest of the append errors solved is probably highest priority for me.</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:brutzman@nps.edu">Don Brutzman</a><br><b>Sent: </b>Wednesday, April 5, 2017 2:59 AM<br><b>To: </b><a href="mailto:yottzumm@gmail.com">yottzumm@gmail.com</a><br><b>Subject: </b>Re: local files. Help debugging with X3DJSAIL runtime errors?</p></div><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>looks like you have nested prototypes here.  so if you are sure protos are declared before they are instanced, that may be thwarting the current algorithm and will require further sleuthing.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>On 4/4/2017 11:45 PM, yottzumm@gmail.com wrote:</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> Don wrote:</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> Box.java</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> You get the following error because parent ProtoInstance and related ExternProtoDeclare/ProtoDeclare aren't yet connected to the same SceneObject, making it impossible to check for correct types.</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> Must also say that your example illustrates classic Java style very well, and is thus hard to read/follow.  Certainly legal, but (as this example shows) requires more housekeeping.</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> In the functional style, these are connected before it gets to the fieldValue invocation.</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> They are?  Please run new attached code (trying to please <span style='font-family:"Segoe UI Emoji",sans-serif'>😊</span>).  I rewrote my serializer for this, so we’d better get it working!  I can revert my code if necessary.  Actually, I changed an old serializer…</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> This is the same proto example that everyone is surprised by.  I think we may have the same surprise in store for you again!</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> This code is in the more functional style (except one array I think).</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></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>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><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</p><p class=MsoNormal>-- </p><p class=MsoNormal>Don Brutzman  Naval Postgraduate School, Code USW/Br       brutzman@nps.edu</p><p class=MsoNormal>Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA   +1.831.656.2149</p><p class=MsoNormal>X3D graphics, virtual worlds, navy robotics http://faculty.nps.edu/brutzman</p><p class=MsoNormal><o:p> </o:p></p></div></body></html>