You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@bval.apache.org by mb...@apache.org on 2018/04/18 22:16:48 UTC

bval git commit: avoid NPE on xml ctors

Repository: bval
Updated Branches:
  refs/heads/bv2 cb0bb133f -> 9e4e23f40


avoid NPE on xml ctors


Project: http://git-wip-us.apache.org/repos/asf/bval/repo
Commit: http://git-wip-us.apache.org/repos/asf/bval/commit/9e4e23f4
Tree: http://git-wip-us.apache.org/repos/asf/bval/tree/9e4e23f4
Diff: http://git-wip-us.apache.org/repos/asf/bval/diff/9e4e23f4

Branch: refs/heads/bv2
Commit: 9e4e23f4054f4fa563af8d4087ef84cd9120fa95
Parents: cb0bb13
Author: Matt Benson <mb...@apache.org>
Authored: Wed Apr 18 17:16:42 2018 -0500
Committer: Matt Benson <mb...@apache.org>
Committed: Wed Apr 18 17:16:42 2018 -0500

----------------------------------------------------------------------
 .../main/java/org/apache/bval/jsr/xml/MappingValidator.java | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/bval/blob/9e4e23f4/bval-jsr/src/main/java/org/apache/bval/jsr/xml/MappingValidator.java
----------------------------------------------------------------------
diff --git a/bval-jsr/src/main/java/org/apache/bval/jsr/xml/MappingValidator.java b/bval-jsr/src/main/java/org/apache/bval/jsr/xml/MappingValidator.java
index f3b017e..9b9f4a4 100644
--- a/bval-jsr/src/main/java/org/apache/bval/jsr/xml/MappingValidator.java
+++ b/bval-jsr/src/main/java/org/apache/bval/jsr/xml/MappingValidator.java
@@ -166,10 +166,11 @@ public class MappingValidator {
             final Constructor<?> dc = Reflection.getDeclaredConstructor(t, parameterTypes);
             Exceptions.raiseIf(dc == null, ValidationException::new, "Unknown %s constructor %s", t, result);
 
-            final ForConstructor<?> metaCtor = new Meta.ForConstructor<>(dc);
-            constraints(metaCtor, ctor.getReturnValue().getConstraint());
-            containerElements(metaCtor, ctor.getReturnValue().getContainerElementType());
-
+            Optional.of(ctor).map(ConstructorType::getReturnValue).ifPresent(rv -> {
+                final ForConstructor<?> metaCtor = new Meta.ForConstructor<>(dc);
+                constraints(metaCtor, rv.getConstraint());
+                containerElements(metaCtor, rv.getContainerElementType());
+            });
             final Parameter[] params = dc.getParameters();
 
             IntStream.range(0, parameterTypes.length).forEach(n -> {