jaxws/src/java.xml.ws/share/classes/com/sun/xml/internal/ws/api/pipe/ThreadHelper.java
--- a/jaxws/src/java.xml.ws/share/classes/com/sun/xml/internal/ws/api/pipe/ThreadHelper.java Fri Feb 10 00:39:51 2017 -0800
+++ b/jaxws/src/java.xml.ws/share/classes/com/sun/xml/internal/ws/api/pipe/ThreadHelper.java Thu Feb 16 13:14:39 2017 +0300
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2015, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -68,9 +68,7 @@
Class<?> cls = Class.forName(SAFE_THREAD_NAME);
Constructor<?> ctr = cls.getConstructor(Runnable.class);
return new SunMiscThreadFactory(ctr);
- } catch (ClassNotFoundException ignored) {
- } catch (NoSuchMethodException ignored) {
- }
+ } catch (ClassNotFoundException | NoSuchMethodException ignored) {}
return new LegacyThreadFactory();
}
}
@@ -90,7 +88,9 @@
try {
return ctr.newInstance(null, r, "toBeReplaced", 0, false);
} catch (ReflectiveOperationException x) {
- throw new InternalError(x);
+ InternalError ie = new InternalError(x.getMessage());
+ ie.initCause(ie);
+ throw ie;
}
}
}
@@ -99,7 +99,7 @@
private static class SunMiscThreadFactory implements ThreadFactory {
final Constructor<?> ctr;
SunMiscThreadFactory(Constructor<?> ctr) { this.ctr = ctr; }
- @Override public Thread newThread(Runnable r) {
+ @Override public Thread newThread(final Runnable r) {
return AccessController.doPrivileged(
new PrivilegedAction<Thread>() {
@Override