<html><head><meta http-equiv="Content-Type" content="text/html; charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">Hello John,<div class=""><br class=""></div><div class="">There was indeed a bug in X_ITE, in importJS, that the .dom property of the resulting scene was not set. This is fixed now. I also updated the documentation that there is also an async version of .importJS. The async version must be used if you specify profile or components that are not in the main packaged of X_ITE, like the Layout component, which is loaded later, only if needed. But you can also use the sync version if you only need VRML.</div><div class=""><br class=""></div><div class="">See:</div><div class=""><a href="https://github.com/create3000/x_ite/wiki/Browser-Services#x3dscene-importdocument-domobject-dom" class="">https://github.com/create3000/x_ite/wiki/Browser-Services#x3dscene-importdocument-domobject-dom</a></div><div class=""><br class=""></div><div class="">Here is a full example:</div><div class=""><br class=""></div><div class=""><div style="color: rgb(54, 54, 54); background-color: rgb(255, 255, 255); font-family: Menlo, Monaco, "Courier New", monospace; line-height: 18px; white-space: pre;" class=""><div class=""><span style="color: rgb(159, 159, 159);" class=""><</span><span style="color: rgb(63, 151, 223);" class="">html</span><span style="color: rgb(159, 159, 159);" class="">></span></div><div class=""> <span style="color: rgb(159, 159, 159);" class=""><</span><span style="color: rgb(63, 151, 223);" class="">head</span><span style="color: rgb(159, 159, 159);" class="">></span></div><div class=""> <span style="color: rgb(159, 159, 159);" class=""><</span><span style="color: rgb(63, 151, 223);" class="">meta</span> <span style="color: rgb(9, 89, 132);" class="">charset</span>=<span style="color: rgb(162, 86, 55);" class="">"utf-8"</span><span style="color: rgb(159, 159, 159);" class="">/></span></div><div class=""> <span style="color: rgb(159, 159, 159);" class=""><</span><span style="color: rgb(63, 151, 223);" class="">link</span> <span style="color: rgb(9, 89, 132);" class="">rel</span>=<span style="color: rgb(162, 86, 55);" class="">"stylesheet"</span> <span style="color: rgb(9, 89, 132);" class="">type</span>=<span style="color: rgb(162, 86, 55);" class="">"text/css"</span> <span style="color: rgb(9, 89, 132);" class="">href</span>=<span style="color: rgb(162, 86, 55);" class="">"<a href="https://create3000.github.io/code/x_ite/latest/dist/x_ite.css" class="">https://create3000.github.io/code/x_ite/latest/dist/x_ite.css</a>"</span><span style="color: rgb(159, 159, 159);" class="">/></span></div><div class=""> <span style="color: rgb(159, 159, 159);" class=""><</span><span style="color: rgb(63, 151, 223);" class="">script</span> <span style="color: rgb(9, 89, 132);" class="">type</span>=<span style="color: rgb(162, 86, 55);" class="">"text/javascript"</span> <span style="color: rgb(9, 89, 132);" class="">src</span>=<span style="color: rgb(162, 86, 55);" class="">"<a href="https://create3000.github.io/code/x_ite/latest/dist/x_ite.min.js" class="">https://create3000.github.io/code/x_ite/latest/dist/x_ite.min.js</a>"</span><span style="color: rgb(159, 159, 159);" class="">></</span><span style="color: rgb(63, 151, 223);" class="">script</span><span style="color: rgb(159, 159, 159);" class="">></span></div><div class=""> <span style="color: rgb(159, 159, 159);" class=""><</span><span style="color: rgb(63, 151, 223);" class="">style</span> <span style="color: rgb(9, 89, 132);" class="">type</span>=<span style="color: rgb(162, 86, 55);" class="">"text/css"</span><span style="color: rgb(159, 159, 159);" class="">></span></div><div class="">X3DCanvas {</div><div class=""> <span style="color: rgb(9, 89, 132);" class="">width</span>: <span style="color: rgb(73, 104, 57);" class="">768px</span>;</div><div class=""> <span style="color: rgb(9, 89, 132);" class="">height</span>: <span style="color: rgb(73, 104, 57);" class="">432px</span>;</div><div class="">}</div><div class=""> <span style="color: rgb(159, 159, 159);" class=""></</span><span style="color: rgb(63, 151, 223);" class="">style</span><span style="color: rgb(159, 159, 159);" class="">></span></div><div class=""> <span style="color: rgb(159, 159, 159);" class=""><</span><span style="color: rgb(63, 151, 223);" class="">script</span> <span style="color: rgb(9, 89, 132);" class="">src</span>=<span style="color: rgb(162, 86, 55);" class="">"<a href="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js" class="">https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js</a>"</span><span style="color: rgb(159, 159, 159);" class="">></</span><span style="color: rgb(63, 151, 223);" class="">script</span><span style="color: rgb(159, 159, 159);" class="">></span></div><div class=""> <span style="color: rgb(159, 159, 159);" class=""><</span><span style="color: rgb(63, 151, 223);" class="">script</span><span style="color: rgb(159, 159, 159);" class="">></span></div><div class=""><span style="color: rgb(63, 151, 223);" class="">function</span> <span style="color: rgb(99, 99, 36);" class="">load</span> ()</div><div class="">{</div><div class=""> <span style="color: rgb(9, 89, 132);" class="">console</span> .<span style="color: rgb(99, 99, 36);" class="">log</span> (<span style="color: rgb(162, 86, 55);" class="">"load"</span>);</div><br class=""><div class=""> <span style="color: rgb(15, 157, 235);" class="">$</span>.<span style="color: rgb(99, 99, 36);" class="">getJSON</span> (<span style="color: rgb(162, 86, 55);" class="">"Billboard.x3dj"</span>, <span style="color: rgb(63, 151, 223);" class="">function</span> (<span style="color: rgb(9, 89, 132);" class="">json</span>)</div><div class=""> {</div><div class=""> <span style="color: rgb(99, 99, 36);" class="">X3D</span> (<span style="color: rgb(63, 151, 223);" class="">function</span> ()</div><div class=""> {</div><div class=""> <span style="color: rgb(63, 151, 223);" class="">var</span> <span style="color: rgb(9, 89, 132);" class="">Browser</span> = <span style="color: rgb(15, 157, 235);" class="">X3D</span> .<span style="color: rgb(99, 99, 36);" class="">getBrowser</span> ();</div><br class=""><div class=""> <span style="color: rgb(9, 89, 132);" class="">Browser</span> .<span style="color: rgb(99, 99, 36);" class="">importJS</span> (<span style="color: rgb(9, 89, 132);" class="">json</span>, <span style="color: rgb(63, 151, 223);" class="">function</span> (<span style="color: rgb(9, 89, 132);" class="">scene</span>)</div><div class=""> {</div><div class=""> <span style="color: rgb(9, 89, 132);" class="">Browser</span> .<span style="color: rgb(99, 99, 36);" class="">replaceWorld</span> (<span style="color: rgb(9, 89, 132);" class="">scene</span>);</div><div class=""> <span style="color: rgb(9, 89, 132);" class="">console</span> .<span style="color: rgb(99, 99, 36);" class="">log</span> (<span style="color: rgb(9, 89, 132);" class="">scene</span> .<span style="color: rgb(9, 89, 132);" class="">dom</span>);</div><div class=""> });</div><div class=""> });</div><div class=""> });</div><div class="">}</div><div class=""> <span style="color: rgb(159, 159, 159);" class=""></</span><span style="color: rgb(63, 151, 223);" class="">script</span><span style="color: rgb(159, 159, 159);" class="">></span></div><div class=""> <span style="color: rgb(159, 159, 159);" class=""></</span><span style="color: rgb(63, 151, 223);" class="">head</span><span style="color: rgb(159, 159, 159);" class="">></span></div><div class=""> <span style="color: rgb(159, 159, 159);" class=""><</span><span style="color: rgb(63, 151, 223);" class="">body</span><span style="color: rgb(159, 159, 159);" class="">></span></div><div class=""> <span style="color: rgb(159, 159, 159);" class=""><</span><span style="color: rgb(63, 151, 223);" class="">X3DCanvas</span><span style="color: rgb(159, 159, 159);" class="">></</span><span style="color: rgb(63, 151, 223);" class="">X3DCanvas</span><span style="color: rgb(159, 159, 159);" class="">></span></div><div class=""> <span style="color: rgb(159, 159, 159);" class=""><</span><span style="color: rgb(63, 151, 223);" class="">button</span> <span style="color: rgb(9, 89, 132);" class="">onclick</span>=<span style="color: rgb(162, 86, 55);" class="">"</span><span style="color: rgb(99, 99, 36);" class="">load</span><span style="color: rgb(162, 86, 55);" class="">()</span><span style="color: rgb(162, 86, 55);" class="">"</span><span style="color: rgb(159, 159, 159);" class="">></span>Click Me!<span style="color: rgb(159, 159, 159);" class=""></</span><span style="color: rgb(63, 151, 223);" class="">button</span><span style="color: rgb(159, 159, 159);" class="">></span></div><div class=""> <span style="color: rgb(159, 159, 159);" class=""></</span><span style="color: rgb(63, 151, 223);" class="">body</span><span style="color: rgb(159, 159, 159);" class="">></span></div><div class=""><span style="color: rgb(159, 159, 159);" class=""></</span><span style="color: rgb(63, 151, 223);" class="">html</span><span style="color: rgb(159, 159, 159);" class="">></span></div><br class=""></div></div><div class=""><br class=""><div><br class=""><blockquote type="cite" class=""><div class="">Am 15.06.2021 um 03:19 schrieb John Carlson <<a href="mailto:yottzumm@gmail.com" class="">yottzumm@gmail.com</a>>:</div><br class="Apple-interchange-newline"><div class="">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" class="">
<div class=""><p class=""> Holger,</p><p class=""><br class="">
</p><p class="">My main code currently looks like the below. I believe I patched
the problem with ajv internationalization in loaderJQuery.js<br class="">
</p><p class="">Umm, to me, it looks like your shader programs aren't
working--the "Program" in the console log, even though they
downloaded successfully? I'm not sure if the shaders are related
to your initial graphics, or something else. Initial graphics
seem to be working. Perhaps there's an issue with the url
file/path?<br class="">
</p><p class=""> <script type="text/javascript"><br class="">
<br class="">
var url = "../data/ArchHalf.json";<br class="">
var selector = "#x_itedom";<br class="">
<br class="">
function importInto_X_ITE(json) {<br class="">
loadX3DJS_X_ITE(selector, document.implementation,
json, url, "", loadSchema, doValidate, X3DJSONLD, function(jsDOM)
{<br class="">
load_X_ITE_DOM(jsDOM, selector);<br class="">
});<br class="">
}<br class="">
$(document).ready(function() {<br class="">
$.getJSON(url, importInto_X_ITE);<br class="">
});<br class="">
<br class="">
</script></p><p class="">====================================================================================================</p><p class="">The error seems to be in this showing up in this code in
X3DJSONLD. It looks like child.dom is undefined on the return
from browser.importJS. I'm guessing there was some change to
X_ITE or x_ite_dom? <br class="">
</p><p class="">I tried including x_ite_dom 1.3. child.dom is still the same. So
it looks like I broke encapsulation. Hmm. This will take some
investigation. It may be that the return value from
JSONParser.parseJavaScript() is undefined! Hmm. Well, back to
debugger.<br class="">
</p><p class="">function loadX3DJS_X_ITE(selector, DOMImplementation, jsobj,
path, NS, loadSchema, doValidate, X3DJSONLD, callback) {<br class="">
X3DJSONLD.x3djsonNS = NS;<br class="">
loadSchema(jsobj, path, doValidate, X3DJSONLD, function() {<br class="">
X3D(function() {<br class="">
if (typeof X3D.getBrowser !== 'undefined') {<br class="">
var browser = X3D.getBrowser(selector);<br class="">
if (typeof browser !== 'undefined' &&
typeof browser.importJS !== 'undefined') {<br class="">
var child = browser.importJS(jsobj);<br class="">
var xml = X3DJSONLD.serializeDOM(jsobj,
child.dom, true);<br class="">
callback(child.dom, xml);<br class="">
}<br class="">
}<br class="">
}, function() {<br class="">
alert("Failed to render JSON to X_ITE");<br class="">
});<br class="">
}, function(e) {<br class="">
console.error(e);<br class="">
callback(null, null);<br class="">
});<br class="">
}<br class="">
<br class="">
</p>
<div class="moz-cite-prefix">On 6/4/21 7:34 AM, John Carlson wrote:<br class="">
</div>
<blockquote type="cite" cite="mid:CAGC3UEnWbdXwUOV0gX_eUysc9Grv4oJ=HkUKs+qe5bmXFXD06A@mail.gmail.com" class="">
<meta http-equiv="content-type" content="text/html; charset=UTF-8" class="">
<div dir="auto" class="">My load functions, particularly load_X_ITE_DOM
should call the X3D function. </div>
<div dir="auto" class=""><br class="">
</div>
<div dir="auto" class="">The error in index.js is in the JSON validation
suite, and hopefully not escaping the try/catch. I was
noticing that the element was undefined, and that may be the
result of something not valid. Clicking ok on the validation
error pop up should take one past validation. One should try to
find a valid JSON file to load with APjsonImport.xhtml . I am
going to sleep now and will try to pursue this tonight.</div>
<div class=""><br class="">
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Fri, Jun 4, 2021 at 6:26
AM Holger Seelig <<a href="mailto:holger.seelig@yahoo.de" moz-do-not-send="true" class="">holger.seelig@yahoo.de</a>>
wrote:<br class="">
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px
0.8ex;border-left-width:1px;border-left-style:solid;padding-left:1ex;border-left-color:rgb(204,204,204)">
<div style="word-wrap:break-word;line-break:after-white-space" class="">
<div class="">The most common mistake is that the X3D Browser is
not available from the beginning of the HTML page. Thus
a call to the X3D function to access the Browser must be
wrapped, see:</div>
<div class=""><br class="">
</div>
<a href="https://github.com/create3000/x_ite/wiki/Accessing-the-External-Browser" target="_blank" moz-do-not-send="true" class="">https://github.com/create3000/x_ite/wiki/Accessing-the-External-Browser</a>
<div class=""><br class="">
</div>
<div class="">But there are is also this error in the console </div>
<div class=""><br class="">
</div>
<div class="">[Error] Failed to load resource: the server responded
with a status of 404 () (index.js, line 0)</div>
<div class=""><a href="https://coderextreme.net/X3DJSONLD/src/main/node/ajv-i18n/localize/de-de/index.js" target="_blank" moz-do-not-send="true" class="">https://coderextreme.net/X3DJSONLD/src/main/node/ajv-i18n/localize/de-de/index.js</a></div>
</div>
<div style="word-wrap:break-word;line-break:after-white-space" class="">
<div class=""><br class="">
</div>
<div class="">Holger</div>
<div class=""><br class="">
<div class=""><br class="">
<blockquote type="cite" class="">
<div class="">Am 04.06.2021 um 12:43 schrieb John Carlson
<<a href="mailto:yottzumm@gmail.com" target="_blank" moz-do-not-send="true" class="">yottzumm@gmail.com</a>>:</div>
<br class="">
<div class="">
<div class="">I'm trying to get these working:<br class="">
<br class="">
<a href="https://coderextreme.net/X3DJSONLD/src/main/html/AP_minimal_JSLD.html" target="_blank" moz-do-not-send="true" class="">https://coderextreme.net/X3DJSONLD/src/main/html/AP_minimal_JSLD.html</a><br class="">
<br class="">
<a href="https://coderextreme.net/X3DJSONLD/src/main/html/AP_minimal_JSLD.xhtml" target="_blank" moz-do-not-send="true" class="">https://coderextreme.net/X3DJSONLD/src/main/html/AP_minimal_JSLD.xhtml</a><br class="">
<br class="">
This may provide some guidance:<br class="">
<br class="">
<a href="https://coderextreme.net/X3DJSONLD/src/main/html/APjsonImport.xhtml" target="_blank" moz-do-not-send="true" class="">https://coderextreme.net/X3DJSONLD/src/main/html/APjsonImport.xhtml</a>
or at least somewhat easy selection of files,
and both X3DOM (works) and X_ITE (fails). (Feel
free to reduce number of files in
<select>)<br class="">
<br class="">
I realize I could probably use older versions of
X_ITE, but I'm more interested in possible
current features I'm missing.<br class="">
<br class="">
I am not having issues with Inline with *.json
files, as far as I can tell, mostly just
index.html<br class="">
<br class="">
Repository is below, master branch.<br class="">
<br class="">
<a href="https://github.com/coderextreme/X3DJSONLD/" target="_blank" moz-do-not-send="true" class="">https://github.com/coderextreme/X3DJSONLD/</a><br class="">
<br class="">
Thanks for any basic assistance you have.<br class="">
<br class="">
It's highly likely I may have problems with the
JSON schema.<br class="">
<br class="">
I will now look at X_ITE documentation.<br class="">
<br class="">
John<br class="">
<br class="">
</div>
</div>
</blockquote>
</div>
<br class="">
</div>
</div>
</blockquote>
</div>
</div>
</blockquote>
</div>
</div></blockquote></div><br class=""></div></body></html>