[Source] XJ3D issues

Felipe Bacim fbacim at vt.edu
Fri May 28 09:13:58 PDT 2010


Terry,

Thanks, that makes sense. I guess I skipped that part of the "How to
Install" doc. I didn't even think about classpath issues because the errors
were not pointing in any particular direction and, as I have all
library dependencies in the lib directory, I just assumed it was being set
by the makefile or something like that.

Felipe

On Fri, May 28, 2010 at 1:54 AM, Norbraten, Terry <tdnorbra at nps.edu> wrote:

>  Felipe,
>
>     I can tell you that I ran into similar build problems in the past.
>  What you have to do is set up your environment ahead of time (before
> compile) and the easiest way that I’ve found to do this (I also build on
> Mac) is to first “source xj3d_profile” on the command line.
>
>     You’ll have to modify the enclosed xj3d_profile to suite your build set
> up, but it works.  The Xj3D doc “How to Install” talks about Environmental
> set up where you modify your bashrc file with pretty much the same elements
> of the xj3d_profile, however, not many may want to permanently do this with
> their bashrc.
>
>     The reason ErrorReporter never compiled is that it depends on a third
> party jar: j3d-org-all_1.0.0.jar which you have discovered to set in your
> classpath with your javac call with the –extdirs switch.  So, now you have
> two ways to ensure your environment is setup.
>
>     The other issue will have to be addressed by others.
>
> Cheers,
>
> Terry
>
>
>
> On 5/27/10 3:02 PM, "Felipe Bacim" <fbacim at vt.edu> wrote:
>
> Hi all,
>
> I'm writing to the list to report a few issues I'm having with the xj3d
> libraries, the first one being related to the code available in the svn and
> the other ones to the replaceWorld function.
>
> *First issue
> *
> First, my build environment is Mac OS 10.6.3, JDK 1.6.0_17. I'm having
> serious issues using the Makefile provided, more specifically when I do
> "make ogl". All errors (or most of, since this is from 2008) can be seen in
> this webpage: http://www.vrspace.org/~joe/xj3d/Xj3D-linux-howto.html. This
> guy used Fedora 8, JDK 1.6.0_06, so I'm guessing this is not a problem
> exclusive to Mac OS. The problem is that the java compiler can't seem to
> find reference to classes that are in the same directory.
> One example of this is this very first error that I got:
> Building directory src/java/org/web3d/util/
>
>
> Compiling ErrorReporter.java
> Compiling DefaultErrorReporter.java
>
>
> src/java/org/web3d/util/DefaultErrorReporter.java:32: cannot find symbol
> symbol: class ErrorReporter
>
>
> public class DefaultErrorReporter implements ErrorReporter {
>                                              ^
>
>
> Anyway, as described in that webpage, the solution is pretty simple. Every
> time this error occurs, just do
>
>
> javac -d classes -extdirs lib src/java/org/web3d/util/*.java
> and everything is compiled without errors. Well, since with the most recent
> revision in the svn the number of times this happens is even greater than
> what is described in that webpage, I've decided to write a python app that,
> when executed from the trunk directory, parses the Makefile-opengl file to
> find the directory build order, and opens the Makefile on each one of the
> directories to find what files need to be compiled. The output is a bash
> script that is doing all the necessary make steps and compiling everything
> before "make ogl-jar" is called. This may seem like an overkill and may not
> be the best workaround for this issue, but to me it seemed easier to write
> the parser (it took me less than 20 minutes to write it) than to keep my
> eyes on the compilation process or to go through the Makefiles and find what
> is causing this with a library that is so big. Anyway, I'm now able to
> compile everything without a problem. If anyone is interested in either the
> Python parser or the bash script, just let me know and I will post them
> here.
>
>
>
> *Second issue
> *
> The second issue I'm having is with the replaceWorld function, just exactly
> as described in
> http://www.web3d.org/message_boards/viewtopic.php?f=7&t=1353 and
> http://bugzilla.xj3d.org/show_bug.cgi?id=616. Even though the topic and
> the bug report only talk about adding nodes, with the most recent revision
> I'm not being able to do anything, even when I just try to get a root node
> and change some field. The only solution I could find for this is to dispose
> the window and use a new x3dBrowser instance, which is far from ideal. This
> happens AFTER the second time I use the replaceWorld function. With the
> older version I was using, a 2007 snapshot, this problem didn't exist.
>
>
>
> *Third issue
> *
> The last issue I have is that, in addition to all that was described above,
> the replaceWorld() function seems to have serious memory leak issues. The
> .java source in http://dl.dropbox.com/u/2103745/MemoryLeakTest.zipexemplifies this problem by loading an x3d file every time you press a
> button. Its going from ~170mb up to ~680mb by just loading the same x3d file
> over and over again. I'm not sure if its an issue with xj3d or with java but
> it gets even worse when using this function in an application that loads x3d
> files all the time. However, this does not generates any errors, and despite
> high memory usage, the application seems to keep working just fine no matter
> how many times I call replaceWorld. This changes when I register listeners
> to nodes in the scene every time I load an x3d; then I get an
> OutOfMemoryError. I guess one possible solution for this would be to remove
> the event listeners before calling replaceWorld, but just using the
> removeX3DEventListener function doesn't seem to solve the problem. Perhaps
> that's the function that is generating the error? Anyway, both versions of
> xj3d that I used to date have this issue (2007 snapshot and latest revision
> in the svn).
>
>
> Note: I'm using the same object for all listeners and that the events are
> not being generated. This problem happens even when I just register
> listeners to nodes, so this shouldn't be a problem with my code considering
> also that everything works just fine when I don't register listeners.
>
>
>
> If anyone knows of a snapshot version on which these issues don't exist,
> please let me know.
>
> Best regards,
> Felipe Bacim
>
> ------------------------------
> _______________________________________________
> Source mailing list
> Source at web3d.org
> http://web3d.org/mailman/listinfo/source_web3d.org
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/mailman/private/source_web3d.org/attachments/20100528/0e9a6c64/attachment.html>


More information about the Source mailing list