ensure TCCL is preferred over bval loader (OSGi+EE)
Project: http://git-wip-us.apache.org/repos/asf/bval/repo Commit: http://git-wip-us.apache.org/repos/asf/bval/commit/137910ff Tree: http://git-wip-us.apache.org/repos/asf/bval/tree/137910ff Diff: http://git-wip-us.apache.org/repos/asf/bval/diff/137910ff Branch: refs/heads/bv2 Commit: 137910ffa92ed94ca0911bf114010f36fc7e71ae Parents: 8cd26a8 Author: Romain Manni-Bucau <[email protected]> Authored: Thu Aug 16 09:51:12 2018 +0200 Committer: Matt Benson <[email protected]> Committed: Tue Oct 16 12:28:20 2018 -0500 ---------------------------------------------------------------------- .../main/java/org/apache/bval/jsr/ConfigurationImpl.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/bval/blob/137910ff/bval-jsr/src/main/java/org/apache/bval/jsr/ConfigurationImpl.java ---------------------------------------------------------------------- diff --git a/bval-jsr/src/main/java/org/apache/bval/jsr/ConfigurationImpl.java b/bval-jsr/src/main/java/org/apache/bval/jsr/ConfigurationImpl.java index 20ac2f8..aac4824 100644 --- a/bval-jsr/src/main/java/org/apache/bval/jsr/ConfigurationImpl.java +++ b/bval-jsr/src/main/java/org/apache/bval/jsr/ConfigurationImpl.java @@ -411,14 +411,20 @@ public class ConfigurationImpl implements ApacheValidatorConfiguration, Configur private BootstrapConfiguration createBootstrapConfiguration() { try { if (!ignoreXmlConfiguration) { - loader = ValidationParser.class.getClassLoader(); + loader = Thread.currentThread().getContextClassLoader(); + if (loader == null) { + loader = ValidationParser.class.getClassLoader(); + } final BootstrapConfiguration xmlBootstrap = ValidationParser.processValidationConfig(getProperties().get(Properties.VALIDATION_XML_PATH), this); if (xmlBootstrap != null) { return xmlBootstrap; } } - loader = ApacheValidatorFactory.class.getClassLoader(); + loader = Thread.currentThread().getContextClassLoader(); + if (loader == null) { + loader = ApacheValidatorFactory.class.getClassLoader(); + } return BootstrapConfigurationImpl.DEFAULT; } finally { participantFactory = new ParticipantFactory(loader);
