FAQ
I've written an applet using Java3D for rendering, which works fine if
you have Java3D installed, of course.

What I want to do is try to import the Java3D libraries and bail with an
error message to the user if they're not there.

You can't do "raise SystemExit" or "sys.exit(0)" because both of those
try to kill the browser's Java VM, which a) raises a security exception
and b) isn't what I want anyway.

A "return" statement does the trick as an applet, but raises a
"SyntaxError: 'return' outside function" and doesn't even run when using
Jython from the command line to test things. (It shouldn't work as an
applet, but at this point I was just randomly trying things in
desperation.)

What SHOULD I be doing?

This is the code I'm using:

try:
# Java3D libraries
from com.sun.j3d.utils.applet import MainFrame
from com.sun.j3d.utils.behaviors.vp import *
from com.sun.j3d.utils.image import *
from com.sun.j3d.utils.universe import *
from javax.media.j3d import *
from javax.vecmath import *
except:
# Deal gracefully with Java3D not being installed
class GearBox(Applet):
def init(self):
self.add(Label('Java3D is not properly installed.', Label.CENTER))
if __name__ == '__main__':
# Not running as an applet
print 'Java3D is not properly installed.'
raise SystemExit
else:
# SyntaxError: 'return' outside function
return


My email is gcash AT cfl.rr.com, but please post your reply to the group.

--
I just like saying "chlorine pentafluoride"

Search Discussions

Related Discussions

Discussion Navigation
viewthread | post
posts ‹ prev | 1 of 1 | next ›
Discussion Overview
grouppython-list @
categoriespython
postedFeb 20, '04 at 3:17a
activeFeb 20, '04 at 3:17a
posts1
users1
websitepython.org

1 user in discussion

Gcash: 1 post

People

Translate

site design / logo © 2022 Grokbase