Note that there are some explanatory texts on larger screens.

plurals
  1. PODozer NullPointerException on deep-mapping with custom getter
    primarykey
    data
    text
    <p>Im getting this exception:</p> <pre><code>Field mapping error --&gt; MapId: null Type: null Source parent class: com.ParentObject Source field name: field1 Source field type: class com.OnOff1BitEnum Source field value: OFF Dest parent class: com.SubParent Dest field name: subParent.field2 Dest field type: java.lang.Boolean java.lang.NullPointerException at org.dozer.util.ReflectionUtils.invoke(ReflectionUtils.java:270) at org.dozer.propertydescriptor.GetterSetterPropertyDescriptor.getDeepSrcFieldValue(GetterSetterPropertyDescriptor.java:116) at org.dozer.propertydescriptor.GetterSetterPropertyDescriptor.getPropertyValue(GetterSetterPropertyDescriptor.java:69) at org.dozer.fieldmap.FieldMap.getDestValue(FieldMap.java:141) </code></pre> <p>This is the mapping field:</p> <pre><code>&lt;mapping&gt; &lt;class-a&gt;com.ParentObject&lt;/class-a&gt; &lt;class-b&gt;com.SubParent&lt;/class-b&gt; &lt;field custom-converter="com.OnOffEnumToBooleanConverter"&gt; &lt;a&gt;field1&lt;/a&gt; &lt;b get-method="isField2"&gt;subParent.field2&lt;/b&gt; &lt;/field&gt; &lt;/mapping&gt; </code></pre> <p>The version of dozer i am using is 5.4.0</p> <p>UPDATE: Added the converter code to this post. When i put a break point here this is not being reached</p> <pre><code>public class OnOffEnumToBooleanConverter implements org.dozer.CustomConverter { /** * {@inheritDoc} */ @Override public Object convert(Object dest, Object src, Class&lt;?&gt; destClass, Class&lt;?&gt; srcClass) { if (src == null) { return null; } if (src instanceof com.OnOff1BitEnum) { boolean canonicalObject; if ((com.OnOff1BitEnum) src == com.OnOff1BitEnum.ON) { canonicalObject = true; } else if ((com.OnOff1BitEnum) src == com.OnOff1BitEnum.OFF) { canonicalObject = false; } else { // Unreachable Code To Test throw new MappingException("Converter " + this.getClass().getCanonicalName() + " used incorrectly. Arguments passed in were: " + dest + " and " + src); } return canonicalObject; } } </code></pre>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload