CDV ❯ Incorrect behavior on non-portable exception
-
Bug
-
Status: Closed
-
1 Critical
-
Resolution: Fixed
-
-
-
teck
-
Reporter: tgautier
-
January 17, 2007
-
0
-
Watchers: 0
-
July 27, 2012
-
February 27, 2007
Attachments
Description
- Attempt to share a class that we do not support. For example a Thread.
- You will get a non-portable exception, which tells you to add the class into the boot jar.
- Add the class into the boot jar, and remake the boot jar
- Re-run your app.
You get the same error.
At step 3, we need to not silently ignore the fact that we don’t support the particular class.
An example of a class that works properly is java.lang.Thread (the exception properly reports that Thread is a system resource which cannot be shared). An example of a class which does not work properly is java.util.concurrent.Semaphore.
Comments
Taylor Gautier 2007-01-17
Fiona OShea 2007-02-07
Updating Due date to last day of Moraga dev iteration
Tim Eck 2007-02-27
for all the various java.util.concurrent classes (and those in subpackages like locks and atomic), I added permanent exclude rules so that we won’t suggest adding any of these types to the boot jar until we official support them
The attached unit test creates a root with a holder which holds a java.util.concurrent.Semaphore.
To use the project, compile it with maven2:
To run with terracotta, install Terracotta 2.2+, and start a demo server:
Start the app (cd into the target directory): target> java `$TC_HOME/dso/bin/dso-env.sh` -Dtc.config=resources/conf/tc-config.xml -classpath classes unit.test.Main