summaryrefslogtreecommitdiff
path: root/jurt
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2012-03-20 18:35:24 +0100
committerStephan Bergmann <sbergman@redhat.com>2012-03-20 18:35:24 +0100
commit92a1757fa523bd15412ca1195807ac41205e9438 (patch)
tree83864fdfe4cb9d22ce8f7a4ecd55e0ae8b8516cd /jurt
parent092d6d9d6f9e6d79dd99d5f502ff39398622c2e1 (diff)
Improve error reporting
Diffstat (limited to 'jurt')
-rw-r--r--jurt/com/sun/star/comp/loader/JavaLoader.java34
1 files changed, 15 insertions, 19 deletions
diff --git a/jurt/com/sun/star/comp/loader/JavaLoader.java b/jurt/com/sun/star/comp/loader/JavaLoader.java
index 25fc90b47676..113e763e766b 100644
--- a/jurt/com/sun/star/comp/loader/JavaLoader.java
+++ b/jurt/com/sun/star/comp/loader/JavaLoader.java
@@ -277,39 +277,35 @@ public class JavaLoader implements XImplementationLoader,
// Normally a string must no be null.
try {
if ( locationUrl != null ) {
- // 1.
clazz = RegistrationClassFinder.find( locationUrl );
- }
- else {
- // 2.
+ if (clazz == null) {
+ throw new CannotActivateFactoryException(
+ "Cannot activate jar " + locationUrl);
+ }
+ } else {
clazz = Class.forName( implementationName );
+ if (clazz == null) {
+ throw new CannotActivateFactoryException(
+ "Cannot find class " + implementationName);
+ }
}
}
catch (java.net.MalformedURLException e) {
CannotActivateFactoryException cae = new CannotActivateFactoryException(
- "Can not activate factory because " + e.toString() );
- cae.fillInStackTrace();
+ "Can not activate factory because " + e );
+ cae.initCause(e);
throw cae;
}
catch (java.io.IOException e) {
CannotActivateFactoryException cae = new CannotActivateFactoryException(
- "Can not activate factory because " + e.toString() );
- cae.fillInStackTrace();
+ "Can not activate factory because " + e );
+ cae.initCause(e);
throw cae;
}
catch (java.lang.ClassNotFoundException e) {
CannotActivateFactoryException cae = new CannotActivateFactoryException(
- "Can not activate factory because " + e.toString() );
- cae.fillInStackTrace();
- throw cae;
- }
-
- if (null == clazz)
- {
- CannotActivateFactoryException cae =
- new CannotActivateFactoryException(
- "Cannot determine activation class!" );
- cae.fillInStackTrace();
+ "Can not activate factory because " + e );
+ cae.initCause(e);
throw cae;
}