Let's assume we have two classes:
class A {
String s1 = "A_string1";
String s2 = "A_string2";
@JsonIgnore B b;
}
class B {
String s1 = "B_string1";
String s2 = "B_string2";
}
If we'd serialize an instance of A
the result is A_string1,A_string2
The serialization of an instance of B would look like this B_string1,B_string2
Now If we'd remove the @JsonIgnore
from class A, we'd get the Exception:
com.fasterxml.jackson.core.JsonGenerationException: CSV generator does not support Object values for properties
Why couldn't we just serialize b in a -- the result would be quite intuitive: A_string1,A_string2,B_string1,B_string2
This would enable jackson-csv to serialize object members as it's possible in XML and JSON.