[geotk] Can I prevent Geotoolkit from spawning new threads?
Jon Blower
j.d.blower at reading.ac.uk
Tue Oct 13 16:10:27 EDT 2009
Hi,
I've been experimenting with running Geotoolkit as part of a Google
App Engine application. I have just discovered that GAE does not
allow applications to spawn new threads. Unfortunately Geotoolkit
does this when calling CRS.getSupportedCodes() or CRS.decode(). The
creation of a ShutdownHook causes a security exception in GAE:
java.lang.ExceptionInInitializerError
at org.geotoolkit.factory.ShutdownHook.(ShutdownHook.java:55)
at org.geotoolkit.factory.ShutdownHook.(ShutdownHook.java:41)
at org.geotoolkit.factory.FactoryFinder.getServiceRegistry(FactoryFinder.java:198)
at org.geotoolkit.factory.FactoryFinder.getFactories(FactoryFinder.java:216)
at org.geotoolkit.factory.AuthorityFactoryFinder.getCRSAuthorityFactories(AuthorityFactoryFinder.java:264)
at org.geotoolkit.referencing.DefaultAuthorityFactory.create(DefaultAuthorityFactory.java:92)
at org.geotoolkit.referencing.CRS.getAuthorityFactory(CRS.java:219)
at org.geotoolkit.referencing.CRS.decode(CRS.java:410)
...
Caused by: java.security.AccessControlException: access denied
(java.lang.RuntimePermission modifyThreadGroup)
at java.security.AccessControlContext.checkPermission(AccessControlContext.java:323)
at java.security.AccessController.checkPermission(AccessController.java:546)
I imagine that this might be hard, but is there any way of using Gtk
in such a way as that it does not spawn new threads? By the way, it
seems to spawn threads even when using a "databaseless" CRS database,
i.e. with a static epsg.properties file.
Thanks,
Jon
--
Dr Jon Blower
Technical Director, Reading e-Science Centre
Environmental Systems Science Centre
University of Reading
Harry Pitt Building, 3 Earley Gate
Reading RG6 6AL. UK
Tel: +44 (0)118 378 5213
Fax: +44 (0)118 378 6413
j.d.blower at reading.ac.uk
http://www.nerc-essc.ac.uk/People/Staff/Blower_J.htm
More information about the Geotoolkit
mailing list