You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by de...@apache.org on 2019/01/17 19:06:56 UTC

[cxf] 01/02: [CXF-7947] avoid NPE for classes in default package

This is an automated email from the ASF dual-hosted git repository.

deki pushed a commit to branch 3.1.x-fixes
in repository https://gitbox.apache.org/repos/asf/cxf.git

commit 2d71c30bc9f48d44966c4cafb0f55c64f631a965
Author: Dennis Kieselhorst <ma...@dekies.de>
AuthorDate: Thu Jan 17 16:41:26 2019 +0100

    [CXF-7947] avoid NPE for classes in default package
    
    (cherry picked from commit d9c0c2ffb468315c9e538736ac8e731782209640)
    (cherry picked from commit d03dc931df389e7dbab72d1b1fb3ae5993f9c6f2)
---
 .../jaxb/src/main/java/org/apache/cxf/jaxb/Utils.java     | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

diff --git a/rt/databinding/jaxb/src/main/java/org/apache/cxf/jaxb/Utils.java b/rt/databinding/jaxb/src/main/java/org/apache/cxf/jaxb/Utils.java
index 3899f50..830b89e 100644
--- a/rt/databinding/jaxb/src/main/java/org/apache/cxf/jaxb/Utils.java
+++ b/rt/databinding/jaxb/src/main/java/org/apache/cxf/jaxb/Utils.java
@@ -266,12 +266,15 @@ final class Utils {
             adapter = f.getType().getAnnotation(XmlJavaTypeAdapter.class);
         }
         if (adapter == null) {
-            XmlJavaTypeAdapters adapters = f.getDeclaringClass().getPackage().getAnnotation(XmlJavaTypeAdapters.class);
-            if (adapters != null) {
-                for (XmlJavaTypeAdapter candidate : adapters.value()) {
-                    if (candidate != null && candidate.type().equals(f.getType())) {
-                        adapter = candidate;
-                        break;
+            Package packageDeclaration = f.getDeclaringClass().getPackage();
+            if (packageDeclaration != null) {
+                XmlJavaTypeAdapters adapters = packageDeclaration.getAnnotation(XmlJavaTypeAdapters.class);
+                if (adapters != null) {
+                    for (XmlJavaTypeAdapter candidate : adapters.value()) {
+                        if (candidate != null && candidate.type().equals(f.getType())) {
+                            adapter = candidate;
+                            break;
+                        }
                     }
                 }
             }